@import"https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700&display=swap";:root{font-family:Avenir Next,Segoe UI Variable Text,Trebuchet MS,sans-serif;color:#f4efe4;background:radial-gradient(circle at top left,rgba(247,169,59,.12),transparent 26%),radial-gradient(circle at top right,rgba(93,42,24,.2),transparent 24%),linear-gradient(180deg,#160e0d,#090b0f);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#0907075c,#090707ed),linear-gradient(90deg,#0a090af0,#0a090a8f 42%,#0a090aeb),url(/assets/d2r-sorceress-CAIFdGEw.webp),linear-gradient(180deg,#281612,#0b0e12 52%,#050608);background-attachment:fixed;background-position:center,center,top right,center;background-size:auto,auto,cover,auto}button,input{font:inherit}code{font-family:Consolas,SFMono-Regular,monospace;font-size:.92em;color:#efc76f}.app-shell{width:min(1440px,calc(100vw - 32px));margin:0 auto;padding:24px 0 56px}.app-shell-landing{width:min(1320px,calc(100vw - 40px));min-height:0;padding-top:24px;padding-bottom:12px}.deck-frame{border:1px solid rgba(186,133,91,.12);border-radius:28px;background:linear-gradient(180deg,#140f0e80,#090a0d4d);box-shadow:inset 0 0 0 1px #ffd6a805}.command-frame,.overview-frame,.loot-frame{padding:14px;margin-bottom:18px}.panel,.dropzone,.stat-card,.control-panel{border:1px solid rgba(186,133,91,.16);background:linear-gradient(180deg,#1d1512f2,#0a0c10f0),radial-gradient(circle at top,rgba(255,179,76,.06),transparent 40%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 24px 72px #0000006b,inset 0 1px #ffdcae0a}.topbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,420px);gap:18px;align-items:start;margin-bottom:12px}.brand-block{display:grid;grid-template-columns:minmax(260px,430px) minmax(0,1fr);gap:18px;align-items:center;padding:18px 22px;border-radius:24px;min-height:158px}.brand-copy{display:grid;gap:10px;max-width:32ch}.masthead-logo{width:min(100%,360px);filter:drop-shadow(0 8px 28px rgba(0,0,0,.55))}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;color:#c88f4e}.landing-section-title{margin:0 0 14px;font-family:Cinzel Decorative,Times New Roman,serif;font-size:1rem;color:#ebd3a8}.masthead-text{margin:0;color:#f4efe4d6;font-size:1.05rem;line-height:1.55}.control-stack{display:grid;gap:12px}.view-switcher{display:inline-flex;gap:8px;padding:4px;border-radius:999px;background:#ffffff08;border:1px solid rgba(186,133,91,.14)}.view-switcher button{border:0;border-radius:999px;padding:10px 16px;background:transparent;color:#f4efe4b8;cursor:pointer;font-weight:700}.view-switcher button.is-active{background:linear-gradient(135deg,#f7a93b38,#803f1652);color:#f5e6c9;box-shadow:inset 0 0 0 1px #eebb662e}.dropzone{position:relative;display:grid;place-content:center;gap:8px;text-align:center;overflow:hidden;cursor:pointer}.dropzone.compact,.control-panel{min-height:104px;padding:16px 18px;border-radius:20px}.dropzone:before{content:"";position:absolute;inset:10px;border-radius:14px;border:1px dashed rgba(227,178,103,.2);background:linear-gradient(135deg,#f7a93b1a,#ffffff05)}.dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer}.dropzone span,.dropzone small{position:relative;z-index:1}.dropzone span{font-size:1.05rem;font-weight:700}.dropzone small,.gateway-card small,.gateway-meta,.empty-state,.table-row span,.rune-card span,.roster-card span,.footnote{color:#f4efe4ad}.gateway-card{padding:16px 18px;border-radius:20px}.gateway-controls{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:10px}.gateway-controls input{min-width:0;background:#ffffff0d;color:#f4efe4;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:11px 14px}.gateway-controls button{border:0;border-radius:14px;padding:11px 16px;background:linear-gradient(135deg,#f7a93b,#b96a1c);color:#17120e;font-weight:700;cursor:pointer}.gateway-controls button.gateway-icon-button{width:44px;min-width:44px;padding:0;display:inline-grid;place-items:center;font-size:1.1rem;line-height:1}.gateway-controls button:disabled{opacity:.6;cursor:wait}.account-controls{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:10px}.account-controls select{min-width:0;background:#ffffff0d;color:#f4efe4;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:11px 14px}.account-controls button,.getting-started-actions button{border:0;border-radius:14px;padding:11px 16px;background:linear-gradient(135deg,#f7a93b,#b96a1c);color:#17120e;font-weight:700;cursor:pointer}.gateway-meta{margin:10px 0 0;line-height:1.45;font-size:.92rem}.gateway-status{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.gateway-status:before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor;box-shadow:0 0 12px currentColor}.status-connected{color:#65d489;border-color:#65d48947;background:#205d352e}.status-syncing{color:#efc76f;border-color:#efc76f3d;background:#8156102e}.status-error{color:#ff8a73;border-color:#ff8a733d;background:#80261a2e}.status-idle{color:#f4efe4a8}.banner.error{margin-bottom:18px;padding:14px 18px;border-radius:16px;background:#b9414129;border:1px solid rgba(236,94,94,.35)}.stats-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.stat-card{padding:14px 16px;border-radius:18px;display:grid;gap:8px;min-height:92px}.stat-card span{color:#f4efe4a8;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.stat-card strong{font-size:clamp(1.05rem,1.6vw,1.8rem);color:#f0e5cf}.stat-card.accent{background:linear-gradient(135deg,#c15c1c57,#361509eb),radial-gradient(circle at top left,rgba(255,188,102,.14),transparent 38%)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.72fr);gap:18px}.main-column,.sidebar-column{display:grid;gap:18px;align-content:start}.panel{border-radius:24px;padding:22px}.panel-header{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:18px;position:relative}.panel-header h3{margin:0;font-family:Cinzel Decorative,Times New Roman,serif;font-size:1.08rem;letter-spacing:.04em;color:#ebd3a8}.panel-header span{color:#f4efe499}.compact-header{margin-bottom:8px}.compact-header:after{display:none}.panel-header:after{content:"";position:absolute;left:0;bottom:-8px;width:160px;height:10px;background:url(/assets/section-divider-Cb09MZ8M.webp) no-repeat left center / contain;opacity:.75}.loot-header{margin-bottom:14px}.loot-stage{display:grid;gap:14px}.chart-wrap{height:280px}.chart-panel-empty .chart-wrap{height:120px}.history-chart{width:100%;height:100%}.chart-grid{stroke:#ffffff14;stroke-width:1}.chart-line{fill:none;stroke:#f7a93b;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:#f7c36f;stroke:#11161d;stroke-width:2}.chart-axis-label{fill:#f4efe49e;font-size:12px;font-family:Avenir Next,Segoe UI Variable Text,Trebuchet MS,sans-serif}.loot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(280px,.82fr);gap:18px;margin-bottom:0}.roster,.table{display:grid;gap:12px}.roster-card,.table-row,.rune-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;background:linear-gradient(180deg,#ffffff0a,#ffffff05),#ffffff05;border:1px solid rgba(182,136,95,.08)}.roster-card strong,.table-row strong,.rune-card strong{display:block}.portrait-card{align-items:stretch}.roster-portrait{width:62px;min-width:62px;height:78px;object-fit:cover;object-position:center 28%;border-radius:12px;border:1px solid rgba(214,171,111,.16);background:#0000003d}.roster-copy{flex:1;display:grid;align-content:center;gap:6px;min-width:0}.roster-values{text-align:right;align-self:center}.value-stack{text-align:right;display:grid;justify-items:end;gap:4px}.trade-tag-row{display:flex;flex-wrap:wrap;gap:6px}.trade-tag{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:999px;background:#f7a93b29;border:1px solid rgba(247,169,59,.4);color:#f7c36f;font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.trade-tag.trade-low{background:#7590ad24;border-color:#7590ad61;color:#9db4cc}.trade-tag.trade-mid{background:#e2b24c29;border-color:#e2b24c6b;color:#efc76f}.trade-tag.trade-high{background:#dd5c382e;border-color:#dd5c3875;color:#ff9a73}.ruleset-tag{display:inline-flex;align-items:center;width:fit-content;padding:3px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.12);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ruleset-classic{color:#c7c7cc;background:#91919b1f;border-color:#c7c7cc38}.ruleset-lod{color:#efc76f;background:#e2b24c24;border-color:#e2b24c42}.ruleset-rotw{color:#7dd0ff;background:#498ec724;border-color:#7dd0ff42}.table-row b,.rune-card b,.roster-values b{white-space:nowrap;color:#c3c0bb;font-weight:600}.rune-panel{padding-top:20px}.rune-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.rune-grid-compact{grid-template-columns:1fr}.rune-card{flex-direction:column;align-items:flex-start}.rune-card .trade-tag-row{margin-top:2px}.footnote-panel{position:relative;overflow:hidden;margin-top:18px}.footnote-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(214,107,36,.08),transparent 28%);pointer-events:none}.footnote{position:relative;line-height:1.6}.landing-shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:16px;align-items:start}.landing-hero,.landing-guide{border:1px solid rgba(186,133,91,.16);border-radius:30px;background:linear-gradient(180deg,#17110ff0,#090b0ff2),radial-gradient(circle at top left,rgba(247,169,59,.08),transparent 38%);box-shadow:0 28px 90px #00000075,inset 0 1px #ffdcae0d}.landing-hero{padding:22px 24px 24px;align-self:start}.landing-logo{width:min(100%,210px);display:block;margin-bottom:10px;filter:drop-shadow(0 10px 28px rgba(0,0,0,.55))}.landing-hero h1{margin:4px 0 8px;max-width:none;font-family:Cinzel Decorative,Times New Roman,serif;font-size:clamp(1.1rem,1.8vw,1.5rem);line-height:1.02;color:#f2e2c1}.landing-preview-frame{margin-top:20px;border-radius:18px;overflow:hidden;border:1px solid rgba(186,133,91,.18);background:#08090cd1;box-shadow:0 28px 60px #00000085,0 0 0 1px #ffd6a80a}.landing-preview-image{display:block;width:100%;height:auto}.landing-copy{margin:0 0 16px;color:#f4efe4c2;font-size:.92rem;line-height:1.65}.landing-copy a{color:#efc76f;text-decoration:none}.landing-copy a:hover{text-decoration:underline}.landing-features{margin:0 0 18px;padding-left:18px;color:#f4efe4c2;font-size:.9rem;line-height:1.7}.landing-features li+li{margin-top:4px}.landing-guide{padding:16px;display:grid;gap:10px;align-content:center}.landing-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:12px 12px 10px;border-radius:18px;background:linear-gradient(180deg,#ffffff09,#ffffff04);border:1px solid rgba(186,133,91,.1)}.landing-step.is-complete{border-color:#65d48957;background:linear-gradient(180deg,#1f492c33,#ffffff04),linear-gradient(180deg,#ffffff09,#ffffff04)}.landing-step-number{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:999px;background:linear-gradient(135deg,#f7a93b47,#924d1a80);color:#f6d79c;font-weight:800}.landing-step.is-complete .landing-step-number{background:linear-gradient(135deg,#48b46cd1,#25683ceb);color:#f2fff6}.landing-step h3{margin:0 0 4px;font-family:Cinzel Decorative,Times New Roman,serif;font-size:.9rem;color:#ebd3a8}.landing-step p{margin:0;color:#f4efe4b8;line-height:1.45;font-size:.92rem}.landing-step-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px}.landing-step-status{margin-top:8px;color:#f4efe4db;font-size:.88rem}.landing-step-help{margin-top:10px;padding:10px 12px 8px;border-radius:14px;border:1px solid rgba(186,133,91,.14);background:#ffffff09}.landing-step-help strong{display:block;margin-bottom:6px;color:#f0dfba;font-size:.88rem}.landing-step-help a{color:#efc76f;text-decoration:none}.landing-step-help a:hover{text-decoration:underline}.token-panel{margin-top:12px}.token-copy{margin:0 0 8px;color:#f4efe4bd;line-height:1.45;font-size:.88rem}.token-value{display:block;margin:0 0 6px;padding:10px 12px;border-radius:12px;border:1px solid rgba(186,133,91,.16);background:#0a0b0e94;color:#f2d58e;overflow-wrap:anywhere}.landing-step-list{margin:0;padding-left:18px;color:#f4efe4c2;line-height:1.45;font-size:.88rem}.landing-step-list li+li{margin-top:4px}.getting-started-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.discord-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:240px;min-height:50px;padding:12px 20px;border-radius:14px;border:0;background:#5865f2;color:#fff;font-weight:700;cursor:pointer}.discord-button:hover{background:#4752c4}.discord-button:disabled{background:#39408e;color:#ffffffdb;cursor:default}.token-button{min-height:42px;padding:10px 14px;border-radius:12px;border:1px solid rgba(206,155,83,.24);background:linear-gradient(135deg,#f7a93b,#b96a1c);color:#17120e;font-weight:800;cursor:pointer}.token-button.token-button-secondary{background:#ffffff0d;color:#f4efe4}.token-button:disabled{opacity:.7;cursor:default}.discord-glyph{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:999px;background:#ffffff29;font-size:.9rem;line-height:1}.dashboard-open-button{min-width:220px;min-height:48px;padding:12px 18px;border-radius:14px;border:1px solid rgba(206,155,83,.24);background:linear-gradient(135deg,#f7a93b,#b96a1c);color:#17120e;font-weight:800;cursor:pointer}.dashboard-open-button:disabled{background:#ffffff0f;color:#f4efe470;border-color:#ffffff14;cursor:not-allowed}@media(max-width:980px){.landing-shell{grid-template-columns:1fr}.landing-hero h1{max-width:none}.app-shell-landing{min-height:auto;display:block}}@media(max-width:1180px){.topbar,.dashboard-grid,.loot-grid,.brand-block{grid-template-columns:1fr}.stats-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.app-shell{width:min(100vw - 18px,100%);padding-top:18px}.panel,.control-panel,.dropzone.compact,.brand-block{padding:18px;border-radius:20px}.stats-strip,.rune-grid,.gateway-controls{grid-template-columns:1fr}.table-row,.roster-card{align-items:flex-start}}
