:root{--bg:#f4efe6;--bg-deep:#efe4d5;--surface:#fffbf6db;--surface-strong:#fffbf6f2;--ink:#12182a;--ink-soft:#12182ab8;--line:#12182a17;--accent:#a54328;--accent-deep:#7b2715;--success:#245e3f;--danger:#912c24;--shadow:0 28px 80px #3c1f0f24}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{color:var(--ink);background:radial-gradient(circle at top left, #a543281f, transparent 28%), radial-gradient(circle at top right, #12182a14, transparent 24%), linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);font-family:Avenir Next,Hiragino Sans,Yu Gothic,Helvetica Neue,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.auth-page,.dashboard-page{min-height:100vh;padding:2rem 1.25rem 4rem}.auth-shell,.dashboard-shell{width:min(1180px,100%);margin:0 auto}.auth-shell{grid-template-columns:1.05fr .95fr;align-items:center;gap:2rem;min-height:calc(100vh - 6rem);display:grid}.setup-shell{align-items:start;padding-top:4rem}.auth-copy h1,.hero-copy-block h1{letter-spacing:-.08em;margin:0 0 1rem;font-family:Avenir Next Condensed,Helvetica Neue,Hiragino Sans,sans-serif;font-size:clamp(3.25rem,8vw,5.8rem);line-height:.92}.micro-label{color:var(--accent);letter-spacing:.26em;text-transform:uppercase;margin:0 0 1rem;font-size:.76rem;font-weight:800}.lede,.support-copy,.muted-copy,.card-body-copy{color:var(--ink-soft);margin:0;line-height:1.7}.auth-card,.surface-card,.hero-panel{background:var(--surface);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);border:1px solid #ffffff73}.auth-card,.surface-card{border-radius:30px;padding:1.5rem}.hero-panel{border-radius:36px;grid-template-columns:1.1fr .9fr;gap:1.5rem;padding:clamp(1.5rem,3vw,2rem);display:grid}.hero-copy-block{align-content:start;gap:.85rem;display:grid}.hero-action-block,.stack-form,.setup-checklist{gap:1rem;display:grid}.field-block{gap:.45rem;display:grid}.field-label{color:var(--ink-soft);font-size:.84rem;font-weight:700}.field-input{border:1px solid var(--line);background:var(--surface-strong);width:100%;color:var(--ink);border-radius:18px;outline:none;padding:.95rem 1rem;transition:border-color .18s,transform .18s,box-shadow .18s}.field-input:focus{border-color:#a543286b;transform:translateY(-1px);box-shadow:0 0 0 4px #a543281f}.field-textarea{resize:vertical;min-height:180px}.primary-button,.secondary-button,.danger-button,.emergency-trigger{letter-spacing:-.02em;border:0;border-radius:999px;padding:1rem 1.3rem;font-weight:800;transition:transform .18s,opacity .18s,box-shadow .18s}.primary-button,.emergency-trigger{color:#fff7f0;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%);box-shadow:0 18px 36px #7b271542}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.emergency-trigger:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.emergency-trigger:disabled{cursor:not-allowed;opacity:.58;transform:none}.secondary-button,.ghost-link{color:var(--ink);background:#12182a0d}.danger-button{color:#fff2f1;background:linear-gradient(135deg,#b14539 0%,#84281b 100%)}.large-button,.emergency-trigger{min-height:72px;font-size:1.05rem}.emergency-trigger{justify-content:center;align-items:center;min-height:96px;display:inline-flex}.feedback{border-radius:18px;padding:.9rem 1rem;font-size:.92rem;line-height:1.5}.feedback.success{color:var(--success);background:#245e3f1c}.feedback.error{color:var(--danger);background:#912c241a}.support-copy{margin-top:1rem}.dashboard-page{align-items:start;display:grid}.dashboard-shell{gap:1.5rem;display:grid}.shell-topbar{justify-content:space-between;align-items:start;gap:1rem;display:flex}.shell-title-wrap h1{letter-spacing:-.07em;margin:.3rem 0 0;font-family:Avenir Next Condensed,Helvetica Neue,sans-serif;font-size:clamp(2.5rem,6vw,4.2rem);line-height:.95}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.card-heading{gap:.35rem;margin-bottom:1rem;display:grid}.card-heading h2{letter-spacing:-.04em;margin:0;font-size:1.5rem}.data-list{gap:.85rem;display:grid}.data-list div{border-bottom:1px solid var(--line);justify-content:space-between;gap:1rem;padding-bottom:.75rem;display:flex}.data-list div:last-child{border-bottom:0;padding-bottom:0}.data-list dt{color:var(--ink-soft)}.data-list dd{text-align:right;margin:0;font-weight:700}.accent-card{color:#f8f0e6;background:linear-gradient(#12182aeb,#12182ad6),radial-gradient(circle at 100% 0,#a5432852,#0000 40%)}.accent-card .micro-label,.accent-card .card-body-copy{color:#f8f0e6c2}.primary-link{color:#f5c6ad;align-items:center;gap:.4rem;font-weight:700;display:inline-flex}.toggle-row{align-items:center;gap:.75rem;font-weight:700;display:flex}.user-directory{gap:.9rem;display:grid}.directory-row{background:#12182a0a;border-radius:20px;justify-content:space-between;gap:1rem;padding:1rem;display:flex}.directory-row h3{margin:0 0 .15rem;font-size:1rem}.directory-row p{color:var(--ink-soft);margin:0}.directory-meta{text-align:right;color:var(--ink-soft);gap:.25rem;font-size:.88rem;display:grid}.shell-dock{z-index:10;justify-content:center;display:flex;position:sticky;bottom:1.25rem}.dock-inner{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#12182a14;border-radius:999px;gap:.5rem;padding:.45rem;display:inline-flex;box-shadow:0 16px 40px #12182a1a}.dock-link{min-width:128px;color:var(--ink-soft);border-radius:999px;justify-content:center;align-items:center;padding:.85rem 1.15rem;font-weight:700;display:inline-flex}.dock-link.active{color:#fff8f3;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-deep) 100%)}.loading-state{place-items:center;min-height:100vh;padding:2rem;display:grid}.loading-state-card{background:var(--surface);width:min(480px,100%);box-shadow:var(--shadow);border-radius:28px;padding:2rem}.loading-state-card h1{letter-spacing:-.05em;margin:0 0 .75rem;font-size:2.2rem}.logout-row{justify-content:flex-end;display:flex}@media (max-width:920px){.auth-shell,.hero-panel,.dashboard-grid{grid-template-columns:1fr}.auth-page,.dashboard-page{padding:1.1rem 1rem 6rem}.shell-topbar{flex-direction:column}.dock-inner{justify-content:stretch;width:100%}.dock-link{flex:1;min-width:0}.directory-row,.data-list div{flex-direction:column;align-items:start}.directory-meta,.data-list dd{text-align:left}}
