@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,700&display=swap";.login-page{min-height:100vh;display:flex;flex-direction:column;background:var(--page-bg)}.login-top{display:flex;justify-content:center;padding:18px 24px;border-bottom:1px solid var(--line)}.login-logo{width:170px;height:auto;display:block}.login-main{flex:1;display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:center;gap:64px;width:100%;max-width:1200px;margin:0 auto;padding:40px 48px;box-sizing:border-box}.login-form{display:flex;flex-direction:column;gap:18px}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:13px;font-weight:600;color:var(--text)}.input-box{display:flex;align-items:center;gap:10px;padding:0 14px;border:1px solid var(--field-border);border-radius:12px;background:var(--card);color:var(--muted)}.input-box:focus-within{border-color:var(--field-focus);color:var(--field-focus)}.input-box svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.input-box.invalid,.input-box.invalid:focus-within{border-color:var(--error);color:var(--error)}.input-box input{flex:1;min-width:0;padding:15px 0;border:none;outline:none;background:transparent;color:var(--strong);font:inherit;font-size:15px}.input-box input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--card) inset;-webkit-text-fill-color:var(--strong);caret-color:var(--strong)}.input-box input::placeholder{color:var(--muted)}.show-btn{padding:6px 4px;border:none;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.show-btn:hover{color:var(--field-focus)}.login-error{display:flex;align-items:center;gap:8px;margin:0;color:var(--error);font-size:14px;font-weight:600}.login-error svg{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.login-notice{margin:0;color:var(--chip-text);font-size:14px}.login-btn{display:flex;align-items:center;justify-content:space-between;margin-top:4px;padding:16px 20px;border:none;border-radius:12px;background:var(--cmds-red);color:var(--white);font:inherit;font-size:16px;font-weight:700;cursor:pointer}.login-btn:hover{filter:brightness(1.08)}.login-btn:disabled{opacity:.7;cursor:wait}.login-btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.forgot-btn{align-self:flex-start;padding:4px 0;border:none;background:transparent;color:var(--link-blue);font:inherit;font-size:14px;cursor:pointer}.forgot-btn:hover{text-decoration:underline}button:focus-visible,.input-box:focus-within{outline:none}button:focus-visible{box-shadow:0 0 0 2px var(--gold)}.login-bottom{padding:18px 24px;border-top:1px solid var(--line);text-align:center;font-size:13px;color:var(--muted)}.login-art{display:flex;justify-content:center}.art{width:100%;max-width:560px;height:auto}.art-glow{fill:#252a35}.art-leaf{fill:#343a47}.art-card{fill:#e9ecf3}.art-card-line{fill:none;stroke:#9aa3b8;stroke-width:3;stroke-linejoin:round}.art-line{fill:#c3c9d6}.art-muted{fill:#b7bfce}.art-white{fill:#e9ecf3}.art-outline{fill:none;stroke:#e9ecf3;stroke-width:2.5}.art-gold{fill:var(--cmds-red)}.art-screen-frame{fill:#2a2f3a}.art-screen{fill:var(--navy)}.art-input{fill:#1c2c52}.art-base{fill:#3a404d}.art-notch{fill:#2a2f3a}.art-shield{fill:var(--cmds-red)}.art-shield-inner{fill:#dc6a81}.art-lock{fill:var(--navy)}.art-lock-loop{fill:none;stroke:var(--navy);stroke-width:6;stroke-linecap:round}.art-keyhole{fill:#dc6a81}@media(prefers-reduced-motion:no-preference){.float{animation:float 6s ease-in-out infinite}.float-2{animation-delay:-2s}.float-3{animation-delay:-4s}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media(max-width:860px){.login-main{grid-template-columns:1fr;gap:32px;padding:32px 20px}.login-form{max-width:420px;width:100%;margin:0 auto}.login-art{order:-1}.art{max-width:320px}}:root{color-scheme:dark;--navy: #0f1e3d;--gold: #d4af37;--white: #ffffff;--header-muted: #a9b4cf;--page-bg: #1e2026;--card: #16181d;--th-bg: #22252c;--th-text: #e6e8ee;--text: #dfe2ea;--strong: #ffffff;--muted: #9aa1b2;--line: #2c2f37;--hover: #22252c;--chip-bg: #3a3115;--chip-text: #e8c35a;--badge-line: #444a57;--error: #ff4d4f;--cmds-red: #cc435f;--link-blue: #4d94ff;--field-border: #607460;--field-focus: #8fae8f;--sidebar-bg: #121317;--sidebar-card: #17191e;--sidebar-card-line: #34373f;--nav-active-bg: #2a2c32;--nav-active-text: #e2738a;--top-height: 124px;--sidebar-pad: 16px;--section-gap: 18px;--font-body: "DM Sans", system-ui, sans-serif;--font-title: "Fraunces", Georgia, serif}body{margin:0;font-family:var(--font-body);background:var(--page-bg);color:var(--text)}.layout{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.main{min-width:0}.sidebar{position:sticky;top:0;height:100vh;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--section-gap);padding:var(--sidebar-pad) 12px;background:var(--sidebar-bg);border-right:1px solid var(--line)}.sidebar-brand{display:flex;align-items:center;justify-content:center;box-sizing:border-box;flex-shrink:0;height:calc(var(--top-height) - var(--sidebar-pad));padding:0 12px;border:1px solid var(--sidebar-card-line);border-radius:16px;background:var(--sidebar-card)}.sidebar-brand img{display:block;width:150px;height:auto}.sidebar-nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;color:var(--text);font-size:15px;font-weight:700;text-decoration:none}.nav-item.active{background:var(--nav-active-bg);color:var(--nav-active-text)}.nav-item svg,.logout-btn svg{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-item svg{color:var(--cmds-red)}.sidebar-spacer{flex:1}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--sidebar-card-line);border-radius:12px;background:var(--sidebar-card)}.avatar{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:50%;background:var(--cmds-red);color:var(--white);font-weight:700;font-size:15px}.user-text{display:flex;flex-direction:column;min-width:0}.user-name{color:var(--strong);font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;border:none;border-radius:10px;background:var(--cmds-red);color:var(--white);font:inherit;font-size:15px;font-weight:700;cursor:pointer}.logout-btn:hover{filter:brightness(1.08)}.topbar{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;box-sizing:border-box;min-height:var(--top-height);padding:0 24px;border-bottom:1px solid var(--line)}.topbar-title{flex:1 1 220px;min-width:0}.topbar-title h1{margin:0;font-size:24px;font-weight:700;color:var(--strong)}.search{display:flex;align-items:center;gap:8px;flex:0 1 280px;min-width:0;padding:10px 12px;border:1px solid var(--field-border);border-radius:10px;color:var(--muted)}.search:focus-within{border-color:var(--field-focus);color:var(--field-focus)}.search svg{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2}.search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--strong);font:inherit;font-size:14px}.search input::placeholder{color:var(--muted)}.count{margin:2px 0 0;font-size:13px;color:var(--muted)}.content{padding:var(--section-gap) 24px 24px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:12px;margin-bottom:20px}.filter{display:flex;flex-direction:column;gap:6px;min-width:0}.filter-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.select-box{position:relative;display:block}.select-box select{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 36px 10px 12px;border:1px solid var(--field-border);border-radius:10px;background:var(--card);color:var(--text);font:inherit;font-size:14px;cursor:pointer;outline:none;text-overflow:ellipsis}.select-box select:focus{border-color:var(--field-focus)}.select-box.active select{border-color:var(--cmds-red)}.select-box svg{position:absolute;top:50%;right:12px;width:16px;height:16px;transform:translateY(-50%);fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.clear-btn{min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--link-blue);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.clear-btn:hover{background:var(--hover)}.table-wrapper{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 24px #0000004d}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{background:var(--th-bg);color:var(--th-text);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--hover)}td{color:var(--text)}td.empty{text-align:center;color:var(--muted);padding:28px 16px}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.pagination-info{font-size:13px;color:var(--muted)}.pagination-buttons{display:flex;flex-wrap:wrap;gap:6px}.page-btn{min-width:38px;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text);font:inherit;font-size:14px;cursor:pointer}.page-btn:hover:not(:disabled){background:var(--hover)}.page-btn.active{border-color:var(--cmds-red);background:var(--cmds-red);color:var(--white);font-weight:700}.page-btn:disabled{opacity:.4;cursor:default}.message{color:var(--muted)}.message.error{color:var(--error)}@media(max-width:760px){.layout{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:none;border-bottom:1px solid var(--line)}.sidebar-brand{height:auto;padding:4px;border:none;background:transparent}.topbar{min-height:0;padding-top:16px;padding-bottom:16px}.sidebar-brand img{width:110px}.sidebar-nav{flex:1 1 auto}.sidebar-spacer,.user-email{display:none}.logout-btn{padding:0 16px}.topbar,.content{padding-left:16px;padding-right:16px}}
