.matrix-page{color:#00ff41;background:#000;justify-content:center;align-items:center;min-height:100svh;font-family:Share Tech Mono,Space Mono,ui-monospace,monospace;display:flex;position:relative;overflow:hidden}.rain{z-index:0;width:100vw;max-width:none;height:100vh;position:fixed;inset:0}.matrix-page:after{content:"";z-index:1;pointer-events:none;background:repeating-linear-gradient(#0000 0 2px,#00000040 3px),radial-gradient(#0000 40%,#000000d9 100%);position:fixed;inset:0}.terminal{z-index:2;background:#000;border:1px solid #00ff4173;border-radius:6px;width:min(92vw,440px);padding:1.5rem;position:relative;box-shadow:0 0 24px #00ff4140,inset 0 0 30px #00ff410f}.tty{text-align:left;cursor:text;flex-direction:column;justify-content:flex-start;min-height:4.5em;display:flex;position:relative}.tty-line{color:#d7ffe0;text-shadow:0 0 6px #00ff4199;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.5}.tty-line.bad{color:#ff4f4f;text-shadow:0 0 6px #ff3c3c99}.tty-line.dim{color:#6bff92;opacity:.8}.tty-prompt{color:#6bff92}.tty-typed{color:#d7ffe0}.tty-cursor{vertical-align:text-bottom;background:#00ff41;width:.6em;height:1.05em;margin-left:.08em;animation:1.1s step-end infinite blink;display:inline-block;box-shadow:0 0 6px #00ff41}@keyframes blink{50%{opacity:0}}.tty-input{color:#0000;caret-color:#0000;-webkit-text-fill-color:transparent;background:0 0;border:0;outline:none;width:100%;height:100%;margin:0;padding:0;font-family:inherit;font-size:16px;position:absolute;inset:0}.tty-input:-webkit-autofill{-webkit-text-fill-color:transparent;caret-color:#0000;transition:background-color 100000s ease-in-out;animation-name:tty-autofill;animation-duration:1ms;box-shadow:inset 0 0 0 1000px #000}.tty-input:-webkit-autofill:hover{-webkit-text-fill-color:transparent;caret-color:#0000;transition:background-color 100000s ease-in-out;animation-name:tty-autofill;animation-duration:1ms;box-shadow:inset 0 0 0 1000px #000}.tty-input:-webkit-autofill:focus{-webkit-text-fill-color:transparent;caret-color:#0000;transition:background-color 100000s ease-in-out;animation-name:tty-autofill;animation-duration:1ms;box-shadow:inset 0 0 0 1000px #000}.tty-input:-webkit-autofill:active{-webkit-text-fill-color:transparent;caret-color:#0000;transition:background-color 100000s ease-in-out;animation-name:tty-autofill;animation-duration:1ms;box-shadow:inset 0 0 0 1000px #000}@keyframes tty-autofill{0%{opacity:1}to{opacity:1}}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.tty-cursor{animation:none}}.dashboard{background:var(--bg);min-height:100svh;color:var(--text-1);font-family:var(--font);padding:3rem 1.5rem}.dash-header,.today-card,.app-grid{width:100%;max-width:720px;margin:0 auto}.dash-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2.5rem;display:flex}.dash-header h1{background:linear-gradient(90deg, var(--hot), var(--link), #ffee2e);color:#0000;background-size:200%;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.4rem}.dash-sub{color:var(--text-4);margin:.4rem 0 0;font-size:.85rem}.today-card{box-sizing:border-box;border:1px solid var(--accent-dim);border-left:3px solid var(--accent);background:linear-gradient(90deg, color-mix(in srgb, var(--accent) 10%, transparent), var(--bg-2) 70%);color:inherit;border-radius:12px;margin-bottom:1.8rem;padding:.8rem 1rem;text-decoration:none;display:block}.today-card:hover{border-color:var(--accent)}.today-label{text-transform:uppercase;letter-spacing:1.4px;color:var(--accent-3);margin-bottom:.45rem;font-size:.7rem;display:block}.today-card ul{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.today-card li{align-items:baseline;gap:.8rem;display:flex}.today-card li.past{opacity:.45}.today-time{width:3.6rem;color:var(--accent-2);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.78rem}.today-title{min-width:0;color:var(--text-1);overflow-wrap:anywhere;font-size:.92rem}.logout{border:1px solid var(--border-2);color:var(--text-2);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:.4rem .9rem;font-family:inherit}.logout:hover{border-color:var(--text-4);color:var(--text-1)}.app-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:1rem;display:grid}.app-tile{aspect-ratio:1;background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:18px;justify-content:center;align-items:center;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.app-tile:hover{border-color:var(--accent);box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 25%, transparent);transform:translateY(-4px)}.app-icon{font-size:3.2rem;line-height:1;transition:transform .15s}.app-tile:hover .app-icon{transform:scale(1.15)rotate(-8deg)}.app-tile-soon{opacity:.5;border-style:dashed}.app-tile-soon:hover{border-color:var(--border);box-shadow:none;transform:none}.app-tile-soon:hover .app-icon{transform:none}@media (width<=520px){.dashboard{padding:2rem 1rem}.app-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}}.theme-picker{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:2.5rem;padding-top:1.25rem;display:flex}.theme-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-4);margin-right:.3rem;font-size:.72rem}.theme-picker button{border:1px solid var(--border-2);color:var(--text-3);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.45rem;padding:.4rem .75rem;font-family:inherit;font-size:.8rem;display:inline-flex}.theme-picker button.active{border-color:var(--accent);color:var(--text-1)}.theme-swatch{border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.theme-swatch span{border-radius:50%;width:6px;height:6px}
