﻿:root{color-scheme:dark;--bg:#09090b;--panel:#111113;--panel2:#17171a;--line:#29292e;--text:#f4f4f5;--muted:#9b9ba3;--faint:#686870;--accent:#9c7cff;--accent2:#7857dc;--radius:10px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.skip-link{position:fixed;top:-50px;left:16px;z-index:99;background:var(--text);color:var(--bg);padding:8px}.skip-link:focus{top:12px}.app-shell,.workspace-shell{display:flex;min-height:100vh}.app-sidebar,.workspace-sidebar{width:244px;background:#0d0d0f;border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:20}.product-mark{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:650;padding:0 8px 24px}.product-glyph{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:linear-gradient(145deg,#b69cff,#7455d7);font-family:Georgia;font-weight:800;color:white}.app-nav{display:grid;gap:3px}.app-nav-link,.workspace-nav a{border:0;width:100%;display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:7px;background:none;color:#aaaab2;font-size:14px;text-align:left}.app-nav-link:hover,.workspace-nav a:hover,.app-nav-link.is-active,.workspace-nav a.is-active{background:#1b1b1f;color:#fff}.app-nav-link span:first-child,.workspace-nav a span{width:18px;text-align:center}.app-nav-link small{margin-left:auto;color:var(--faint);font-size:10px}.is-disabled{opacity:.55;pointer-events:none}.sidebar-spacer{flex:1}.account-menu{display:flex;gap:10px;align-items:center;padding:14px 8px 2px;margin-top:14px;border-top:1px solid var(--line)}.account-avatar,.campaign-identity>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#332a4d;color:#d7caff}.account-copy{display:grid;min-width:0}.account-copy strong{font-size:12px;overflow:hidden;text-overflow:ellipsis}.account-copy small{font-size:10px;color:var(--muted)}.auth-actions{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:13px}.app-frame{margin-left:244px;min-width:0;flex:1}.app-topbar{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 32px;gap:20px;position:sticky;top:0;background:rgba(9,9,11,.92);backdrop-filter:blur(16px);z-index:10}.command-search{display:flex;align-items:center;gap:9px;width:min(430px,50vw);margin:auto;color:var(--muted);background:#151518;border:1px solid var(--line);border-radius:8px;padding:7px 10px}.command-search:focus-within{border-color:#68549b;box-shadow:0 0 0 3px #9c7cff1c}.command-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text)}kbd{font-size:10px;color:var(--faint);border:1px solid #35353a;border-radius:4px;padding:2px 5px;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 13px;border:1px solid var(--line);border-radius:7px;background:#19191c;color:var(--text);font-weight:600;font-size:13px;cursor:pointer}.button-primary{background:var(--accent);border-color:var(--accent);color:#110d1a}.button-primary:hover{background:#ae96ff}.button-subtle:hover{background:#222226}.app-content{padding:54px clamp(24px,5vw,72px);max-width:1500px;margin:auto}.library-header{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:48px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:700;color:var(--accent);margin:0 0 10px}.library-header h1,.form-heading h1,.workspace-page-header h1{font-size:clamp(30px,4vw,44px);letter-spacing:-.04em;margin:0 0 10px}.page-description,.form-heading>p:last-child,.workspace-page-header p{color:var(--muted);margin:0;max-width:650px;line-height:1.6}.library-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-bottom:22px;color:var(--muted);font-size:13px}.view-switcher button{background:none;border:0;color:var(--faint);padding:8px}.view-switcher .is-active{color:var(--text)}.campaign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}.campaign-tile{position:relative;display:block;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);transition:.16s}.campaign-tile:hover{transform:translateY(-2px);border-color:#4a405e;box-shadow:0 14px 40px #0005}.campaign-tile-link{display:none}.campaign-cover{height:128px;padding:18px;display:flex;align-items:flex-end;justify-content:space-between;background:radial-gradient(circle at 15% 20%,#59467a 0,transparent 36%),linear-gradient(135deg,#25202d,#15151a)}.campaign-monogram{font:700 45px Georgia;color:#d6c8f7;align-self:center}.campaign-system,.workspace-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;background:#0a0a0cbf;border:1px solid #ffffff18;border-radius:20px;padding:5px 8px;color:#c8c8cf}.campaign-tile-body{padding:17px}.campaign-title-row{display:flex;justify-content:space-between;align-items:center}.campaign-title-row h2{font-size:16px;margin:0}.campaign-title-row>span{color:var(--faint)}.campaign-tile-body>p{color:var(--muted);font-size:13px;line-height:1.5;height:40px;overflow:hidden}.campaign-meta{display:flex;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--line);color:var(--faint);font-size:11px}.empty-state{text-align:center;border:1px dashed #38383e;border-radius:12px;padding:70px 20px}.empty-symbol{color:var(--accent);font-size:32px}.empty-state p,.search-empty{color:var(--muted)}.form-page{max-width:760px;margin:auto}.back-link{color:var(--muted);font-size:13px}.form-heading{margin:40px 0}.campaign-form{display:grid;gap:22px}.field{display:grid;gap:8px}.field label{font-size:13px;font-weight:600}.field label small{color:var(--faint);font-weight:400}.field input,.field textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:#141416;padding:11px 12px;color:var(--text);outline:none;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #9c7cff18}.field span{color:#ff8585;font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:12px}.workspace-sidebar{width:230px}.product-mark.compact{border-bottom:1px solid var(--line)}.campaign-identity{display:flex;align-items:center;gap:10px;padding:18px 8px}.campaign-identity>span{border-radius:7px}.campaign-identity div{display:grid;min-width:0}.campaign-identity strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-identity small{font-size:10px;color:var(--muted)}.workspace-nav{display:grid;gap:2px}.workspace-nav p{text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--faint);margin:16px 10px 5px}.back-library{margin-top:auto;padding:10px;color:var(--muted);font-size:12px}.workspace-content{margin-left:230px;padding:60px clamp(28px,6vw,90px);width:100%;max-width:1250px}.workspace-page-header{display:flex;justify-content:space-between;gap:30px}.workspace-page-header h1{font-size:40px}.workspace-meta{display:flex;gap:8px;margin:24px 0 60px}.workspace-meta span{background:var(--panel)}.continue-section{max-width:780px}.continue-section h2{font-size:15px;margin-bottom:14px}.tool-list{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.tool-list a{display:flex;align-items:center;gap:14px;padding:16px;border-bottom:1px solid var(--line);background:var(--panel)}.tool-list a:last-child{border:0}.tool-list a:hover{background:var(--panel2)}.tool-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:7px;background:#292331;color:#c8b6f5}.tool-list a>span:nth-child(2){display:grid}.tool-list small{color:var(--muted);margin-top:3px}.tool-arrow{margin-left:auto;color:var(--faint)}.mobile-menu,.sidebar-scrim{display:none}
@media(max-width:760px){.app-sidebar{transform:translateX(-100%);transition:.2s}.sidebar-open .app-sidebar{transform:none}.sidebar-open .sidebar-scrim{display:block;position:fixed;inset:0;background:#0008;z-index:15}.app-frame{margin-left:0}.mobile-menu{display:block}.app-topbar{padding:0 15px}.app-topbar>.button{font-size:0}.app-topbar>.button span{font-size:18px}.app-content{padding:32px 18px}.library-header{align-items:start}.header-create{display:none}.campaign-grid{grid-template-columns:1fr}.workspace-sidebar{position:static;width:72px;padding:16px 8px}.workspace-sidebar .product-mark{font-size:0}.campaign-identity div,.workspace-nav a:not(.is-active){font-size:0}.workspace-nav a{justify-content:center}.workspace-nav p,.back-library{display:none}.workspace-content{margin:0;padding:40px 22px}.form-row{grid-template-columns:1fr}}

/* Public landing page */
.landing-body{background:#08080a}.landing-nav{height:72px;display:flex;align-items:center;padding:0 clamp(24px,6vw,96px);position:absolute;inset:0 0 auto;z-index:5;border-bottom:1px solid #ffffff12}.landing-nav .product-mark{padding:0;margin-right:auto}.landing-nav nav{display:flex;gap:30px;color:#b6b6bd;font-size:13px}.landing-nav nav a:hover{color:#fff}.landing-auth{display:flex;align-items:center;gap:18px;margin-left:auto;font-size:13px}.landing-hero{height:min(900px,100vh);min-height:680px;position:relative;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}.hero-art{position:absolute;inset:0;background-image:linear-gradient(90deg,#08080a 0%,#08080ae8 25%,transparent 61%),linear-gradient(0deg,#08080a 0%,transparent 30%),url('/images/faestudio-hero.png');background-size:cover;background-position:center}.hero-copy{position:relative;z-index:2;width:min(660px,85vw);margin-left:clamp(24px,8vw,140px);padding-top:55px}.hero-kicker{display:flex;align-items:center;gap:9px;color:#c8b6ef;text-transform:uppercase;letter-spacing:.14em;font-size:10px;font-weight:700}.hero-kicker span{width:22px;height:1px;background:var(--accent)}.hero-copy h1{font-size:clamp(54px,7.5vw,108px);line-height:.9;letter-spacing:-.065em;margin:27px 0;color:#f6f3f0;font-weight:630}.hero-copy h1 em{font-family:Georgia,serif;font-weight:400;color:#bba5ef}.hero-copy>p{font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:#b2afb6;max-width:560px}.hero-actions{display:flex;gap:12px;margin-top:34px}.button-large{padding:12px 18px;font-size:14px}.button-ghost{background:#101012b8;backdrop-filter:blur(8px)}.hero-proof{display:flex;gap:24px;margin-top:30px;color:#75757e;font-size:11px}.hero-scroll{position:absolute;z-index:2;bottom:30px;left:50%;transform:translateX(-50%);color:#777780;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.hero-scroll span{margin-left:9px}.landing-features{padding:120px clamp(24px,8vw,140px);max-width:1600px;margin:auto}.section-intro{max-width:690px}.section-intro h2,.landing-workflow h2{font-size:clamp(36px,5vw,64px);line-height:1.05;letter-spacing:-.045em;margin:0 0 20px}.section-intro>p:last-child{color:var(--muted);font-size:17px;line-height:1.6}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:70px}.feature-grid article{background:#0c0c0e;padding:38px}.feature-grid article>span{color:var(--accent);font-size:25px}.feature-grid h3{margin:45px 0 12px;font-size:17px}.feature-grid p{color:var(--muted);font-size:13px;line-height:1.7}.landing-workflow{display:flex;align-items:end;justify-content:space-between;gap:60px;padding:100px clamp(24px,8vw,140px);background:#111014;border-block:1px solid var(--line)}.workflow-line{display:flex;align-items:center;min-width:min(650px,50vw)}.workflow-line span{display:grid;gap:8px;font-size:12px}.workflow-line b{font-size:10px;color:var(--accent)}.workflow-line i{height:1px;background:#3a3445;flex:1;margin:0 15px}.landing-footer{display:flex;justify-content:space-between;color:var(--faint);font-size:11px;padding:35px clamp(24px,8vw,140px)}
@media(max-width:800px){.landing-nav nav{display:none}.landing-auth>a:first-child{display:none}.landing-hero{min-height:720px}.hero-art{opacity:.65;background-position:65% center}.hero-copy{margin:auto;padding:80px 24px 0}.hero-proof{display:grid;gap:10px}.hero-scroll{display:none}.feature-grid{grid-template-columns:1fr}.landing-features{padding-block:80px}.landing-workflow{display:block;padding-block:70px}.workflow-line{min-width:0;margin-top:45px}.workflow-line i{margin:0 8px}.landing-footer{gap:20px}}

/* Authentication */
.auth-body{min-height:100vh;background:#09090b}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(390px,42%) 1fr}.auth-brand-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;padding:34px clamp(32px,4vw,68px);border-right:1px solid #ffffff14;background:radial-gradient(circle at 75% 20%,#7657c43d 0,transparent 30%),radial-gradient(circle at 10% 90%,#422c6838 0,transparent 35%),linear-gradient(145deg,#15131a,#09090b 72%)}.auth-brand-panel:before{content:"";position:absolute;inset:0;opacity:.18;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent)}.auth-product{position:relative;z-index:1;padding:0;font-size:18px}.auth-product .product-glyph{width:34px;height:34px}.auth-brand-copy{position:relative;z-index:1;margin:auto 0;max-width:520px}.auth-brand-copy h2{font-size:clamp(44px,5.2vw,78px);line-height:.98;letter-spacing:-.055em;margin:18px 0 24px}.auth-brand-copy h2 em{font-family:Georgia,serif;font-weight:400;color:#bba5ef}.auth-brand-copy>p:last-child{max-width:460px;color:#aaa7b0;font-size:16px;line-height:1.7}.auth-rune{position:absolute;right:-90px;bottom:2%;width:330px;height:330px;border:1px solid #a78bfa22;border-radius:50%;display:grid;place-items:center}.auth-rune:before,.auth-rune:after{content:"";position:absolute;border:1px solid #a78bfa1c;border-radius:50%}.auth-rune:before{inset:35px}.auth-rune:after{inset:75px}.auth-rune span{color:#a78bfa40;font-size:58px}.auth-brand-foot{position:relative;z-index:1;color:#65636b;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.auth-content{display:grid;place-items:center;padding:56px clamp(28px,7vw,110px);background:radial-gradient(circle at 100% 0,#6f50b614,transparent 35%)}.auth-mobile-brand{display:none}.auth-card{width:min(100%,640px)}.auth-card-login{max-width:480px}.auth-heading{margin-bottom:34px}.auth-heading h1{font-size:clamp(34px,4vw,48px);letter-spacing:-.045em;margin:0 0 10px}.auth-heading>p:last-child{color:var(--muted);line-height:1.6;margin:0}.auth-card form{display:grid;gap:20px}.auth-field{display:grid;gap:8px}.auth-field>label,.auth-label-row label{font-size:12px;font-weight:650;color:#d8d8dd}.auth-label-row{display:flex;align-items:center;justify-content:space-between}.auth-label-row a{font-size:11px;color:#b69cff}.auth-input{display:flex;align-items:center;gap:10px;border:1px solid #303036;border-radius:9px;background:#121215;padding:0 13px;transition:.15s}.auth-input:focus-within{border-color:#8b6ee0;box-shadow:0 0 0 4px #9c7cff16;background:#151419}.auth-input>span{width:18px;color:#706a7d;font-size:12px;text-align:center}.auth-input input{width:100%;height:48px;border:0;outline:0;background:transparent;color:var(--text)}.auth-input input::placeholder{color:#5f5f67}.auth-field>span{color:#ff8f8f;font-size:11px}.auth-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.auth-check{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:12px;cursor:pointer}.auth-check input{accent-color:var(--accent);width:15px;height:15px}.auth-submit{width:100%;height:48px;margin-top:4px;font-size:14px}.auth-submit>span{margin-left:auto}.auth-validation:empty{display:none}.auth-validation{border:1px solid #8f3f49;background:#351b20;color:#ffb8bf;border-radius:8px;padding:12px 15px;font-size:12px}.auth-validation ul{margin:0;padding-left:18px}.auth-switch{text-align:center;color:var(--muted);font-size:12px;margin-top:28px}.auth-switch a{color:#bda8ff;font-weight:650}.auth-switch a:hover,.auth-label-row a:hover{text-decoration:underline}
@media(max-width:980px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-content{min-height:100vh;padding:32px clamp(22px,8vw,70px)}.auth-mobile-brand{display:block;width:min(100%,640px);margin-bottom:42px}.auth-mobile-brand .product-mark{padding:0}.auth-card-login{max-width:640px}}
@media(max-width:600px){.auth-content{display:block}.auth-form-row{grid-template-columns:1fr}.auth-heading h1{font-size:34px}.auth-mobile-brand{margin-bottom:50px}.auth-card form{gap:17px}}
.auth-success{border:1px solid #3d7458;background:#14291e;color:#a9e8c2;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.5;margin:0 0 20px}

/* Billing */
.billing-hero{text-align:center;max-width:850px;margin:20px auto 60px}.billing-hero h1{font-size:clamp(42px,6vw,72px);line-height:1;letter-spacing:-.055em;margin:12px 0 22px}.billing-hero>p:last-child{color:var(--muted);font-size:17px;line-height:1.6}.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,430px));justify-content:center;gap:20px}.price-card{position:relative;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:34px;display:flex;flex-direction:column}.price-card.is-featured{border-color:#765dd0;box-shadow:0 20px 70px #5f43a826;background:radial-gradient(circle at 100% 0,#7253bd2c,transparent 38%),var(--panel)}.price-card h2{font-size:25px;margin:0}.price{font-size:20px;font-weight:700;margin:22px 0}.price small{font-size:12px;color:var(--muted);font-weight:400}.price-card ul{list-style:none;padding:0;margin:5px 0 28px;display:grid;gap:12px;color:#c5c5ca;font-size:13px}.price-card li:before{content:"✓";color:#a78bfa;margin-right:10px}.price-card>.button,.billing-unavailable{margin-top:auto}.price-badge{position:absolute;right:20px;top:20px;border:1px solid #8b70df55;background:#5e45a32e;color:#c9b9ff;border-radius:20px;padding:5px 9px;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.paypal-choice{display:grid;gap:18px;margin-top:auto}.paypal-choice>div>strong{display:block;font-size:11px;margin-bottom:8px;color:var(--muted)}.billing-unavailable{color:#d5b98d;background:#302719;border:1px solid #554329;border-radius:8px;padding:12px}.billing-account-card{max-width:700px;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:32px}.billing-account-card h2{font-size:30px;margin:12px 0 5px}.billing-account-card dl{display:grid;grid-template-columns:140px 1fr;border-block:1px solid var(--line);padding:18px 0;margin:25px 0;gap:10px;font-size:13px}.billing-account-card dt{color:var(--muted)}.billing-account-card dd{margin:0}.subscription-status{display:inline-block;border-radius:20px;padding:5px 9px;font-size:10px;text-transform:uppercase;letter-spacing:.09em;background:#29292d}.status-active,.status-trialing{color:#9be8b8;background:#173222}.status-pastdue,.status-suspended{color:#ffd095;background:#3a2914}.status-canceled,.status-expired,.status-revoked{color:#f3a1a9;background:#3a1d22}
/* Administration */
.admin-hero{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.admin-hero h1{font-size:clamp(36px,5vw,58px);letter-spacing:-.05em;margin:0 0 8px}.admin-hero>div>p:last-child{margin:0;color:var(--muted)}.admin-live-dot{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#94dfaf}.admin-live-dot:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#57c680;margin-right:7px;box-shadow:0 0 12px #57c680}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:30px}.admin-metrics article{border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,#151518,#101012);padding:20px;display:grid}.admin-metrics span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.admin-metrics strong{font-size:31px;margin:12px 0 4px}.admin-metrics small{color:var(--muted);font-size:11px}.admin-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:24px}.admin-tabs a{padding:10px 14px;color:var(--muted);font-size:12px;border-bottom:2px solid transparent}.admin-tabs a.is-active{color:#fff;border-color:var(--accent)}.admin-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-panel{border:1px solid var(--line);border-radius:11px;background:var(--panel);overflow:hidden}.admin-panel>header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.admin-panel>header h2{font-size:16px;margin:0}.admin-panel>header .eyebrow{margin-bottom:5px}.admin-panel>header>a,.admin-panel>header>span{font-size:11px;color:#b69cff}.admin-feed-row{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--line)}.admin-feed-row:last-child{border:0}.admin-feed-row>div{display:grid}.admin-feed-row small,.admin-modern-table small{color:var(--muted);font-size:10px;margin-top:3px}.admin-feed-row em{margin-left:auto}.admin-state{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:.08em;border-radius:20px;padding:5px 8px;background:#29292d;color:#aaa}.admin-state.is-good{background:#173222;color:#9be8b8}.admin-state.is-warn{background:#3a2914;color:#ffd095}.admin-empty{padding:30px;color:var(--muted)}.admin-table-panel{overflow:auto}.admin-modern-table{min-width:900px}.admin-modern-table .table-head,.admin-modern-table .table-row{display:grid;align-items:center;gap:16px;padding:13px 20px;border-bottom:1px solid var(--line)}.admin-modern-table .table-head{color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.1em;background:#0e0e10}.admin-modern-table .table-row{font-size:12px;min-height:70px}.admin-modern-table .table-row:last-child{border:0}.admin-modern-table .table-row>span{display:grid}.admin-users-table .table-head,.admin-users-table .table-row{grid-template-columns:2fr .8fr .9fr .8fr 1.4fr}.admin-campaigns-table .table-head,.admin-campaigns-table .table-row{grid-template-columns:1.4fr 1.8fr 1fr .6fr .6fr}.admin-subscriptions-table .table-head,.admin-subscriptions-table .table-row{grid-template-columns:1.4fr .8fr .7fr 1fr .5fr}.admin-user-cell{display:flex;align-items:center;gap:10px}.admin-user-cell>span:last-child{display:grid}.admin-actions{display:flex;gap:6px}.admin-actions form{margin:0}.admin-modern-table form{display:flex;gap:7px;align-items:center}.admin-modern-table select,.admin-grant select{min-width:0;border:1px solid var(--line);background:#151518;color:var(--text);border-radius:7px;padding:8px}.admin-grant{padding:20px;border-bottom:1px solid var(--line);background:#111014}.admin-grant h3{font-size:13px;margin:0 0 12px}.admin-grant form{display:flex;gap:8px}.admin-grant select:first-child{min-width:270px}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr}.admin-metrics{grid-template-columns:1fr 1fr}.admin-overview-grid{grid-template-columns:1fr}.admin-hero{align-items:start;flex-direction:column}.admin-tabs{overflow:auto}.admin-grant form{display:grid}.admin-grant select:first-child{min-width:0}}

/* Map library and editor */
.map-library-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.map-library-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.map-library-header p:last-child{color:var(--muted);margin:0}.map-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.map-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel);transition:.16s}.map-card:hover{transform:translateY(-2px);border-color:#504465}.map-thumbnail{height:180px;background-size:cover;background-position:center;background-color:#17171a}.map-card a>div:last-child{padding:14px 16px}.map-card h2{font-size:15px;margin:0 0 5px}.map-card p{font-size:11px;color:var(--faint);margin:0}.map-empty{margin-top:50px}.upload-field input[type=file]{padding:9px}.upload-field>small{color:var(--faint);font-size:11px}.map-editor{position:fixed;inset:0 0 0 230px;background:#08080a;z-index:5;display:grid;grid-template-rows:52px 1fr}.map-editor-bar{display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);background:#111113;font-size:12px}.map-editor-bar>div:first-child{display:flex;gap:8px;color:var(--muted)}.map-editor-bar strong{color:var(--text)}.map-editor-actions{display:flex;align-items:center;gap:5px}.map-editor-actions button{border:1px solid var(--line);border-radius:5px;background:#1a1a1d;color:var(--text);height:30px;min-width:30px;cursor:pointer}.map-editor-actions output{width:48px;text-align:center;color:var(--muted)}.map-stage{position:relative;overflow:hidden;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background-color:#0d0d10;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:24px 24px}.map-stage.is-dragging{cursor:grabbing}.map-canvas{position:absolute;transform-origin:0 0;will-change:transform}.map-canvas>img{display:block;max-width:none;user-select:none;box-shadow:0 20px 70px #000a}.map-hint{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);padding:6px 10px;border:1px solid var(--line);border-radius:20px;background:#111113dd;color:var(--muted);font-size:10px;pointer-events:none}@media(max-width:760px){.map-editor{left:72px}.map-editor-bar>div:first-child span,.map-editor-bar>div:first-child a,.map-editor-actions [data-fit]{display:none}}

/* Map markers */
.map-editor-tools{position:absolute;left:50%;transform:translateX(-50%)}.marker-tool{border:1px solid var(--line);border-radius:6px;background:#1a1a1d;color:var(--text);height:32px;padding:0 12px;cursor:pointer}.marker-tool.is-active{background:var(--accent);border-color:var(--accent);color:#100d18}.map-stage.is-placing{cursor:crosshair}.map-markers{position:absolute;inset:0;pointer-events:none}.map-marker{position:absolute;transform:translate(-50%,-100%);border:0;background:none;color:white;pointer-events:auto;cursor:pointer;padding:0}.map-marker>span{display:block;width:22px;height:22px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--accent);box-shadow:0 3px 12px #000}.map-marker>em{display:none;position:absolute;top:28px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:4px 7px;border-radius:4px;background:#09090be8;font-style:normal;font-size:10px}.map-marker:hover>em,.map-marker:focus>em{display:block}.map-marker.marker-danger>span{background:#d85353}.map-marker.marker-secret>span{background:#6c5b86}.map-marker.marker-location>span{background:#4c8d78}.map-marker.marker-travel>span{background:#c18a45}.marker-panel{position:absolute;right:0;top:52px;bottom:0;width:330px;z-index:8;background:#111113;border-left:1px solid var(--line);padding:22px;box-shadow:-15px 0 40px #0005}.marker-panel[hidden]{display:none}.marker-panel header{display:flex;justify-content:space-between;align-items:start;margin-bottom:28px}.marker-panel h2{font-size:20px;margin:0}.marker-panel header button{border:0;background:none;color:var(--muted);font-size:24px;cursor:pointer}.marker-panel form{display:grid;gap:18px}.marker-panel select{width:100%;border:1px solid var(--line);border-radius:7px;background:#141416;padding:11px 12px;color:var(--text)}.marker-form-error{min-height:16px;color:#ff8585;font-size:11px}.marker-delete{margin-right:auto;color:#ff8585}.marker-panel .form-actions{padding:0}@media(max-width:760px){.map-editor-tools{left:85px;transform:none}.marker-panel{width:min(330px,calc(100vw - 72px))}}

/* Map calibration and ruler */
.map-measurements{position:absolute;inset:0;pointer-events:none}.ruler-line{position:absolute;height:3px;background:#f5cf68;transform-origin:0 50%;box-shadow:0 0 0 1px #241c09,0 0 12px #000}.ruler-line:before,.ruler-line:after{content:"";position:absolute;top:50%;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#b68525;transform:translate(-50%,-50%)}.ruler-line:after{left:100%}.ruler-line output{position:absolute;left:50%;top:-12px;transform:translate(-50%,-100%);background:#111113e8;border:1px solid #5b4c27;border-radius:5px;padding:5px 8px;color:#f5df9e;font-size:11px;white-space:nowrap}.panel-help{color:var(--muted);font-size:12px;line-height:1.6;margin:-12px 0 24px}.scale-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.map-stage.is-measuring{cursor:crosshair}

.map-editor button,.map-editor input,.map-editor select,.map-editor textarea{touch-action:manipulation}.map-editor-bar button{min-width:38px;min-height:38px}@media(pointer:coarse){.map-editor-bar{height:60px}.map-editor{grid-template-rows:60px 1fr}.marker-panel{top:60px}.map-editor-tools{display:flex;gap:6px}.marker-tool{height:40px;padding:0 14px}.map-editor-actions button{min-width:42px;height:40px}}


@media(hover:none){.campaign-tile:hover{transform:none}.campaign-tile:active{background:var(--panel2);border-color:var(--accent)}}


/* NPC directory and profiles */
.npc-library-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.npc-library-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.npc-library-header p:last-child{color:var(--muted);margin:0}.npc-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:var(--faint);font-size:11px}.npc-search{display:flex;align-items:center;gap:8px;width:min(420px,70%);border:1px solid var(--line);border-radius:7px;background:#131315;padding:8px 10px}.npc-search input{border:0;outline:0;width:100%;background:transparent;color:var(--text)}.npc-directory{border:1px solid var(--line);border-radius:10px;overflow:hidden}.npc-row{display:grid;grid-template-columns:40px minmax(150px,1.5fr) minmax(120px,1fr) 90px 20px;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.npc-row:last-child{border:0}.npc-row:hover,.npc-row:active{background:var(--panel2)}.npc-avatar,.npc-portrait-placeholder{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:linear-gradient(145deg,#493b60,#272230);color:#e1d5f7;font-family:Georgia;font-weight:700}.npc-primary{display:grid}.npc-primary strong{font-size:13px}.npc-primary small,.npc-location{font-size:11px;color:var(--muted);margin-top:3px}.npc-status{justify-self:start;border:1px solid #3d5148;border-radius:20px;padding:4px 7px;color:#8fc5a9;font-size:9px;text-transform:uppercase;letter-spacing:.07em}.status-missing{color:#dfbc73;border-color:#554829}.status-deceased{color:#aaa;border-color:#444}.status-unknown{color:#a99ac4;border-color:#494057}.npc-arrow{color:var(--faint)}.npc-editor-page{max-width:850px;margin:auto}.npc-form{display:grid;gap:22px}.form-section{display:grid;gap:20px;padding:26px;border:1px solid var(--line);border-radius:10px;background:#101012}.form-section>h2,.form-section>div:first-child h2{font-size:14px;margin:0}.form-row.three{grid-template-columns:1fr 1fr 1fr}.npc-form select{width:100%;border:1px solid var(--line);border-radius:7px;background:#141416;padding:11px 12px;color:var(--text)}.gm-section{border-color:#3d3450;background:#121017}.gm-section>div:first-child p{font-size:11px;color:var(--muted);margin:5px 0 0}.publish-toggle{display:flex;gap:11px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:8px}.publish-toggle input{margin-top:4px}.publish-toggle label{display:grid;font-size:12px}.publish-toggle small{color:var(--muted);margin-top:3px}.npc-profile{max-width:980px}.npc-profile-header{display:grid;grid-template-columns:76px 1fr auto;gap:20px;align-items:center;margin:42px 0 30px}.npc-portrait-placeholder{width:76px;height:76px;border-radius:16px;font-size:30px}.profile-badges{display:flex;gap:8px}.profile-badges>span:not(.npc-status){font-size:9px;text-transform:uppercase;color:#bba5ef;border:1px solid #493c61;border-radius:20px;padding:4px 7px}.npc-profile-header h1{font-size:42px;letter-spacing:-.045em;margin:8px 0 0}.npc-title{color:#bba5ef;margin:4px 0}.npc-facts{display:flex;gap:16px;color:var(--muted);font-size:11px;margin-top:12px}.profile-summary{font-size:18px;line-height:1.7;color:#cccbd1;max-width:760px;padding-bottom:35px;border-bottom:1px solid var(--line)}.profile-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:50px;margin-top:38px}.profile-columns section{margin-bottom:34px}.profile-columns h2{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#aaaab2}.profile-columns p{color:#c4c4ca;white-space:pre-line;line-height:1.75;font-size:13px}.gm-notes{border-left:1px solid #3a3048;padding-left:26px}.gm-notes h2{color:#bba5ef}.muted{color:var(--muted)!important}@media(max-width:760px){.npc-library-header{align-items:start}.npc-row{grid-template-columns:40px 1fr 20px}.npc-location,.npc-status{display:none}.form-row.three{grid-template-columns:1fr}.npc-profile-header{grid-template-columns:60px 1fr}.npc-portrait-placeholder{width:60px;height:60px}.profile-edit{grid-column:1/-1}.profile-columns{grid-template-columns:1fr}.gm-notes{border-left:0;border-top:1px solid #3a3048;padding:25px 0 0}}

/* Encounter preparation */
.encounter-list{border:1px solid var(--line);border-radius:10px;overflow:hidden}.encounter-list>a{display:grid;grid-template-columns:38px 1fr auto 20px;align-items:center;gap:14px;padding:15px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.encounter-list>a:last-child{border:0}.encounter-list>a:hover,.encounter-list>a:active{background:var(--panel2)}.encounter-list>a>span:nth-child(2){display:grid}.encounter-list small{color:var(--muted);font-size:11px;margin-top:4px}.encounter-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#30262b;color:#df9b83}.participant-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.participant-picker>label{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:7px;padding:10px;cursor:pointer}.participant-picker>label:has(input:checked){border-color:#655185;background:#17131e}.participant-picker .npc-avatar{width:30px;height:30px}.participant-picker label>span:last-child{display:grid;font-size:12px}.participant-picker small{color:var(--muted)}.encounter-detail-header{display:flex;align-items:end;justify-content:space-between;margin:42px 0 30px}.encounter-detail-header h1{font-size:42px;letter-spacing:-.045em;margin:8px 0}.participant-cast{display:grid;gap:8px}.participant-cast>a{display:flex;align-items:center;gap:10px;padding:9px;border:1px solid var(--line);border-radius:7px}.participant-cast>a>span:last-child{display:grid;font-size:12px}.participant-cast small{color:var(--muted)}@media(max-width:760px){.participant-picker{grid-template-columns:1fr}.encounter-detail-header{align-items:start;gap:20px}.encounter-list>a{grid-template-columns:38px 1fr 20px}.encounter-list .npc-status{display:none}}

/* World and location workspace */
.world-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.world-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.world-header p:last-child{color:var(--muted);margin:0}.world-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.world-view-switch{display:flex;border:1px solid var(--line);border-radius:7px;padding:3px;background:#101012}.world-view-switch a{padding:6px 9px;border-radius:5px;color:var(--muted);font-size:11px}.world-view-switch a.is-active{background:#252429;color:#fff}.location-directory{border:1px solid var(--line);border-radius:10px;overflow:hidden}.location-directory>a{display:grid;grid-template-columns:40px minmax(180px,1.6fr) minmax(110px,.8fr) 100px 20px;gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.location-directory>a:last-child{border:0}.location-directory>a:hover,.location-directory>a:active{background:var(--panel2)}.location-type-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:#263246;color:#9db9df;font:700 14px Georgia}.type-city,.type-district,.type-building,.type-room{background:#332c44;color:#c4afe7}.type-world,.type-continent,.type-region,.type-country,.type-kingdom,.type-province{background:#24372f;color:#9ac9ad}.type-dungeon,.type-level{background:#3b2929;color:#dcaaa0}.type-wilderness,.type-landmark{background:#39341f;color:#ddc777}.location-primary,.location-parent{display:grid;min-width:0}.location-primary strong,.location-parent strong{font-size:13px}.location-primary small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:11px;margin-top:4px}.location-parent small{font-size:9px;color:var(--faint);text-transform:uppercase}.location-kind{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.world-tree-panel{border:1px solid var(--line);border-radius:10px;background:#101012;padding:18px}.tree-guide{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;padding:0 8px 14px;border-bottom:1px solid var(--line)}.world-tree{list-style:none;margin:0;padding:8px 0 0}.world-tree .world-tree{margin-left:27px;border-left:1px solid #35333b;padding-left:17px}.tree-node{display:flex;align-items:center;gap:9px;min-height:48px;padding:5px 8px;border-radius:7px}.tree-node:hover{background:#1a191d}.tree-toggle{border:0;background:none;color:var(--muted);font-size:18px;width:18px}.tree-toggle:disabled{opacity:.2}.tree-node>a:not(.tree-add){display:grid;flex:1}.tree-node strong{font-size:12px}.tree-node small{color:var(--muted);font-size:9px}.tree-add{opacity:0;padding:7px;color:var(--accent)}.tree-node:hover .tree-add{opacity:1}.location-breadcrumb{display:flex;gap:8px;color:var(--muted);font-size:11px}.location-breadcrumb strong{color:var(--text)}.location-profile-header{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:20px;margin:42px 0 35px}.location-hero-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:16px;font:700 28px Georgia}.location-profile-header h1{font-size:42px;letter-spacing:-.045em;margin:0}.location-profile-header p:last-child{color:var(--muted);font-size:12px}.location-description{font-size:17px;line-height:1.75;max-width:780px;white-space:pre-line;padding-bottom:38px;border-bottom:1px solid var(--line)}.sub-location-section{margin-top:35px}.sub-location-section>div:first-child{display:flex;align-items:center;gap:10px}.sub-location-section h2{font-size:14px}.sub-location-section>div:first-child span{color:var(--muted);font-size:10px}.sub-location-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:14px}.sub-location-grid>a{display:grid;grid-template-columns:34px 1fr 20px;align-items:center;gap:11px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.sub-location-grid>a>span:nth-child(2){display:grid;font-size:12px}.sub-location-grid small{color:var(--muted)}.inline-empty{display:flex;align-items:center;justify-content:space-between;border:1px dashed var(--line);border-radius:8px;padding:18px;color:var(--muted);font-size:12px}.inline-empty a{color:var(--accent)}@media(max-width:760px){.world-header{align-items:start}.world-toolbar{align-items:stretch;flex-direction:column}.world-view-switch{align-self:flex-end}.location-directory>a{grid-template-columns:40px 1fr 20px}.location-parent,.location-kind{display:none}.location-profile-header{grid-template-columns:58px 1fr}.location-hero-icon{width:58px;height:58px}.location-profile-header>.button{grid-column:1/-1}.sub-location-grid{grid-template-columns:1fr}}
.coordinate-fields{grid-template-columns:1fr 1fr}.coordinate-fields input{font-variant-numeric:tabular-nums}
.campaign-form .field select{width:100%;border:1px solid var(--line);border-radius:7px;background:#141416;padding:11px 12px;color:var(--text);outline:none}.campaign-form .field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #9c7cff18}

/* XYZ tile maps */
.map-header-actions,.empty-actions{display:flex;gap:9px}.map-thumbnail{position:relative}.map-mode{position:absolute;top:10px;right:10px;padding:4px 7px;border:1px solid #ffffff24;border-radius:20px;background:#09090bcc;color:#d5d5da;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.tile-layer{position:absolute;inset:0;overflow:hidden;background:#0b0b0d}.tile-layer img{position:absolute;display:block;max-width:none;user-select:none;-webkit-user-drag:none;box-shadow:none;border:0;outline:0}.tile-size-proxy{position:absolute;inset:0;pointer-events:none}.tile-settings{display:grid;gap:18px;padding:20px;border:1px solid var(--line);border-radius:9px;background:#101012}.tile-settings h2{font-size:12px;margin:0;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.tile-import-page code{color:#cdbcf1}@media(max-width:760px){.map-header-actions{flex-direction:column}.map-header-actions .button{font-size:11px}}

.tile-source{display:grid;gap:16px}.source-divider{display:flex;align-items:center;gap:12px;color:var(--faint);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.source-divider:before,.source-divider:after{content:"";height:1px;background:var(--line);flex:1}.import-policy{border:1px solid #3f374f;border-radius:8px;background:#121017;padding:16px;color:var(--muted);font-size:11px}.import-policy strong{color:#cdbcf1}.import-policy ul{margin:10px 0 0;padding-left:18px;line-height:1.8}

/* Session planning and journal */
.session-library-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.session-library-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.session-library-header p:last-child{color:var(--muted);margin:0}.session-timeline{position:relative;border:1px solid var(--line);border-radius:10px;overflow:hidden}.session-timeline>a{display:grid;grid-template-columns:46px minmax(180px,1fr) 90px 100px 20px;align-items:center;gap:15px;padding:15px 18px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.session-timeline>a:last-child{border:0}.session-timeline>a:hover,.session-timeline>a:active{background:var(--panel2)}.session-number{display:grid;place-items:center;width:40px;height:40px;border:1px solid #494052;border-radius:50%;color:#c9b8e8;font:700 15px Georgia}.session-main{display:grid}.session-main>small{color:var(--accent);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.session-main>strong{font-size:14px;margin-top:3px}.session-main>em{color:var(--muted);font-size:10px;font-style:normal;margin-top:4px}.session-encounters{color:var(--muted);font-size:10px}.session-heading-fields{grid-template-columns:110px 1fr}.section-help{color:var(--muted);font-size:11px;margin:5px 0 0}.session-encounter-picker{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.session-encounter-picker label{display:grid;grid-template-columns:18px 34px 1fr;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:7px;cursor:pointer}.session-encounter-picker label:has(input:checked){border-color:#655185;background:#17131e}.session-encounter-picker label>span:last-child{display:grid;font-size:11px}.session-encounter-picker small{color:var(--muted)}.session-journal-section{border-color:#344a42;background:#101614}.session-profile{max-width:1100px}.session-profile-header{display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:22px;margin:42px 0 45px}.session-number.large{width:76px;height:76px;font-size:28px}.session-profile-header h1{font-size:42px;letter-spacing:-.045em;margin:3px 0}.session-profile-header>div>p:last-child{color:var(--muted);font-size:11px}.session-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:55px}.session-workspace section{margin-bottom:35px}.session-workspace h2{font-size:12px;text-transform:uppercase;letter-spacing:.09em}.session-workspace p{white-space:pre-line;color:#c7c7cd;line-height:1.75;font-size:13px}.session-recap{padding:26px;border:1px solid #35483f;border-radius:9px;background:#101613}.session-linked-list{display:grid;gap:7px}.session-linked-list>a{display:grid;grid-template-columns:24px 1fr 18px;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.session-linked-list>a>span:nth-child(2){display:grid;font-size:11px}.session-linked-list small{color:var(--muted)}.gm-notes.compact{border:1px solid #3a3048;border-radius:8px;padding:18px}.gm-notes.compact p:last-child{margin-bottom:0}@media(max-width:760px){.session-library-header{align-items:start}.session-timeline>a{grid-template-columns:42px 1fr 20px}.session-timeline .npc-status,.session-encounters{display:none}.session-encounter-picker{grid-template-columns:1fr}.session-profile-header{grid-template-columns:62px 1fr}.session-number.large{width:58px;height:58px}.session-profile-header>.button{grid-column:1/-1}.session-workspace{grid-template-columns:1fr}}

/* Item catalog */
.item-library-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.item-library-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.item-library-header p:last-child{color:var(--muted);margin:0}.item-header-actions{display:flex;gap:9px}.item-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.item-toolbar select{border:1px solid var(--line);border-radius:7px;background:#141416;color:var(--text);padding:8px 10px}.item-catalog{border:1px solid var(--line);border-radius:10px;overflow:hidden}.item-row{display:grid;grid-template-columns:34px minmax(150px,1fr) minmax(150px,1.2fr) 80px 90px 20px;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.item-row:last-child{border:0}.item-row:hover,.item-row:active{background:var(--panel2)}.item-rarity-gem{font-size:17px;text-align:center;text-shadow:0 0 12px currentColor}.item-primary{display:grid}.item-primary strong{font-size:13px}.item-primary small{color:var(--muted);font-size:10px;margin-top:4px}.item-tags,.item-profile-tags{display:flex;gap:5px;flex-wrap:wrap}.item-tags em,.item-profile-tags span{border:1px solid var(--line);border-radius:20px;padding:3px 6px;color:var(--muted);font-size:9px;font-style:normal}.rarity-label{font-size:9px;text-transform:uppercase;letter-spacing:.08em}.rarity-normal{color:#f0f0f2}.rarity-uncommon{color:#55c878}.rarity-rare{color:#5897f5}.rarity-epic{color:#ad6bea}.rarity-legendary{color:#ed923e}.item-value{color:var(--muted);font-size:11px;text-align:right}.tag-suggestions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:2px}.tag-suggestions>small{color:var(--faint)}.tag-suggestions button{border:1px solid var(--line);border-radius:20px;background:#19191c;color:var(--muted);padding:3px 7px;font-size:9px;cursor:pointer}.tag-suggestions button:hover{border-color:var(--accent);color:#fff}.compound-field{display:grid;grid-template-columns:1fr 80px;gap:7px}.unit-field input{text-align:center}.item-profile{max-width:980px}.item-profile-header{display:grid;grid-template-columns:82px 1fr auto;align-items:center;gap:22px;margin:42px 0}.item-hero-gem{display:grid;place-items:center;width:76px;height:76px;border:1px solid currentColor;border-radius:18px;background:#111113;font-size:30px;box-shadow:inset 0 0 25px currentColor}.item-profile-header h1{font-size:42px;letter-spacing:-.045em;margin:8px 0}.profile-badges>.rarity-label{border:1px solid currentColor}.item-profile-content{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:55px;padding-top:35px;border-top:1px solid var(--line)}.item-profile-content h2{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.item-profile-content main p{white-space:pre-line;line-height:1.8;color:#c8c8ce}.item-profile-content aside{display:grid;align-content:start;border:1px solid var(--line);border-radius:9px;overflow:hidden}.item-profile-content aside>div{display:grid;gap:5px;padding:15px;border-bottom:1px solid var(--line)}.item-profile-content aside>div:last-child{border:0}.item-profile-content aside small{color:var(--muted);font-size:9px;text-transform:uppercase}.item-profile-content aside strong{font-size:13px}.type-manager{max-width:760px}.add-type-form{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px;margin-bottom:28px}.type-list{border:1px solid var(--line);border-radius:9px;overflow:hidden}.type-list>div{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid var(--line);background:var(--panel)}.type-list>div:last-child{border:0}.type-list strong{font-size:12px}.type-list small{color:var(--muted);font-size:9px}@media(max-width:760px){.item-library-header{align-items:start}.item-header-actions{flex-direction:column}.item-toolbar{align-items:stretch;flex-direction:column}.item-row{grid-template-columns:30px 1fr 70px 20px}.item-tags,.item-value{display:none}.item-profile-header{grid-template-columns:62px 1fr}.item-hero-gem{width:58px;height:58px}.item-profile-header>.button{grid-column:1/-1}.item-profile-content{grid-template-columns:1fr}.add-type-form{grid-template-columns:1fr}}

/* Players, characters, and inventory */
.player-library-header{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.player-library-header h1{font-size:40px;letter-spacing:-.04em;margin:0 0 8px}.player-library-header p:last-child{color:var(--muted);margin:0}.player-directory{border:1px solid var(--line);border-radius:10px;overflow:hidden}.player-directory>a{display:grid;grid-template-columns:42px minmax(160px,1fr) 90px 80px 80px 20px;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--panel);touch-action:manipulation}.player-directory>a:last-child{border:0}.player-directory>a:hover,.player-directory>a:active{background:var(--panel2)}.player-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,#4d3e63,#28232f);color:#dfd1f6;font:700 14px Georgia}.player-primary,.player-character-count,.player-item-count{display:grid}.player-primary strong{font-size:13px}.player-primary small,.player-character-count small,.player-item-count small{color:var(--muted);font-size:9px;margin-top:3px}.player-character-count strong,.player-item-count strong{font-size:14px}.player-profile{max-width:1100px}.player-profile-header{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:20px;margin:42px 0}.player-avatar.large{width:76px;height:76px;font-size:28px}.player-profile-header h1{font-size:42px;letter-spacing:-.045em;margin:8px 0 2px}.player-profile-header>div>p:last-child{color:var(--muted);font-size:11px}.player-alert{border:1px solid #634141;border-radius:7px;background:#211414;color:#efa3a3;padding:11px;font-size:11px}.section-title-row{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.section-title-row h2{font-size:18px;margin:0}.quick-character-form{display:grid;grid-template-columns:1.2fr 1fr 1fr 90px auto;align-items:end;gap:8px;padding:16px;border:1px solid #443852;border-radius:9px;background:#121016;margin-bottom:18px}.quick-character-form[hidden]{display:none}.character-stack{display:grid;gap:16px}.character-card{border:1px solid var(--line);border-radius:10px;background:#101012;overflow:hidden}.character-card>header{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--line)}.character-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:#25334a;color:#abc3eb;font:700 15px Georgia}.character-card h3{font-size:15px;margin:0}.character-card header p{color:var(--muted);font-size:10px;margin:4px 0 0}.character-status{font-size:9px;text-transform:uppercase;color:#81b99a}.inventory-header{display:flex;justify-content:space-between;padding:13px 16px 8px}.inventory-header h4{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin:0}.inventory-header span{font-size:9px;color:var(--faint)}.inventory-list{padding:0 10px}.inventory-row{display:grid;grid-template-columns:26px 1fr 45px 65px 24px;align-items:center;gap:8px;padding:9px 6px;border-top:1px solid #232327}.inventory-row>a{display:grid}.inventory-row strong{font-size:11px}.inventory-row small{color:var(--muted);font-size:9px}.inventory-quantity{font-size:11px;color:var(--muted)}.equip-toggle,.inventory-remove{border:0;background:none;color:var(--muted);font-size:9px;cursor:pointer}.equip-toggle.is-equipped{color:#73c592}.inventory-remove{font-size:16px}.inventory-empty{color:var(--muted);font-size:11px;padding:0 16px}.assign-item-form{display:grid;grid-template-columns:minmax(160px,1fr) 65px minmax(130px,.8fr) auto;gap:7px;padding:13px 16px;background:#0d0d0f;border-top:1px solid var(--line)}.assign-item-form select,.assign-item-form input{min-width:0;border:1px solid var(--line);border-radius:6px;background:#17171a;color:var(--text);padding:8px;font-size:10px}.player-notes{margin-top:30px;border:1px solid #3a3048;border-radius:9px;padding:20px}.player-notes h2{font-size:12px}.player-notes p:last-child{white-space:pre-line;color:#c8c8ce}.status-invited{color:#85aee2;border-color:#344d6a}.status-inactive{color:#999;border-color:#444}@media(max-width:760px){.player-library-header{align-items:start}.player-directory>a{grid-template-columns:42px 1fr 70px 20px}.player-character-count,.player-item-count{display:none}.quick-character-form{grid-template-columns:1fr 1fr}.quick-character-form .button{grid-column:1/-1}.assign-item-form{grid-template-columns:1fr 60px}.assign-item-form input[name=notes]{grid-column:1/-1}.inventory-row{grid-template-columns:24px 1fr 35px 55px 20px}}
.session-actions{display:flex;align-items:center;gap:9px}.session-actions form{margin:0}.live-launch{max-width:1200px;margin:0 auto;padding:28px}.live-launch header{max-width:720px;margin:32px 0}.live-launch header h1{font:500 46px/1.1 Georgia,serif;margin:8px 0 12px}.live-launch header>p:last-child{color:var(--text-muted);line-height:1.6}.live-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.live-link-grid section{display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding:22px;border:1px solid var(--border-color);border-radius:10px;background:var(--surface-raised)}.live-link-role{color:#ad88f5;text-transform:uppercase;letter-spacing:.15em;font-size:11px}.live-link-grid h2{margin:0}.live-link-grid code{display:block;width:100%;padding:12px;border-radius:7px;background:#090c12;color:#d9c7ff;font-size:20px;letter-spacing:.12em}.live-link-grid small{color:var(--text-muted);line-height:1.5}@media(max-width:850px){.live-link-grid{grid-template-columns:1fr}.session-actions{flex-wrap:wrap}}

/* Collapsible character inventory */
.app-content:has(#account),.app-content:has(#registerForm){max-width:1050px;margin:0 auto}.app-content:has(#account)>h1,.app-content:has(#registerForm)>h1{font-size:42px;letter-spacing:-.04em;margin:24px 0}.app-content:has(#account)>.row,.app-content:has(#registerForm)>.row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:28px}.app-content:has(#account) section,.app-content:has(#registerForm) section{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.app-content:has(#account) h2,.app-content:has(#registerForm) h2{margin:0 0 12px;font-size:18px}.app-content:has(#account) h3,.app-content:has(#registerForm) h3{margin-top:0;font-size:15px}.app-content:has(#account) hr,.app-content:has(#registerForm) hr{border:0;border-top:1px solid var(--line);margin:0 0 22px}.app-content:has(#account) .form-floating,.app-content:has(#registerForm) .form-floating{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.app-content:has(#account) .form-floating label,.app-content:has(#registerForm) .form-floating label{order:-1;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.app-content:has(#account) .form-control,.app-content:has(#registerForm) .form-control{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;background:#141416;color:var(--text);padding:12px;outline:none}.app-content:has(#account) .form-control:focus,.app-content:has(#registerForm) .form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px #9c7cff18}.app-content:has(#account) .checkbox,.app-content:has(#registerForm) .checkbox{margin:12px 0 18px;color:var(--muted)}.app-content:has(#account) .btn-primary,.app-content:has(#registerForm) .btn-primary{width:100%;border:1px solid #8064b5;border-radius:7px;background:var(--accent);color:#fff;padding:12px;font-weight:700;cursor:pointer}.app-content:has(#account) .text-danger,.app-content:has(#registerForm) .text-danger{display:block;color:#ef9292;font-size:10px;margin-top:4px}.app-content:has(#account) form+div,.app-content:has(#registerForm) form+div{color:var(--muted)}@media(max-width:760px){.app-content:has(#account)>.row,.app-content:has(#registerForm)>.row{grid-template-columns:1fr}.app-content:has(#account)>h1,.app-content:has(#registerForm)>h1{font-size:34px}}
.character-card>header form{margin:0}.character-status{border:1px solid #3d4f46;border-radius:20px;background:#121b17;padding:6px 10px;cursor:pointer}.character-status:hover{border-color:#6d9d82;color:#a2d6b5}.character-status.is-active{border-color:#47705a;background:#15251c;color:#8ed0a6}.character-inventory>summary{display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:8px;padding:13px 16px;color:var(--muted);cursor:pointer;list-style:none;user-select:none}.character-inventory>summary::-webkit-details-marker{display:none}.character-inventory>summary:hover{background:#151519;color:var(--text)}.inventory-caret{width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease}.character-inventory[open] .inventory-caret{transform:rotate(45deg)}.inventory-title{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.inventory-total{font-size:9px;color:var(--faint)}.inventory-content{border-top:1px solid var(--line)}
.lore-header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:32px}.lore-header h1{font-size:42px;margin:5px 0}.lore-header p:last-child{color:var(--muted)}
.lore-library{border:1px solid var(--line);border-radius:10px;overflow:hidden}.lore-library>a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:14px;padding:15px 17px;border-bottom:1px solid var(--line);background:var(--panel);color:inherit;text-decoration:none}.lore-library>a:last-child{border-bottom:0}.lore-library>a:hover{background:var(--panel-2)}.lore-library .lore-icon{font-size:22px}.lore-library strong,.lore-library small{display:block}.lore-library small{color:var(--muted);margin-top:3px}.lore-library time{color:var(--muted);font-size:13px}
.lore-empty{padding:42px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px}.lore-reader{max-width:920px}.lore-reader-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.markdown-body{line-height:1.75}.markdown-body h1,.markdown-body h2,.markdown-body h3{font-family:Georgia,serif;margin-top:1.4em}.markdown-body blockquote{margin:16px 0;padding:10px 16px;border-left:4px solid var(--accent);background:var(--panel)}.markdown-body pre{overflow:auto;padding:15px;background:#0d0e12;border-radius:7px}.markdown-body code{font-family:Consolas,monospace}.markdown-body table{width:100%;border-collapse:collapse}.markdown-body td,.markdown-body th{padding:8px 10px;border:1px solid var(--line);text-align:left}
.active-session-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:22px 0;padding:20px 22px;border:1px solid #5f4a8c;border-radius:12px;background:linear-gradient(135deg,#211832,#11131a)}.active-session-banner h2{margin:4px 0 6px}.active-session-banner p:last-child{color:var(--muted)}.active-session-banner>div:last-child{display:flex;gap:9px;flex-wrap:wrap}@media(max-width:720px){.active-session-banner{align-items:flex-start;flex-direction:column}}
.session-danger-zone{margin-top:36px;border:1px solid #733e49;border-radius:10px;background:#211318}.session-danger-zone>summary{padding:13px 16px;color:#e6a6b3;font-weight:700;cursor:pointer}.session-danger-zone>div{padding:4px 18px 18px;border-top:1px solid #733e49}.session-danger-zone h2{margin-bottom:6px}.session-danger-zone p{color:var(--muted);max-width:700px}.button-danger{background:#8f3144!important;color:#fff!important}.notice-banner{margin:16px 0;padding:12px 15px;border:1px solid #356a51;border-radius:8px;background:#10251b;color:#9ee0b9}
.player-access-links{align-content:start}.player-access-link{display:grid;grid-template-columns:minmax(100px,1fr) auto auto;align-items:center;gap:9px;padding:10px 0;border-top:1px solid var(--line)}.player-access-link code{font-size:13px}.player-access-link .button{padding:7px 9px}@media(max-width:680px){.player-access-link{grid-template-columns:1fr auto}.player-access-link .button{grid-column:1/-1}}
.product-glyph{font-size:0!important;background:transparent url('/images/Logo1d20.png') center/contain no-repeat!important;border:0!important;width:42px!important;height:42px!important;flex:0 0 42px}.product-mark.compact .product-glyph{width:36px!important;height:36px!important;flex-basis:36px}
.asset-header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.asset-header h1{font-size:42px;margin:5px 0}.asset-header p:last-child{color:var(--muted)}.asset-quota{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:16px;margin-bottom:22px;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.asset-quota progress{width:100%;accent-color:var(--accent)}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.asset-grid article{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.asset-grid img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#0b0d12}.asset-grid article>div{display:grid;gap:3px;padding:12px}.asset-grid small{color:var(--muted)}.asset-grid form{padding:0 12px 12px}.asset-grid form button{width:100%}@media(max-width:650px){.asset-header{align-items:flex-start;flex-direction:column}.asset-quota{grid-template-columns:1fr}}
.asset-dropzone{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-bottom:18px;padding:20px;border:2px dashed #51436c;border-radius:12px;background:#17131f}.asset-dropzone.is-dragging{border-color:#af83ff;background:#241a34}.asset-dropzone input{position:absolute;width:1px;height:1px;opacity:0}.asset-dropzone label{display:grid;gap:4px;margin:0;cursor:pointer}.asset-dropzone label strong{color:#e7dcf7;font-size:17px}.asset-dropzone label span,.asset-dropzone label small{color:var(--muted)}@media(max-width:650px){.asset-dropzone{grid-template-columns:1fr}.asset-dropzone button{width:100%}}
.token-asset-picker{display:flex;align-items:end;gap:12px;padding:10px 14px;border-top:1px solid var(--line);background:#11131a}.token-asset-picker label{flex:1;margin:0}.token-asset-picker img{width:54px;height:54px;border:2px solid #75609a;border-radius:50%;object-fit:cover;background:#090b10}
.asset-data-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.asset-data-links a{display:flex;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:inherit;text-decoration:none}.asset-data-links span{color:var(--muted)}.reference-page{padding:32px}.reference-page>header{display:flex;justify-content:space-between;align-items:end}.reference-page h1{font-size:42px;margin:4px 0}.reference-search{display:flex;gap:9px;margin:22px 0}.reference-table{overflow:auto;border:1px solid var(--line);border-radius:9px}.reference-table table{width:100%;border-collapse:collapse;background:var(--panel)}.reference-table th,.reference-table td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.reference-table th{color:var(--muted);font-size:11px;text-transform:uppercase}.reference-table td small{display:block;color:var(--muted)}

/* Authenticator setup */
.mfa-setup-card{width:min(920px,100%);max-width:none}.mfa-setup-grid{display:grid;grid-template-columns:300px minmax(0,1fr);gap:38px;align-items:start}.mfa-qr-panel{padding:24px;border:1px solid #3d354c;border-radius:13px;background:#111014;text-align:center}.mfa-qr-panel img{display:block;width:100%;height:auto;border:12px solid #fff;border-radius:8px;background:#fff}.mfa-qr-panel p{margin:15px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.mfa-instructions ol{margin:0 0 22px;padding-left:22px;color:#d4d4d9;line-height:1.9}.mfa-instructions details{margin-bottom:22px;padding:13px;border:1px solid var(--line);border-radius:8px;background:#111113;color:var(--muted)}.mfa-instructions summary{cursor:pointer;color:#d1c3ee;font-size:12px}.mfa-shared-key{display:block;margin-top:9px;padding:10px;border-radius:6px;background:#09090b;color:#d8c5ff;word-break:break-all}.mfa-instructions form{display:grid;gap:17px}.mfa-recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:0 0 25px}.mfa-recovery-codes code{padding:11px;border:1px solid var(--line);border-radius:6px;background:#111113;color:#d9c9f5;text-align:center}@media(max-width:760px){.mfa-setup-grid{grid-template-columns:1fr}.mfa-qr-panel{max-width:300px;margin:auto}.mfa-recovery-codes{grid-template-columns:1fr}}

/* User-first site administration */
.user-admin-hero{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:28px}.user-admin-hero h1{margin:0 0 8px;font-size:clamp(38px,5vw,60px);letter-spacing:-.055em}.user-admin-hero>div>p:last-child{margin:0;color:var(--muted)}.user-admin-summary{display:flex;border:1px solid var(--line);border-radius:11px;background:var(--panel);overflow:hidden}.user-admin-summary span{display:grid;gap:4px;padding:14px 17px;border-right:1px solid var(--line);color:var(--muted);font-size:9px}.user-admin-summary span:last-child{border:0}.user-admin-summary strong{color:var(--text);font-size:20px}.admin-notice{margin-bottom:18px;padding:13px 16px;border:1px solid #3a7455;border-radius:9px;background:#11251a;color:#a6e5bd}.admin-section-nav{display:flex;gap:5px;margin-bottom:20px;border-bottom:1px solid var(--line)}.admin-section-nav a{display:flex;gap:8px;padding:11px 14px;border-bottom:2px solid transparent;color:var(--muted);font-size:12px}.admin-section-nav a:hover,.admin-section-nav a.is-active{border-color:var(--accent);color:#fff}.admin-section-nav span{padding:2px 6px;border-radius:20px;background:#222226;color:var(--faint);font-size:9px}.user-admin-workspace,.admin-data-panel{border:1px solid var(--line);border-radius:13px;background:#0e0e10;overflow:hidden}.user-admin-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 190px auto auto;align-items:end;gap:10px;padding:18px;border-bottom:1px solid var(--line);background:#131316}.user-admin-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.user-admin-toolbar input,.user-admin-toolbar select,.user-management-actions select,.admin-record-list select{width:100%;border:1px solid #34343a;border-radius:7px;background:#0d0d0f;color:var(--text);padding:10px}.user-result-count{padding:12px 20px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}.user-management-card{display:grid;grid-template-columns:minmax(300px,1.5fr) minmax(240px,1fr) minmax(260px,auto);align-items:center;gap:22px;padding:21px;border-bottom:1px solid var(--line);background:#111113}.user-management-card:last-child{border:0}.user-management-card:hover{background:#151518}.user-management-card.is-locked{border-left:3px solid #b75a68;background:#151012}.user-management-identity{display:flex;align-items:center;gap:13px;min-width:0}.user-admin-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:11px;background:linear-gradient(145deg,#493965,#272230);color:#e4d8f7;font:700 17px Georgia}.user-management-identity>div{min-width:0}.user-title-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.user-title-line h2{margin:0 4px 0 0;font-size:15px}.user-management-identity p{margin:5px 0 7px;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-security-line{display:flex;gap:10px;flex-wrap:wrap;color:var(--faint);font-size:9px}.user-security-line span:before{content:"";display:inline-block;width:5px;height:5px;margin-right:5px;border-radius:50%;background:#666}.user-security-line .is-good:before{background:#52bc78}.user-security-line .is-warn:before{background:#d89b42}.user-badge{display:inline-flex;width:max-content;padding:4px 7px;border:1px solid #44444a;border-radius:20px;color:#bbb;background:#242428;font-size:8px;font-weight:700;text-transform:uppercase}.user-badge.gm{border-color:#5e4a83;background:#261d36;color:#d5c3ff}.user-badge.player{border-color:#38536f;background:#172332;color:#a9ceef}.user-badge.admin{border-color:#846626;background:#33280f;color:#f4d482}.user-badge.locked{border-color:#713c47;background:#32171d;color:#ef9cab}.user-management-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px}.user-management-stats span{display:grid;gap:3px;color:var(--faint);font-size:9px}.user-management-stats strong{color:#d4d4d9;font-size:11px}.user-management-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.user-management-actions form{margin:0}.grant-access-form{display:flex;gap:6px}.grant-access-form select{width:92px;padding:8px}.button-danger-outline{border-color:#6a3b45;background:#251318;color:#e7a1af}.user-more-actions{position:relative}.user-more-actions>summary{list-style:none;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:#19191c;color:var(--muted);font-size:11px;cursor:pointer}.user-more-actions[open]>div{position:absolute;right:0;top:42px;z-index:5;display:grid;gap:6px;width:180px;padding:8px;border:1px solid #45404e;border-radius:9px;background:#111114;box-shadow:0 18px 45px #000b}.user-more-actions button{width:100%}.admin-empty-state{padding:60px;text-align:center}.admin-empty-state p{color:var(--muted)}.admin-data-panel>header{display:flex;justify-content:space-between;padding:20px;border-bottom:1px solid var(--line)}.admin-data-panel>header h2{margin:3px 0 0}.admin-record-list article{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1fr) auto auto;align-items:center;gap:16px;padding:17px 20px;border-bottom:1px solid var(--line)}.admin-record-list h3{margin:0 0 5px}.admin-record-list p{margin:0;color:var(--muted);font-size:10px}.admin-record-list form{display:flex;gap:7px}.admin-record-list.subscriptions article{grid-template-columns:minmax(240px,1fr) auto 180px auto}@media(max-width:1100px){.user-admin-hero{align-items:start;flex-direction:column}.user-management-card{grid-template-columns:1fr}.user-management-actions{justify-content:flex-start}.user-admin-toolbar{grid-template-columns:1fr 180px auto}}@media(max-width:700px){.user-admin-summary{width:100%}.user-admin-summary span{flex:1;padding:11px}.user-admin-toolbar{grid-template-columns:1fr}.user-management-actions{align-items:stretch;flex-direction:column}.grant-access-form{display:grid;grid-template-columns:90px 1fr}.user-more-actions[open]>div{position:static;width:100%;margin-top:6px}.admin-record-list article,.admin-record-list.subscriptions article{grid-template-columns:1fr}}

/* Spacious primary navigation */
@media(min-width:761px){.app-sidebar{width:292px;padding:26px 20px}.app-frame{margin-left:292px}.app-sidebar>.product-mark{padding:0 10px 30px;font-size:18px}.app-sidebar .app-nav{gap:6px}.app-sidebar .app-nav-link{min-height:44px;padding:11px 13px;border-radius:9px;font-size:13px}.app-sidebar .app-nav-link span:first-child{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#1c1a22;color:#c8b4f2;font-size:10px;font-weight:800}.app-sidebar .account-menu{align-items:flex-start;margin-top:20px;padding:18px 10px 2px}.app-sidebar .account-avatar{flex:none;width:38px;height:38px}.app-sidebar .account-copy{width:100%;gap:3px}.app-sidebar .account-copy>a{display:grid;padding:5px 7px;border-radius:6px}.app-sidebar .account-copy>a:hover{background:#1b1b1f}.app-sidebar .account-copy strong{font-size:13px}.app-sidebar .account-copy small{font-size:11px}.app-sidebar .account-copy form{margin-top:5px;padding-top:8px;border-top:1px solid var(--line)}.app-sidebar .account-copy form button{width:100%;padding:7px;border:0;border-radius:6px;background:transparent;color:#b9a7dd;text-align:left;cursor:pointer}.app-sidebar .account-copy form button:hover{background:#211a2b;color:#fff}}

/* Keep account actions inside the user row instead of clipping below the panel. */
.user-management-actions{align-items:flex-start}.user-more-actions[open]>div{position:static;width:190px;margin-top:7px;box-shadow:none}.user-management-card:has(.user-more-actions[open]){align-items:start}

/* Authenticated member home */
.topbar-context{margin-right:auto;color:var(--muted);font-size:12px;letter-spacing:.04em}.member-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px;padding:40px;border:1px solid #3b3150;border-radius:16px;background:radial-gradient(circle at 85% 15%,#7351bb35,transparent 32%),linear-gradient(135deg,#17131f,#101013)}.member-hero h1{margin:0 0 12px;font-size:clamp(38px,5vw,62px);letter-spacing:-.055em}.member-hero p:last-child{max-width:720px;margin:0;color:var(--muted);line-height:1.65}.member-plan{flex:none;padding:8px 12px;border:1px solid #45454b;border-radius:99px;color:#b7b7be;background:#17171a;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.member-plan.is-gm{border-color:#8268ba;color:#d9caff;background:#281f3a}.member-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:34px}.member-stat-grid article{display:grid;gap:7px;padding:20px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.member-stat-grid strong{font-size:24px}.member-stat-grid span{color:var(--muted);font-size:11px}.member-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.member-path-card{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:17px;padding:24px;border:1px solid var(--line);border-radius:13px;background:var(--panel);transition:.16s}.member-path-card:hover{transform:translateY(-2px);border-color:#665482;background:var(--panel2)}.member-path-card.member-path-featured{border-color:#594674;background:linear-gradient(135deg,#20182d,#131117)}.member-path-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:11px;background:#2e2540;color:#d8c7ff;font-size:12px;font-weight:800}.member-path-card small{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;font-size:9px}.member-path-card h2{margin:5px 0 7px;font-size:18px}.member-path-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.member-path-card>b{color:var(--accent);font-size:20px}@media(max-width:760px){.member-hero{align-items:flex-start;flex-direction:column;padding:27px}.member-stat-grid{grid-template-columns:1fr}.member-paths{grid-template-columns:1fr}.member-path-card{padding:18px}}
