:root{--bg: #0c1124;--bg-raised: #141930;--bg-input: #101630;--border: #2e3a66;--border-strong: #43549b;--text: #f1ecdd;--text-dim: #b8b096;--gold: #e0b64f;--gold-dim: #a8874a;--lapis: #24407e;--lapis-deep: #16244d;--accent: #e0b64f;--accent-strong: #f0d488;--danger: #ff7a90;--ok: #6fd6a8;--radius: 10px;--radius-lg: 14px;--brand-grad: linear-gradient(105deg, var(--gold), var(--accent-strong));--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px -12px rgba(0, 0, 0, .6);--shadow-glow: 0 0 0 1px rgba(224, 182, 79, .16), 0 8px 30px -10px rgba(224, 182, 79, .25);--ease: .16s cubic-bezier(.32, .72, .35, 1);--font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Cinzel", "Times New Roman", serif}@font-face{font-family:Cinzel;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/cinzel-600.woff2) format("woff2")}*{box-sizing:border-box}body{margin:0;color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background:radial-gradient(1100px 640px at 50% 118%,rgba(224,182,79,.1),transparent 62%),radial-gradient(1000px 560px at 12% -10%,rgba(36,64,126,.5),transparent 60%),radial-gradient(820px 520px at 100% 0%,rgba(22,36,77,.6),transparent 56%),var(--bg);background-attachment:fixed}a{color:var(--accent);text-decoration:none;transition:color var(--ease)}a:hover{color:var(--accent-strong)}::selection{background:#e0b64f59}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:no-preference){main.content :is(h1,.card,.tiles){animation:rise .35s ease-out both}main.content .card{animation-delay:.06s}main.content .card~.card{animation-delay:.12s}.login-card{animation:rise .45s ease-out both}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:content-box}.layout{display:grid;grid-template-columns:216px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--border);background:linear-gradient(180deg,#16244d73,#0c112433);padding:22px 14px;display:flex;flex-direction:column;gap:3px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:700;letter-spacing:.02em}.moon-glyph{flex:none;filter:drop-shadow(0 0 8px rgba(224,182,79,.45))}.brand-logo{height:26px;width:auto;flex:none;display:block;filter:drop-shadow(0 0 10px rgba(224,182,79,.35))}.brand .divider{width:1px;height:20px;background:var(--border-strong);flex:none}.brand .brand-word{font-family:var(--font-display);font-weight:600;background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-block{margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid rgba(224,182,79,.25)}.tagline{color:var(--text-dim);font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin:6px 0 0 2px}.login-card .brand-logo{height:34px}.sidebar a{display:flex;align-items:center;gap:9px;color:var(--text-dim);padding:8px 12px;border-radius:999px;border:1px solid transparent;transition:color var(--ease),background var(--ease),border-color var(--ease)}.sidebar a .nav-icon{flex:none;opacity:.75}.sidebar a:hover{color:var(--text);background:#24407e47}.sidebar a.active{color:var(--text);background:linear-gradient(180deg,#e0b64f1a,#e0b64f0a);border-color:var(--gold-dim)}.sidebar a.active .nav-icon{color:var(--gold);opacity:1}.sidebar .spacer{flex:1}main.content{padding:30px 34px;max-width:1120px;width:100%}h1{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:.03em;margin:0 0 20px}.card{background:color-mix(in srgb,var(--bg-raised) 88%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}input,select,textarea,button{font:inherit;color:var(--text)}input,select,textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius);padding:9px 12px;width:100%;transition:border-color var(--ease),box-shadow var(--ease)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #e0b64f38}button{background:var(--brand-grad);color:#0c1124;font-weight:600;border:none;border-radius:var(--radius);padding:9px 16px;cursor:pointer;box-shadow:0 6px 16px -8px #e0b64fb3;transition:filter var(--ease),transform var(--ease),box-shadow var(--ease)}button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px)}button:disabled{filter:saturate(.5) brightness(.8);cursor:not-allowed;box-shadow:none}button.ghost{background:transparent;color:var(--text-dim);border:1px solid var(--border);box-shadow:none}button.ghost:hover{color:var(--text);border-color:var(--border-strong)}button.danger{background:var(--danger);box-shadow:0 6px 16px -8px #ff7a90b3}.form-row{margin-bottom:12px}.form-row label{display:block;color:var(--text-dim);font-size:13px;margin-bottom:5px}.error{color:var(--danger);font-size:14px;margin:8px 0}.ok{color:var(--ok);font-size:14px;margin:8px 0}.login-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.login-stars:before{content:"";position:absolute;width:2px;height:2px;border-radius:50%;box-shadow:89.6vw 90vh #f1ecdda6,30.1vw 29.7vh #f1ecdd59,73.3vw 73.7vh #f1ecdd99,13.3vw 12.9vh #f1ecdd54,57vw 57.4vh #f1ecdd94,3.3vw 2.9vh #f1ecdd47,40.2vw 40.6vh #f1ecdd78,86.6vw 86.2vh #f1ecdda1,49.4vw 49.8vh #f1ecdd7a,89.5vw 89.1vh #f1ecddad,82.1vw 81.7vh #f1ecdd9c,42.1vw 42.5vh #f1ecdd82,98.4vw 98vh #f1ecdd42,58.4vw 58.8vh #f1ecdd8f,55.4vw 55vh #f1ecdd8a,9vw 9.4vh #f1ecdd40,72.1vw 71.7vh #f1ecdd8f,25.3vw 25.7vh #f1ecdd5c,42vw 41.6vh #f1ecdd70,1.5vw 1.9vh #f1ecddb5,92.7vw 93.1vh #f1ecddba,39.1vw 38.7vh #f1ecdd66,9.5vw 9.9vh #f1ecdd59,55.9vw 55.5vh #f1ecdd8a,25.8vw 26.2vh #f1ecdd5e,65.9vw 65.5vh #f1ecdd96,42.1vw 42.5vh #f1ecdd6b,82.6vw 82.2vh #f1ecdd9c,52.6vw 53vh #f1ecdd8f,98.9vw 98.6vh #f1ecddba,45.5vw 45.1vh #f1ecdd75,5.4vw 5.8vh #f1ecdd42,28.7vw 28.3vh #f1ecdd70,88.7vw 89.1vh #f1ecddb5,18.7vw 18.3vh #f1ecdd63,72.4vw 72.8vh #f1ecdd91,2.4vw 2vh #f1ecddbd,55.6vw 56vh #f1ecdd94,85.6vw 85.2vh #f1ecdda1,45.5vw 45.9vh #f1ecdd6e,1.2vw 1.5vh #f1ecdd45,47.5vw 47.1vh #f1ecdd78,84.8vw 85.2vh #f1ecdda8,31.2vw 30.8vh #f1ecdd73,34.2vw 34.6vh #f1ecdd78,74.2vw 73.8vh #f1ecddab,17.4vw 17.8vh #f1ecdd4a,58vw 57.6vh #f1ecdd85,41.3vw 41.7vh #f1ecdd70,88.1vw 87.7vh #f1ecdda3,14.9vw 14.5vh #f1ecdd4f,68.6vw 68.9vh #f1ecdda3,31.2vw 30.8vh #f1ecdd73,84.9vw 85.3vh #f1ecdda1,41.7vw 41.3vh #f1ecdd80,1.6vw 2vh #f1ecdd47,58vw 57.6vh #f1ecdd85,17.9vw 18.3vh #f1ecdd54,55vw 54.6vh #f1ecdd7a,8.7vw 9.1vh #f1ecdd4f,25.5vw 25.9vh #f1ecdd6e,66vw 65.6vh #f1ecdd87,42.2vw 42.6vh #f1ecdd7a,82.3vw 81.9vh #f1ecddad,92.4vw 92.8vh #f1ecddab,39.2vw 38.8vh #f1ecdd75,9.2vw 9.6vh #f1ecdd47,55.5vw 55.1vh #f1ecdd7a,85.4vw 85.8vh #f1ecdda1,25.4vw 25vh #f1ecdd5c}.login-tagline{text-align:center;color:var(--gold-dim);font-size:11px;letter-spacing:.22em;text-transform:uppercase;margin-top:6px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative;overflow:hidden}.login-shell:before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(224,182,79,.16),transparent 62%);filter:blur(10px);pointer-events:none}.login-card{width:348px;position:relative;padding:26px 24px 24px;box-shadow:var(--shadow-glow)}.login-card .brand{justify-content:center;font-size:25px}.login-card .login-sub{text-align:center;color:var(--text-dim);font-size:13px;margin:8px 0 20px}.muted{color:var(--text-dim);font-size:13px}.result-item{border-bottom:1px solid var(--border);padding:12px 0}.result-item:last-child{border-bottom:none}.badge{display:inline-block;font-size:12px;color:var(--text-dim);border:1px solid var(--border);border-radius:999px;padding:1px 9px;margin-left:8px}.row{display:flex;gap:10px;align-items:center}.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}@media(max-width:719px){.tiles{grid-template-columns:repeat(2,1fr)}}.tile{position:relative;overflow:hidden;background:radial-gradient(120% 100% at 0% 0%,rgba(224,182,79,.07),transparent 55%),color-mix(in srgb,var(--bg-raised) 90%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg);padding:15px 16px 16px;box-shadow:var(--shadow);transition:border-color var(--ease),transform var(--ease),box-shadow var(--ease)}.tile:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--brand-grad);opacity:.55}.tile:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.tile .value{font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.tile .label{color:var(--text-dim);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;margin-top:5px}.hero{position:relative;overflow:hidden;display:block;padding:34px 30px}.hero-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hero-stars:before{content:"";position:absolute;width:2px;height:2px;border-radius:50%;box-shadow:0 0 #f1ecddab,1057px 194px 0 .6px #f1ecddab,714px 47px #f1ecddab,370px 241px 0 .6px #f1ecddab,27px 95px #f1ecddad,1084px 289px #f1ecddab,741px 142px 0 .6px #f1ecddad,398px 336px #f1ecddad,55px 190px 0 .6px #f1ecdda6,1111px 44px #f1ecdda6,768px 237px #f1ecdd73,425px 91px #f1ecdd73,82px 285px #f1ecdd75,1139px 139px #f1ecdd75,796px 332px 0 .6px #f1ecdd75,452px 186px #f1ecdd75,109px 40px #f1ecdd75,1166px 234px #f1ecdd78,823px 87px 0 .6px #f1ecdd70,480px 281px #f1ecdd70,137px 135px #f1ecddab,1193px 329px #f1ecddab,850px 182px #f1ecddad,507px 36px #f1ecddad,164px 230px #f1ecddad,1221px 84px #f1ecddad,878px 277px #f1ecddb0,534px 131px #f1ecddad,191px 325px #f1ecddb0,1248px 179px #f1ecddb0,905px 32px 0 .6px #f1ecdd3b,562px 226px #f1ecdd3b,219px 80px #f1ecdd38,1275px 274px #f1ecdd38,932px 127px #f1ecdd38,589px 321px #f1ecdd38,246px 175px #f1ecdd36,1303px 29px #f1ecdd38,959px 222px #f1ecdd36,616px 76px 0 .6px #f1ecdd36,273px 270px #f1ecdd73,1330px 124px #f1ecdd73,987px 317px #f1ecdd70,644px 171px #f1ecdd70,300px 25px #f1ecdd70,1357px 219px 0 .6px #f1ecdd70,1014px 72px #f1ecdd70,671px 266px #f1ecdd6e,328px 120px #f1ecdd75,1385px 314px #f1ecdd75,1041px 167px 0 .6px #f1ecdd70,698px 21px #f1ecdd70,355px 215px #f1ecdd70,12px 69px #f1ecdd70,1069px 262px #f1ecdd6e,726px 116px #f1ecdd6e,382px 310px #f1ecdd6e,39px 164px #f1ecdd6e,1096px 17px #f1ecdd73,753px 211px #f1ecdd73,410px 65px #f1ecdd78,67px 258px 0 .6px #f1ecdd78,1123px 112px #f1ecdd7a,780px 306px #f1ecdd78,437px 160px #f1ecdd75,94px 13px #f1ecdd75,1151px 207px #f1ecdd78,808px 61px #f1ecdd78,464px 255px 0 .6px #f1ecdd75,121px 108px #f1ecdd73,1178px 302px #f1ecdd75,835px 156px #f1ecdd75,492px 10px #f1ecdd75,148px 203px #f1ecdd75,1205px 57px 0 .6px #f1ecdd78,862px 251px #f1ecdd78,519px 105px #f1ecdd75,176px 298px #f1ecdd78,1233px 152px #f1ecdd70,889px 6px #f1ecdd73,546px 200px #f1ecdd6e,203px 53px #f1ecdd6e,1260px 247px #f1ecdd6e,917px 101px 0 .6px #f1ecdd6e,574px 295px 0 .6px #f1ecdd70,230px 148px #f1ecdd70,1287px 2px #f1ecdd70,944px 196px #f1ecdd6e,601px 50px #f1ecdd73,258px 243px #f1ecdd73}.hero-text{position:relative;display:flex;flex-direction:column;gap:16px;max-width:660px}.hero-greeting{display:flex;align-items:center;gap:14px}.hero-chart-link{color:var(--gold);font-size:14px;width:fit-content}.layout.narrow{grid-template-columns:1fr}.layout.narrow main.content{padding:18px 16px calc(84px + env(safe-area-inset-bottom));max-width:100%}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;justify-content:space-around;align-items:stretch;gap:2px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--bg-raised) 92%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border)}.bottom-nav a,.bottom-nav .more-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;flex:1;min-height:48px;padding:4px 2px;font-size:11px;color:var(--text-dim);background:none;border:none;border-radius:var(--radius);box-shadow:none;cursor:pointer}.bottom-nav a.active,.bottom-nav a.active .nav-icon,.more-button.open{color:var(--gold)}.nav-sheet{position:fixed;bottom:calc(66px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:41;display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-glow)}.nav-sheet a{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border-radius:999px;color:var(--text-dim)}.nav-sheet a.active{color:var(--text);border:1px solid var(--gold-dim)}.notes-layout{display:grid;grid-template-columns:230px 1fr 220px;gap:16px}@media(max-width:719px){.notes-layout{grid-template-columns:1fr}.hero{grid-template-columns:1fr;padding:16px}.row{flex-wrap:wrap}h1{font-size:20px;margin-bottom:14px}.tiles{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.card{padding:14px}main.content{overflow-x:hidden}}.chat-layout{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}.chat-sidebar{margin-bottom:0}.chat-list{display:flex;flex-direction:column;gap:4px;margin-top:12px}.chat-item{display:flex;align-items:center;gap:4px}.chat-item-open{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item.active .chat-item-open{color:var(--gold);border-color:var(--gold-dim)}.chat-main{margin-bottom:0;display:flex;flex-direction:column;min-height:420px}.chat-thread{flex:1;overflow-y:auto;max-height:55vh;display:flex;flex-direction:column;gap:12px;padding-bottom:8px}.chat-message{display:flex;flex-direction:column;gap:4px}.chat-message.user{align-items:flex-end}.chat-bubble{max-width:85%;padding:10px 14px;border-radius:var(--radius-lg);background:var(--bg-input);border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere}.chat-message.user .chat-bubble{background:color-mix(in srgb,var(--lapis) 45%,var(--bg-input))}.chat-message.assistant .chat-bubble{border-color:var(--gold-dim)}.chat-sources{display:flex;gap:6px;flex-wrap:wrap}.chat-composer{margin-top:12px;align-items:flex-end}.chat-composer textarea{resize:vertical}@media(max-width:719px){.chat-layout{grid-template-columns:1fr}.chat-thread{max-height:48vh}}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-columns .card{margin-bottom:16px}.hero-search{max-width:420px}@media(max-width:719px){.dashboard-columns{grid-template-columns:1fr}}.hero-title{font-size:30px;margin:0}.hero-count{color:var(--gold)}.hero-search input{font-size:16px;padding:12px 16px}.hero-search button{white-space:nowrap;padding:12px 18px}.hero-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.badge.chip{color:var(--text);border-color:var(--gold-dim);margin-left:0;padding:4px 12px;transition:background var(--ease),border-color var(--ease)}.badge.chip:hover{background:#e0b64f1f;border-color:var(--gold)}.hero-links{gap:18px}.recent-row{display:flex;color:var(--text);transition:background var(--ease);border-radius:var(--radius);padding-left:8px;padding-right:8px}.recent-row:hover{background:#24407e40;color:var(--text)}.galaxy-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;justify-content:center}.galaxy-chip{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 14px;font-size:13px}.galaxy-chip:hover{border-color:var(--gold)}
