:root{--page-max-width:1360px;color:#eef2f8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--surface:#212d3ee6;--surface-raised:#293749f0;--surface-soft:#ffffff18;--border:#b8c7de3d;--border-strong:#e8b5676b;--text:#eef2f8;--text-muted:#bac5d5;--text-soft:#d7deea;--accent:#e8b567;--accent-strong:#f2c77e;--accent-ink:#17110a;--danger:#ff8d85;--success:#81d69b;--focus-ring:0 0 0 3px #6fa8ff47;--creation-race:#d0917f;--creation-race-rgb:208, 145, 127;--creation-race-chip:#efb5a8;--creation-race-text:#2b120c;--creation-specialization:#96c7a3;--creation-specialization-rgb:150, 199, 163;--creation-specialization-chip:#b9ddc0;--creation-specialization-text:#071b10;--creation-stone:#8fb9d6;--creation-stone-rgb:143, 185, 214;--creation-stone-chip:#b2d1e6;--creation-stone-text:#071827;--spell-school-color:#e8b567;--spell-school-ink:#17110a;--spell-school-rgb:232, 181, 103;background-color:#162131;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.spell-school--destruction{--spell-school-color:#ff9a76;--spell-school-ink:#2b0f08;--spell-school-rgb:255, 154, 118}.spell-school--conjuration{--spell-school-color:#c9a7ff;--spell-school-ink:#1b0f2e;--spell-school-rgb:201, 167, 255}.spell-school--illusion{--spell-school-color:#9db7ff;--spell-school-ink:#071631;--spell-school-rgb:157, 183, 255}.spell-school--alteration{--spell-school-color:#83d8c2;--spell-school-ink:#052018;--spell-school-rgb:131, 216, 194}.spell-school--guerison{--spell-school-color:#a8dc7f;--spell-school-ink:#102006;--spell-school-rgb:168, 220, 127}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{background:#162131;min-width:320px;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit;min-height:44px}img,svg,video,canvas,button,input,select,textarea,a{max-width:100%}input,select,textarea{min-width:0}:where(button){touch-action:manipulation}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{box-shadow:var(--focus-ring);outline:0}.app-shell{min-height:100vh;color:var(--text);background:radial-gradient(circle at 14% 0,#e8b56738,#0000 30rem),radial-gradient(circle at 92% 8%,#4f90d933,#0000 28rem),linear-gradient(135deg,#162131,#1d2b3f 58%,#221e18);flex-direction:column;padding:clamp(12px,3vw,32px);display:flex}.app-footer{width:min(var(--page-max-width), 100%);color:var(--text-muted);opacity:.72;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:auto auto 0;padding-top:24px;font-size:.78rem;display:flex}.page{width:min(var(--page-max-width), 100%);min-width:0;margin:0 auto}.page-header{margin-bottom:32px}.page-kicker,.panel-eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.page-header h1{color:var(--text);letter-spacing:0;margin:0;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95}.page-subtitle{max-width:640px;color:var(--text-muted);margin:18px 0 0;font-size:1.1rem}@media (width<=760px){.app-shell{padding:12px}.page-header{margin-bottom:20px}.page-header h1{overflow-wrap:anywhere;font-size:clamp(2rem,14vw,3rem);line-height:1}.page-subtitle{font-size:1rem}}.app-header{width:min(var(--page-max-width), 100%);border:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#182332ad;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin:0 auto 24px;padding:12px 14px;display:flex}.app-header__brand{min-width:0;color:var(--text);overflow-wrap:anywhere;align-items:center;gap:10px;font-size:1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.app-header__brand-icon{border-radius:10px;width:34px;min-width:34px;height:34px;box-shadow:0 8px 24px #0000003d}.app-header__nav{flex-wrap:wrap;align-items:center;gap:16px;min-width:0;display:flex}.app-header__characters{align-items:center;min-width:0;display:inline-flex;position:relative}.app-header__characters-button{min-height:0;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.app-header__characters-chevron{border:1px solid #0000;border-radius:999px;place-items:center;width:20px;min-width:20px;height:20px;min-height:20px;display:inline-grid;position:relative}.app-header__characters-chevron:before{content:"";border-bottom:2px solid;border-right:2px solid;width:6px;height:6px;transform:translateY(-1px)rotate(45deg)}.app-header__characters-button:hover,.app-header__characters-button:focus-visible,.app-header__characters.is-open .app-header__characters-button{color:var(--accent-strong)}.app-header__characters-button:hover .app-header__characters-chevron,.app-header__characters-button:focus-visible .app-header__characters-chevron,.app-header__characters.is-open .app-header__characters-chevron{border-color:var(--border);background:var(--surface-soft)}.app-header__characters-menu{z-index:50;border:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#111823f5;border-radius:16px;width:min(320px,100vw - 48px);max-height:min(420px,100vh - 140px);padding:8px;display:none;position:absolute;top:calc(100% + 12px);left:0;overflow:auto;box-shadow:0 24px 72px #0000005c}.app-header__characters.is-open .app-header__characters-menu{gap:6px;display:grid}.app-header__characters-menu:before{content:"";width:100%;height:12px;position:absolute;top:-12px;left:0}.app-header__character-link,.app-header__characters-create{min-width:0;color:var(--text);background:0 0;border-radius:12px;padding:10px;text-decoration:none;display:grid}.app-header__character-link{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px}.app-header__character-group{gap:4px;display:grid}.app-header__character-group+.app-header__character-group{border-top:1px solid var(--border);padding-top:8px}.app-header__character-group-title{color:var(--accent-strong);overflow-wrap:anywhere;padding:4px 10px 2px;font-size:.78rem;font-weight:800}.app-header__character-link:hover,.app-header__characters-create:hover{background:var(--surface-soft)}.app-header__character-avatar{border:1px solid var(--border);width:38px;height:38px;color:var(--accent-ink);background:var(--accent);border-radius:50%;place-items:center;font-weight:900;display:grid;overflow:hidden}.app-header__character-avatar img{object-fit:cover;width:100%;height:100%}.app-header__character-link strong,.app-header__character-link small,.app-header__characters-status{overflow-wrap:anywhere;min-width:0;display:block}.app-header__character-link strong{color:var(--text)}.app-header__character-link small,.app-header__characters-status{color:var(--text-muted);font-size:.84rem}.app-header__characters-status{padding:10px}.app-header__characters-create{color:var(--accent-strong);font-weight:800}.app-header__menu-button{border:1px solid var(--border);color:var(--text);background:var(--surface-soft);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:9px 12px;font-weight:800;display:none}.app-header__nav a{color:var(--text-muted);overflow-wrap:anywhere;text-decoration:none}.app-header__nav a:hover,.app-header__nav a.is-active{color:var(--accent-strong)}.app-header__nav .app-header__user{color:var(--text-muted)}.app-header__nav .app-header__user.is-active,.app-header__nav .app-header__user:hover{color:var(--accent-strong)}.app-header__badge{min-width:22px;min-height:22px;color:var(--accent-ink);background:var(--accent);border-radius:999px;justify-content:center;align-items:center;margin-left:8px;padding:2px 7px;font-size:.78rem;font-weight:800;line-height:1;display:inline-flex}.app-header__link-button{color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.app-header__link-button:hover{color:var(--accent-strong);text-decoration:underline}.app-header__link-button:disabled{cursor:wait;opacity:.7}@media (width<=760px){.app-header{flex-flow:wrap;align-items:center;gap:12px;margin-bottom:16px}.app-header__brand{flex:auto}.app-header__menu-button{display:inline-flex}.app-header__nav{gap:10px;width:100%;display:none}.app-header__nav.is-open{display:flex}.app-header__characters{flex-wrap:wrap;flex:100%;width:100%}.app-header__characters-button{border:1px solid var(--border);background:var(--surface-soft);text-align:center;border-radius:999px;flex:100%;justify-content:space-between;width:100%;min-height:40px;padding:9px 12px}.app-header__characters-button span:first-child{text-align:center;flex:auto}.app-header__characters-chevron{width:24px;min-width:24px;height:24px;min-height:24px}.app-header__characters-menu{order:3;width:100%;max-height:320px;margin-top:8px;position:static}.app-header__nav a,.app-header__link-button{border:1px solid var(--border);background:var(--surface-soft);text-align:center;border-radius:999px;flex:150px;min-height:40px;padding:9px 12px}.app-header__nav .app-header__characters-menu a{text-align:left;background:0 0;border:0;border-radius:12px;flex:none;min-height:0;padding:10px}.app-header__nav .app-header__characters-menu a:hover{background:var(--surface-soft)}}@media (width<=420px){.app-header__nav a,.app-header__link-button{flex-basis:100%}}.panel{border:1px solid var(--border);min-width:0;color:var(--text);background:var(--surface);border-radius:18px;padding:24px;position:relative;box-shadow:0 24px 70px #0000003d}.panel-primary{min-height:360px}.panel h2{color:var(--text);margin:0 0 18px;font-size:1.6rem}.panel p{color:var(--text-muted)}@media (width<=760px){.panel{border-radius:14px;padding:16px}}.dashboard-grid{grid-template-columns:minmax(0,2fr) minmax(min(280px,100%),1fr);gap:24px;display:grid}.dashboard-grid--single{grid-template-columns:minmax(0,1fr)}.character-list-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.character-list-heading h2{margin-bottom:0}.character-create-link,.character-card__delete,.character-create-form__actions button,.character-create-form__actions a,.confirm-modal__actions button{border:0;border-radius:12px;padding:10px 14px;font-weight:700;text-decoration:none}.character-create-link,.character-create-form__actions button,.confirm-modal__actions button:last-child{color:#2a1709;background:#f1c27d}.character-create-link:hover,.character-create-form__actions a:hover{text-decoration:underline}.character-list{gap:12px;display:grid}.character-owner-list{gap:22px;display:grid}.character-owner-group{gap:12px;display:grid}.character-owner-group__heading{border-bottom:1px solid #e5c49629;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.character-owner-group__heading h3{color:#fff8ed;margin:0;font-size:1rem}.character-owner-group__heading span{color:#f0dfc8;white-space:nowrap;font-size:.86rem}.character-card{color:inherit;background:#fff8ed0f;border:1px solid #e5c4962e;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;transition:transform .16s,border-color .16s,background .16s;display:flex}.character-card:hover{background:#fff8ed1a;border-color:#e5c49670;transform:translateY(-1px)}.character-card__link{min-width:0;color:inherit;flex:1;justify-content:space-between;align-items:center;gap:16px;padding:16px 0 16px 16px;text-decoration:none;display:flex}.character-card span{gap:4px;display:grid}.character-card__identity{align-items:center;gap:12px;min-width:0;display:flex}.character-card__avatar{color:#2a1709;background:#f1c27d;border:1px solid #e5c49642;border-radius:50%;flex:0 0 48px;place-items:center;width:48px;height:48px;font-weight:900;display:grid;overflow:hidden}.character-card__avatar img{object-fit:cover;width:100%;height:100%}.character-card strong{color:#fff8ed;overflow-wrap:anywhere;font-size:1.05rem}.character-card small,.character-card em{color:#f0dfc8;font-size:.92rem}.character-card em{white-space:nowrap;margin-right:12px;font-style:normal}.character-card__delete{color:#ffcdc6;cursor:pointer;background:#5a302f;margin-right:16px}.character-card__delete:hover{background:#ffb4a829}.modal-backdrop{z-index:20;background:#080604b8;place-items:center;padding:clamp(16px,4vw,32px);display:grid;position:fixed;inset:0}.confirm-modal{color:#f4eadc;background:#211711;border:1px solid #e5c4963d;border-radius:8px;width:min(440px,100%);max-height:calc(100dvh - clamp(32px,8vw,64px));margin:0;padding:22px;position:static;overflow:auto;box-shadow:0 24px 80px #0000006b}.confirm-modal h2{color:#fff8ed;margin:0;font-size:1.25rem}.confirm-modal p{color:#f0dfc8;margin:12px 0 0;line-height:1.55}.confirm-modal .form-error{color:#ffb4a8}.confirm-modal__actions{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.confirm-modal__actions button{color:#f1c27d;cursor:pointer;background:#3b2f24}.confirm-modal__actions button:disabled{cursor:wait;opacity:.68}.character-create-panel{width:100%;min-width:0}.character-create-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.character-create-form label{color:#fff8ed;gap:8px;display:grid}.character-create-form>label:first-child,.character-create-form .avatar-field{grid-column:1/-1}.character-create-form input,.character-create-form select{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:12px;padding:10px 12px}.character-create-form select:disabled{cursor:not-allowed;opacity:.62}.character-create-form input[type=file]{padding:9px 12px}.avatar-preview{object-fit:cover;border:1px solid #e5c49642;border-radius:50%;width:112px;height:112px}.character-create-form [role=alert]{color:#ffb4a8;font-size:.9rem}.character-create-form .form-error,.character-create-rules,.character-create-step,.character-create-form__actions{grid-column:1/-1}.character-create-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.character-create-rule-card{background:linear-gradient(#fff8ed0e,#fff8ed06),#fff8ed09;border:1px solid #e5c4962e;border-radius:8px;grid-column:1/-1;padding:16px;position:relative;overflow:hidden}.character-create-rule-card:before{background:rgba(var(--creation-race-rgb), .82);content:"";width:4px;position:absolute;inset:0 auto 0 0}.character-create-rule-card--stone:before{background:rgba(var(--creation-stone-rgb), .78)}.character-create-rule-card--specialization:before{background:rgba(var(--creation-specialization-rgb), .78)}.character-create-rule-card__eyebrow{border:1px solid rgba(var(--creation-race-rgb), .3);width:fit-content;color:var(--creation-race);background:rgba(var(--creation-race-rgb), .13);text-transform:uppercase;border-radius:999px;margin-bottom:8px;padding:3px 8px;font-size:.72rem;font-weight:900;line-height:1;display:inline-flex}.character-create-rule-card--stone .character-create-rule-card__eyebrow{border-color:rgba(var(--creation-stone-rgb), .28);color:var(--creation-stone);background:rgba(var(--creation-stone-rgb), .12)}.character-create-rule-card--specialization .character-create-rule-card__eyebrow{border-color:rgba(var(--creation-specialization-rgb), .28);color:var(--creation-specialization);background:rgba(var(--creation-specialization-rgb), .12)}.character-create-rules h2{color:#fff8ed;margin:0 0 8px;font-size:1rem}.character-create-rules p{color:#f0dfc8;margin:0;line-height:1.55}.character-create-rules__bonuses{color:#f4eadc;flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.character-create-rules__bonus-block{background:#fff8ed0a;border:1px solid #e5c49624;border-radius:8px;gap:7px;min-width:min(100%,132px);padding:10px;display:grid}.character-create-rules__bonus-block.is-major-bonus{border-color:rgba(var(--creation-race-rgb), .36);background:rgba(var(--creation-race-rgb), .1)}.character-create-rules__bonuses strong,.character-create-rules__gifts strong{color:#fff8ed;font-size:.92rem}.character-create-rules__bonuses ul{color:#f0dfc8;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.character-create-rules__bonuses li{color:#f8ddbd;background:rgba(var(--creation-race-rgb), .15);border-radius:999px;width:fit-content;padding:4px 8px;font-size:.86rem;line-height:1.1}.character-create-rules__gifts{color:#f4eadc;gap:8px;margin-top:14px;display:grid}.character-create-rules__gifts ul{color:#f0dfc8;gap:4px;margin:0;padding-left:18px;display:grid}.character-create-rules dl{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0 0;display:grid}.character-create-rules dl div{background:#fff8ed0a;border:1px solid #e5c4961f;border-radius:8px;gap:3px;min-width:0;padding:8px;display:grid}.character-create-rules dt{color:#f0dfc8;font-size:.78rem}.character-create-rules dd{color:#fff8ed;margin:0;font-weight:800}.character-create-step{border:1px solid #e5c49633;border-radius:8px;gap:18px;margin:0;padding:16px;display:grid}.character-create-step legend,.character-create-spells h2{color:#fff8ed;font-size:.98rem;font-weight:800}.character-create-step__grid,.character-create-spells__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.guardian-stone-choice-card{border:1px solid rgba(var(--creation-stone-rgb), .32);background:linear-gradient(180deg, rgba(var(--creation-stone-rgb), .1), rgba(var(--creation-stone-rgb), .045)), #fff8ed06;box-shadow:inset 3px 0 0 rgba(var(--creation-stone-rgb), .78);border-radius:8px;gap:14px;padding:14px;display:grid}.guardian-stone-choice-card__heading{gap:6px;display:grid}.guardian-stone-choice-card__heading span{border:1px solid rgba(var(--creation-stone-rgb), .28);width:fit-content;color:var(--creation-stone);background:rgba(var(--creation-stone-rgb), .12);text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:900;line-height:1}.guardian-stone-choice-card__heading h2{color:#fff8ed;margin:0;font-size:1rem}.character-create-spells{gap:12px;display:grid}.spell-school .character-create-spells__grid{margin-top:12px}.character-create-step-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.character-create-step-heading h2,.character-create-spells h2{margin:0}.character-create-step-heading span{color:#f1c27d;font-weight:800}.free-skill-groups,.spell-school-groups{gap:12px;display:grid}.character-create-free-points .free-skill-groups{margin-top:14px}.free-skill-group,.spell-school{border:1px solid #e5c49629;border-radius:8px;padding:12px}.free-skill-group.is-specialization{border-color:rgba(var(--creation-specialization-rgb), .44);background:rgba(var(--creation-specialization-rgb), .07);box-shadow:inset 3px 0 0 rgba(var(--creation-specialization-rgb), .78)}.free-skill-group summary,.spell-school summary{color:#fff8ed;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin:0;font-size:.94rem;font-weight:800;display:flex}.free-skill-group summary::-webkit-details-marker{display:none}.free-skill-group summary span,.free-skill-row span{gap:2px;display:grid}.free-skill-row strong{width:fit-content;color:var(--creation-race-text);background:var(--creation-race-chip);border-radius:999px;padding:2px 7px;font-size:.72rem}.free-skill-row .free-skill-bonus--stone{color:var(--creation-stone-text);background:var(--creation-stone-chip)}.free-skill-row .free-skill-bonus--race{color:var(--creation-race-text);background:var(--creation-race-chip)}.free-skill-group summary strong{color:var(--creation-specialization-chip);font-size:.82rem}.free-skill-group small,.spell-school small{color:#d9c0a0;font-weight:700}.free-skill-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.free-skill-row{grid-template-columns:minmax(0,1fr) 132px;align-items:center;column-gap:16px;padding-right:8px;display:grid}.free-skill-row>span:not(.number-stepper){flex-wrap:wrap;align-items:center;gap:3px 6px;min-width:0;display:flex}.free-skill-row>span:not(.number-stepper) small{flex-basis:100%}.free-skill-row .number-stepper{border-radius:12px;grid-template-columns:40px 52px 40px;justify-self:end;width:132px;min-width:132px;max-width:132px;display:grid}.free-skill-row .number-stepper input{text-align:center;background:0 0;border:0;border-radius:0;width:auto;min-width:0;min-height:38px;padding:6px 4px}.free-skill-row .number-stepper__button{border:0;border-radius:0;place-items:center;width:40px;min-width:40px;height:38px;min-height:38px;padding:0;display:grid}.free-skill-row .number-stepper__button--decrease{border-radius:12px 0 0 12px}.free-skill-row .number-stepper__button--increase{border-radius:0 12px 12px 0}.spell-school-destruction{background:#ee73530f;border-color:#ee735361}.spell-school-conjuration{background:#9180ee0f;border-color:#9180ee61}.spell-school-illusion{background:#da76d20f;border-color:#da76d261}.spell-school-alteration{background:#67bea00f;border-color:#67bea061}.spell-school-guerison{background:#79c8770f;border-color:#79c87761}.character-create-spell-choice{border:1px solid #e5c49629;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;padding:10px}.character-create-spell-choice input{margin-top:4px}.character-create-spell-choice span{gap:2px;display:grid}.character-create-spell-choice small{color:#d9c0a0}.character-create-spell-choice em{color:#f0dfc8;font-size:.86rem;font-style:normal;line-height:1.35}.character-create-form__actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:8px;display:flex}.character-create-form__actions a{color:#f1c27d}.character-create-form__actions small{color:#d9c0a0;margin-right:auto}.character-create-form__actions button{cursor:pointer}.character-create-form__actions button:disabled{cursor:not-allowed;opacity:.7}@media (width<=760px){.dashboard-grid{grid-template-columns:1fr}.character-list-heading,.character-owner-group__heading,.character-create-form__actions{flex-direction:column;align-items:stretch}.character-card{flex-direction:column;align-items:flex-start}.character-card__link{flex-direction:column;align-items:flex-start;width:100%;padding:16px 16px 0}.character-card__delete{width:calc(100% - 32px);margin:0 16px 16px}.confirm-modal__actions{flex-direction:column}.confirm-modal{width:min(100%,420px);padding:20px}.character-create-form,.character-create-rules,.character-create-step__grid,.character-create-spells__grid,.free-skill-list{grid-template-columns:1fr}.character-create-rules dl{grid-template-columns:repeat(2,minmax(0,1fr))}.character-create-page .breadcrumb{margin-bottom:12px}.character-create-page .breadcrumb>span,.character-create-page .page-kicker,.character-create-page .page-subtitle{display:none}.character-create-page .page-header{margin-bottom:16px}.character-create-page .page-header h1{font-size:clamp(2rem,12vw,2.8rem)}}@media (width<=480px){.character-create-link,.character-create-form__actions button,.character-create-form__actions a,.confirm-modal__actions button{text-align:center;width:100%}.character-card__identity{align-items:flex-start}.free-skill-row{grid-template-columns:minmax(0,1fr) 132px;padding-right:0}.free-skill-row .number-stepper{justify-self:end}}@media (width<=360px){.free-skill-row{grid-template-columns:1fr}.free-skill-row .number-stepper{justify-self:start}}.breadcrumb{color:#f0dfc8;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-bottom:24px;font-size:.92rem;display:flex}.breadcrumb a{color:#f1c27d;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.sheet-hero{color:#fff8ed;background:#2b2119;border:1px solid #e5c4963d;border-radius:28px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:28px;display:flex;box-shadow:0 24px 80px #0000004d}.app-shell .sheet-hero.sheet-hero--race{background:linear-gradient(90deg, #0c121bbd, #0c121b6b 52%, #0c121b94), linear-gradient(180deg, #0c121b0f, #0c121b80), radial-gradient(circle at top right, #94bfdf2e, transparent 20rem), var(--sheet-race-background) center / cover no-repeat}.sheet-hero p{color:#ead7bd;margin:14px 0 0}.sheet-hero h1{color:#fff8ed;margin:0;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.95}.sheet-hero-main{flex:auto;align-items:center;gap:18px;min-width:0;display:flex}.sheet-avatar{color:#2a1709;background:#f1c27d;border:1px solid #fff8ed38;border-radius:50%;flex:0 0 124px;place-items:center;width:124px;height:124px;font-size:3rem;font-weight:900;display:grid;overflow:hidden;box-shadow:0 18px 44px #00000047}.sheet-avatar img{object-fit:cover;width:100%;height:100%}.sheet-hero-fields{gap:12px;display:grid}.sheet-hero-fields .editable-field input{color:#fff8ed;background:0 0;padding:0;font-size:clamp(2.2rem,5vw,4.4rem);font-weight:900;line-height:.95}.sheet-hero-meta{color:#ead7bd;flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sheet-hero-meta .editable-field{max-width:180px}.sheet-hero-meta .editable-field input,.sheet-hero-meta span{color:#ead7bd;font-size:1rem;font-weight:700;line-height:1.25}.sheet-hero-meta>span{align-items:center;min-height:28px;display:inline-flex}.sheet-avatar-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.sheet-avatar-actions label,.sheet-avatar-actions button{color:#2a1709;cursor:pointer;background:#f1c27d;border:1px solid #fff8ed29;border-radius:12px;padding:8px 12px;font-weight:800}.sheet-avatar-actions input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}:where(body:not(#css-dup-1)) .sheet-avatar-actions button{color:#fff8ed;background:#2c3a4e}.sheet-avatar-error{color:#ffb4a8}.sheet-hero-stats{grid-template-columns:repeat(3,minmax(88px,1fr));gap:12px;min-width:min(360px,100%);max-width:520px;display:grid}.sheet-hero-stats .editable-field{color:#f0dfc8;text-align:center;background:#2a394d;border:1px solid #fff8ed29;border-radius:18px;align-content:center;gap:6px;min-height:96px;padding:16px;display:grid}.sheet-hero-stats .editable-field input{color:#fff8ed;text-align:center;background:0 0;font-size:1.8rem;font-weight:900}.sheet-grid{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}.sheet-accordion{grid-column:1/-1;gap:12px;display:grid;position:relative}.sheet-static-section{grid-column:1/-1;min-width:0;display:grid}.sheet-accordion__trigger{border:1px solid var(--border);width:100%;min-height:52px;color:var(--text);cursor:pointer;text-align:left;background:#111823c7;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;font-weight:900;display:flex}.sheet-accordion__trigger span:first-child{overflow-wrap:anywhere;min-width:0}.sheet-accordion__indicator{width:30px;min-width:30px;height:30px;min-height:30px;color:var(--accent-ink);background:var(--accent);border-radius:999px;display:block;position:relative}.sheet-accordion__indicator:before,.sheet-accordion__indicator--closed:after{content:"";background:currentColor;border-radius:999px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sheet-accordion__indicator--closed:after{transform:translate(-50%,-50%)rotate(90deg)}.sheet-accordion__trigger:hover,.sheet-accordion__trigger:focus-visible{background:#182231eb;border-color:#e8b56757}.sheet-accordion.is-open{gap:0}.sheet-accordion.is-open .sheet-accordion__trigger{z-index:2;width:30px;min-width:30px;height:30px;min-height:30px;color:var(--accent-ink);background:var(--accent);border-color:#0000;border-radius:999px;place-items:center;padding:0;display:grid;position:absolute;top:14px;right:14px}.sheet-accordion.is-open .sheet-accordion__trigger:before{content:"";background:currentColor;border-radius:999px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sheet-accordion.is-open .sheet-accordion__trigger:hover,.sheet-accordion.is-open .sheet-accordion__trigger:focus-visible{background:var(--accent-strong)}.sheet-accordion.is-open .sheet-accordion__trigger span:first-child{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.sheet-accordion.is-open .sheet-accordion__indicator{display:none}.sheet-accordion__content{min-width:0;display:grid}.sheet-accordion__content[hidden]{display:none}.sheet-quick-nav{z-index:20;border:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);scroll-snap-type:x proximity;scrollbar-width:thin;background:#0d1117e0;border-radius:16px;gap:8px;margin:0 0 18px;padding:8px;display:flex;position:sticky;top:10px;overflow-x:auto;box-shadow:0 16px 42px #0000003d}.sheet-quick-nav a{color:var(--text-muted);scroll-snap-align:start;white-space:nowrap;background:#ffffff0e;border:1px solid #0000;border-radius:999px;flex:none;padding:9px 12px;font-size:.9rem;font-weight:800;text-decoration:none}.sheet-quick-nav a:hover,.sheet-quick-nav a:focus-visible{color:var(--accent-strong);background:#e8b56721;border-color:#e8b56747}#sheet-menu{scroll-margin-top:12px}#sheet-overview,#sheet-identity,#sheet-progression,#sheet-resources,#sheet-skills,#sheet-combat,#sheet-spells,#sheet-inventory,#sheet-alchemy,#sheet-talents,#sheet-enchantments,#sheet-notes{scroll-margin-top:92px}.sheet-technical-id{color:var(--text-muted);opacity:.72;overflow-wrap:anywhere;margin:28px 0 0;font-size:.82rem}.sheet-floating-back{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));z-index:35;width:46px;min-width:46px;height:46px;min-height:46px;color:var(--text);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:.74;background:#1118239e;border:1px solid #9fb2cd47;border-radius:999px;place-items:center;font-size:1.35rem;font-weight:900;line-height:1;text-decoration:none;transition:opacity .16s,transform .16s,background .16s;display:grid;position:fixed;box-shadow:0 18px 42px #00000047}.sheet-floating-back:hover,.sheet-floating-back:focus-visible{color:var(--accent-strong);opacity:1;background:#111823e6;transform:translateY(-2px)}.identity-panel{grid-column:1/-1;align-self:start}.identity-characteristics{border-bottom:1px solid #e5c49624;gap:12px;margin-bottom:20px;padding-bottom:18px;display:grid}.identity-characteristics h2{color:#fff8ed;margin:0;font-size:1rem}.identity-list{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:14px 28px;margin:0;display:grid}.identity-list div{border-bottom:1px solid #e5c49624;justify-content:space-between;gap:16px;padding-bottom:12px;display:flex}.identity-list div:first-child{border-bottom:0;grid-row:span 2;justify-content:stretch;gap:10px;padding-bottom:0;display:grid}.identity-list dt{color:#f0dfc8}.identity-list dd{color:#fff8ed;text-align:right;margin:0;font-weight:700}.identity-gift-list{text-align:left;gap:6px;margin:0;padding-left:18px;display:grid}.identity-gift-list li{max-width:none;line-height:1.45}.characteristic-list{grid-template-columns:repeat(5,minmax(112px,1fr));gap:10px;margin:0;display:grid}.characteristic-list .editable-field{background:#fff8ed0f;border:1px solid #e5c4961f;border-radius:8px;gap:6px;padding:12px;display:grid}.characteristic-list .editable-field span{color:#f0dfc8;font-size:.82rem;font-weight:400}.characteristic-list .editable-field input{color:#fff8ed;text-align:left;background:0 0;font-size:1.35rem;font-weight:900}.identity-edit-list{grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(160px,.7fr));gap:14px;display:grid}.identity-rules-grid{grid-template-columns:minmax(0,1.25fr) minmax(280px,.9fr) minmax(220px,.65fr);gap:18px;display:grid}.gift-editor,.guardian-stone-editor,.encumbrance-editor{align-content:start;gap:12px;display:grid}.identity-rule-card{background:#fff8ed09;border:1px solid #e5c49624;border-radius:8px;gap:16px;padding:16px;display:grid}.identity-rule-card h3{color:#fff8ed;margin:0;font-size:1rem}.gift-editor h3{color:#fff8ed;margin:0}.gift-list{gap:10px;display:grid}.gift-row{background:#fff8ed0d;border:1px solid #e5c49624;border-radius:8px;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:10px;padding:10px;display:grid}.gift-row strong{color:#fff8ed;display:block}.gift-row button,.gift-add-row button{color:#24180f;cursor:pointer;background:#f1c27d;border:1px solid #e5c49638;border-radius:8px;width:36px;height:36px;font-size:1.1rem;font-weight:900}.gift-add-row{grid-template-columns:minmax(0,1fr) 36px;gap:10px;display:grid}.gift-add-row input{color:#fff8ed;font:inherit;background:#26364a;border:1px solid #e5c49629;border-radius:8px;padding:9px 10px}.rule-effects{color:#f0dfc8;border-top:1px solid #e5c49624;gap:8px;padding-top:12px;display:grid}.rule-effects strong{color:#fff8ed}.rule-effects ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rule-effects li,.rule-effects p{margin:0}.race-effect-list{flex-wrap:wrap;gap:8px;display:flex}.race-effect-list span{color:#f0dfc8;background:#2a394d;border:1px solid #e5c49624;border-radius:999px;justify-content:center;align-items:center;min-height:24px;padding:5px 9px;font-size:.86rem;line-height:1;display:inline-flex}.encumbrance-fields{gap:12px;display:grid}.resources-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;display:grid}.resource-card{color:#f6ead8;background:#23180fd1;border:1px solid #e5c49633;border-radius:22px;padding:18px}.resource-card-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.resource-card h3{color:#fff8ed;margin:0}.resource-card p{color:#f0dfc8;margin:12px 0 0;font-size:.9rem}.resource-fields{grid-template-columns:1fr;gap:12px;margin-top:14px;display:grid}.resource-field{min-width:0}.resource-field .editable-field-label{grid-template-columns:minmax(0,1fr) auto;display:grid}.resource-field .field-adjustment{justify-self:end}.resource-field-regeneration{grid-column:auto}.resource-bar{background:#fff8ed1f;border-radius:999px;height:10px;overflow:hidden}.resource-bar span{border-radius:inherit;background:linear-gradient(90deg,#b8793d,#f1c27d);height:100%;display:block}.skills-panel,.combat-panel,.spells-panel,.inventory-panel,.alchemy-panel,.talents-panel,.enchantments-panel,.notes-panel,.progression-panel{grid-column:1/-1}.skill-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.skill-group,.combat-block,.spell-card,.alchemy-block,.talent-block,.enchantment-card{background:#fff8ed0a;border:1px solid #e5c49629;border-radius:18px;padding:16px}.skill-group h2,.combat-block h3,.spell-card h3,.alchemy-block h3,.talent-block h3,.enchantment-card h3{color:#fff8ed;margin:0 0 14px}.skill-group h2{justify-content:space-between;align-items:center;gap:10px;display:flex}.skill-group h2 small{color:#e5c496;text-transform:uppercase;border:1px solid #e5c4963d;border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:700}:where(body:not(#css-dup-1)) .skill-group h2{font-size:1.15rem}.skill-list,.compact-table,.slot-list,.talent-list,.enchantment-list{gap:10px;display:grid}.skill-row,.inventory-row{color:#f0dfc8;justify-content:space-between;align-items:center;gap:16px;display:flex}.skill-row{grid-template-columns:minmax(0,1fr) 144px;align-items:center;gap:10px 12px;display:grid}.skill-row__label{gap:4px;min-width:0;display:grid}.skill-row__name{min-width:0}.skill-row__chips{flex-wrap:wrap;gap:4px 6px;display:flex}.skill-row strong,.inventory-row strong,.compact-table-row strong,.arrow-card strong,.combat-summary strong,.state-grid strong{color:#fff8ed}.skill-value input{color:#fff8ed;width:64px;font:inherit;text-align:right;background:#26364a;border:1px solid #e5c49629;border-radius:8px;padding:6px 8px;font-weight:900}.skill-value{align-items:center;gap:8px;display:inline-flex}.skill-bonus-chip,.skill-value small{color:#2a1709;background:#f1c27d;border-radius:999px;justify-content:center;align-items:center;min-height:20px;padding:2px 7px;font-size:.76rem;font-weight:900;line-height:1;display:inline-flex}.skill-bonus-chip--race{color:var(--creation-race-text);background:var(--creation-race-chip)}.skill-bonus-chip--stone{color:var(--creation-stone-text);background:var(--creation-stone-chip)}.combat-grid,.alchemy-grid,.talents-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.compact-table-row,:where(body:not(#css-dup-1)) .inventory-row,.talent-card{border-bottom:1px solid #e5c4961f;padding-bottom:10px}.editable-list,.editable-card{gap:10px;display:grid}.editable-list-row,:where(body:not(#css-dup-1)) .editable-card{background:#fff8ed0a;border:1px solid #e5c49624;border-radius:8px;padding:12px}:where(body:not(#css-dup-1)) .editable-list-row{align-items:center;gap:10px;display:grid}.inventory-edit-row{grid-template-columns:minmax(0,1fr) 88px 36px}.editable-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.editable-list input,.editable-list select,.editable-card input,.editable-card select,.editable-card textarea,.slot-row input{color:#fff8ed;width:100%;min-width:0;font:inherit;background:#26364a;border:1px solid #e5c49629;border-radius:8px;padding:8px 10px}.catalog-select{min-width:0;display:block;position:relative}.catalog-select:after{width:8px;height:8px;color:var(--accent-strong);content:"";pointer-events:none;border-bottom:2px solid;border-right:2px solid;position:absolute;top:50%;right:12px;transform:translateY(-65%)rotate(45deg)}.catalog-select select{appearance:none;cursor:pointer;min-height:42px;padding-right:34px}.catalog-select select:disabled{cursor:default;opacity:.78}:where(body:not(#css-dup-1)) .editable-card textarea{resize:vertical;min-height:92px}.editable-list button,.editable-card button,.inline-add-button{color:#24180f;cursor:pointer;background:#f1c27d;border:1px solid #e5c49638;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-weight:900;display:inline-flex}.reference-detail-link{width:fit-content;min-height:30px;color:var(--accent-strong);background:#e8b56714;border:1px solid #e8b56738;border-radius:999px;justify-content:center;align-items:center;padding:5px 10px;font-size:.78rem;font-weight:900;line-height:1;text-decoration:none;display:inline-flex}.reference-detail-link:hover,.reference-detail-link:focus-visible{background:#e8b56726;border-color:#e8b5677a}.inline-add-button{white-space:nowrap;width:fit-content;max-width:100%}.icon-button{place-items:center;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;display:inline-grid;position:relative}.icon-button:before,.icon-button--add:after{content:"";background:#24180f;border-radius:999px;width:12px;height:2px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.icon-button--add:after{transform:translate(-50%,-50%)rotate(90deg)}.inline-add-button__icon{flex:0 0 12px;width:12px;height:12px;display:block;position:relative}.inline-add-button__icon:before,.inline-add-button__icon:after{content:"";background:currentColor;border-radius:999px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.inline-add-button__icon:after{transform:translate(-50%,-50%)rotate(90deg)}:where(body:not(#css-dup-1)) .inline-add-button{margin-top:14px}.compact-table-row-headered{gap:4px;display:grid}.compact-table-row span,.compact-table-row small,.arrow-card small{color:#f0dfc8}.arrow-card{background:#fff8ed0f;border-radius:14px;gap:4px;margin-top:16px;padding:14px;display:grid}.arrow-card span{color:#f0dfc8;font-size:.86rem}.combat-summary,.state-grid{gap:12px;display:grid}:where(body:not(#css-dup-1)) .combat-summary{grid-template-columns:1fr 1fr;margin-top:16px}.combat-summary span,.state-grid div,.inventory-summary span{color:#f0dfc8;background:#2a394d;border-radius:14px;gap:6px;padding:12px;display:grid}.combat-state-block,.alchemy-block:first-child{grid-column:1/-1}:where(body:not(#css-dup-1)) .state-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.spell-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.spell-card-header,.enchantment-card-header{justify-content:space-between;gap:12px;display:flex}:where(body:not(#css-dup-1)) .spell-card-header{align-items:flex-start;margin-bottom:12px}.spell-card span,.talent-card span{color:#f0dfc8;margin-top:4px;font-size:.88rem;display:block}.spell-card strong{color:#24180f;background:#f1c27d;border-radius:999px;justify-content:center;align-items:center;min-height:26px;padding:4px 10px;font-size:.88rem;display:inline-flex}.spell-card.spell-school{border-color:rgba(var(--spell-school-rgb), .3);background:linear-gradient(180deg, rgba(var(--spell-school-rgb), .12), #fff8ed09), #fff8ed0a;box-shadow:inset 4px 0 0 rgba(var(--spell-school-rgb), .82)}.spell-card.spell-school input:nth-child(2){border-color:rgba(var(--spell-school-rgb), .36);color:var(--spell-school-color)}.app-shell .spell-card.spell-school,.app-shell .spell-card.spell-school.editable-card{border-color:rgba(var(--spell-school-rgb), .34);background:linear-gradient(180deg, rgba(var(--spell-school-rgb), .12), #ffffff0b), var(--surface-soft);box-shadow:inset 4px 0 0 rgba(var(--spell-school-rgb), .82)}.app-shell .spell-card.spell-school input:nth-child(2){border-color:rgba(var(--spell-school-rgb), .38);color:var(--spell-school-color)}.zone-list span{color:#24180f;white-space:nowrap;background:#f1c27d;border-radius:999px;justify-content:center;align-items:center;min-height:26px;padding:5px 10px;font-size:.78rem;font-weight:600;line-height:1;display:inline-flex}.spell-card p,.talent-card p,.enchantment-card p,.notes-content{color:#f0dfc8;margin-top:10px}.inventory-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;display:grid}.progression-count{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.progression-count .editable-field{color:#f0dfc8;background:#2a394d;border-radius:14px;gap:6px;padding:14px;display:grid}.inventory-summary strong,.progression-count .editable-field input{color:#fff8ed;background:0 0;font-size:1.35rem;font-weight:900}.inventory-summary small,.progression-count .editable-field span{color:#f0dfc8;font-size:.9rem}.inventory-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;display:grid}.inventory-extension{border-top:1px solid #e5c49624;margin-top:22px;padding-top:18px}.inventory-extension h3{color:#fff8ed;margin:0 0 14px}.ingredient-list,.zone-list{flex-wrap:wrap;gap:10px;display:flex}.ingredient-pill{color:#d8c4ad;cursor:pointer;background:#2a394d;border:1px solid #e5c4962e;border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:8px 12px;display:inline-flex}.ingredient-pill.is-owned{color:#2a1709;background:#f1c27d;border-color:#f1c27d7a}.slot-row{color:#d8c4ad;border-bottom:1px solid #e5c4961f;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding-bottom:8px;display:grid}.soul-gem-row{grid-template-columns:32px 1fr 1fr}.slot-row strong,:where(body:not(#css-dup-1)) .talent-card span{color:#f1c27d}.talent-card h4{color:#fff8ed;margin:0}:where(body:not(#css-dup-1)) .enchantment-list{margin-top:14px}:where(body:not(#css-dup-1)) .enchantment-card-header{align-items:flex-start}:where(body:not(#css-dup-1)) .zone-list{justify-content:flex-end;align-items:flex-start;gap:8px}:where(body:not(#css-dup-1)) .notes-content{line-height:1.7}.talents-panel .talents-grid{grid-template-columns:1fr}.notes-editor{resize:vertical;width:100%;min-height:180px}.editable-field{gap:6px;min-width:0;display:grid}.editable-field span{color:#f0dfc8;font-size:.84rem}.editable-field-label{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.editable-field input,.editable-field textarea,.editable-field select,:where(body:not(#css-dup-1)) .notes-editor{color:#fff8ed;width:100%;min-width:0;font:inherit;background:#26364a;border:1px solid #e5c49629;border-radius:8px;padding:9px 10px}.editable-field select option{color:#24180f;background:#fff8ed}.field-adjustment{white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;max-width:100%;padding:3px 8px;font-size:.76rem;font-weight:900;line-height:1;display:inline-flex}.field-adjustment-bonus{color:#071b10;background:#b8ddb9}.field-adjustment-malus{color:#2f0f0e;background:#ffb4a8}:where(body:not(#css-dup-1)) .editable-field textarea{resize:vertical}.editable-field input[readonly],.editable-field textarea[readonly],.editable-field select:disabled,.notes-editor[readonly]{cursor:default}.autosave-status{color:#f0dfc8;margin:-10px 0 18px;font-size:.9rem}.autosave-status-error{color:#ffb4a8}.save-toast{z-index:40;border:1px solid var(--border);width:min(620px,100vw - 40px);min-height:48px;color:var(--text);background:var(--surface-raised);border-radius:14px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;padding:8px 8px 8px 16px;animation:.18s ease-out save-toast-slide;display:grid;position:fixed;top:28px;left:50%;transform:translate(-50%);box-shadow:0 18px 54px #0000005c}.save-toast-pending,.save-toast-saving{background:#483214f5;border-color:#e8b56773}.save-toast-saved{background:#14462af5;border-color:#81d69b73}.save-toast-error{background:#56201ff5;border-color:#ff8d8580}.save-toast-message{color:inherit;font-weight:800}.save-toast-close{width:34px;min-width:34px;height:34px;min-height:34px;color:inherit;cursor:pointer;background:#ffffff1a;border:0;border-radius:999px;place-items:center;font-size:1.35rem;font-weight:900;line-height:1;display:grid}@keyframes save-toast-slide{0%{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%)}}.turn-actions{justify-content:flex-end;align-items:center;gap:12px;margin:16px 0;display:flex}.turn-actions button{color:#2a1709;cursor:pointer;background:linear-gradient(135deg,#f4c77d,#d9923c);border:0;border-radius:8px;padding:10px 16px;font-weight:800}.turn-actions small{color:#d9c0a0}@media (width<=880px){:where(body:not(#css-dup-1)) .sheet-hero,:where(body:not(#css-dup-1)) .sheet-hero-main,:where(body:not(#css-dup-1)) .breadcrumb{flex-direction:column}:where(body:not(#css-dup-2)) .sheet-hero-main{align-items:flex-start}:where(body:not(#css-dup-1)) .sheet-grid,:where(body:not(#css-dup-1)) .resources-grid,:where(body:not(#css-dup-1)) .skill-groups,:where(body:not(#css-dup-1)) .characteristic-list,:where(body:not(#css-dup-1)) .identity-edit-list,:where(body:not(#css-dup-1)) .identity-rules-grid,:where(body:not(#css-dup-1)) .sheet-hero-stats,:where(body:not(#css-dup-1)) .combat-grid,:where(body:not(#css-dup-2)) .combat-summary,:where(body:not(#css-dup-2)) .state-grid,:where(body:not(#css-dup-1)) .spell-list,:where(body:not(#css-dup-1)) .inventory-summary,:where(body:not(#css-dup-1)) .inventory-list,:where(body:not(#css-dup-1)) .progression-count,:where(body:not(#css-dup-1)) .resource-fields,:where(body:not(#css-dup-1)) .editable-card-grid,:where(body:not(#css-dup-1)) .inventory-edit-row,:where(body:not(#css-dup-1)) .alchemy-grid,:where(body:not(#css-dup-1)) .talents-grid{grid-template-columns:1fr}:where(body:not(#css-dup-1)) .alchemy-block:first-child{grid-column:auto}:where(body:not(#css-dup-2)) .enchantment-card-header{flex-direction:column}:where(body:not(#css-dup-2)) .zone-list{justify-content:flex-start}}.app-shell .breadcrumb{color:var(--text-muted)}.app-shell .breadcrumb a{color:var(--accent-strong)}.app-shell .sheet-hero{border-color:var(--border-strong);color:var(--text);background:linear-gradient(135deg,#212d3ef5,#1c2737eb),radial-gradient(circle at 100% 0,#e8b5673d,#0000 20rem),radial-gradient(circle at 0 100%,#4f90d929,#0000 18rem);border-radius:20px;box-shadow:0 28px 76px #00000047}.app-shell .sheet-hero p,.app-shell .sheet-hero-meta,.app-shell .sheet-hero-meta .editable-field input,.app-shell .sheet-hero-meta span{color:var(--text-soft)}.app-shell .sheet-hero-meta__pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #cad3df2e;border-radius:999px;justify-content:center;align-self:center;align-items:center;width:fit-content;min-height:28px;padding:0 10px;line-height:1.25;display:inline-flex}.app-shell .sheet-hero-meta .sheet-hero-meta__pill--race{border-color:rgba(var(--creation-race-rgb), .32);color:var(--creation-race);background:rgba(var(--creation-race-rgb), .16)}.app-shell .sheet-hero-meta .sheet-hero-meta__pill--specialization{border-color:rgba(var(--creation-specialization-rgb), .3);color:var(--creation-specialization);background:rgba(var(--creation-specialization-rgb), .15)}.app-shell .sheet-hero h1,.app-shell .sheet-hero-fields .editable-field input,.app-shell .sheet-hero-stats .editable-field input{color:var(--text)}.app-shell .sheet-avatar{color:var(--accent-ink);background:linear-gradient(135deg, var(--accent), #7fb4ff);border-color:#fff3}.app-shell .sheet-avatar-actions label{min-height:44px;color:var(--accent-ink);background:var(--accent);border-color:#0000;border-radius:10px}.app-shell .sheet-avatar-actions button{border-color:var(--border);min-height:44px;color:var(--text);background:var(--surface-soft);border-radius:10px}.app-shell .sheet-hero-stats .editable-field,.app-shell .characteristic-list .editable-field,.app-shell .skill-group,.app-shell .combat-block,.app-shell .spell-card,.app-shell .alchemy-block,.app-shell .talent-block,.app-shell .enchantment-card,.app-shell .editable-list-row,.app-shell .editable-card{border-color:var(--border);background:var(--surface-soft)}.app-shell .skill-group--specialized{border-color:rgba(var(--creation-specialization-rgb), .44);background:rgba(var(--creation-specialization-rgb), .07);box-shadow:inset 3px 0 0 rgba(var(--creation-specialization-rgb), .78)}.app-shell .skill-group--specialized h2 small{border-color:rgba(var(--creation-specialization-rgb), .28);color:var(--creation-specialization);background:rgba(var(--creation-specialization-rgb), .12)}.app-shell .resource-card{border-color:var(--border);color:var(--text);background:var(--surface-raised);border-radius:16px}.app-shell .resource-bar{background:#cad3df29}.app-shell .resource-bar span{background:linear-gradient(90deg, #7fb4ff, var(--accent))}.app-shell .identity-characteristics,.app-shell .identity-list div,.app-shell .compact-table-row,.app-shell .inventory-row,.app-shell .talent-card,.app-shell .slot-row,.app-shell .inventory-extension{border-color:var(--border)}.app-shell .identity-list dt,.app-shell .resource-card p,.app-shell .skill-row,:where(body:not(#css-dup-1)) .app-shell .inventory-row,.app-shell .compact-table-row span,.app-shell .compact-table-row small,.app-shell .arrow-card small,.app-shell .combat-summary span,.app-shell .state-grid div,.app-shell .inventory-summary span,.app-shell .spell-card span,.app-shell .talent-card span,.app-shell .spell-card p,.app-shell .talent-card p,.app-shell .enchantment-card p,.app-shell .notes-content,.app-shell .editable-field span,.app-shell .inventory-summary small,.app-shell .progression-count .editable-field span,.app-shell .autosave-status{color:var(--text-muted)}.app-shell .identity-list dd,.app-shell .identity-characteristics h2,.app-shell .resource-card h3,.app-shell .skill-group h2,.app-shell .combat-block h3,.app-shell .spell-card h3,.app-shell .alchemy-block h3,.app-shell .talent-block h3,.app-shell .enchantment-card h3,.app-shell .skill-row strong,.app-shell .inventory-row strong,.app-shell .compact-table-row strong,.app-shell .arrow-card strong,.app-shell .combat-summary strong,.app-shell .state-grid strong,.app-shell .gift-row strong,.app-shell .inventory-summary strong,.app-shell .progression-count .editable-field input,.app-shell .talent-card h4{color:var(--text)}.app-shell .editable-field input,.app-shell .editable-field textarea,.app-shell .editable-field select,.app-shell .notes-editor,.app-shell .editable-list input,.app-shell .editable-list select,.app-shell .editable-card input,.app-shell .editable-card select,.app-shell .editable-card textarea,.app-shell .slot-row input,.app-shell .gift-add-row input,.app-shell .skill-value input{border-color:var(--border);color:var(--text);background:#fff1;border-radius:10px}.app-shell .editable-field input::placeholder,.app-shell .editable-list input::placeholder,.app-shell .editable-card input::placeholder,.app-shell .editable-card textarea::placeholder,.app-shell .gift-add-row input::placeholder{color:#cad3df9e}.number-stepper{border:1px solid var(--border);background:#fff1;border-radius:12px;grid-template-columns:44px minmax(48px,1fr) 44px;align-items:center;display:grid;overflow:hidden}.number-stepper input,.editable-field .number-stepper input,.skill-value .number-stepper input{text-align:center;background:0 0;border:0;border-radius:0;min-height:42px;padding:8px 6px;font-weight:900}.number-stepper__button,.editable-field .number-stepper__button,.skill-value .number-stepper__button{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text);cursor:pointer;background:#ffffff14;border:0;border-radius:0;place-items:center;display:grid;position:relative}.number-stepper__button:before,.number-stepper__button--increase:after{content:"";background:currentColor;border-radius:999px;width:12px;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.number-stepper__button--increase:after{transform:translate(-50%,-50%)rotate(90deg)}.number-stepper__button:hover:not(:disabled){background:#e8b5673d}.number-stepper__button:disabled{cursor:default;opacity:.36}.app-shell .skill-value{justify-content:flex-end;min-width:144px}.app-shell .skill-value .number-stepper{flex:0 0 144px;grid-template-columns:44px minmax(56px,1fr) 44px;width:144px}.app-shell .field-adjustment-bonus{color:var(--creation-race);background:rgba(var(--creation-race-rgb), .15)}.app-shell .field-adjustment-malus{color:var(--danger);background:#ff8d8524}.app-shell .autosave-status-error,.app-shell .sheet-avatar-error{color:var(--danger)}.app-shell .ingredient-pill{border-color:var(--border);color:var(--text-muted);background:var(--surface-soft)}.app-shell .ingredient-pill.is-owned,.app-shell .spell-card strong,.app-shell .zone-list span{color:var(--accent-ink);background:var(--accent)}.app-shell .skill-bonus-chip--race,.app-shell .skill-value small,.app-shell .race-effect-list span{color:var(--creation-race-text);background:var(--creation-race-chip)}.app-shell .skill-bonus-chip--stone{color:var(--creation-stone-text);background:var(--creation-stone-chip)}.app-shell .inline-add-button,.app-shell .editable-list button,.app-shell .editable-card button{min-height:44px;color:var(--accent-ink);background:var(--accent);border-color:#0000;border-radius:10px}.app-shell .icon-button{border-radius:50%;width:32px;min-width:32px;height:32px;min-height:32px;padding:0}.app-shell .identity-rules-grid{grid-template-columns:minmax(0,1fr) minmax(300px,360px);grid-template-areas:"gifts stone""gifts encumbrance";gap:16px}.app-shell .gift-editor{border:1px solid var(--border);background:linear-gradient(#ffffff13,#ffffff0a),#212d3eb8;border-radius:16px;grid-area:gifts;min-width:0;padding:18px}.app-shell .guardian-stone-editor{grid-area:stone;min-width:0}.app-shell .encumbrance-editor{grid-area:encumbrance;min-width:0}.app-shell .identity-rule-card{border-color:var(--border);background:linear-gradient(#ffffff12,#ffffff0a),#212d3eb3;border-radius:16px;height:100%;padding:18px}.app-shell .identity-rule-card--stone{border-color:rgba(var(--creation-stone-rgb), .32);background:linear-gradient(180deg, rgba(var(--creation-stone-rgb), .09), rgba(var(--creation-stone-rgb), .035)), #212d3eb3;box-shadow:inset 3px 0 0 rgba(var(--creation-stone-rgb), .78)}.app-shell .gift-editor h3,.app-shell .identity-rule-card h3{color:var(--text);letter-spacing:0;font-size:1.05rem}.app-shell .gift-list{gap:8px}.app-shell .gift-row{background:#ffffff0b;border-color:#9fb2cd29;border-radius:12px;grid-template-columns:minmax(0,1fr) 36px;min-height:54px;padding:10px 10px 10px 12px}.app-shell .gift-row button{width:36px;min-width:36px;height:36px;min-height:36px;color:var(--text-muted);background:#ffffff12;border:1px solid #0000;border-radius:999px;font-size:1.25rem;line-height:1}.app-shell .gift-row button:hover{color:var(--danger);background:#ff8d8521}.app-shell .gift-row button.icon-button:before{background:#d7deea}.app-shell .gift-add-row{grid-template-columns:minmax(0,1fr) 44px;margin-top:4px}.app-shell .gift-add-row button{width:44px;min-width:44px;min-height:44px;color:var(--accent-ink);background:var(--accent);border-color:#0000;border-radius:12px}.app-shell .rule-effects{border-color:var(--border);gap:8px}.app-shell .rule-effects--stone{border-color:rgba(var(--creation-stone-rgb), .24);background:rgba(var(--creation-stone-rgb), .08)}.app-shell .rule-effects--stone strong{color:var(--creation-stone)}.app-shell .rule-effects--race{border-color:rgba(var(--creation-race-rgb), .28);background:rgba(var(--creation-race-rgb), .08)}.app-shell .rule-effects--race strong{color:var(--creation-race)}.app-shell .rule-effects p{line-height:1.5}.app-shell .race-effect-list{gap:7px}:where(body:not(#css-dup-1)) .app-shell .race-effect-list span{border:0;border-radius:999px;padding:7px 10px;font-size:.84rem}.app-shell .encumbrance-editor .identity-rule-card{align-content:start}.app-shell .encumbrance-fields{gap:14px}.app-shell .encumbrance-fields .editable-field{gap:8px}.app-shell .encumbrance-fields .number-stepper{border-radius:14px;grid-template-columns:42px minmax(52px,1fr) 42px}.app-shell .encumbrance-fields .number-stepper__button{width:42px;min-width:42px}@media (width<=880px){:where(body:not(#css-dup-1)) .app-shell .breadcrumb{align-items:stretch;gap:10px;margin-bottom:16px}:where(body:not(#css-dup-1)) .app-shell .sheet-hero{border-radius:16px;align-items:stretch;gap:18px;padding:18px}:where(body:not(#css-dup-1)) .app-shell .sheet-avatar{flex-basis:88px;width:88px;height:88px;font-size:2rem}:where(body:not(#css-dup-1)) .app-shell .sheet-hero h1,:where(body:not(#css-dup-1)) .app-shell .sheet-hero-fields .editable-field input{font-size:2.15rem;line-height:1.02}:where(body:not(#css-dup-1)) .app-shell .sheet-hero-meta{align-items:center}.app-shell .sheet-hero-stats{gap:10px}:where(body:not(#css-dup-1)) .app-shell .sheet-hero-stats .editable-field,:where(body:not(#css-dup-1)) .app-shell .characteristic-list .editable-field,.app-shell .progression-count .editable-field,:where(body:not(#css-dup-1)) .app-shell .combat-summary span,:where(body:not(#css-dup-1)) .app-shell .state-grid div,:where(body:not(#css-dup-1)) .app-shell .inventory-summary span{border-radius:12px;min-height:auto;padding:12px}:where(body:not(#css-dup-1)) .app-shell .resource-card,:where(body:not(#css-dup-1)) .app-shell .skill-group,:where(body:not(#css-dup-1)) .app-shell .combat-block,:where(body:not(#css-dup-1)) .app-shell .spell-card,:where(body:not(#css-dup-1)) .app-shell .alchemy-block,:where(body:not(#css-dup-1)) .app-shell .talent-block,:where(body:not(#css-dup-1)) .app-shell .enchantment-card{border-radius:12px;padding:14px}.sheet-accordion.is-open .sheet-accordion__trigger{top:10px;right:10px}:where(body:not(#css-dup-1)) .app-shell .skill-row,:where(body:not(#css-dup-2)) .app-shell .inventory-row{flex-direction:column;align-items:stretch;gap:8px}:where(body:not(#css-dup-1)) .app-shell .skill-row{grid-template-columns:minmax(0,1fr) 144px;align-items:center;display:grid}:where(body:not(#css-dup-1)) .app-shell .skill-value,:where(body:not(#css-dup-1)) .app-shell .skill-value .number-stepper{width:100%;min-width:0}:where(body:not(#css-dup-1)) .app-shell .skill-row .skill-value{width:auto}:where(body:not(#css-dup-1)) .app-shell .skill-row .skill-value .number-stepper{width:144px;min-width:144px}:where(body:not(#css-dup-1)) .app-shell .editable-list-row,:where(body:not(#css-dup-1)) .app-shell .editable-card{padding:10px}.app-shell .sheet-grid{gap:14px}}@media (width<=980px){:where(body:not(#css-dup-1)) .app-shell .identity-rules-grid{grid-template-columns:1fr;grid-template-areas:"gifts""stone""encumbrance"}:where(body:not(#css-dup-1)) .app-shell .gift-editor,:where(body:not(#css-dup-1)) .app-shell .identity-rule-card{border-radius:14px;padding:14px}:where(body:not(#css-dup-1)) .app-shell .encumbrance-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){:where(body:not(#css-dup-2)) .app-shell .encumbrance-fields{grid-template-columns:1fr}:where(body:not(#css-dup-1)) .app-shell .gift-row{grid-template-columns:minmax(0,1fr) 34px}}.app-shell .sheet-hero-main{min-width:min(520px,100%)}.app-shell .sheet-hero-fields{min-width:0}.app-shell :is(.sheet-hero h1){overflow-wrap:anywhere;max-width:8.5em;font-size:clamp(2.4rem,5.8vw,3.8rem);line-height:1.02}.app-shell .sheet-hero-stats{grid-template-columns:repeat(3,minmax(154px,1fr));align-self:center;min-width:min(620px,100%);max-width:660px}.app-shell :is(.sheet-hero-stats .editable-field){text-align:left;border-radius:16px;align-content:start;min-height:0;padding:14px 16px 16px}.app-shell :is(.sheet-hero-stats .editable-field-label){align-items:flex-start;min-height:22px}.app-shell :is(.sheet-hero-stats .editable-field input){font-size:1.35rem}.app-shell :is(.sheet-hero-stats .number-stepper){border-radius:10px;grid-template-columns:42px minmax(70px,1fr) 42px}.app-shell :is(.sheet-hero-stats .number-stepper input){min-height:40px;padding:4px 6px}.app-shell :is(.sheet-hero-stats .number-stepper__button){width:42px;min-width:42px;height:40px;min-height:40px}@media (width<=1040px){.app-shell .sheet-hero{flex-direction:column;align-items:stretch}:where(body:not(#hero-wrap-1)) .app-shell :is(.sheet-hero h1){max-width:100%}:where(body:not(#hero-stats-1)) .app-shell .sheet-hero-stats{align-self:stretch}}@media (width<=620px){:where(body:not(#hero-stats-2)) .app-shell .sheet-hero-stats{grid-template-columns:1fr}}.sheet-hero--profile{grid-template-columns:minmax(0,1fr);align-items:end;gap:18px;display:grid}.sheet-hero--profile .sheet-hero-main{width:100%}.sheet-hero--profile .sheet-hero-fields{max-width:min(100%,760px)}.app-shell .sheet-hero--profile h1{max-width:none}.sheet-hero--profile .sheet-hero-stats{place-self:end;width:min(100%,520px)}@media (width>=1041px){:where(body:not(#hero-profile-height)) .sheet-hero--profile{min-height:286px}}:where(body:not(#hero-profile-grid)) .sheet-hero--profile .sheet-hero-main{grid-template-columns:minmax(0,1fr) 124px;grid-template-areas:"identity avatar";align-items:start;gap:24px;display:grid}:where(body:not(#hero-profile-fields)) .sheet-hero--profile .sheet-hero-fields{grid-area:identity}.sheet-hero--profile .sheet-avatar{grid-area:avatar;justify-self:end}.sheet-avatar-editable{cursor:pointer;position:relative;overflow:visible}.sheet-avatar-editable:after{width:30px;height:30px;color:var(--accent-ink);background:linear-gradient(var(--accent-ink), var(--accent-ink)) center / 12px 2px no-repeat, linear-gradient(var(--accent-ink), var(--accent-ink)) center / 2px 12px no-repeat, var(--accent);content:"";border:1px solid #ffffff38;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-7px;right:-7px}.sheet-avatar-editable:hover{box-shadow:0 18px 44px #00000047,0 0 0 4px #e8b5672e}.sheet-avatar-editable img{border-radius:inherit}.sheet-avatar input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.sheet-hero--profile .sheet-avatar-actions{margin-top:18px}.avatar-cropper{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#04070bb8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.avatar-cropper-panel{border:1px solid var(--border);background:var(--surface-raised);border-radius:18px;gap:16px;width:min(420px,100%);padding:20px;display:grid;box-shadow:0 24px 80px #0000006b}.avatar-cropper-preview{border:1px solid var(--border-strong);background:#ffffff0f;border-radius:50%;place-self:center;place-items:center;width:220px;height:220px;display:grid;overflow:hidden}.avatar-cropper-preview img{object-fit:cover;transform-origin:50%;width:100%;height:100%}.avatar-cropper-control{color:var(--text-muted);gap:8px;font-size:.9rem;display:grid}.avatar-cropper-control input{width:100%}.avatar-cropper-actions{justify-content:flex-end;gap:10px;display:flex}.avatar-cropper-actions button{border:1px solid var(--border);color:var(--text);background:var(--surface-soft);cursor:pointer;border-radius:10px;padding:8px 14px;font-weight:800}.avatar-cropper-actions button:last-child{color:var(--accent-ink);background:var(--accent);border-color:#0000}.avatar-cropper-remove{color:var(--danger);margin-right:auto}@media (width<=760px){:where(body:not(#hero-profile-mobile-grid)) .sheet-hero--profile .sheet-hero-main{grid-template-columns:1fr;grid-template-areas:"avatar""identity"}:where(body:not(#hero-profile-mobile-avatar)) .sheet-hero--profile .sheet-avatar{justify-self:start}}.breadcrumb,.sheet-hero,.sheet-hero-main,.sheet-grid,.identity-panel,.resources-grid,.skill-groups,.combat-grid,.alchemy-grid,.talents-grid,.spell-list,.inventory-list,.editable-card-grid,.identity-edit-list,.identity-rules-grid,.sheet-hero-fields,.sheet-hero-meta,.resource-card,.skill-group,.combat-block,.spell-card,.alchemy-block,.talent-block,.enchantment-card,.editable-card,.editable-list-row,.slot-row,.talent-card{min-width:0}.sheet-hero-fields input,.identity-list dd,.skill-row strong,.inventory-row strong,.compact-table-row strong,.spell-card h3,.talent-card h4,.enchantment-card h3,.notes-content{overflow-wrap:anywhere}.spell-card-header,.enchantment-card-header,.resource-card-header{flex-wrap:wrap}@media (width<=720px){.sheet-quick-nav{margin-bottom:14px;top:8px}.sheet-hero--profile .sheet-hero-main{gap:18px}.sheet-avatar-actions label,.sheet-avatar-actions button,.avatar-cropper-actions button{text-align:center;flex:150px}.soul-gem-row,.slot-row{grid-template-columns:1fr}.slot-row strong{min-width:0}.save-toast{width:calc(100vw - 24px);top:12px}.turn-actions{flex-direction:column;align-items:stretch}}@media (width<=520px){.app-shell .sheet-hero,:where(body:not(#css-dup-1)) .app-shell .sheet-hero{padding:14px}.sheet-hero--profile .sheet-hero-main{justify-items:start}.sheet-avatar-actions,.avatar-cropper-actions{flex-direction:column}.sheet-avatar-actions label,.sheet-avatar-actions button,.avatar-cropper-actions button{width:100%}.avatar-cropper{padding:12px}.avatar-cropper-panel{border-radius:14px;max-height:calc(100dvh - 24px);padding:16px;overflow:auto}.avatar-cropper-preview{width:min(220px,72vw);height:min(220px,72vw)}}@media (width<=400px){.app-shell .sheet-hero h1,.app-shell .sheet-hero-fields .editable-field input{font-size:1.85rem}.number-stepper,.app-shell .skill-value .number-stepper,.app-shell :is(.sheet-hero-stats .number-stepper){grid-template-columns:38px minmax(48px,1fr) 38px}.number-stepper__button,.editable-field .number-stepper__button,.skill-value .number-stepper__button,.app-shell :is(.sheet-hero-stats .number-stepper__button){width:38px;min-width:38px}}@media (width<=360px){:where(body:not(#css-dup-1)) .app-shell .skill-row{grid-template-columns:1fr}:where(body:not(#css-dup-1)) .app-shell .skill-row .skill-value{justify-self:start}}.auth-page{isolation:isolate;background:linear-gradient(90deg,#0b0a0ad1,#0b0a0a7a),url(/login-background.webp) 50%/cover no-repeat;place-items:center;width:calc(100% + 64px);min-height:100vh;margin:-32px;padding:32px 20px;display:grid;position:relative;overflow:hidden}.auth-page:before{z-index:-1;content:"";background:radial-gradient(circle at 30% 18%,#f1c27d29,#0000 28%),linear-gradient(#04060a14,#04060ab3);position:absolute;inset:0}.auth-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#100d0ac7;border:1px solid #e5c4962e;border-radius:8px;width:min(100%,440px);min-width:0;padding:32px;box-shadow:0 24px 80px #00000040}.auth-card h1{color:#fff8ed;margin:0}.auth-brand{align-items:center;gap:12px;margin-bottom:18px;display:flex}.auth-brand img{border-radius:12px;width:46px;min-width:46px;height:46px;box-shadow:0 12px 32px #00000047}.auth-brand .panel-eyebrow{margin:0}.auth-intro{color:#cdb89f;margin:12px 0 24px}.auth-form{gap:16px;display:grid}.auth-form label{color:#f4eadc;gap:8px;display:grid}.auth-form label>span{color:#f4eadc;font-size:.9rem}.auth-form input{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:14px;padding:12px 14px}.auth-form [role=alert],.form-error{color:#ffb4a8;font-size:.9rem}.auth-form button{color:#2a1709;cursor:pointer;background:#f1c27d;border:0;border-radius:14px;padding:12px 16px;font-weight:700}.auth-form button:disabled{cursor:wait;opacity:.7}.auth-switch{color:#cdb89f;margin:24px 0 0}.auth-switch a{color:#f1c27d}.form-success{color:#e4ffec;background:#123b25;border:1px solid #4ea267;border-radius:14px;margin:0 0 18px;padding:12px 14px;display:block}@media (width<=640px){.auth-page{background-position:42%;width:calc(100% + 24px);min-height:100vh;margin:-12px;padding:24px 14px}.auth-card{padding:24px}}@media (width<=380px){.auth-card{padding:18px}}.admin-users-page{gap:24px;display:grid}.admin-user-list{gap:16px;margin-top:24px;display:grid}.admin-user-card{background:#fff8ed0a;border:1px solid #e5c49629;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;padding:18px;display:flex}.admin-user-card h2{overflow-wrap:anywhere;color:#fff8ed;margin:0 0 8px}.admin-user-card p{color:#cdb89f;margin:4px 0}.admin-user-card__actions{gap:12px;display:flex}.admin-user-card__actions button,.admin-user-row button{color:#2a1709;cursor:pointer;background:#f1c27d;border:0;border-radius:12px;padding:10px 14px;font-weight:700}.admin-user-card__actions button:disabled{cursor:wait;opacity:.7}.admin-user-table{gap:10px;margin-top:24px;display:grid}.admin-user-row{background:#fff8ed08;border:1px solid #e5c4961f;border-radius:14px;grid-template-columns:minmax(320px,1fr) 180px 200px 140px;align-items:end;gap:16px;padding:14px 16px;display:grid}.admin-user-row__identity{gap:10px;min-width:0;display:grid}.admin-user-row strong{color:#fff8ed}.admin-user-row p{color:#cdb89f;margin:4px 0 0}.admin-user-row label{color:#f4eadc;gap:6px;display:grid}.admin-user-row input,.admin-user-row select{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:12px;padding:10px 12px}.admin-user-row button:disabled{cursor:not-allowed;opacity:.6}.admin-create-user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.admin-create-user-form label{color:#f4eadc;gap:6px;display:grid}.admin-create-user-form input,.admin-create-user-form select{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:12px;padding:10px 12px}.admin-create-user-form button{color:#2a1709;cursor:pointer;background:#f1c27d;border:0;border-radius:12px;align-self:end;padding:10px 14px;font-weight:700}.admin-create-user-form button:disabled{cursor:wait;opacity:.7}.admin-user-row__actions{gap:10px;display:grid}.admin-user-row__actions button{width:100%}.admin-user-row .admin-user-row__danger-button{color:#fff8ed;background:#8f2f24}.admin-user-row .admin-user-row__danger-button:hover:not(:disabled){background:#a53a2d}.admin-modal-backdrop{z-index:50;background:#00000094;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.admin-modal{background:#20160f;border:1px solid #e5c49638;border-radius:20px;width:min(100%,440px);max-height:calc(100dvh - 48px);padding:24px;overflow:auto;box-shadow:0 24px 80px #0000006b}.admin-modal h2{color:#fff8ed;margin:0 0 12px}.admin-modal p{color:#cdb89f;margin:0}.admin-modal strong{color:#fff8ed}.admin-modal__actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.admin-modal__actions button{color:#2a1709;cursor:pointer;background:#f1c27d;border:0;border-radius:12px;padding:10px 14px;font-weight:700}.admin-modal__actions button:disabled{cursor:wait;opacity:.7}.admin-modal__field{color:#f4eadc;gap:6px;margin-top:18px;display:grid}.admin-modal__field input{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:12px;padding:10px 12px}@media (width<=1040px){.admin-user-row{grid-template-columns:minmax(0,1fr) minmax(180px,.6fr)}.admin-user-row__actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.admin-user-card,.admin-user-card__actions,.admin-modal__actions{flex-direction:column;align-items:stretch}.admin-user-row,.admin-create-user-form,.admin-user-row__actions{grid-template-columns:1fr}.admin-user-row{gap:12px;padding:14px}.admin-create-user-form button,.admin-modal__actions button{width:100%}}@media (width<=420px){.admin-modal-backdrop{padding:12px}.admin-modal{border-radius:14px;padding:18px}}.account-page{gap:24px;display:grid}.account-grid{grid-template-columns:minmax(0,1fr) minmax(min(320px,100%),.8fr);gap:24px;display:grid}.account-grid .panel{align-self:start}.account-grid .panel h2{color:#fff8ed;margin:0 0 18px;font-size:1.45rem}.account-form{gap:16px;display:grid}.account-form label{color:#f4eadc;gap:6px;display:grid}.account-form input{color:#fff8ed;background:#15100bb8;border:1px solid #e5c4963d;border-radius:12px;padding:10px 12px}.account-form button{color:#2a1709;cursor:pointer;background:#f1c27d;border:0;border-radius:12px;justify-self:start;padding:10px 14px;font-weight:700}.account-form button:disabled{cursor:not-allowed;opacity:.6}.account-danger-zone{border-color:#ffb4a847}.account-danger-zone p{color:#d8c4ad}.account-form .account-danger-zone__button{color:#fff8ed;background:#8f2f24}.account-form .account-danger-zone__button:hover:not(:disabled){background:#a53a2d}@media (width<=860px){.account-grid{grid-template-columns:1fr}}@media (width<=520px){.account-form button{width:100%}}.reference-page{padding-bottom:24px}.reference-nav{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.reference-nav a,.reference-card{border:1px solid var(--border);color:var(--text);text-decoration:none}.reference-nav a{min-height:40px;color:var(--text-muted);background:var(--surface-soft);border-radius:999px;flex:0 auto;justify-content:center;align-items:center;padding:9px 13px;font-weight:800;display:inline-flex}.reference-nav a:hover,.reference-nav a.is-active{border-color:var(--border-strong);color:var(--accent-strong)}.reference-card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.reference-card{background:linear-gradient(145deg,#182231f0,#111823d1);border-radius:8px;gap:8px;min-height:148px;padding:18px;display:grid}.reference-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.reference-card__count{border:1px solid var(--border-strong);width:fit-content;min-height:26px;color:var(--accent-strong);border-radius:999px;justify-content:center;align-items:center;padding:4px 9px;font-size:.78rem;font-weight:900;display:inline-flex}.reference-card strong{color:var(--text);font-size:1.18rem}.reference-card span:last-child{color:var(--text-muted)}.reference-filter-bar{grid-template-columns:minmax(240px,1.4fr) repeat(auto-fit,minmax(170px,1fr));align-items:end;gap:12px;margin-bottom:18px;display:grid}.reference-search,.reference-select-filter{gap:6px;display:grid}.reference-search span,.reference-select-filter span{color:var(--text-muted);text-transform:uppercase;font-size:.82rem;font-weight:800}.reference-search input,.reference-select-filter select{border:1px solid var(--border);width:100%;color:var(--text);background:#0a0e15c2;border-radius:8px;padding:10px 12px}.reference-select-filter select{cursor:pointer}.reference-section-stack{gap:22px;display:grid}.reference-section{min-width:0}.reference-section h2{color:var(--text);margin:0 0 10px;font-size:1.25rem}.reference-table-wrap{border:1px solid var(--border);background:#111823c7;border-radius:8px;width:100%;min-width:0;overflow-x:auto}.reference-table{border-collapse:collapse;width:100%;min-width:720px}.reference-table--compact{min-width:620px}.reference-table th,.reference-table td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:12px}.reference-table th{color:var(--accent-strong);text-transform:uppercase;background:#ffffff0b;font-size:.78rem}.reference-table td{color:var(--text-soft)}.reference-table td strong{color:var(--text)}.reference-table tr:last-child td{border-bottom:0}.reference-table tr:target{outline:2px solid var(--accent);outline-offset:-2px;background:#e8b5671a}.reference-table .is-numeric{text-align:right;white-space:nowrap}.reference-pill{border:1px solid var(--border);width:fit-content;min-height:24px;color:var(--accent-strong);background:#e8b56714;border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:.82rem;font-weight:800;line-height:1;display:inline-flex}.reference-pill.spell-school{border-color:rgba(var(--spell-school-rgb), .34);color:var(--spell-school-color);background:rgba(var(--spell-school-rgb), .12)}@media (width<=760px){.reference-nav a{text-align:center;flex:140px}.reference-filter-bar{grid-template-columns:1fr}.reference-table-wrap{background:0 0;border:0;overflow:visible}.reference-table,.reference-table thead,.reference-table tbody,.reference-table tr,.reference-table th,.reference-table td{min-width:0;display:block}.reference-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.reference-table tr{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-bottom:10px;padding:10px}.reference-table td{text-align:left;border:0;grid-template-columns:minmax(96px,34%) minmax(0,1fr);gap:10px;padding:7px 0;display:grid}.reference-table td:before{color:var(--text-muted);text-transform:uppercase;content:attr(data-label);font-size:.76rem;font-weight:800}.reference-table .is-numeric{text-align:left;white-space:normal}}
