*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:#f7f7f2;color:#182233;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select{font:inherit}button{min-height:36px;border:1px solid #123d35;border-radius:8px;background:#123d35;color:#fff;cursor:pointer;font-weight:800;padding:7px 12px}button:disabled{cursor:not-allowed;opacity:.55}.auth-page{display:grid;min-height:100vh;place-items:center;padding:24px}.auth-panel{display:grid;gap:18px;width:min(100%,420px);border:1px solid #dcd8cc;border-radius:8px;background:#fff;padding:24px}.brand-mark{display:inline-grid;width:30px;height:30px;place-items:center;border-radius:8px;background:#123d35;color:#fff;font-weight:900}.auth-panel h1{margin:12px 0 8px;font-size:1.45rem}.auth-panel p{margin:0;color:#6f7b8a;line-height:1.55}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:6px;color:#6f7b8a;font-size:.86rem;font-weight:800}.auth-form input,.admin-section input,.admin-section select{min-height:38px;border:1px solid #d3d0c5;border-radius:8px;background:#fff;color:#182233;padding:8px 10px}.auth-error,.admin-error,.admin-empty{margin:0;border:1px solid #fed7aa;border-radius:8px;background:#fff7ed;color:#9a3412;padding:12px}.admin-empty{border-color:#dcd8cc;background:#fff;color:#6f7b8a}.admin-shell{min-height:100vh}.admin-topbar{position:sticky;top:0;z-index:10;display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #dcd8cc;background:#f7f7f2f5;padding:12px 20px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand-block,.topbar-actions{display:flex;align-items:center;gap:10px;min-width:0}.topbar-actions span{max-width:180px;overflow:hidden;color:#6f7b8a;text-overflow:ellipsis;white-space:nowrap}.admin-page{display:grid;gap:16px;width:min(100%,1120px);margin:0 auto;padding:28px 16px 56px}.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}.admin-metric,.admin-section,.admin-user-row{border:1px solid #dcd8cc;border-radius:8px;background:#fff}.admin-metric{display:grid;gap:8px;padding:14px}.admin-metric span,.admin-section label,.admin-user-row span,.admin-user-row small{color:#6f7b8a;font-size:.82rem}.admin-metric strong{color:#123d35;font-size:1.2rem;line-height:1.2}.admin-section{display:grid;gap:12px;padding:16px}.admin-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-section h2{margin:0;font-size:1.05rem}.cost-panel{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end}.cost-panel h2{grid-column:1 / -1}.admin-section label{display:grid;gap:6px;font-weight:800}.admin-user-list{display:grid;gap:10px}.admin-user-row{display:grid;grid-template-columns:minmax(190px,1.4fr) repeat(3,minmax(92px,.7fr)) auto;gap:10px;align-items:end;padding:12px}.plan-row{grid-template-columns:minmax(220px,1.6fr) repeat(2,minmax(120px,.7fr)) auto}.admin-user-row>div:first-child{display:grid;gap:5px;min-width:0}.admin-user-row strong{overflow-wrap:anywhere}.admin-table-wrap{overflow-x:auto}.token-chart{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(42px,1fr);align-items:end;min-height:190px;gap:8px;overflow-x:auto;border:1px solid #ece8dd;border-radius:8px;background:linear-gradient(#fff,#fbfbf7);padding:12px 10px}.token-bar-cell{display:grid;grid-template-rows:22px minmax(110px,1fr) 20px;min-width:42px;align-items:end;justify-items:center;gap:6px}.token-bar-value{color:#6f7b8a;font-size:.72rem;white-space:nowrap}.token-bar{width:min(100%,28px);border-radius:6px 6px 2px 2px;background:#0f766e;box-shadow:inset 0 1px #ffffff40}.token-bar-label{color:#6f7b8a;font-size:.74rem}table{width:100%;border-collapse:collapse}th,td{border-bottom:1px solid #ece8dd;padding:10px 8px;text-align:left;vertical-align:top}th{color:#6f7b8a;font-size:.8rem;font-weight:900}td{color:#182233;font-size:.88rem}@media(max-width:900px){.cost-panel,.admin-user-row{grid-template-columns:1fr}}@media(max-width:560px){.admin-topbar{align-items:flex-start;flex-direction:column;padding:10px}.admin-page{padding:16px 10px 40px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
