@charset "UTF-8";@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-ext-wght-normal-IYF56FF6.woff2") format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-cyrillic-wght-normal-JEOLYBOO.woff2") format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-ext-wght-normal-EOVOK2B5.woff2") format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-greek-wght-normal-IRE366VL.woff2") format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-vietnamese-wght-normal-CE5GGD3W.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-ext-wght-normal-HA22NDSG.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/inter-latin-wght-normal-NRMW37G5.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url("./media/space-grotesk-vietnamese-wght-normal-UOJE75FD.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url("./media/space-grotesk-latin-ext-wght-normal-KWQTIOU2.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url("./media/space-grotesk-latin-wght-normal-LIGEH75C.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--bg: #08080c;--surface: #12121a;--surface-2: #1a1a25;--surface-3: #232331;--border: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .16);--text: #f4f4f8;--muted: #9b9bb0;--subtle: #6c6c82;--accent: #c4ff3d;--accent-2: #38e1ff;--accent-ink: #0b0f02;--accent-grad: linear-gradient(135deg, #c4ff3d 0%, #38e1ff 100%);--accent-glow: 0 0 0 1px rgba(196, 255, 61, .35), 0 12px 40px -8px rgba(196, 255, 61, .45);--status-today: #c4ff3d;--status-completed: #8b7bff;--status-available: #5c5c72;--status-inactive: #ffae3d;--danger: #ff4d6d;--success: #3ddc84;--radius-sm: 10px;--radius: 16px;--radius-lg: 24px;--shadow: 0 18px 50px -20px rgba(0, 0, 0, .8);--font-body: "Inter Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Space Grotesk Variable", "Inter Variable", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}html{overflow-x:hidden}@supports (overflow-x: clip){html,body{overflow-x:clip}}body{font-family:var(--font-body);font-size:15px;line-height:1.5;color:var(--text);background-color:var(--bg);background-image:radial-gradient(60rem 40rem at 10% -10%,rgba(196,255,61,.09),transparent 60%),radial-gradient(50rem 40rem at 100% 0%,rgba(56,225,255,.08),transparent 60%),radial-gradient(40rem 30rem at 50% 110%,rgba(139,123,255,.08),transparent 60%);background-attachment:fixed;-webkit-font-smoothing:antialiased;padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;line-height:1.15;margin:0}p{margin:0}button,input{font:inherit;color:inherit}a{color:var(--accent)}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}::selection{background:#c4ff3d59}.panel{background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-2);color:var(--text);font-weight:600;font-size:.92rem;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .2s ease,opacity .15s ease}.btn:hover:not(:disabled){background:var(--surface-3);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0) scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:18px;height:18px;flex-shrink:0}.btn-primary{border:0;background:var(--accent-grad);color:var(--accent-ink);box-shadow:var(--accent-glow)}.btn-primary:hover:not(:disabled){background:var(--accent-grad);filter:brightness(1.06)}.btn-lg{min-height:54px;padding:0 28px;font-size:1.02rem}.btn-ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-danger{background:#ff4d6d1f;border-color:#ff4d6d66;color:#ff8fa3}.btn-danger:hover:not(:disabled){background:#ff4d6d33}.icon-btn{display:inline-grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--border);border-radius:12px;background:#0a0a0fb8;color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .15s ease,transform .15s ease}.icon-btn:hover{background:var(--surface-3);transform:translateY(-1px)}.icon-btn.danger:hover{background:var(--danger);border-color:var(--danger)}.icon-btn svg{width:17px;height:17px}svg.icon{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.field{display:grid;gap:6px}.field>span{font-size:.82rem;font-weight:600;color:var(--muted)}.field input{width:100%;min-height:46px;padding:0 14px;border:1px solid var(--border-strong);border-radius:12px;background:var(--bg);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.field input::placeholder{color:var(--subtle)}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c4ff3d26}.form-error{padding:10px 14px;border-radius:12px;background:#ff4d6d1a;border:1px solid rgba(255,77,109,.35);color:#ff8fa3;font-size:.9rem}.cdk-drag-preview{border-radius:var(--radius);box-shadow:0 0 0 2px var(--accent),0 24px 50px -12px #000000e6;transform-origin:center;rotate:3deg;scale:1.04;cursor:grabbing}.cdk-drag-animating{transition:transform .22s cubic-bezier(0,0,.2,1)}dialog.modal{width:min(460px,100% - 32px);max-height:calc(100dvh - 48px);padding:0;border:1px solid var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);color:var(--text);box-shadow:0 30px 80px -20px #000000e6}dialog.modal::backdrop{background:#040408b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog.modal[open]{animation:modal-in .2s ease}dialog.modal .modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 0}dialog.modal .modal-head h2{font-size:1.25rem}dialog.modal .modal-body{display:grid;gap:16px;padding:18px 22px 22px}dialog.modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.98)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
