@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--primary:#4f46e5;--primary-hover:#4338ca;--secondary:#10b981;--warning:#f59e0b;--danger:#ef4444;--orange:#f97316;--purple:#8b5cf6;--pink:#ec4899;--cyan:#06b6d4;--dark-sidebar:#0f172a;--dark-sidebar-hover:#1e293b;--dark-sidebar-active:#f97316;--bg-main:#fff;--card-bg:#fff;--border-color:#f1f5f9;--border-color-darker:#e2e8f0;--text-title:#0f172a;--text-main:#334155;--text-muted:#64748b;--font-family:"Outfit", sans-serif;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px #00000005;--shadow-md:0 4px 12px -2px #0f172a0a, 0 2px 6px -1px #0f172a05;--shadow-lg:0 12px 24px -4px #0f172a0f, 0 4px 12px -2px #0f172a08;--shadow-card:0 10px 30px -10px #0f172a08, 0 1px 3px #0f172a03;--fs-xs:clamp(.6875rem, .6vw + .56rem, .75rem);--fs-sm:clamp(.75rem, .65vw + .6rem, .875rem);--fs-base:clamp(.8125rem, .7vw + .66rem, .875rem);--fs-md:clamp(.875rem, .75vw + .7rem, 1rem);--fs-lg:clamp(.9375rem, 1vw + .72rem, 1.125rem);--fs-xl:clamp(1.0625rem, 1.3vw + .8rem, 1.375rem);--fs-2xl:clamp(1.1875rem, 2vw + .85rem, 1.5rem);--fs-3xl:clamp(1.3125rem, 2.6vw + .9rem, 1.75rem);--space-3xs:clamp(.125rem, .15vw + .1rem, .25rem);--space-2xs:clamp(.25rem, .25vw + .19rem, .375rem);--space-xs:clamp(.375rem, .45vw + .28rem, .5rem);--space-sm:clamp(.5rem, .7vw + .34rem, .75rem);--space-md:clamp(.75rem, 1vw + .5rem, 1rem);--space-lg:clamp(1rem, 1.6vw + .65rem, 1.5rem);--space-xl:clamp(1.25rem, 2.2vw + .8rem, 2rem);--space-2xl:clamp(1.5rem, 3vw + .9rem, 2.5rem);--page-padding-x:clamp(1rem, 4vw, 2rem);--page-padding-y:clamp(.875rem, 1.5vh + .6vw, 1.5rem);--card-padding:clamp(1rem, 1.4vh + 1.6vw, 1.5rem);--mobile-tabbar-h:56px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}h1,h2,h3,h4,h5,h6{color:var(--text-title);font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.3s cubic-bezier(.16,1,.3,1) forwards fadeIn}*{scrollbar-width:auto;scrollbar-color:#4f46e559 transparent}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#4f46e559 padding-box content-box;border:2px solid #0000;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#4f46e5b3 padding-box content-box}.admin-layout{min-height:100vh;display:flex;overflow:hidden}.main-content{background-color:var(--bg-main);flex-direction:column;flex:1;height:100vh;display:flex;overflow-y:auto}.page-header{padding:var(--page-padding-y) var(--page-padding-x);justify-content:space-between;align-items:center;gap:var(--space-md);border-bottom:1px solid var(--border-color);background-color:var(--card-bg);flex-wrap:wrap;display:flex}.page-title-group h1{font-size:var(--fs-3xl);color:var(--text-title);letter-spacing:-.02em;font-weight:700}.page-title-group p{font-size:var(--fs-base);color:var(--text-muted);margin-top:2px}.page-body{padding:var(--page-padding-x);flex:1}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--card-padding);transition:border-color .25s,box-shadow .25s}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--border-color-darker);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.hide-scrollbar,.metrics-strip{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}.metrics-strip::-webkit-scrollbar{display:none}.metrics-strip{grid-template-columns:var(--metrics-cols,repeat(auto-fit, minmax(min(var(--metrics-min,210px), 100%), 1fr)));gap:var(--metrics-gap,var(--space-lg));display:grid}.metrics-strip>*{min-width:0}@media (width<=640px){.metrics-strip{scroll-snap-type:x mandatory;scroll-padding-inline:var(--metrics-bleed,var(--page-padding-x));gap:var(--space-sm);margin-inline:calc(var(--metrics-bleed,var(--page-padding-x)) * -1);padding-inline:var(--metrics-bleed,var(--page-padding-x));padding-bottom:var(--space-2xs);-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.metrics-strip>*{scroll-snap-align:start;flex:0 0 clamp(240px,78%,300px)}}.data-table-container{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%;min-width:640px}.data-table th{padding:var(--space-md) var(--space-lg);font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);background-color:#fafbfc;font-weight:600}.data-table td{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color);font-size:var(--fs-base);color:var(--text-main);vertical-align:middle;white-space:nowrap}.data-table tbody tr{transition:background-color .15s}.data-table tbody tr:hover{background-color:#fafbfc}.data-table tbody tr:last-child td{border-bottom:none}@media (width<=640px){.data-table--cards,.data-table--cards tbody,.data-table--cards td{display:block}.data-table--cards tr{flex-direction:column;display:flex}.data-table--cards{min-width:0}.data-table--cards thead{display:none}.data-table--cards tbody tr{padding:var(--space-md);border-bottom:1px solid var(--border-color)}.data-table--cards tbody tr:last-child{border-bottom:none}.data-table--cards td{align-items:center;gap:var(--space-2xs) var(--space-sm);padding:var(--space-2xs) 0;white-space:normal;border-bottom:none;flex-wrap:wrap;display:flex}.data-table--cards td[data-label]:before{content:attr(data-label);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-right:auto;font-weight:600}.data-table--cards td[data-label]:not(.cell-primary):not(.cell-actions)>*{text-align:right}.data-table--cards td.cell-primary{padding:0 0 var(--space-sm);order:-1;display:block}.data-table--cards td.cell-actions{margin-top:var(--space-2xs);padding-top:var(--space-sm);border-top:1px solid var(--border-color);justify-content:flex-end}.data-table--cards td.cell-primary:before,.data-table--cards td.cell-actions:before{content:none}.data-table--cards td.cell-actions:not(:has(*)){display:none}.data-table--cards td:not([data-label]){text-align:center;display:block}.data-table--cards td.cell-select{text-align:left;padding-bottom:var(--space-2xs);order:-2;display:block}}.form-group{margin-bottom:var(--space-lg)}.form-label{font-size:var(--fs-md);color:var(--text-title);margin-bottom:var(--space-2xs);font-weight:500;display:block}.form-control{width:100%;padding:var(--space-sm) var(--space-md);font-family:inherit;font-size:var(--fs-md);color:var(--text-main);border:1px solid var(--border-color-darker);border-radius:var(--radius-sm);background-color:#fff;outline:none;transition:all .25s cubic-bezier(.4,0,.2,1)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 4px #4f46e51a}.form-control::placeholder{color:#a0aec0}.form-control:disabled{color:var(--text-muted);cursor:not-allowed;background-color:#f8fafc}.form-help{font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--space-3xs)}.btn{justify-content:center;align-items:center;gap:var(--space-2xs);padding:var(--space-sm) var(--space-lg);font-family:inherit;font-size:var(--fs-md);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;outline:none;font-weight:500;transition:all .2s ease-in-out;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 1px 2px #4f46e526}.btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 6px #4f46e526}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{border-color:var(--border-color-darker);color:var(--text-main);background-color:#fff}.btn-secondary:hover:not(:disabled){background-color:#f8fafc;border-color:#cbd5e1}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:#dc2626}.btn-sm{padding:var(--space-2xs) var(--space-sm);font-size:var(--fs-xs);border-radius:6px}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--fs-lg)}.badge{padding:var(--space-3xs) var(--space-sm);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;border-radius:9999px;align-items:center;font-weight:600;display:inline-flex}@media (width<=640px){.page-header{flex-direction:column;align-items:stretch}}.toast-host[data-v-73493e2e]{z-index:5000;top:var(--space-lg);right:var(--space-lg);gap:var(--space-sm);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast[data-v-73493e2e]{align-items:flex-start;gap:var(--space-sm);width:min(430px,100vw - 40px);padding:var(--space-md);border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-title);pointer-events:auto;border-radius:13px;display:flex;box-shadow:0 16px 36px #0f172a29}.toast-icon[data-v-73493e2e]{flex:none;margin-top:3px}.toast-success .toast-icon[data-v-73493e2e]{color:#16a34a}.toast-error .toast-icon[data-v-73493e2e]{color:#dc2626}.toast-info .toast-icon[data-v-73493e2e]{color:var(--primary)}.toast-cover[data-v-73493e2e]{object-fit:cover;border:1px solid var(--border-color);border-radius:9px;flex:none;width:clamp(44px,12vw,58px);height:clamp(52px,14vw,68px)}.toast-content[data-v-73493e2e]{gap:var(--space-3xs);overflow-wrap:anywhere;min-width:0;line-height:1.35;display:grid}.toast-content strong[data-v-73493e2e]{font-size:var(--fs-base)}.toast-content span[data-v-73493e2e]{color:var(--text-muted);font-size:var(--fs-sm)}.toast-action[data-v-73493e2e]{width:fit-content;color:var(--primary);font-size:var(--fs-sm);margin-top:3px;font-weight:700}.toast-close[data-v-73493e2e]{color:var(--text-muted);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:2px;display:flex}.toast-close[data-v-73493e2e]:hover{color:var(--text-title)}.toast-enter-active[data-v-73493e2e],.toast-leave-active[data-v-73493e2e]{transition:opacity .22s,transform .22s}.toast-enter-from[data-v-73493e2e],.toast-leave-to[data-v-73493e2e]{opacity:0;transform:translate(12px)}@media (width<=640px){.toast-host[data-v-73493e2e]{top:12px;left:12px;right:12px}.toast[data-v-73493e2e]{width:100%}}
