@font-face {
  font-family: "Vazirmatn";
  src: url("/assets/fonts/Vazirmatn.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root { --paper:#f3efe5; --light:#fbfaf6; --ink:#151815; --muted:#62675f; --line:rgba(21,24,21,.15); --earth:#b44d2d; --dark:#75311f; --night:#172923; --yellow:#f0cf76; }
* { box-sizing: border-box; }
body { min-height:100vh; margin:0; color:var(--ink); background:var(--paper); font-family:"Vazirmatn",Tahoma,sans-serif; }
a { color:inherit; }
.auth-shell { min-height:100vh; display:grid; grid-template-columns:minmax(320px,.8fr) minmax(460px,1.2fr); }
.auth-aside { position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(28px,5vw,72px); color:#f7f2e8; background:var(--night); }
.auth-aside::before { content:""; position:absolute; inset:0; opacity:.14; background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px); background-size:44px 44px; }
.auth-aside::after { content:""; position:absolute; width:560px; height:560px; left:-260px; bottom:-300px; border-radius:50%; background:#244637; }
.auth-aside > * { position:relative; z-index:1; }
.wordmark { display:inline-flex; align-items:center; gap:12px; width:max-content; text-decoration:none; }
.wordmark > span:last-child { display:grid; gap:2px; }
.wordmark b { font-size:15px; }.wordmark small { color:rgba(255,255,255,.55); font:9px/1 ui-monospace,monospace; letter-spacing:.15em; }
.wordmark-mark { width:27px; height:27px; display:grid; grid-template-columns:repeat(3,1fr); align-items:end; gap:2px; transform:rotate(180deg); }
.wordmark-mark i { display:block; background:currentColor; }.wordmark-mark i:nth-child(1){height:9px}.wordmark-mark i:nth-child(2){height:18px}.wordmark-mark i:nth-child(3){height:26px}
.aside-copy { max-width:480px; }.aside-copy p { margin:0 0 16px; color:var(--yellow); font-size:12px; font-weight:700; }.aside-copy h1 { margin:0; font-size:clamp(40px,5vw,70px); line-height:1.35; }.aside-copy small { display:block; margin-top:22px; color:rgba(255,255,255,.6); font-size:13px; line-height:2; }
.auth-main { display:grid; place-items:center; padding:clamp(28px,6vw,90px); }
.auth-card { width:min(100%,480px); }.auth-kicker { margin:0 0 16px; color:var(--earth); font-size:11px; font-weight:800; }.auth-card h2 { margin:0; font-size:clamp(30px,4vw,46px); }.auth-lead { margin:14px 0 34px; color:var(--muted); font-size:13px; line-height:2; }
.auth-form { display:grid; gap:20px; }.auth-form label { display:grid; gap:8px; font-size:12px; font-weight:700; }.auth-form input[type="email"],.auth-form input[type="password"],.auth-form input[type="number"],.auth-form select,.settings-grid input { width:100%; min-height:52px; padding:0 15px; border:1px solid var(--line); border-radius:2px; outline:0; color:var(--ink); background:var(--light); }.auth-form input[type="email"],.auth-form input[type="password"] { direction:ltr; text-align:left; }.auth-form input:focus,.auth-form select:focus,.settings-grid input:focus { border-color:var(--earth); box-shadow:0 0 0 3px rgba(180,77,45,.1); }
.form-row { display:flex; align-items:center; justify-content:space-between; gap:20px; }.check { display:flex!important; grid-template:none!important; align-items:center; gap:9px!important; color:var(--muted); font-weight:500!important; cursor:pointer; }.check input { accent-color:var(--earth); }.form-row a,.auth-switch a { color:var(--earth); text-underline-offset:4px; }
.auth-button { min-height:52px; border:0; border-radius:2px; color:#fff; background:var(--earth); font-weight:800; cursor:pointer; transition:.2s; }.auth-button:hover { background:var(--dark); }.auth-button:disabled { opacity:.55; cursor:wait; }
.auth-feedback { margin:0; padding:12px 14px; border-right:3px solid #a93226; color:#84251d; background:#f7dfd9; font-size:12px; line-height:1.8; }.auth-feedback[data-type="success"] { color:#23523f; border-color:#315f4d; background:#dfebe5; }
.auth-switch { margin:26px 0 0; padding-top:22px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }.back-link { display:inline-block; margin-top:28px; color:var(--muted); font-size:12px; text-underline-offset:5px; }
.account-panel { padding:30px; color:#fff; background:var(--night); }.account-email { margin:8px 0 28px; color:var(--yellow); direction:ltr; text-align:right; font:16px ui-monospace,monospace; }.account-panel .auth-button { width:100%; }
.account-card{width:min(100%,620px)}.light-email{margin-top:-20px;color:var(--earth)}.account-section{margin:22px 0;padding:20px;border:1px solid var(--line);background:var(--light)}.account-section h3{margin:0 0 12px}.account-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.button-link{display:grid;place-items:center;text-decoration:none}.secondary-button{min-height:46px;padding:0 18px;border:1px solid var(--line);background:transparent;cursor:pointer}.result-panel{margin-top:24px;padding:22px;background:var(--night);color:#fff}.result-panel b{color:var(--yellow)}.admin-shell{min-height:100vh}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:24px clamp(20px,5vw,72px);color:#fff;background:var(--night)}.admin-content{max-width:1200px;margin:auto;padding:50px 24px}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0;padding:24px;background:#fff}.settings-grid label{display:grid;gap:7px;font-size:12px}.settings-grid button{align-self:end}.order-list{display:grid;gap:12px}.order-card,.mini-order{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#fff;border:1px solid var(--line)}.order-card h3{margin:0;direction:ltr;text-align:right}.order-actions{display:flex;align-items:center;gap:8px}.order-actions input{min-height:40px;padding:0 10px}.order-actions button{min-height:40px;border:0;padding:0 14px;color:#fff;background:#315f4d;cursor:pointer}.order-actions .reject{background:#8d3429}.status-badge{display:inline-block;padding:5px 10px;background:var(--paper);font-size:11px}.mini-order small{color:var(--earth)}
@media(max-width:800px){.settings-grid{grid-template-columns:1fr}.order-card,.order-actions,.mini-order{align-items:stretch;flex-direction:column}.account-actions{grid-template-columns:1fr}}
@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-aside{min-height:250px;padding:28px}.aside-copy h1{font-size:38px}.aside-copy small{display:none}.auth-main{padding:54px 24px}.wordmark small{display:none}}

/* User dashboard */
.dashboard-body{background:#eeeae0}.dashboard-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);color:#fff;background:var(--night);border-bottom:1px solid rgba(255,255,255,.08)}.dashboard-header .wordmark{color:#fff}.dashboard-user{display:flex;align-items:center;gap:18px;direction:ltr;font:12px ui-monospace,monospace}.dashboard-user button{padding:8px 14px;border:1px solid rgba(255,255,255,.22);color:#fff;background:transparent;cursor:pointer}.dashboard-main{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:60px 0 90px}.dashboard-welcome{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.dashboard-welcome h1{margin:4px 0 8px;font-size:clamp(34px,5vw,58px)}.dashboard-welcome p{margin:0;color:var(--muted)}.dashboard-primary{display:flex;align-items:center;gap:24px;padding:17px 22px;color:#fff;background:var(--earth);text-decoration:none;font-weight:800}.dashboard-grid{display:grid;gap:16px}.dashboard-overview{grid-template-columns:1.4fr .8fr .8fr}.dashboard-card,.dashboard-section{border:1px solid rgba(21,24,21,.12);background:#fbfaf6;box-shadow:0 8px 30px rgba(23,41,35,.04)}.dashboard-card{min-height:235px;padding:26px}.card-heading{display:flex;align-items:center;gap:14px}.card-heading>div{display:grid}.card-heading small{color:var(--muted);font-size:10px}.card-heading h2{margin:0;font-size:20px}.card-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--earth);background:#f2e4dc;font-size:20px}.connection-dot{width:10px;height:10px;margin-right:auto;border-radius:50%;background:#aaa}.connection-dot[data-connected="true"]{background:#2f805f;box-shadow:0 0 0 6px rgba(47,128,95,.1)}.telegram-profile{display:grid;gap:4px;margin:28px 0 12px}.telegram-profile strong{direction:ltr;text-align:right;font:700 18px ui-monospace,monospace}.telegram-profile span,.card-note{color:var(--muted);font-size:12px}.card-note{line-height:1.9}.card-actions{display:flex;align-items:center;gap:16px;margin-top:20px}.outline-action,.text-action{color:var(--earth);text-underline-offset:4px}.danger-link{padding:0;border:0;color:#9b3b30;background:none;cursor:pointer}.metric{display:block;margin-top:27px;font-size:52px;line-height:1}.key-summary .text-action,.order-summary .text-action{display:inline-block;margin-top:20px}.dashboard-section{margin-top:22px;padding:30px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}.section-title h2{margin:3px 0 0;font-size:28px}.section-title>p{color:var(--muted);font-size:12px}.section-title>a{color:var(--earth)}.key-list,.dashboard-order-list{display:grid}.api-key-row,.dashboard-order{display:grid;align-items:center;gap:20px;padding:20px 6px;border-bottom:1px solid var(--line)}.api-key-row{grid-template-columns:1fr minmax(230px,1.2fr) auto}.api-key-row>div{display:flex;align-items:center;gap:14px}.api-key-row>div>div{display:grid;gap:3px}.api-key-row small,.dashboard-order small{color:var(--muted)}.key-index{width:34px;height:34px;display:grid;place-items:center;background:var(--paper)}.api-key-row code{overflow:hidden;padding:13px;background:#172923;color:#dceadf;direction:ltr;text-align:left;text-overflow:ellipsis;white-space:nowrap}.api-key-row button{min-height:43px;padding:0 16px;border:1px solid var(--line);background:#fff;cursor:pointer}.dashboard-order{grid-template-columns:1.2fr .8fr .7fr auto}.dashboard-order>div{display:grid}.dashboard-order>a{color:var(--earth)}.order-status{width:max-content;padding:6px 10px;font-size:11px;background:var(--paper)}.status-approved{color:#225d43;background:#dfece5}.status-rejected{color:#8a3027;background:#f3dfdc}.status-receipt_submitted{color:#70570e;background:#f6edcf}.empty-state{display:grid;gap:5px;padding:36px 8px;text-align:center;color:var(--muted)}.empty-state b{color:var(--ink)}.admin-entry{display:block;width:max-content;margin:28px auto 0;color:var(--muted);font-size:12px}.estimate-total{margin-top:8px;padding-top:14px;border-top:1px solid var(--line)}.estimate-total strong{color:var(--earth)!important}
@media(max-width:900px){.dashboard-overview{grid-template-columns:1fr 1fr}.telegram-card{grid-column:1/-1}.api-key-row{grid-template-columns:1fr}.dashboard-order{grid-template-columns:1fr 1fr}.dashboard-welcome{align-items:start;flex-direction:column}.dashboard-primary{width:100%;justify-content:space-between}}
@media(max-width:580px){.dashboard-header{height:auto;padding:18px 20px;align-items:start}.dashboard-user{align-items:end;flex-direction:column;gap:8px}.dashboard-main{width:min(100% - 24px,1180px);padding-top:38px}.dashboard-overview{grid-template-columns:1fr}.telegram-card{grid-column:auto}.dashboard-section{padding:20px}.section-title{align-items:start;flex-direction:column}.dashboard-order{grid-template-columns:1fr}.api-key-row code{font-size:10px}}
