@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0a1020;--panel:rgba(17,26,47,.88);--line:rgba(154,174,220,.15);--text:#f1f5ff;--muted:#93a1bf;--purple:#8c72ff;--cyan:#54d7e9;--green:#4bd6a0;--amber:#f4bb63}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 15% 0%,#18234b 0,transparent 43%),radial-gradient(ellipse at 95% 70%,#102d3d 0,transparent 38%),var(--bg);font-family:'DM Sans',sans-serif;color:var(--text);font-size:14px}.ambient{position:fixed;pointer-events:none;filter:blur(90px);opacity:.12;border-radius:50%;z-index:-1}.a1{width:260px;height:260px;background:#7e5cff;top:20%;left:-120px}.a2{width:300px;height:300px;background:#12c9d8;right:-170px;bottom:5%}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 max(calc((100vw - 1440px)/2),24px);gap:12px;background:rgba(8,14,29,.7);backdrop-filter:blur(18px)}.brand-mark{width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,#8e72ff,#38cce0);display:grid;place-items:center;color:#fff;font:800 14px Manrope;box-shadow:0 6px 25px #6b62ff35}.brand-copy{display:flex;flex-direction:column;gap:3px}.brand-copy strong{font:800 15px Manrope;letter-spacing:.2px}.brand-copy span,.mini-label{font-size:9px;letter-spacing:1.8px;color:#9aabcc;font-weight:700}.top-right{margin-left:auto;display:flex;gap:12px;align-items:center}.wrap{max-width:1440px;margin:auto;padding:36px 28px 28px}.auth-layout{min-height:calc(100vh - 150px);display:grid;grid-template-columns:1.1fr .9fr;gap:8%;align-items:center;max-width:1150px;margin:auto}.hero{padding:35px 0}.eyebrow{font-size:10px;letter-spacing:1.5px;color:#aebcda;font-weight:700;display:flex;align-items:center;gap:9px}.dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px #4bd6a0}.hero h1,.welcome-line h1{font:800 clamp(36px,4vw,56px)/1.13 Manrope;letter-spacing:-1.7px;margin:24px 0 18px}.hero h1 span{background:linear-gradient(90deg,#a493ff,#57d9e7);background-clip:text;color:transparent}.hero>p{color:#a5b2ce;line-height:1.8;max-width:460px;font-size:15px}.feature-row{display:flex;gap:14px;align-items:center;margin-top:26px}.feature-icon{width:42px;height:42px;border-radius:13px;background:#a18cff18;border:1px solid #a18cff35;color:#a995ff;display:grid;place-items:center;font-size:20px}.feature-row b,.feature-row small{display:block}.feature-row b{font-size:13px}.feature-row small{color:var(--muted);margin-top:5px;font-size:12px}.panel{border:1px solid var(--line);background:linear-gradient(145deg,rgba(22,33,58,.92),rgba(13,21,39,.94));border-radius:20px;box-shadow:0 18px 70px #0002}.login-panel{padding:32px;max-width:460px;width:100%;justify-self:end}.panel-head h2,.section-head h2{font:700 22px Manrope;letter-spacing:-.5px;margin:10px 0 8px}.panel-head p,.section-head p{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.login-panel form{margin-top:27px}label{display:block;font-size:12px;font-weight:600;color:#cbd5eb;margin:17px 0 8px}input:not([type=checkbox]):not([type=file]),select,textarea{width:100%;border:1px solid #2c3b5b;border-radius:10px;background:#0c1428;color:#f1f5ff;padding:12px 13px;outline:none;font:inherit;min-height:43px;transition:border .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:#8b77ff!important;box-shadow:0 0 0 3px #8b77ff1c}input::placeholder,textarea::placeholder{color:#687895}.btn{border:1px solid transparent;border-radius:10px;min-height:40px;padding:10px 14px;font:700 12px 'DM Sans';cursor:pointer;transition:transform .15s,filter .15s;display:inline-flex;justify-content:center;align-items:center;gap:12px;color:white}.btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(100deg,#8267f5,#5b79ef);box-shadow:0 6px 20px #6559df2b}.btn-secondary{background:#182540;border-color:#30415f;color:#dce6ff}.btn-ghost{background:transparent;border-color:#2a3855;color:#b9c6e0}.full{width:100%;margin-top:22px}.message{font-size:12px;line-height:1.6;min-height:16px;color:var(--muted)}.message.error{color:#ff8b9b}.message.success{color:#62e1ad}.secure-note{border-top:1px solid var(--line);padding-top:17px;margin-top:16px;font-size:11px;color:#91a0bd;display:flex;gap:8px}.secure-note span{color:var(--green)}.hidden{display:none!important}.status-pill{font-size:10px;font-weight:700;padding:7px 10px;border-radius:99px;border:1px solid #31435f;white-space:nowrap}.status-pill.muted{color:#9aa9c4;background:#19243a}.status-pill.good{color:#62e1ad;background:#12382f;border-color:#235a49}.status-pill.warn{color:#f6c66e;background:#3b2e18;border-color:#5b4824}.welcome-line{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.welcome-line h1{font-size:34px;margin:12px 0 7px;letter-spacing:-1px}.welcome-line p{margin:0;color:var(--muted)}.user-chip{display:flex;gap:11px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:10px 14px;background:#121d33}.avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#8c72ff,#45cfe1);font-weight:800}.user-chip b,.user-chip small{display:block}.user-chip b{font-size:12px;max-width:210px;overflow:hidden;text-overflow:ellipsis}.user-chip small{font-size:9px;color:#8f9fbe;letter-spacing:1.2px;margin-top:4px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px 20px;position:relative}.stat-icon{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;font-size:16px;margin-bottom:13px}.purple{background:#8b72ff22;color:#b4a4ff}.amber{background:#f4bb631b;color:var(--amber)}.green{background:#4bd6a01b;color:var(--green)}.stat-card small{display:block;color:#98a8c7;font-size:11px}.stat-card strong{display:block;font:800 26px Manrope;margin-top:4px}.admin-panel{padding:24px;margin-bottom:18px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.section-head h2{font-size:18px;margin:7px 0}.section-head h3{font:700 15px Manrope;margin:0 0 5px}.role-badge{font-size:9px;letter-spacing:1px;color:#b7a9ff;background:#8b72ff1b;border:1px solid #8b72ff45;padding:7px 10px;border-radius:7px}.import-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0 24px}.drop-zone,.assign-box{border:1px dashed #354767;background:#0d172b;border-radius:13px;padding:19px}.upload-icon{width:36px;height:36px;border-radius:10px;background:#8b72ff20;color:#b3a4ff;display:grid;place-items:center;font-size:22px;margin-bottom:12px}.drop-zone b,.drop-zone small{display:block}.drop-zone small{font-size:11px;color:var(--muted);margin-top:5px}.drop-zone input[type=file]{display:block;margin-top:15px;max-width:100%;font-size:11px;color:#aab8d2}.drop-zone .btn{margin-top:10px}.assign-box label:first-child{margin-top:0}.assign-box .btn{margin-top:15px}.assign-box>small{display:block;color:#8494b4;line-height:1.5;margin-top:10px;font-size:10px}.compact{padding-top:18px;border-top:1px solid var(--line)}.activity-list{margin-top:12px;display:grid;gap:7px}.activity-item{display:flex;justify-content:space-between;gap:12px;background:#0d1729;padding:11px 13px;border-radius:9px;font-size:11px;color:#bdc9e1}.activity-item small{color:#7f90b1;white-space:nowrap}.work-layout{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.5fr);gap:18px;align-items:start}.records-panel,.entry-panel{padding:22px;min-height:300px}.record-list{display:grid;gap:8px;margin-top:18px}.record-item{width:100%;text-align:left;background:#0d1729;border:1px solid #253450;border-radius:11px;padding:13px;color:var(--text);cursor:pointer}.record-item.active{border-color:#8b72ff;background:#211c42;box-shadow:inset 3px 0 #9b88ff}.record-item-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.record-item b{font-size:12px;overflow-wrap:anywhere}.record-item p{margin:7px 0 0;color:#92a2c1;font-size:11px;line-height:1.5}.tag{font-size:9px;padding:5px 7px;border-radius:6px;background:#29334a;color:#b4c1d9;white-space:nowrap}.tag.done{background:#12382f;color:#66dfb0}.entry-panel>.section-head{margin-bottom:17px}.source-box{border:1px solid #2e4160;border-radius:12px;background:#0b1426;padding:15px;margin-bottom:20px}.source-title{display:flex;justify-content:space-between;gap:10px;color:#a6b6d5;font-size:9px;font-weight:800;letter-spacing:1.4px;margin-bottom:13px}.source-title span{color:#e3bd72;letter-spacing:.5px}.source-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.source-field{min-width:0}.source-field small{display:block;font-size:10px;color:#7f91b2;margin-bottom:5px}.source-field div{font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:#dbe5f7;white-space:pre-wrap}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.field.full-width{grid-column:1/-1}.field label{margin-top:9px}.field input,.field textarea,.field select{font-size:12px}.field textarea{resize:vertical;min-height:78px}.checkline{display:flex;align-items:flex-start;gap:9px;margin:20px 0;color:#a9b8d2;font-size:11px;line-height:1.5}.checkline input{margin-top:2px;accent-color:#8b72ff}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:16px}.empty,.empty-state{color:#8192b2;font-size:12px;line-height:1.7}.empty-state{text-align:center;padding:45px 10px}.empty-art{width:48px;height:48px;border-radius:15px;background:#8b72ff18;color:#b5a4ff;display:grid;place-items:center;font-size:23px;margin:0 auto 13px}.empty-state b{color:#c8d4ea}.empty-state p{margin:7px 0}.notice{border:1px solid #805f24;background:#332812;padding:16px;border-radius:12px;margin-bottom:20px}.notice p{margin-bottom:0;color:#e6d1a8}.notice code{color:#f5dba0}footer{padding:26px 0 4px;text-align:center;color:#657795;font-size:10px}footer span{color:#8c72ff;margin:0 6px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#1c2943;border:1px solid #405475;border-radius:10px;padding:12px 18px;color:#e9f0ff;font-size:12px;transition:.25s;z-index:10;max-width:90vw}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:900px){.auth-layout{gap:35px}.hero h1{font-size:42px}.work-layout{grid-template-columns:1fr}.records-panel{min-height:0}.record-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.topbar{height:65px;padding:0 16px}.wrap{padding:22px 14px}.auth-layout{display:flex;flex-direction:column;align-items:stretch;gap:18px}.hero{padding:12px 0 0}.hero h1{font-size:38px;margin:18px 0 12px}.hero>p{font-size:13px}.feature-row{margin-top:16px}.login-panel{max-width:none;padding:23px}.welcome-line{align-items:flex-start;flex-direction:column}.welcome-line h1{font-size:29px}.user-chip{width:100%}.stats-grid{gap:8px}.stat-card{padding:13px 11px}.stat-card strong{font-size:23px}.stat-card small{font-size:10px}.stat-icon{margin-bottom:9px}.import-grid{grid-template-columns:1fr}.admin-panel,.records-panel,.entry-panel{padding:16px}.record-list{grid-template-columns:1fr}.source-fields,.form-grid{grid-template-columns:1fr}.field.full-width{grid-column:auto}.section-head h2{font-size:16px}.top-right .status-pill{display:none}.form-actions{flex-wrap:wrap}.form-actions .btn{flex:1}.activity-item{flex-direction:column;gap:5px}.activity-item small{white-space:normal}}
.route-link{color:#b8c6e5;text-decoration:none;font-size:12px;font-weight:700;padding:10px 12px;border:1px solid #2a3855;border-radius:10px}.route-link:hover{border-color:#8c72ff;color:#fff}.register-employee-box{border:1px solid #354767;background:#0d172b;border-radius:13px;padding:19px;margin:20px 0}.register-employee-box h3{font:700 15px Manrope;margin:0 0 5px}.register-employee-box p{color:var(--muted);font-size:12px;margin:0 0 12px}.employee-create-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}.employee-create-form label{margin-top:8px}.employee-create-form .btn{margin-bottom:16px}.register-employee-box>small{display:block;color:#8293b3;font-size:10px;line-height:1.5;margin-top:8px}.register-employee-box .message{grid-column:1/-1;margin:0}@media(max-width:900px){.employee-create-form{grid-template-columns:1fr 1fr}.employee-create-form .btn{margin-bottom:0}}@media(max-width:650px){.employee-create-form{grid-template-columns:1fr}.employee-create-form .btn{width:100%}}
