@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{color-scheme:dark;--background-primary:#18181b;--background-secondary:#1f2023;--background-readonly:#28282b;--text-primary:#fafafa;--text-secondary:#b5b5b5;--text-muted:#9ca3af;--border-color:#333;--accent-color:#4ade80;--accent-color-hover:#3acb70;--error-color:#ef4444;--box-shadow:rgba(0,0,0,0.2);--font-main:"Inter",Arial,Helvetica,sans-serif;--input-background:#101014;--input-text:#f4f4f5;--input-placeholder:#8f8fa3}:root[data-theme=dark]{color-scheme:dark;--background-primary:#18181b;--background-secondary:#1f2023;--background-readonly:#28282b;--text-primary:#fafafa;--text-secondary:#b5b5b5;--text-muted:#9ca3af;--border-color:#333;--accent-color:#4ade80;--accent-color-hover:#3acb70;--error-color:#ef4444;--box-shadow:rgba(0,0,0,0.2);--input-background:#101014;--input-text:#f4f4f5;--input-placeholder:#8f8fa3}:root[data-theme=light]{color-scheme:light;--background-primary:#f4f7fb;--background-secondary:#ffffff;--background-readonly:#e5e7eb;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#6b7280;--border-color:#d1d5db;--accent-color:#2563eb;--accent-color-hover:#1d4ed8;--error-color:#dc2626;--box-shadow:rgba(15,23,42,0.12);--input-background:#ffffff;--input-text:#1f2937;--input-placeholder:#9ca3af}:root[data-theme=system]{color-scheme:light dark}@media (prefers-color-scheme:dark){:root[data-theme=system]{color-scheme:dark;--background-primary:#18181b;--background-secondary:#1f2023;--background-readonly:#28282b;--text-primary:#fafafa;--text-secondary:#b5b5b5;--text-muted:#9ca3af;--border-color:#333;--accent-color:#4ade80;--accent-color-hover:#3acb70;--error-color:#ef4444;--box-shadow:rgba(0,0,0,0.2);--input-background:#101014;--input-text:#f4f4f5;--input-placeholder:#8f8fa3}}@media (prefers-color-scheme:light){:root[data-theme=system]{color-scheme:light;--background-primary:#f4f7fb;--background-secondary:#ffffff;--background-readonly:#e5e7eb;--text-primary:#1f2937;--text-secondary:#4b5563;--text-muted:#6b7280;--border-color:#d1d5db;--accent-color:#2563eb;--accent-color-hover:#1d4ed8;--error-color:#dc2626;--box-shadow:rgba(15,23,42,0.12);--input-background:#ffffff;--input-text:#1f2937;--input-placeholder:#9ca3af}}body{font-family:var(--font-main);background-color:var(--background-primary);color:var(--text-primary);margin:0;padding:0}.site-logo-top-right{position:fixed;top:12px;right:12px;z-index:1000;display:inline-flex;text-decoration:none}.site-footer{margin-top:36px;padding-top:18px;border-top:1px solid var(--border-color);color:var(--text-secondary)}.site-footer__inner{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap;font-size:.85rem}.site-footer a{color:var(--text-secondary);text-decoration:underline}.site-footer a:hover{color:var(--text-primary)}.site-footer .sep{opacity:.5}.container{max-width:400px;margin:3rem auto;padding:2rem 2rem 1.5rem;border-radius:16px;background:var(--background-primary);box-shadow:0 2px 12px var(--box-shadow);display:flex;flex-direction:column;align-items:center}.container h1,.container h2{text-align:center;color:var(--text-primary);margin-bottom:1.5rem;font-weight:600;letter-spacing:-.5px;font-family:var(--font-main)}.label{margin-bottom:.35rem;color:var(--text-primary);font-size:1rem}.label,.label-muted{width:100%;font-family:var(--font-main);text-align:left}.label-muted{margin-bottom:1.1rem;color:var(--text-secondary);font-size:.93rem}.input,.select{width:100%;max-width:320px;min-width:180px;padding:8px 10px;border-radius:6px;border:1px solid var(--border-color);margin-top:6px;background:var(--input-background);color:var(--input-text);box-sizing:border-box;font-size:1.04rem;font-family:var(--font-main);transition:border .18s,background .18s,color .18s}.input:focus,.select:focus{border-color:var(--accent-color);outline:none}.input::placeholder,.select::placeholder{color:var(--input-placeholder);opacity:1}.input[readonly]{background:var(--background-readonly);color:var(--text-muted);border:none;padding:6px 10px;font-size:.99rem;margin-top:2px}.button-primary{width:fit-content;min-width:160px;padding:12px 36px;border-radius:8px;border:none;background:var(--accent-color);color:var(--background-primary);font-weight:600;font-size:1.1rem;margin-top:8px;cursor:pointer;box-shadow:0 2px 6px var(--box-shadow);transition:background .2s;display:block;margin-left:auto;margin-right:auto}.button-primary:hover{background:var(--accent-color-hover)}.status{margin-top:18px;min-height:24px;text-align:center;font-weight:500;font-size:1rem;font-family:var(--font-main)}.status-success{color:var(--accent-color)}.status-error{color:var(--error-color)}a{color:var(--accent-color);text-decoration:underline;font-size:.99rem;font-family:var(--font-main)}.container .button-primary,.container a{display:block;margin-left:auto;margin-right:auto}.form-field-wrapper{width:100%;display:flex;flex-direction:column;align-items:center;margin-bottom:1.1rem}.form-field-wrapper .input,.form-field-wrapper .select{margin-left:auto;margin-right:auto}.field-inner{width:100%;max-width:320px;display:flex;flex-direction:column;align-items:stretch;margin:0 auto}.input-with-toggle{position:relative;width:100%}.password-input{padding-right:40px}.password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;line-height:0;transition:color .2s}.password-toggle:hover{color:var(--text-primary)}.password-toggle:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.password-toggle svg{pointer-events:none}.login-container{display:flex;flex-direction:column;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-main);font-weight:600;border-radius:8px;border:1px solid transparent;padding:.65rem 1.5rem;font-size:.95rem;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s;background:transparent;color:var(--text-primary);user-select:none}.button:hover:not(:disabled){transform:translateY(-1px)}.button:active:not(:disabled){transform:translateY(0)}.button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.button--primary{background:var(--accent-color);color:var(--background-primary);box-shadow:0 2px 8px rgba(0,0,0,.25)}.button--primary:hover:not(:disabled){background:var(--accent-color-hover)}.button--secondary{background:transparent;border-color:rgba(74,222,128,.35);color:var(--text-primary)}.button--secondary:hover:not(:disabled){background:rgba(74,222,128,.12);border-color:var(--accent-color);color:var(--accent-color)}.button--secondary-accent{background:transparent;border-color:rgba(74,222,128,.45);color:#c9fdd7}.button--secondary-accent:hover:not(:disabled){background:rgba(74,222,128,.18);border-color:rgba(74,222,128,.85);color:#4ade80}.button--secondary-blue{background:transparent;border-color:rgba(56,189,248,.35);color:#cceaff}.button--secondary-blue:hover:not(:disabled){background:rgba(56,189,248,.16);border-color:#38bdf8;color:#38bdf8}.button--secondary-red{background:transparent;border-color:rgba(248,113,113,.4);color:#fda4a4}.button--secondary-red:hover:not(:disabled){background:rgba(248,113,113,.16);border-color:#f87171;color:#f87171}.button--tertiary{background:rgba(74,222,128,.12);color:var(--accent-color);border-color:rgba(74,222,128,.3)}.button--tertiary:hover:not(:disabled){background:rgba(74,222,128,.18)}.button--outline{background:transparent;border-color:#50505a;color:var(--text-primary)}.button--outline:hover:not(:disabled){border-color:var(--accent-color);color:var(--accent-color)}.button--ghost{background:transparent;color:var(--text-secondary)}.button--ghost:hover:not(:disabled){color:var(--text-primary);background:rgba(255,255,255,.05)}.button--danger{background:var(--error-color);color:var(--background-primary);box-shadow:0 2px 8px rgba(0,0,0,.25)}.button--danger:hover:not(:disabled){background:#e23b3b}.button--sm{padding:.4rem 1rem;font-size:.85rem}.button--lg{padding:.85rem 1.9rem;font-size:1.05rem}.button--block{width:100%}.button--icon{padding:.5rem;width:2.5rem;height:2.5rem}.button--icon svg{width:1.1rem;height:1.1rem}.badge{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.25rem .65rem;border-radius:999px;font-size:.78rem;font-weight:600;line-height:1.2;letter-spacing:.01em;border:1px solid transparent;background:rgba(63,63,70,.65);color:var(--text-secondary);text-decoration:none;white-space:nowrap}.badge--square{border-radius:8px}.badge--soft{background:rgba(63,63,70,.35)}.badge--solid{color:var(--background-primary)}.badge--outline{background:transparent}.badge--accent.badge--soft{background:rgba(74,222,128,.18);color:var(--accent-color);border-color:rgba(74,222,128,.3)}.badge--accent.badge--solid{background:var(--accent-color)}.badge--accent.badge--outline{color:var(--accent-color);border-color:rgba(74,222,128,.45)}.badge--info.badge--soft{background:rgba(56,189,248,.16);color:#38bdf8;border-color:rgba(56,189,248,.3)}.badge--info.badge--solid{background:#0ea5e9}.badge--info.badge--outline{color:#38bdf8;border-color:rgba(56,189,248,.45)}.badge--neutral.badge--soft{background:rgba(111,114,130,.18);color:#d4d4d8;border-color:rgba(111,114,130,.35)}.badge--neutral.badge--solid{background:#3f3f46}.badge--neutral.badge--outline{color:#e4e4e7;border-color:rgba(111,114,130,.45)}.badge--warning.badge--soft{background:rgba(250,204,21,.18);color:#facc15;border-color:rgba(250,204,21,.35)}.badge--warning.badge--solid{background:#f59e0b}.badge--warning.badge--outline{color:#facc15;border-color:rgba(250,204,21,.45)}.badge--danger.badge--soft{background:rgba(239,68,68,.16);color:#f87171;border-color:rgba(239,68,68,.3)}.badge--danger.badge--solid{background:var(--error-color)}.badge--danger.badge--outline{color:#f87171;border-color:rgba(239,68,68,.45)}.badge--interactive{cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .12s ease-out,box-shadow .18s;box-shadow:0 0 0 rgba(0,0,0,0)}.badge--interactive:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(0,0,0,.28);filter:brightness(1.08)}.badge--interactive:active{transform:translateY(0);filter:brightness(1.02)}.badge--interactive:focus-visible{outline:2px solid rgba(74,222,128,.85);outline-offset:2px}.assign-modal-scroll{scrollbar-width:thin;scrollbar-color:#4b5563 #111827}.assign-modal-scroll::-webkit-scrollbar{width:10px}.assign-modal-scroll::-webkit-scrollbar-track{background:#111827}.assign-modal-scroll::-webkit-scrollbar-thumb{background:#4b5563;border-radius:999px}.assign-modal-scroll::-webkit-scrollbar-thumb:hover{background:#6b7280}