:root{--ink:#0b1220;--panel:#131c2e;--panel-2:#1a2439;--line:#27334d;--text:#e9eef8;--muted:#8497b5;--gold:#f5b942;--mint:#4fd9a6;--rose:#f2607a;--display:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}a,button,input,select{touch-action:manipulation}html{-webkit-text-size-adjust:100%}body{background:var(--ink);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.55;min-height:100dvh;background-image:radial-gradient(120% 60% at 50% -10%,#17243c 0,var(--ink) 60%)}.wrap{max-width:620px;margin:0 auto;padding:48px 20px 80px}.wrap--wide{max-width:1080px}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}h1{font-weight:800;font-size:clamp(30px,7vw,44px);line-height:1.08;letter-spacing:-.03em;margin:14px 0 16px}h1,h2{font-family:var(--display)}h2{font-weight:600;font-size:20px;letter-spacing:-.01em}.lead{color:var(--muted);font-size:16px;max-width:46ch}.num{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.how{margin:34px 0 40px;border-top:1px solid var(--line)}.how li{display:flex;gap:14px;padding:13px 2px;border-bottom:1px solid var(--line);list-style:none;font-size:15px}.how b{font-family:var(--mono);font-size:12px;color:var(--gold);padding-top:3px;flex:none}.exchanges{display:grid;grid-gap:10px;gap:10px}.exchange{display:flex;align-items:center;justify-content:space-between;width:100%;padding:18px 20px;background:var(--panel);border:1px solid var(--line);border-radius:12px;color:var(--text);font-family:var(--display);font-size:18px;font-weight:600;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}@media (hover:hover){.exchange:hover{border-color:var(--gold);background:var(--panel-2);transform:translateX(3px)}.exchange:hover span{color:var(--gold)}}.exchange{min-height:60px}.exchange:active{border-color:var(--gold);background:var(--panel-2)}.exchange span,label{font-family:var(--mono);font-size:12px;color:var(--muted)}label{display:block;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}input[type=file],input[type=number],input[type=password],input[type=text],select{width:100%;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);font-family:var(--mono);font-size:16px}input::placeholder{color:#5b6b87}button:focus-visible,input:focus,select:focus{outline:2px solid var(--gold);outline-offset:2px;border-color:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 22px;border:0;border-radius:10px;background:var(--gold);color:#1a1204;font-family:var(--display);font-size:16px;font-weight:700;cursor:pointer;transition:filter .16s;min-height:52px}@media (hover:hover){.btn:hover:not(:disabled){filter:brightness(1.1)}}.btn:active:not(:disabled){filter:brightness(.94)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--full{width:100%}.btn--ghost{background:transparent;border:1px solid var(--line);color:var(--text);font-weight:500;padding:12px 18px;font-size:14px}@media (hover:hover){.btn--ghost:hover:not(:disabled){border-color:var(--muted)}}.btn--sm{padding:9px 14px;font-size:13px}.back{background:none;border:0;color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;padding:4px 0;margin-bottom:24px}@media (hover:hover){.back:hover{color:var(--gold)}}.error{margin-top:14px;padding:12px 14px;border-left:2px solid var(--rose);background:rgba(242,96,122,.08);color:#ffc4cf;font-size:14px;border-radius:0 8px 8px 0}.receipt{position:relative;background:var(--panel);border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;padding:30px 26px 26px}.receipt:before{content:"";position:absolute;top:-11px;left:-1px;right:-1px;height:12px;background:linear-gradient(135deg,var(--panel) 50%,transparent 50%) 0 0 /16px 12px repeat-x,linear-gradient(-135deg,var(--panel) 50%,transparent 50%) 8px 0 /16px 12px repeat-x;filter:drop-shadow(0 -1px 0 var(--line))}.receipt__head{justify-content:space-between;font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding-bottom:18px}.receipt__head,.row{display:flex;align-items:baseline;border-bottom:1px dashed var(--line)}.row{gap:10px;padding:13px 0;font-size:14px}.row__label{color:var(--muted);flex:none}.row__dots{flex:1 1;border-bottom:1px dotted #35425f;transform:translateY(-4px)}.row__value{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.total{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:24px 0 26px}.total__label{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.total__value{font-family:var(--mono);font-weight:600;font-size:clamp(34px,9vw,48px);line-height:1;color:var(--gold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.badge{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:5px;border:1px solid;white-space:nowrap}.badge--pending{color:var(--gold)}.badge--approved{color:#7fb2ff}.badge--paid{color:var(--mint)}.badge--rejected{color:var(--rose)}.note{margin-top:18px;padding:16px 18px;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;font-size:14px;color:var(--muted)}.history{margin-top:34px}.history h2{font-size:15px;margin-bottom:12px}.history__row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.done{text-align:center;padding:40px 0 20px}.done__mark{font-family:var(--mono);font-size:44px;color:var(--mint);line-height:1;margin-bottom:22px}.admin-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:26px}.admin-head,.stats{display:flex;flex-wrap:wrap}.stats{gap:10px;margin-bottom:24px}.stat{flex:1 1 130px;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.stat__k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.stat__k,.stat__v{font-family:var(--mono)}.stat__v{font-size:24px;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}.tab{padding:8px 14px;background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-family:var(--mono);font-size:13px;cursor:pointer}.tab[data-active=true]{color:var(--ink);background:var(--gold);border-color:var(--gold);font-weight:600}.card{padding:18px 20px;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:12px}.card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.card__meta{font-family:var(--mono);font-size:13px;color:var(--muted)}.card__amount{font-family:var(--mono);font-size:26px;color:var(--gold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.empty{padding:46px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px}.import{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-bottom:28px}.import__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin:14px 0}.ok{margin-top:14px;padding:12px 14px;border-left:2px solid var(--mint);background:rgba(79,217,166,.08);color:#b6f2dc;font-size:14px;border-radius:0 8px 8px 0}.hint{font-size:13px;color:var(--muted);margin-top:10px}.link{color:var(--gold);text-decoration:none;border-bottom:1px solid rgba(245,185,66,.35)}.link:hover{border-bottom-color:var(--gold)}.step{animation:rise .28s ease-out both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}