:root{--bg: #070b14;--bg-2: #0c1220;--bg-3: #121a2c;--card: #0f1626;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .14);--fg: #f4f7fb;--fg-2: #b7c0cf;--fg-3: #8792a5;--signal: #1fd68f;--signal-2: #5ff0b5;--signal-deep: #047857;--signal-900: #053d2c;--danger: #ff7a6b;--danger-bg: rgba(255, 122, 107, .12);--warn: #f3d9a4;--font: "Plus Jakarta Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono: "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;--ease: cubic-bezier(.2, .7, .2, 1);--r-md: 14px;--r-lg: 20px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid var(--signal);outline-offset:3px;border-radius:4px}.mono{font-family:var(--mono)}.muted{color:var(--fg-3)}.tiny{font-size:12.5px}.kicker{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--signal)}.lead{color:var(--fg-2);font-size:16.5px;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 24px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;white-space:nowrap;transition:transform .25s var(--ease),background .25s,box-shadow .25s,border-color .25s}.btn--primary{background:var(--signal);color:#04130c;box-shadow:0 10px 40px -12px #1fd68fb3}.btn--primary:hover:not(:disabled){background:var(--signal-2);transform:translateY(-1px)}.btn--ghost{border:1.5px solid var(--line-2);color:var(--fg);background:#ffffff08}.btn--ghost:hover:not(:disabled){border-color:var(--fg)}.btn--sm{min-height:42px;padding:9px 18px;font-size:14px}.btn small{font-weight:500;opacity:.75}.link{display:inline-flex;align-items:center;gap:6px;color:var(--signal);font-weight:600;margin-left:12px}.link:hover:not(:disabled){color:var(--signal-2)}.pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;border:1px solid var(--line-2);background:#1fd68f14;color:var(--signal-2);font-size:12.5px}.notice{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--bg-3);color:var(--fg-2);font-size:14px}.notice.error{background:var(--danger-bg);border-color:#ff7a6b66;color:var(--danger)}.notice.warn{color:var(--warn)}.hero{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(900px 500px at 15% -10%,rgba(31,214,143,.16),transparent 60%),radial-gradient(700px 400px at 90% 110%,rgba(31,214,143,.08),transparent 60%),var(--bg)}.login-card{width:min(460px,100%);display:flex;flex-direction:column;gap:22px;padding:36px 32px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);box-shadow:0 30px 80px -30px #000c}.login-card--center{align-items:center;text-align:center}.login-card__brand{display:flex;align-items:center;gap:16px}.login-card__brand h1{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:20px;padding:14px clamp(16px,4vw,40px);background:#070b14d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.topbar__brand{display:flex;align-items:center;gap:12px;white-space:nowrap}.topbar__brand strong{display:block;font-size:19px;font-weight:800;letter-spacing:-.03em;line-height:1.1}.topbar__brand .kicker{font-size:10px}.topbar__user{margin-left:auto;display:flex;align-items:center;gap:14px;white-space:nowrap}.search{flex:1;max-width:420px;display:flex;align-items:center;gap:10px;padding:0 16px;min-height:44px;border-radius:999px;border:1px solid var(--line-2);background:#ffffff08;color:var(--fg-3)}.search:focus-within{border-color:var(--signal);color:var(--fg)}.search input{flex:1;min-width:0;background:none;border:0;color:var(--fg);font:inherit;outline:none}.search input::placeholder{color:var(--fg-3)}.content{width:min(1240px,100%);margin:0 auto;padding:32px clamp(16px,4vw,40px) 80px;display:flex;flex-direction:column;gap:48px}.module__head{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.module__head h2{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.03em;line-height:1.05}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:18px}.card{display:flex;flex-direction:column;gap:16px;padding:22px;border-radius:var(--r-lg);background:var(--card);border:1px solid var(--line);transition:border-color .25s,transform .25s var(--ease)}.card:hover{border-color:var(--line-2)}.card__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.card__title{font-size:19px;font-weight:700;letter-spacing:-.02em}.card__desc{color:var(--fg-2);margin-top:4px;font-size:14px}.card__meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.card__actions{display:flex;flex-wrap:wrap;gap:10px}.card__actions .btn{flex:1 1 auto}.card__foot{border-top:1px solid var(--line);padding-top:12px;overflow-wrap:anywhere}details.others,details.notes{border-top:1px solid var(--line);padding-top:12px}details summary{display:flex;align-items:center;gap:8px;cursor:pointer;list-style:none;font-size:14px;font-weight:600;color:var(--fg-2)}details summary::-webkit-details-marker{display:none}details summary svg{transition:transform .2s var(--ease)}details[open] summary svg{transform:rotate(180deg)}.others__list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}details.notes p{margin-top:10px;color:var(--fg-2);font-size:14px;white-space:pre-wrap}.empty{padding:60px 24px;text-align:center;border:1px dashed var(--line-2);border-radius:var(--r-lg)}.empty h2{font-size:22px;font-weight:700;margin-bottom:8px}.foot{display:flex;flex-wrap:wrap;align-items:center;gap:4px;border-top:1px solid var(--line);padding-top:20px}.skeleton{display:flex;flex-direction:column;gap:14px;width:min(700px,100%)}.skeleton-row{height:72px;border-radius:var(--r-md);background:linear-gradient(90deg,var(--bg-2),var(--bg-3),var(--bg-2));background-size:200% 100%;animation:shimmer 1.4s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:720px){.topbar{flex-wrap:wrap;gap:12px}.search{order:3;flex-basis:100%;max-width:none}.topbar__user .muted{display:none}.card__head{flex-direction:column}.card__meta{flex-direction:row;align-items:center}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition-duration:1ms!important}}
