:root{--orchid:#7b23c9;--indigo:#3b0f96;--violet:#5e14c4;--violet-soft:#8a55e0;--lilac:#cdbdf5;--cloud:#ecebf1;--mist:#f6f5fa;--paper:#fff;--ink:#1d0e44;--ink-2:#4c4170;--ink-3:#7d7599;--line:#e2dfec;--ok:#1f9d6b;--warn:#c2410c;--dusk:linear-gradient(170deg, var(--orchid) 0%, #5a1ab4 45%, var(--indigo) 100%);--font-display:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--t-xs:.8rem;--t-sm:.9rem;--t-md:1rem;--t-lg:1.25rem;--t-xl:1.563rem;--t-2xl:1.953rem;--t-3xl:2.441rem;--t-hero:clamp(2.6rem, 6.4vw, 5.4rem);--r-sm:10px;--r-md:16px;--r-lg:26px;--r-pill:999px;--shadow-float:0 1px 2px #3b0f960f, 0 12px 32px -12px #3b0f9638;--shadow-lift:0 2px 4px #3b0f9614, 0 24px 60px -20px #3b0f9659;--ease-soft:cubic-bezier(.22, 1, .36, 1);--ease-drift:cubic-bezier(.45, 0, .2, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--t-md);color:var(--ink);background:var(--mist);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}img,svg,canvas,video{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0;font-weight:560;line-height:1.08}p{margin:0}:focus-visible{outline:3px solid var(--violet-soft);outline-offset:3px;border-radius:6px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{--btn-bg:var(--violet);--btn-fg:#fff;border-radius:var(--r-pill);background:var(--btn-bg);height:2.75rem;color:var(--btn-fg);font-weight:650;font-size:var(--t-sm);cursor:pointer;white-space:nowrap;transition:transform .25s var(--ease-soft), background-color .2s, box-shadow .25s var(--ease-soft);border:0;justify-content:center;align-items:center;gap:.5em;padding:0 1.25rem;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:0 10px 24px -10px #5e14c499}.btn:active{transform:scale(.97)}.btn svg{width:1.1em;height:1.1em}.btn--ghost{--btn-bg:transparent;--btn-fg:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}.btn--ghost:hover{--btn-bg:var(--paper);box-shadow:inset 0 0 0 1.5px var(--lilac)}.btn--cloud{--btn-bg:var(--cloud);--btn-fg:var(--violet)}.btn--cloud:hover{--btn-bg:#fff}.btn--sm{height:2.25rem;font-size:var(--t-xs);padding:0 .9rem}.btn[disabled]{opacity:.45;pointer-events:none}.icon-btn{border-radius:var(--r-pill);width:2.25rem;height:2.25rem;color:var(--ink-2);cursor:pointer;background:0 0;border:0;place-items:center;transition:background-color .15s,color .15s;display:inline-grid}.icon-btn:hover{background:var(--cloud);color:var(--violet)}.icon-btn svg{width:1.15rem;height:1.15rem}.menu{z-index:5;border-radius:var(--r-md);background:var(--paper);min-width:12rem;box-shadow:var(--shadow-lift);animation:pop .16s var(--ease-soft);transform-origin:100% 100%;padding:.35rem;display:grid;position:absolute;bottom:calc(100% + 6px);right:0}.menu button{border-radius:var(--r-sm);font-size:var(--t-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.6rem;padding:.6rem .75rem;font-weight:600;display:flex}.menu button:hover{background:var(--mist)}.menu button:disabled{opacity:.4}.menu svg{width:1rem;height:1rem}.menu__danger{color:var(--warn)}@keyframes pop{0%{opacity:0;transform:scale(.96)}}.toast-stack{z-index:100;pointer-events:none;gap:.5rem;display:grid;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast{border-radius:var(--r-pill);background:var(--ink);color:#fff;font-size:var(--t-sm);box-shadow:var(--shadow-lift);animation:toast-in .32s var(--ease-soft);align-items:center;gap:.6rem;padding:.7rem 1.1rem .7rem .8rem;font-weight:550;display:flex}.toast svg{width:1.2rem;height:1.2rem;color:var(--lilac)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)scale(.96)}}.page-enter{animation:page-in .28s var(--ease-soft) both}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.btn--danger{--btn-bg:var(--warn)}.btn--danger:hover{box-shadow:0 10px 24px -10px #c2410c99}.icon-btn:disabled{opacity:.35;pointer-events:none}.icon-btn--danger:hover{color:var(--warn);background:#fdeee6}.toast--error svg{color:#fdba8c}.tag{border-radius:var(--r-pill);background:var(--cloud);height:1.3rem;color:var(--ink-2);font-family:var(--font-body);letter-spacing:.01em;vertical-align:.1em;white-space:nowrap;align-items:center;margin-left:.4rem;padding:0 .5rem;font-size:.7rem;font-weight:700;display:inline-flex}.tag--violet{color:var(--violet);background:#ebe3fb}.tag--warn{color:var(--warn);background:#fdeee6}.editable-title{cursor:text;border-radius:6px;transition:background-color .15s,box-shadow .15s}.editable-title:hover{background:#cdbdf559;box-shadow:0 0 0 4px #cdbdf559}.editable-title__input{border:0;border-radius:6px;outline:none;width:100%;min-width:0}.boot{place-items:center;min-height:100vh;display:grid}.boot__mark{opacity:.8;animation:2.4s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.quota__bar{border-radius:var(--r-pill);background:var(--cloud);height:6px;display:block;position:relative;overflow:hidden}.quota__bar>span{border-radius:inherit;background:var(--violet-soft);transform-origin:0;transition:transform .4s var(--ease-soft);position:absolute;inset:0}.quota__bar.is-full>span{background:var(--warn)}
