@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--bg:#f1f5f9;--bg-subtle:#e8eef5;--surface:#fff;--surface-hover:#f8fafc;--border:#e2e8f0;--border-strong:#cbd5e1;--text:#0f172a;--text-secondary:#334155;--muted:#64748b;--primary:#4f46e5;--primary-hover:#4338ca;--primary-soft:#eef2ff;--primary-glow:rgba(79,70,229,.28);--success:#059669;--success-soft:#d1fae5;--warning:#d97706;--warning-soft:#fef3c7;--danger:#dc2626;--danger-soft:#fee2e2;--purple:#7c3aed;--accent:#0ea5e9;--glass:hsla(0,0%,100%,.92);--card-shadow:0 1px 3px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.06);--radius:12px;--radius-sm:8px;--chrome-bg:#fff;--chrome-border:#e2e8f0;--chrome-text:#0f172a;--chrome-muted:#64748b;--sidebar-bg:#fff;--sidebar-border:#e2e8f0;--sidebar-link:#475569;--sidebar-link-hover-bg:#f1f5f9;--sidebar-link-active:#4f46e5;--sidebar-link-active-bg:#eef2ff;--sidebar-status-bg:#f8fafc;--input-bg:#fff;--btn-view:#0ea5e9;--btn-edit:#4f46e5;--btn-copy:#64748b;--btn-delete:#dc2626;color-scheme:light}[data-theme=dark]{--bg:#0f1419;--bg-subtle:#161b22;--surface:#1a222d;--surface-hover:#222c3a;--border:#2d3a4d;--border-strong:#3d4f66;--text:#f1f5f9;--text-secondary:#cbd5e1;--muted:#94a3b8;--primary:#818cf8;--primary-hover:#a5b4fc;--primary-soft:rgba(99,102,241,.15);--primary-glow:rgba(129,140,248,.35);--success:#34d399;--success-soft:rgba(52,211,153,.15);--warning:#fbbf24;--warning-soft:rgba(251,191,36,.15);--danger:#f87171;--danger-soft:hsla(0,91%,71%,.15);--purple:#a78bfa;--accent:#38bdf8;--glass:rgba(26,34,45,.9);--card-shadow:0 8px 32px rgba(0,0,0,.35);--chrome-bg:#141a22;--chrome-border:#2d3a4d;--chrome-text:#f1f5f9;--chrome-muted:#94a3b8;--sidebar-bg:#141a22;--sidebar-border:#2d3a4d;--sidebar-link:#94a3b8;--sidebar-link-hover-bg:hsla(0,0%,100%,.06);--sidebar-link-active:#a5b4fc;--sidebar-link-active-bg:rgba(99,102,241,.18);--sidebar-status-bg:hsla(0,0%,100%,.05);--input-bg:#1a222d;--btn-view:#38bdf8;--btn-edit:#818cf8;--btn-copy:#64748b;--btn-delete:#f87171;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover);text-decoration:underline}button{cursor:pointer}button,input,select,textarea{font:inherit}.container{max-width:1280px;margin:0 auto;padding:0 1.25rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--card-shadow);transition:box-shadow .2s ease,border-color .2s ease}.card:hover{border-color:var(--border-strong);box-shadow:0 4px 20px rgba(15,23,42,.08)}[data-theme=dark] .card:hover{box-shadow:0 12px 40px rgba(0,0,0,.4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1.15rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:500;cursor:pointer;transition:all .18s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}.btn:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,var(--primary) 0,#6366f1 100%);border-color:transparent;color:#fff!important;box-shadow:0 2px 8px var(--primary-glow)}.btn-primary:hover{filter:brightness(1.06);box-shadow:0 4px 14px var(--primary-glow);text-decoration:none}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.8rem;font-weight:500}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.btn-action{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:.5rem .75rem;border:none;border-radius:var(--radius-sm);cursor:pointer;color:#fff;font-size:.9rem;font-weight:500}.btn-action:hover{opacity:.92;filter:brightness(1.05)}.btn-action-view{background:var(--btn-view)}.btn-action-edit{background:var(--btn-edit)}.btn-action-copy{background:var(--btn-copy)}.btn-action-delete{background:var(--btn-delete)}.btn-action+.btn-action{margin-left:8px}.sidebar{width:268px;min-height:100%;background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;flex-shrink:0;box-shadow:2px 0 12px rgba(15,23,42,.04)}[data-theme=dark] .sidebar{box-shadow:none}.sidebar-link{display:flex;align-items:center;gap:.75rem;padding:.65rem 1rem;color:var(--sidebar-link);text-decoration:none;border-radius:var(--radius-sm);margin:0 .5rem;font-weight:500;font-size:.92rem;transition:background .15s,color .15s}.sidebar-link:hover{background:var(--sidebar-link-hover-bg);color:var(--text);text-decoration:none}.sidebar-link.active{background:var(--sidebar-link-active-bg);color:var(--sidebar-link-active);font-weight:600}.sidebar-link.sidebar-link-dashboard{font-weight:700;font-size:1rem}.sidebar-logo-block{flex-shrink:0;padding:1.15rem 1rem 1rem;border-bottom:1px solid var(--sidebar-border)}.sidebar-logo-link{display:flex;align-items:center;justify-content:flex-start;text-decoration:none;color:inherit;min-height:52px}.sidebar-logo-link:hover{opacity:.92;text-decoration:none}.sidebar-logo-top{height:56px;width:auto;max-width:100%;object-fit:contain;object-position:left center;display:block}[data-theme=light] .sidebar-logo-top{filter:none}[data-theme=dark] .sidebar-logo-top{filter:brightness(1.1) contrast(1.05)}.sidebar-status-card{margin:.5rem .75rem .75rem;padding:.85rem 1rem;background:var(--sidebar-status-bg);border-radius:var(--radius-sm);border:1px solid var(--sidebar-border);flex-shrink:0}.sidebar-status-title{font-size:.9rem;font-weight:600;color:var(--text);margin-bottom:.2rem}.sidebar-status-title a:hover{text-decoration:none;color:var(--primary)}.sidebar-status-text{font-size:.78rem;color:var(--muted)}.dashboard-header{justify-content:space-between;flex-wrap:wrap;padding:1rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border)}.dashboard-header,.dashboard-header-left{display:flex;align-items:center;gap:1rem}.dashboard-header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.header-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.header-icon-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.header-lang-wrap{display:inline-flex;align-items:center;gap:.5rem}.header-lang-label{font-size:.75rem;color:var(--chrome-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.header-lang-icons{display:inline-flex;gap:.35rem}.header-lang-icons .header-icon-btn{min-width:40px;height:36px;padding:0 .4rem}.header-lang-icons .header-lang-flag{width:36px;min-width:36px;height:36px;padding:0;border-radius:50%;overflow:hidden;box-shadow:0 1px 4px rgba(15,23,42,.12)}.lang-flag-img-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:50%;overflow:hidden}.lang-flag-img{width:100%;height:100%;object-fit:cover;display:block}.lang-flag-fallback{font-size:1.1rem;display:block}.header-user-info{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--bg);font-size:.9rem}.header-user-info,.lang-switcher{border-radius:var(--radius-sm);color:var(--text)}.lang-switcher{padding:.35rem .65rem;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:.85rem;font-weight:500}.lang-switcher:hover{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.notif-dot{width:9px;height:9px;border-radius:50%;background:var(--danger);position:absolute;top:-2px;right:-2px;border:2px solid var(--chrome-bg);animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 0 0 rgba(220,38,38,.5)}70%{transform:scale(1);box-shadow:0 0 0 6px rgba(220,38,38,0)}to{transform:scale(.95);box-shadow:0 0 0 0 rgba(220,38,38,0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fadeIn .35s ease forwards}.top-header{background:var(--chrome-bg);color:var(--chrome-text);display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;border-bottom:1px solid var(--chrome-border);flex-shrink:0;box-shadow:0 1px 0 rgba(15,23,42,.04)}.top-header:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent),var(--purple));pointer-events:none}.top-header{position:relative}.top-header-datetime{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:160px;color:var(--chrome-muted);font-size:.8rem;line-height:1.3}.top-header-datetime .top-header-date{font-weight:500;text-transform:capitalize;color:var(--chrome-text)}.top-header-datetime .top-header-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;color:var(--primary);letter-spacing:.02em}.top-header-slogan{flex:1 1;text-align:center;font-size:.88rem;color:var(--chrome-muted);padding:0 1rem;font-weight:500}.top-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.top-header .header-icon-btn{background:var(--surface);border-color:var(--border);color:var(--text-secondary)}.top-header .header-icon-btn:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.top-header .btn-primary{background:linear-gradient(135deg,var(--primary),#6366f1);border-color:transparent;color:#fff;padding:.45rem 1rem;font-size:.88rem;box-shadow:0 2px 8px var(--primary-glow)}.top-header .btn-primary:hover{filter:brightness(1.06);color:#fff;text-decoration:none}.top-header-avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0;box-shadow:0 2px 8px var(--primary-glow)}.page-header{justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.page-header,.page-header h1{display:flex;align-items:center}.page-header h1{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;gap:.5rem}.page-header .badge-count{background:var(--primary);color:#fff;padding:.15rem .55rem;border-radius:999px;font-size:.8rem;font-weight:600}.page-header-actions{display:flex;align-items:center;gap:.5rem}.page-header-actions .btn-icon,.page-header-actions button{padding:.5rem;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);cursor:pointer}.page-header-actions .btn-icon:hover,.page-header-actions button:hover{background:var(--primary-soft);color:var(--primary)}.page-toolbar{display:flex;align-items:center;gap:.35rem}.page-toolbar .btn-icon{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:background .2s,color .2s}.page-toolbar .btn-icon:hover{background:var(--primary-soft);color:var(--primary)}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border)}.data-table td,.data-table th{padding:.8rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.data-table th{background:var(--bg-subtle);font-weight:600;color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--surface-hover)}.table-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--purple));color:#fff;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0}.field-tooltip-wrap,.table-avatar{display:inline-flex;align-items:center}.field-tooltip-wrap{position:relative;margin-left:.25rem;vertical-align:middle}.field-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-size:.72rem;font-weight:700;cursor:help}.field-tooltip-content{position:absolute;left:50%;transform:translateX(-50%) translateY(4px);bottom:100%;margin-bottom:6px;padding:.5rem .75rem;min-width:180px;max-width:280px;font-size:.8rem;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--card-shadow);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:100;pointer-events:none}.field-tooltip-trigger:focus+.field-tooltip-content,.field-tooltip-wrap:focus-within .field-tooltip-content,.field-tooltip-wrap:hover .field-tooltip-content{opacity:1;visibility:visible}.field-tooltip-content-portal{opacity:1!important;visibility:visible!important}.input-spray,.select-spray,.textarea-spray{width:100%;padding:.55rem .8rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--input-bg);color:var(--text);font-size:.95rem;transition:border-color .2s,box-shadow .2s}.input-spray:focus,.select-spray:focus,.textarea-spray:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.textarea-spray{min-height:88px;resize:vertical}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(79,70,229,.12),transparent),var(--bg)}.login-page .login-card{width:100%;max-width:420px;box-shadow:0 20px 50px rgba(15,23,42,.1)}.login-page .login-card h1{margin-top:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.login-page .login-toolbar{position:fixed;top:1rem;right:1rem;display:flex;gap:.35rem;z-index:10}.mobile-menu-toggle{display:none}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:1rem}@media (max-width:768px){.field-tooltip-content{min-width:200px;max-width:min(280px,calc(100vw - 2rem))}.dashboard-middle-grid{grid-template-columns:1fr!important}.header-lang-label,.top-header-datetime,.top-header-slogan{display:none!important}.top-header-actions{gap:.35rem}.top-header .btn-text{display:none!important}.top-header .btn-primary{padding:.45rem!important;width:38px!important;height:38px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:var(--radius-sm)!important}.mobile-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);cursor:pointer;margin-right:.5rem}.mobile-menu-toggle:hover{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.sidebar{position:fixed!important;top:0;left:0;bottom:0;width:280px!important;max-width:80vw!important;height:100vh!important;z-index:1100!important;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--card-shadow)!important}.sidebar.open{transform:translateX(0)!important}.sidebar-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(15,23,42,.3);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1050;animation:fadeInBackdrop .2s ease-out forwards}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}}