:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#e6edf7;background:#0b1220;color-scheme:dark;--scrollbar-track: #0f172acc;--scrollbar-thumb: #364767;--scrollbar-thumb-hover: #4b63a0}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(1200px 500px at -10% -20%,#1d4ed855 0%,transparent 60%),radial-gradient(900px 450px at 120% -10%,#0ea5e955 0%,transparent 60%),linear-gradient(180deg,#0b1220,#111a2f);scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@supports selector(::-webkit-scrollbar){*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px;border:2px solid var(--scrollbar-track)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}}@media(prefers-color-scheme:light){:root{color-scheme:light;--scrollbar-track: #e8edf7;--scrollbar-thumb: #9aa8c4;--scrollbar-thumb-hover: #7f93b8}}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr;min-width:0}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}input,select,button{border:1px solid #2a395a;border-radius:10px;padding:10px 12px;font:inherit;color:#dbe7ff;background:#0f1a2f}button{border:1px solid #4063d8;background:linear-gradient(180deg,#3b82f6,#2563eb);color:#f8fbff;cursor:pointer;transition:filter .2s ease}button:hover{filter:brightness(1.06)}button.secondary{border-color:#3e4f75;background:linear-gradient(180deg,#364767,#2b3854)}button.danger{border-color:#aa3f56;background:linear-gradient(180deg,#d94b67,#be3451)}.sidebar{padding:22px 16px;border-right:1px solid #ffffff1a;background:#0b1220cc;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;gap:18px}.sidebar h2{margin:0 0 8px;font-size:1rem;color:#f8fbff;letter-spacing:.2px}.sidebar .muted{color:#9bb0d6}.sidebar-brand{padding-bottom:8px;border-bottom:1px solid #ffffff1a}.nav-group{display:grid;gap:8px}.nav-title{margin:0;font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;color:#86a1d4;font-weight:700}.panel{border:1px solid #ffffff21;border-radius:14px;padding:16px;margin-top:14px;background:#ffffff14;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 35px #050a1440;min-width:0}.content{padding:24px 28px 30px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.topbar h1{margin:0;font-size:1.5rem;color:#f4f8ff}.topbar .muted{margin-top:6px}.status-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chip{background:#3b82f626;border:1px solid #3b82f669;color:#bfdbfe;border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600}.chip.info{background:#22d3ee1f;border-color:#22d3ee5e;color:#a5f3fc}.status-message{font-weight:600;color:#dbe7ff}.form-grid .span-full{grid-column:1 / -1}.form-grid{display:grid;gap:10px;margin-top:8px;max-width:560px}.upload-field-grid{display:grid;gap:8px;margin-top:10px;margin-bottom:10px;max-width:700px}.upload-field-grid label{font-size:.85rem;color:#a9bde4;font-weight:600}.nav{display:grid;gap:8px;margin-top:0}.nav a{text-decoration:none;color:#b8c8e7;padding:10px 12px;border-radius:10px;display:block;border:1px solid transparent;transition:all .2s ease}.nav a:hover{border-color:#3d4f79;background:#1b2b4a66}.nav a.active{background:linear-gradient(180deg,#2a3d66,#1f3158);border-color:#4b63a0;color:#f8fbff;font-weight:700}.sidebar-footer{margin-top:auto;border-top:1px solid #ffffff1a;padding-top:12px;display:grid;gap:4px}.sidebar-footer strong{color:#f8fbff;font-size:.95rem}.sidebar-footer button{width:100%}.stats-rows{margin-top:14px;display:flex;flex-direction:column;gap:12px}.stats-row{display:grid;gap:12px}.stats-row--two{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-row--three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-row--four{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card{border-radius:14px;background:linear-gradient(140deg,#1d4ed833,#0ea5e91e);border:1px solid #74b3ff30;color:#f5f9ff;padding:16px;display:grid;gap:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-card strong{font-size:1.6rem}.log-action{font-size:.82rem;color:#bfdbfe}.log-metadata{margin:0;font-size:.75rem;line-height:1.35;color:#c8d7f0;white-space:pre-wrap;word-break:break-word;max-width:520px;max-height:120px;overflow:auto}.table-wrap{margin-top:10px;border:1px solid #ffffff22;border-radius:10px;overflow-x:auto;overflow-y:hidden;background:#0f172acc;max-width:100%;width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.table-wrap table{width:100%;border-collapse:collapse;min-width:760px;table-layout:fixed}.table-wrap--fit table{min-width:0;table-layout:auto}.table-wrap--spaced{margin-top:12px}.table-wrap th,.table-wrap td{text-align:left;padding:10px 12px;border-bottom:1px solid #ffffff18;color:#dbe7ff;vertical-align:top}.table-wrap th{background:#111f39;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#a9bde4}.status-badge{display:inline-block;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:700}.status-pending{background:#f59e0b2a;color:#facc15}.status-approved{background:#22c55e2a;color:#86efac}.status-rejected{background:#ef44442b;color:#fca5a5}.status-submitted{background:#3b82f630;color:#bfdbfe}.muted{color:#9bb0d6}.login-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(460px,100%);border:1px solid #ffffff24;border-radius:16px;background:#ffffff12;padding:20px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.login-card h1{margin:0;color:#f4f8ff}.login-password-row{display:flex;gap:8px;align-items:stretch}.login-password-row input{flex:1;min-width:0}.login-password-toggle{flex-shrink:0;align-self:stretch;white-space:nowrap;padding-inline:14px;font-size:.88rem}.password-field-row{display:flex;gap:8px;align-items:stretch}.password-field-row input{flex:1;min-width:0}.password-toggle-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:44px;padding:0;color:#c8d7f0;background:#ffffff10;border:1px solid #ffffff22;border-radius:8px;cursor:pointer}.password-toggle-icon:hover{background:#ffffff18;border-color:#ffffff30}.error-text{color:#fca5a5;margin-top:12px}.bar-chart{display:grid;gap:10px;margin-bottom:12px}.bar-item{display:grid;grid-template-columns:110px 1fr 40px;gap:10px;align-items:center}.bar-track{background:#1f2c46;border-radius:999px;height:10px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,#22c55e,#3b82f6)}.bar-label,.bar-value{font-size:.82rem;color:#c8d7f5}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617bf;display:grid;place-items:center;padding:16px;overflow-y:auto}.modal-card{width:min(700px,100%);border:1px solid #ffffff26;border-radius:14px;padding:16px;background:#0f172acc;max-height:calc(100vh - 32px);overflow:auto}.user-edit-modal{max-width:420px}.user-create-modal{max-width:480px}.panel-header-with-action{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.panel-header-with-action h3{margin:0}.panel-header-with-action .panel-page-title{margin:0 0 4px;font-size:1.2rem;font-weight:700;color:#f4f8ff}.panel-header-with-action>div h3{font-size:.98rem;font-weight:600;color:#a8bddf}button.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border-radius:10px;color:#dbe7ff;border:1px solid #4063d8;background:linear-gradient(180deg,#2f4fa9,#213d86);box-shadow:inset 0 1px #ffffff1a}button.btn-icon:hover{transform:translateY(-1px);filter:brightness(1.08)}button.btn-icon:disabled{opacity:.55;cursor:not-allowed;transform:none;filter:none}button.btn-icon svg{display:block}.modal-actions{margin-top:8px}.modal-backup-detail{max-height:min(90vh,720px);overflow:auto}.backup-detail-grid{display:grid;grid-template-columns:160px 1fr;gap:8px 14px;margin:12px 0;font-size:.92rem}.backup-detail-grid dt{margin:0;color:#9bb0d6}.backup-detail-grid dd{margin:0}.path-block{display:block;white-space:pre-wrap;word-break:break-all;font-size:.82rem;padding:8px 10px;background:#0b1220;border-radius:8px;border:1px solid #2a395a}.path-with-action{flex-wrap:nowrap!important;align-items:stretch}.path-with-action .path-block{flex:1 1 auto;min-width:0;margin:0}.path-with-action .btn-icon{flex:0 0 auto}.path-cell{width:140px;min-width:140px;max-width:140px;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-cell-inline{display:block;width:140px;min-width:140px;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-cell-input{width:140px;min-width:140px;max-width:140px}.payment-preview-wrap{display:grid;gap:10px}.payment-preview-image{width:min(100%,360px);max-height:240px;object-fit:contain;border-radius:8px;border:1px solid #2a395a;background:#0b1220;padding:6px}.username-cell{width:180px;min-width:180px;max-width:180px;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.email-cell{width:220px;min-width:220px;max-width:220px;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.modal-links{flex-wrap:wrap;margin-bottom:12px}.modal-links a{color:#7dd3fc;text-decoration:underline}p.small{font-size:.85rem;margin:8px 0}.table-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap!important;white-space:nowrap}.table-action-btn{padding:6px 10px;font-size:.85rem;margin-right:6px}.table-action-btn:last-child{margin-right:0}.toast-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#020617b8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.toast-card{width:min(480px,100%);max-height:min(85vh,640px);overflow:auto;border:1px solid #22c55e55;border-radius:14px;padding:18px;background:linear-gradient(165deg,#0f172a,#14532d33);box-shadow:0 20px 50px #00000073}.toast-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.toast-header h3{margin:0;color:#ecfdf5;font-size:1.15rem}.toast-close{border:0;background:transparent;color:#9bb0d6;font-size:1.5rem;line-height:1;padding:0 6px;cursor:pointer}.toast-close:hover{color:#f8fbff;filter:none}.toast-sub{margin:0 0 12px;font-size:.88rem}.toast-copied{margin:0 0 10px;color:#86efac;font-size:.88rem;font-weight:600}.toast-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.toast-user-block{border:1px solid #ffffff18;border-radius:10px;padding:12px;background:#0b1220aa}.toast-row{display:grid;grid-template-columns:90px 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.toast-row:last-child{margin-bottom:0}.toast-row--simple{grid-template-columns:90px 1fr}.toast-k{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#86a1d4}.toast-v{font-size:.92rem;color:#e6edf7;word-break:break-all}.toast-copy{padding:6px 10px;font-size:.82rem}.toast-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #ffffff18}.snackbar{position:fixed;bottom:24px;right:24px;z-index:1100;max-width:min(420px,calc(100vw - 32px));padding:14px 18px;border-radius:12px;font-size:.92rem;line-height:1.4;box-shadow:0 12px 40px #00000073;border:1px solid #ffffff22;display:flex;align-items:flex-start;gap:12px;animation:snackbar-in .22s ease-out}@keyframes snackbar-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.snackbar--success{background:linear-gradient(165deg,#0f172a,#14532d55);border-color:#22c55e55;color:#ecfdf5}.snackbar--error{background:linear-gradient(165deg,#0f172a,#7f1d1d44);border-color:#f8717188;color:#fef2f2}.snackbar__close{flex-shrink:0;margin:-4px -6px -4px 0;padding:4px 8px;border:0;background:transparent;color:inherit;opacity:.75;font-size:1.25rem;line-height:1;cursor:pointer}.snackbar__close:hover{opacity:1}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{padding:16px;border-right:0;border-bottom:1px solid #ffffff1a}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:16px}.topbar{flex-direction:column}.stats-row--three{grid-template-columns:1fr}.stats-row--four{grid-template-columns:repeat(2,minmax(0,1fr))}.table-actions{flex-wrap:wrap!important;white-space:normal}.table-wrap th,.table-wrap td{overflow-wrap:break-word}}@media(max-width:520px){.stats-row--four,.stats-row--two{grid-template-columns:1fr}}
