.login3d{position:relative;min-height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:24px;perspective:1300px;background:radial-gradient(1100px 700px at 12% -5%,rgba(124,58,237,.38),transparent 60%),radial-gradient(900px 620px at 92% 18%,rgba(232,80,160,.3),transparent 55%),radial-gradient(1000px 800px at 50% 115%,rgba(22,85,196,.55),transparent 62%),linear-gradient(160deg,#070b2e,#0d1650 45%,#131c6b)}.l3d-aurora{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55;mix-blend-mode:screen;pointer-events:none;will-change:transform}.l3d-aurora-a{width:560px;height:560px;left:-140px;top:-160px;background:radial-gradient(circle at 30% 30%,#7c3aed,transparent 65%);animation:l3d-drift-a 16s ease-in-out infinite alternate;transform:translate(calc(var(--px, 0) * -46px),calc(var(--py, 0) * -34px))}.l3d-aurora-b{width:520px;height:520px;right:-160px;top:10%;background:radial-gradient(circle at 60% 40%,#e850a0,transparent 65%);animation:l3d-drift-b 20s ease-in-out infinite alternate;transform:translate(calc(var(--px, 0) * 38px),calc(var(--py, 0) * 30px))}.l3d-aurora-c{width:640px;height:640px;left:30%;bottom:-280px;background:radial-gradient(circle at 50% 30%,#2f7bff,transparent 65%);animation:l3d-drift-c 18s ease-in-out infinite alternate;transform:translate(calc(var(--px, 0) * -26px),calc(var(--py, 0) * 22px))}@keyframes l3d-drift-a{0%{translate:0 0;scale:1}to{translate:90px 60px;scale:1.15}}@keyframes l3d-drift-b{0%{translate:0 0;scale:1.1}to{translate:-80px 70px;scale:.95}}@keyframes l3d-drift-c{0%{translate:0 0;scale:1}to{translate:60px -70px;scale:1.12}}.l3d-grid{position:absolute;left:-30%;right:-30%;bottom:-6%;height:46%;pointer-events:none;background:repeating-linear-gradient(90deg,rgba(120,150,255,.4) 0 1px,transparent 1px 64px),repeating-linear-gradient(0deg,rgba(120,150,255,.4) 0 1px,transparent 1px 64px);transform:perspective(650px) rotateX(63deg);transform-origin:50% 0;opacity:.14;animation:l3d-grid-scroll 5s linear infinite;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%,transparent 95%);mask-image:linear-gradient(to bottom,transparent,#000 30%,transparent 95%)}@keyframes l3d-grid-scroll{0%{background-position:0 0,0 0}to{background-position:0 0,0 64px}}.l3d-orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fffffff2,#a0beff40 70%);box-shadow:0 0 14px #a0beff8c;opacity:.5;pointer-events:none;animation:l3d-float linear infinite;will-change:transform,opacity}@keyframes l3d-float{0%{transform:translateY(30px) scale(.8);opacity:0}12%{opacity:.55}88%{opacity:.55}to{transform:translateY(-42vh) scale(1.1);opacity:0}}.l3d-shape{position:absolute;pointer-events:none;border:1.5px solid rgba(255,255,255,.28);background:linear-gradient(135deg,#ffffff1f,#ffffff05);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:0 24px 60px #060a2e73,inset 0 1px #ffffff40;will-change:transform}.l3d-ring{width:190px;height:190px;border-radius:50%;left:11%;top:16%;border-width:2px;background:none;animation:l3d-spin-ring 14s ease-in-out infinite;translate:calc(var(--px, 0) * -60px) calc(var(--py, 0) * -44px)}@keyframes l3d-spin-ring{0%,to{transform:rotate3d(1,1,0,35deg) translateY(0)}50%{transform:rotate3d(1,1,0,60deg) translateY(-26px)}}.l3d-cube{width:120px;height:120px;border-radius:26px;right:12%;top:22%;animation:l3d-spin-cube 17s ease-in-out infinite;translate:calc(var(--px, 0) * 70px) calc(var(--py, 0) * 50px)}@keyframes l3d-spin-cube{0%,to{transform:rotate3d(1,-1,.5,24deg) rotate(8deg) translateY(0)}50%{transform:rotate3d(1,-1,.5,55deg) rotate(-10deg) translateY(-34px)}}.l3d-pill{width:220px;height:74px;border-radius:999px;left:16%;bottom:17%;animation:l3d-spin-pill 15s ease-in-out infinite;translate:calc(var(--px, 0) * -44px) calc(var(--py, 0) * 36px)}@keyframes l3d-spin-pill{0%,to{transform:rotate3d(.5,1,0,-32deg) rotate(-14deg) translateY(0)}50%{transform:rotate3d(.5,1,0,-58deg) rotate(-6deg) translateY(24px)}}.l3d-tri{width:90px;height:90px;border-radius:20px;right:20%;bottom:14%;animation:l3d-spin-cube 19s ease-in-out infinite reverse;translate:calc(var(--px, 0) * 52px) calc(var(--py, 0) * -40px)}.l3d-enter{position:relative;z-index:5;transform-style:preserve-3d;animation:l3d-enter .9s cubic-bezier(.22,1,.36,1) both}@keyframes l3d-enter{0%{opacity:0;transform:translateY(52px) rotateX(-16deg) scale(.94)}to{opacity:1;transform:translateY(0) rotateX(0) scale(1)}}.l3d-card{position:relative;width:min(430px,92vw);padding:40px 38px 30px;border-radius:26px;background:#ffffffe6;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border:1px solid rgba(255,255,255,.65);box-shadow:0 40px 90px #05092d8c,0 12px 30px #05092d59,inset 0 1px #ffffffe6;transform-style:preserve-3d;transform:rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .18s ease-out;will-change:transform}.l3d-glare{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:radial-gradient(440px circle at var(--mx, 50%) var(--my, 30%),rgba(255,255,255,.8),transparent 46%);mix-blend-mode:soft-light;transform:translateZ(2px)}.l3d-logo{position:relative;width:96px;height:96px;margin:0 auto 18px;transform-style:preserve-3d;animation:l3d-logo-bob 5s ease-in-out infinite}@keyframes l3d-logo-bob{0%,to{transform:translateZ(52px) translateY(0)}50%{transform:translateZ(52px) translateY(-7px)}}.l3d-logo-halo{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:50%;background:conic-gradient(from 0deg,#1655c4,#7c3aed,#e850a0,#2f7bff,#1655c4);filter:blur(16px);opacity:.55;animation:l3d-halo-spin 6s linear infinite}@keyframes l3d-halo-spin{to{rotate:360deg}}.l3d-logo-badge{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:28px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px #0f0e9a59,inset 0 1px #fff,inset 0 -2px 6px #0f0e9a14}.l3d-logo-badge img{width:52px;height:58px;object-fit:contain}.l3d-card h1{font-size:21px;font-weight:800;text-align:center;letter-spacing:-.01em;color:#10143c;transform:translateZ(38px)}.l3d-sub{color:#5b6478;font-size:13px;text-align:center;margin:5px 0 24px;transform:translateZ(30px)}.l3d-card form{transform:translateZ(24px)}.l3d-field{margin-bottom:15px}.l3d-field label{display:block;font-size:12.5px;font-weight:700;color:#2a3350;margin-bottom:6px}.l3d-input-wrap{position:relative}.l3d-input-wrap>svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8a93a8;pointer-events:none;transition:color .2s}.l3d-input-wrap:focus-within>svg{color:var(--primary)}.l3d-input{width:100%;border:1.5px solid #dde3ee;border-radius:13px;padding:12px 14px 12px 40px;background:#ffffffd9;outline:none;font-size:14px;transition:border-color .2s,box-shadow .2s,transform .2s}.l3d-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #1655c424,0 6px 18px #1655c41f;transform:translateY(-1px)}.l3d-btn{position:relative;width:100%;margin-top:6px;border:none;border-radius:14px;padding:13px 16px;font-size:14.5px;font-weight:700;color:#fff;letter-spacing:.01em;background:linear-gradient(135deg,#1655c4,#4338ca 55%,#7c3aed);background-size:160% 160%;box-shadow:0 12px 28px #2538be73,inset 0 1px #ffffff40;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,background-position .4s ease}.l3d-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.01);background-position:100% 50%;box-shadow:0 18px 38px #2538be8c,inset 0 1px #ffffff40}.l3d-btn:active:not(:disabled){transform:translateY(0) scale(.99)}.l3d-btn:disabled{opacity:.6;cursor:not-allowed}.l3d-btn:before{content:"";position:absolute;top:-60%;bottom:-60%;left:-80%;width:46%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.5),transparent);transform:skew(-22deg);animation:l3d-shine 3.2s ease-in-out infinite}@keyframes l3d-shine{0%,55%{left:-80%}to{left:160%}}.l3d-btn .l3d-spin{display:inline-block;width:15px;height:15px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;vertical-align:-2px;margin-right:8px;animation:spin .7s linear infinite}.l3d-error{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(229,55,46,.25);border-radius:12px;padding:10px 13px;font-size:13px;font-weight:600;margin-bottom:15px;transform:translateZ(26px);animation:l3d-shake .4s ease}@keyframes l3d-shake{0%,to{translate:0}20%{translate:-7px}40%{translate:6px}60%{translate:-4px}80%{translate:3px}}.l3d-foot{margin-top:22px;text-align:center;font-size:11.5px;color:#8a93a8;transform:translateZ(14px)}@media (prefers-reduced-motion: reduce){.login3d *,.login3d *:before,.login3d *:after{animation:none!important;transition:none!important}.l3d-card{transform:none}}:root{--primary: #1655c4;--primary-dark: #0f3e92;--primary-soft: #e8effc;--text: #1f2933;--muted: #6e7a8a;--bg: #f6f7fb;--card: #ffffff;--danger: #e5372e;--danger-soft: #fdeceb;--success: #10b981;--success-soft: #e7f8f1;--warning: #e07c1f;--warning-soft: #fcf1e4;--purple: #7c3aed;--purple-soft: #f1eafd;--gray-soft: #eef1f5;--border: #e4e8ef;--radius: 16px;--shadow: 0 2px 12px rgba(31, 41, 51, .07);--grad: linear-gradient(120deg, #f8eaf2 0%, #cdbce0 100%);--sidebar-w: 244px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:14px;color:var(--text)}a{color:var(--primary);text-decoration:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);background:#fff;border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:30}.sidebar-logo{padding:20px 20px 18px;border-bottom:1px solid var(--border);background:var(--grad)}.sidebar-logo .logo-mark{width:38px;height:38px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:10px;box-shadow:0 4px 10px #0f0e9a38,inset 0 -2px 5px #0f0e9a14}.sidebar-logo .logo-mark img{width:23px;height:25px;object-fit:contain}.sidebar-logo .logo-title{font-weight:700;font-size:15px;color:var(--text)}.sidebar-logo .logo-sub{font-size:12px;color:var(--muted)}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:2px}.nav-link{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:10px;color:var(--muted);font-weight:500;font-size:13.5px;transition:background .15s,color .15s}.nav-link svg{flex-shrink:0}.nav-link:hover{background:var(--gray-soft);color:var(--text)}.nav-link.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.nav-badge{margin-left:auto;background:var(--danger);color:#fff;font-size:11px;font-weight:700;border-radius:999px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;padding:0 5px}.sidebar-foot{padding:14px 20px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted)}.main{flex:1;margin-left:var(--sidebar-w);display:flex;flex-direction:column;min-width:0}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h1{font-size:18px;font-weight:700}.profile-menu{position:relative}.profile-menu .avatar{width:34px;height:34px;border-radius:50%;background:var(--grad);color:var(--primary-dark);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-menu .who{line-height:1.25;min-width:0}.profile-menu .who .name{font-weight:600;font-size:13.5px;color:var(--text)}.profile-menu .who .role{font-size:11.5px;color:var(--muted)}.profile-trigger{display:flex;align-items:center;gap:12px;background:none;border:none;border-radius:12px;padding:5px 8px 5px 12px;color:var(--muted);transition:background .15s}.profile-trigger .who{text-align:right}.profile-trigger:hover,.profile-trigger.open{background:var(--gray-soft)}.profile-trigger.open svg:last-child{transform:rotate(180deg)}.profile-trigger svg:last-child{transition:transform .15s}.profile-pop{position:absolute;top:calc(100% + 8px);right:0;width:248px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #1f293324;padding:6px;z-index:40;animation:pop-in .12s ease}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.profile-pop-head{display:flex;align-items:center;gap:10px;padding:10px 10px 12px;border-bottom:1px solid var(--border);margin-bottom:6px}.profile-pop-head .role{word-break:break-all}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;background:none;border:none;border-radius:9px;font-size:13.5px;font-weight:500;color:var(--text);text-align:left;transition:background .15s}.menu-item svg{color:var(--muted);flex-shrink:0}.menu-item:hover{background:var(--gray-soft)}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.menu-item.danger:hover{background:var(--danger-soft)}.menu-sep{height:1px;background:var(--border);margin:6px 4px}.page{padding:26px 28px 48px;max-width:1280px;width:100%}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-head h2{font-size:16px;font-weight:700}.page-head .sub{color:var(--muted);font-size:13px;margin-top:2px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid rgba(228,232,239,.6)}.card-pad{padding:20px}.card-title{font-size:14px;font-weight:700;margin-bottom:14px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px}.stat-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid rgba(228,232,239,.6);padding:16px 18px;display:flex;align-items:center;gap:14px}.stat-icon{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card .stat-value{font-size:22px;font-weight:800;line-height:1.1}.stat-card .stat-label{font-size:12px;color:var(--muted);font-weight:500}.table-wrap{overflow-x:auto;border-radius:var(--radius)}table.tbl{width:100%;border-collapse:collapse;font-size:13.5px}table.tbl th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;padding:12px 16px;border-bottom:1px solid var(--border);background:#fafbfd;white-space:nowrap}table.tbl td{padding:13px 16px;border-bottom:1px solid #f0f2f6;vertical-align:middle}table.tbl tbody tr:last-child td{border-bottom:none}table.tbl tbody tr:hover{background:#fafbfd}.cell-main{font-weight:600}.cell-sub{font-size:12px;color:var(--muted)}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.pill-gray{background:var(--gray-soft);color:var(--muted)}.pill-orange{background:var(--warning-soft);color:var(--warning)}.pill-blue{background:var(--primary-soft);color:var(--primary)}.pill-green{background:var(--success-soft);color:#0b9268}.pill-red{background:var(--danger-soft);color:var(--danger)}.pill-purple{background:var(--purple-soft);color:var(--purple)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:none;border-radius:10px;padding:9px 16px;font-size:13.5px;font-weight:600;transition:filter .15s,background .15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(.94)}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--gray-soft);color:var(--text)}.btn-soft{background:var(--primary-soft);color:var(--primary)}.btn-soft:hover:not(:disabled){background:#dbe7fa}.btn-soft-danger{background:var(--danger-soft);color:var(--danger)}.btn-soft-danger:hover:not(:disabled){background:#fbdbd9}.btn-soft-success{background:var(--success-soft);color:#0b9268}.btn-soft-success:hover:not(:disabled){background:#d2f2e5}.btn-sm{padding:6px 12px;font-size:12.5px;border-radius:8px}.btn-block{width:100%}.field{margin-bottom:14px}.field label{display:block;font-size:12.5px;font-weight:600;color:var(--text);margin-bottom:5px}.field .hint{font-size:11.5px;color:var(--muted);margin-top:4px}.input,.select,.textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:9px 12px;background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #1655c41f}.textarea{min-height:84px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-section{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin:18px 0 10px;padding-top:12px;border-top:1px dashed var(--border)}.search-box{position:relative;width:280px;max-width:100%}.search-box .input{padding-left:36px}.search-box svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.radio-row{display:flex;gap:16px;align-items:center}.radio-row label{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;margin:0;cursor:pointer}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13.5px;cursor:pointer}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1f293373;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding:48px 20px;z-index:100;overflow-y:auto}.modal{background:#fff;border-radius:var(--radius);box-shadow:0 16px 48px #1f29333d;width:100%;max-width:540px;animation:modal-in .16s ease-out}.modal.modal-sm{max-width:420px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 0}.modal-head h3{font-size:15.5px;font-weight:700}.modal-close{background:none;border:none;color:var(--muted);font-size:20px;line-height:1;padding:4px;border-radius:8px}.modal-close:hover{background:var(--gray-soft);color:var(--text)}.modal-body{padding:16px 22px}.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:4px 22px 20px}.toast-stack{position:fixed;top:18px;right:18px;z-index:200;display:flex;flex-direction:column;gap:10px;width:340px;max-width:calc(100vw - 36px)}.toast{background:#fff;border-radius:12px;box-shadow:0 8px 28px #1f29332e;padding:12px 14px;display:flex;gap:10px;align-items:flex-start;border-left:4px solid var(--primary);animation:toast-in .18s ease-out;font-size:13.5px}@keyframes toast-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}.toast-warning{border-left-color:var(--warning)}.toast .toast-msg{flex:1}.toast button{background:none;border:none;color:var(--muted);font-size:16px;line-height:1}.state-block{padding:46px 20px;text-align:center;color:var(--muted)}.state-block .state-title{font-weight:600;color:var(--text);margin-top:10px}.state-block .state-sub{font-size:12.5px;margin-top:3px}.spinner{width:26px;height:26px;border:3px solid var(--gray-soft);border-top-color:var(--primary);border-radius:50%;margin:0 auto;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sos-banner{background:var(--danger);color:#fff;border-radius:var(--radius);padding:16px 20px;display:flex;align-items:center;gap:14px;margin-bottom:20px;box-shadow:0 8px 24px #e5372e59;animation:sos-pulse 1.4s ease-in-out infinite}@keyframes sos-pulse{0%,to{box-shadow:0 8px 24px #e5372e59}50%{box-shadow:0 8px 34px #e5372ea6}}.sos-banner .sos-dot{width:12px;height:12px;border-radius:50%;background:#fff;flex-shrink:0;animation:blink 1s step-end infinite}@keyframes blink{50%{opacity:.25}}.sos-banner .sos-text{flex:1}.sos-banner .sos-title{font-weight:800;font-size:14.5px;letter-spacing:.02em}.sos-banner .sos-sub{font-size:13px;opacity:.92}.sos-banner a{background:#fff;color:var(--danger);font-weight:700;padding:8px 14px;border-radius:10px;font-size:13px;white-space:nowrap}.sos-banner button{background:none;border:none;color:#fff;font-size:18px;opacity:.8}.dash-grid{display:grid;grid-template-columns:340px 1fr;gap:16px;align-items:start}@media (max-width: 1000px){.dash-grid{grid-template-columns:1fr}}.status-breakdown{display:flex;flex-direction:column;gap:12px}.status-row{display:flex;align-items:center;gap:10px}.status-row .status-label{width:128px;flex-shrink:0}.status-row .bar-track{flex:1;height:8px;background:var(--gray-soft);border-radius:999px;overflow:hidden}.status-row .bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.status-row .status-count{width:26px;text-align:right;font-weight:700;font-size:13px}.tabs{display:inline-flex;background:var(--gray-soft);border-radius:12px;padding:4px;gap:2px}.tab{border:none;background:transparent;padding:7px 16px;border-radius:9px;font-size:13px;font-weight:600;color:var(--muted);transition:background .15s,color .15s}.tab:hover{color:var(--text)}.tab.active{background:#fff;color:var(--primary);box-shadow:0 1px 4px #1f29331a}.timeline-mini{display:flex;flex-wrap:wrap;gap:6px}.timeline-step{display:inline-flex;align-items:center;gap:5px;background:#fafbfd;border:1px solid var(--border);border-radius:8px;padding:3px 8px;font-size:11.5px;color:var(--muted);white-space:nowrap}.timeline-step b{color:var(--text);font-weight:600}.row-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.muted{color:var(--muted)}.mono{font-variant-numeric:tabular-nums}.link-btn{background:none;border:none;color:var(--primary);font-weight:600;font-size:12.5px;padding:0}.link-btn:hover{text-decoration:underline}.compose-grid{display:grid;grid-template-columns:400px 1fr;gap:16px;align-items:start}@media (max-width: 1050px){.compose-grid{grid-template-columns:1fr}}.notif-item{display:flex;gap:12px;padding:14px 18px;border-bottom:1px solid #f0f2f6;align-items:flex-start}.notif-item:last-child{border-bottom:none}.notif-item .notif-body{flex:1;min-width:0}.notif-item .notif-title{font-weight:600}.notif-item .notif-text{color:var(--muted);font-size:13px;margin:2px 0 6px}.notif-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:11.5px;color:var(--muted)}.ticket-item{padding:16px 18px;border-bottom:1px solid #f0f2f6}.ticket-item:last-child{border-bottom:none}.ticket-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.ticket-reply{margin-top:10px;background:var(--primary-soft);border-radius:10px;padding:10px 12px;font-size:13px}.ticket-reply b{color:var(--primary)}.reset-intro{margin:0 0 12px;color:var(--text)}.reset-note{margin:10px 0 0;color:var(--muted);font-size:13px}.reset-option{display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:13px 16px;margin-bottom:10px;transition:border-color .15s ease,background .15s ease}.reset-option:hover:not(:disabled){border-color:var(--primary);background:var(--primary-soft)}.reset-option:disabled{cursor:not-allowed;opacity:.55}.reset-option-title{font-weight:600;font-size:14px}.reset-option-sub{color:var(--muted);font-size:13px;margin-top:2px}.reset-secret{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--gray-soft);border:1px dashed #c9d1dd;border-radius:12px;padding:11px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;word-break:break-all}.reset-secret .btn{flex-shrink:0}.reset-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:var(--grad)}.reset-card{width:100%;max-width:420px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 28px;text-align:center}.reset-card img{width:44px;margin-bottom:12px}.reset-card h1{font-size:20px;margin-bottom:6px}.reset-card .reset-sub{color:var(--muted);font-size:14px;margin-bottom:18px}.reset-card form{text-align:left}.reset-card .field{margin-bottom:14px}.reset-error{background:var(--danger-soft);color:var(--danger);border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:14px}.reset-success{background:var(--success-soft);color:#0b7a5c;border-radius:10px;padding:12px 14px;font-size:14px}
