/* The profession picker stays graphite in both app themes. */
dialog.professions-modal{width:calc(100% - 24px);max-width:480px;max-height:88dvh;padding:0;border:1px solid #bda9b72b;border-radius:27px;background:linear-gradient(155deg,#373439,#302e32 58%,#2b2b2e);color:#f1edf3;color-scheme:dark;box-shadow:0 24px 80px #15121755,inset 0 1px 0 #ffffff0d;scrollbar-width:thin;scrollbar-color:#a493a344 transparent;overscroll-behavior:contain}
dialog.professions-modal::backdrop{background:#17151ba8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.professions-modal .sheet{padding:0}
.professions-modal .sheet-head{position:sticky;top:0;z-index:2;align-items:center;gap:12px;margin:0;padding:21px 21px 16px;background:linear-gradient(90deg,#373439,#343237);border-bottom:1px solid #ffffff05}
.professions-modal .sheet-head h2{min-width:0;padding:0;font-size:22px;line-height:1.35;letter-spacing:-.5px;font-weight:600;color:#f1edf3}
.professions-modal .close{width:44px;height:44px;border:1px solid #ffffff16;background:#ffffff06;box-shadow:inset 0 1px 0 #ffffff08;color:#ded9df}
.professions-modal .close svg{width:18px;height:18px;stroke-width:1.5}
.professions-modal #modal-body{padding:15px 21px 23px}
.professions-label{display:flex;align-items:center;gap:8px;color:#c69aa7;font-size:var(--cabinet-copy-size);font-weight:500;line-height:var(--cabinet-copy-leading);letter-spacing:0}
.professions-label>svg{width:17px;height:17px;stroke-width:1.4}
.professions-modal #professions-intro{margin:10px 0 23px;font-size:var(--cabinet-copy-size);line-height:var(--cabinet-copy-leading);font-weight:400;letter-spacing:0;color:#c6bec9}
.professions-list{display:grid;gap:10px}
.profession-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:24px minmax(0,1fr) 24px;column-gap:12px;row-gap:7px;align-items:center;align-content:center;width:100%;min-height:111px;padding:18px 15px;border:1px solid #c3b2c124;border-radius:19px;background:linear-gradient(125deg,#ffffff08,#ffffff03);box-shadow:inset 0 1px 0 #ffffff08;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#f1edf3;text-align:left}
.profession-card:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#a25c7640,#85465c26 58%,#ffffff04);opacity:0}
.profession-card>*,.profession-card-copy>*{position:relative;z-index:1}
.profession-card-icon{grid-column:1;grid-row:1;width:24px;height:24px;stroke-width:1.4;color:#c69aa7}
.profession-card-copy{display:contents}
.profession-card-title{grid-column:2;grid-row:1;display:block;font-size:15px;line-height:1.4;font-weight:600;letter-spacing:-.3px;color:#f1edf3}
.profession-card-description{grid-column:2/-1;grid-row:2;display:block;font-size:var(--cabinet-copy-size);line-height:var(--cabinet-copy-leading);font-weight:400;letter-spacing:0;color:#c0b6c3}
.profession-card-arrow{grid-column:3;grid-row:1;display:grid;place-items:center;width:24px;height:24px;border:1px solid #d1bccc28;border-radius:50%;background:#ffffff06;color:#d1bdcc}
.profession-card-arrow svg{width:13px;height:13px;stroke-width:1.5}
.professions-modal :is(.profession-card,.close):focus-visible{outline:2px solid #c69aa7;outline-offset:3px}
@media(max-width:359px){.professions-modal .sheet-head{padding:17px 15px 13px;gap:9px}.professions-modal .sheet-head h2{font-size:20px}.professions-modal #modal-body{padding:14px 15px 20px}.profession-card{grid-template-columns:22px minmax(0,1fr) 24px;column-gap:9px;padding:16px 12px}.profession-card-icon{width:22px;height:22px}.profession-card-title{font-size:14px}}
@media(hover:hover){.profession-card:hover{border-color:#b3829470}.professions-modal .close:hover{background:#ffffff0e}}
@keyframes profession-wash{0%,20%,100%{opacity:0}6%,12%{opacity:1}}
@media(prefers-reduced-motion:no-preference){.profession-card:before{animation:profession-wash 15s ease-in-out var(--profession-delay) infinite}.profession-card,.professions-modal .close{transition:border-color .2s ease,background-color .2s ease}}
