:root{
  --bg:#08090D; --panel:#0F1117; --panel-2:#151822; --panel-3:#1B1F2B; --line:#20232E; --line-lt:#2B2F3D;
  --ink:#F4F5F8; --slate:#9096A8; --mute:#5F6578;
  --accent:#1478A6; --accent-lt:#3FA9D6;
  --green:#22C58E; --green-dim:rgba(34,197,142,.14); --amber:#F5A524; --amber-dim:rgba(245,165,36,.14);
  --red:#F0473C; --red-dim:rgba(240,71,60,.14); --plat:#9333EA; --plat-dim:rgba(147,51,234,.14);
  --paper:#FBFBF9; --paper-2:#F2F2EE; --paper-ink:#15161C; --paper-line:#E2E1DA; --paper-mute:#767B8A;
  --sh2:0 8px 24px rgba(0,0,0,.28),0 2px 6px rgba(0,0,0,.2);
  --sh3:0 40px 90px -20px rgba(0,0,0,.6),0 14px 30px -14px rgba(0,0,0,.5);
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --sw:0px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;position:relative;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-10;
  background-image:linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:54px 54px;
  -webkit-mask-image:radial-gradient(ellipse 62% 42% at 50% 12%,#000,transparent 72%);
  mask-image:radial-gradient(ellipse 62% 42% at 50% 12%,#000,transparent 72%)}
.lightsurf:before{display:none}
[x-cloak]{display:none!important}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
a{color:inherit;text-decoration:none}
input, select, textarea{font:inherit;color:inherit;background:none;border:none;outline:none;width:100%}
:focus-visible{outline:2px solid var(--accent-lt);outline-offset:3px;border-radius:6px}
@media(prefers-reduced-motion:reduce){
*{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
.lightsurf{
  --bg:#F7F7F5; --panel:#FFFFFF; --panel-2:#F3F3EF; --panel-3:#E8E8E2;
  --line:#E5E4DD; --line-lt:#D5D4CB; --ink:#15161C; --slate:#5A6070; --mute:#868B99;
  --sh2:0 4px 14px rgba(21,22,28,.06),0 1px 3px rgba(21,22,28,.05);
  --sh3:0 26px 60px -18px rgba(21,22,28,.2),0 10px 22px -12px rgba(21,22,28,.12);
  background:var(--bg);color:var(--ink)}
.lightsurf .field{background:#FAFAF8}
.lightsurf .scrim{background:rgba(21,22,28,.4)}
.lightsurf .toggle{background:#D5D4CB}
.wrap{width:100%;max-width:1120px;margin:0 auto;padding:0 24px}
@media(min-width:768px){
.wrap{padding:0 40px}
}
.wrap-app{width:100%;margin:0 auto;padding:0 20px}
@media(min-width:768px){
.wrap-app{padding:0 32px}
}
@media(min-width:1280px){
.wrap-app{max-width:1280px;padding:0 40px}
}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.lbl{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:block;margin-bottom:8px}
.page-h{font-weight:750;font-size:19px;letter-spacing:-.02em;margin-bottom:16px}
.divider{height:1px;background:var(--line);margin:14px 0}
.muted{color:var(--mute);font-size:12.5px}
.sec-h{font-size:14px;margin:22px 0 8px;color:var(--slate);font-weight:650}
.btn{text-decoration:none;display:flex;align-items:center;justify-content:center;gap:9px;min-height:52px;width:100%;border-radius:10px;font-weight:600;font-size:15px;letter-spacing:-.01em;transition:transform .12s,filter .2s}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.4;cursor:not-allowed}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{filter:brightness(1.08)}
.btn-ghost{background:var(--panel-2);color:var(--ink);border:1px solid var(--line-lt)}
.btn-line{background:transparent;border:1.5px solid var(--line-lt);color:var(--ink)}
.btn-danger{background:transparent;color:var(--red)}
.btn-paypal{background:#FFC439;color:#0A2540}
.btn-sm{min-height:44px;font-size:13px;border-radius:9px;width:auto;padding:0 16px}
.btn-w{width:100%}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh2)}
.ico{width:19px;height:19px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ico-sm{width:15px;height:15px;stroke-width:2}
.badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;padding:3px 8px;border-radius:999px}
.b-ok{background:var(--green-dim);color:var(--green)}
.b-warn{background:var(--amber-dim);color:var(--amber)}
.b-err{background:var(--red-dim);color:var(--red)}
.b-off{background:var(--panel-3);color:var(--mute)}
.field{display:flex;align-items:center;gap:2px;min-height:50px;padding:0 13px;border-radius:9px;background:var(--panel-2);border:1.5px solid var(--line-lt);transition:border-color .2s}
.field:focus-within{border-color:var(--accent)}
.field.free{border-color:var(--green);background:rgba(34,197,142,.08)}
.field.bad{border-color:var(--red)}
.field input, .field select, .field textarea{font-size:15px;color:var(--ink)}
.field textarea{padding:14px 0;resize:vertical;min-height:84px}
.field input::placeholder, .field textarea::placeholder{color:var(--mute);font-style:italic;opacity:.75}
.field+.lbl{margin-top:12px}
.mb{margin-bottom:12px}
.lightbox{position:fixed;inset:0;z-index:960;background:rgba(10,11,15,.92);display:flex;align-items:center;
  justify-content:center;padding:24px}
.lightbox img{max-width:100%;max-height:92svh;border-radius:12px;object-fit:contain}
.lb-x{position:absolute;top:calc(14px + env(safe-area-inset-top));right:14px;width:44px;height:44px;border-radius:50%;
  background:rgba(255,255,255,.14);color:#fff;display:flex;align-items:center;justify-content:center}
.cpn{margin-bottom:16px}
.cpn-on{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:11px;background:var(--green-dim);
  border:1px solid var(--line-lt);margin-bottom:6px}
.cpn-on .ico{color:var(--green);flex:none}
.cpn-on b{display:block;font-size:13px;font-family:var(--mono)}
.cpn-on span{font-size:12px;color:var(--mute)}
.terms-box{max-height:210px;overflow-y:auto;padding:14px;border-radius:11px;background:var(--panel-2);
  border:1px solid var(--line-lt);font-size:12.5px;line-height:1.6;color:var(--slate);margin-bottom:14px}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.chip{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:999px;background:var(--panel-2);
  border:1px solid var(--line-lt);font-family:var(--mono);font-size:12px;color:var(--ink)}
.chip.lock{color:var(--mute);background:transparent}
.chip.empty-c{color:var(--mute);font-style:italic;border-style:dashed}
.chip .x{display:flex;align-items:center;color:var(--mute);padding:0}
.chip .x .ico{width:12px;height:12px}
.chip .x:hover{color:var(--red)}
.pre{font-family:var(--mono);font-size:12.5px;color:var(--mute);white-space:nowrap}
.hint{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;margin-top:7px;min-height:14px;color:var(--mute)}
.hint .ico{width:13px;height:13px;stroke-width:2.4}
.toggle{width:36px;height:21px;border-radius:999px;background:var(--panel-3);position:relative;flex:none;transition:background .2s;cursor:pointer}
.toggle.on{background:var(--accent)}
.toggle i{position:absolute;top:3px;left:3px;width:15px;height:15px;border-radius:50%;background:#fff;transition:transform .2s}
.toggle.on i{transform:translateX(15px)}
.row{display:flex;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid var(--line)}
.row.tap{position:relative}
.row.tap:hover{background:var(--panel-2)}
.row.tap .row-main:after{content:"";position:absolute;inset:0;border-radius:9px}
.row.tap .row-media, .row.tap .row-end{position:relative;z-index:1}
.row:last-child{border-bottom:none}
.row-media{width:38px;height:38px;border-radius:10px;background:var(--panel-2);flex:none;
  display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:700;font-size:12px}
.row-main{flex:1;min-width:0}
.row-main b{font-size:14px;display:block;font-weight:650}
.row-main span{font-family:var(--mono);font-size:11.5px;color:var(--mute)}
.row-main span.txt{font-family:var(--sans);font-size:12px}
.row-end{display:flex;align-items:center;gap:8px;flex:none}
.row-amt{font-family:var(--mono);font-size:14px;font-weight:600;text-align:right;white-space:nowrap}
.row-ms{font-family:var(--mono);font-size:11px;color:var(--mute)}
.icon-btn{width:44px;height:44px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--mute);flex:none}
.icon-btn:hover{background:var(--panel-2);color:var(--ink)}
.act-row{text-decoration:none;display:flex;align-items:center;gap:12px;width:100%;padding:14px 2px;border-bottom:1px solid var(--line);font-size:14.5px;text-align:left;min-height:44px}
.act-row:last-child{border-bottom:none}
.act-row .ico{color:var(--slate)}
.act-row.danger{color:var(--red)}
.act-row.danger .ico{color:var(--red)}
.empty{padding:34px 2px;text-align:center;color:var(--mute);font-size:13.5px}
.empty .ico{width:26px;height:26px;margin:0 auto 10px;display:block;opacity:.6}
.errbox{display:flex;gap:11px;align-items:flex-start;padding:14px;border-radius:12px;background:var(--red-dim);border:1px solid rgba(240,71,60,.3);margin-bottom:14px}
.errbox .ico{color:var(--red)}
.errbox b{font-size:13.5px;display:block}
.errbox span{font-size:12.5px;color:var(--slate)}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}
.stat-grid.tight{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.stat{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}
.stat .n{font-family:var(--mono);font-size:23px;font-weight:700;letter-spacing:-.02em}
.stat .l{font-size:12px;color:var(--mute);margin-top:2px}
.chart-box{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}
.chart-inner{height:190px}
.chart-row{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}
.chart-row .chart-box{flex:0 0 84%;scroll-snap-align:start}
.chart-row .chart-inner{height:150px}
@media(min-width:768px){
.chart-row{overflow:visible}
.chart-row .chart-box{flex:1 1 0}
}
.table-wrap{overflow-x:auto}
table{width:100%;border-collapse:collapse;min-width:460px}
th{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);padding:9px 12px;border-bottom:1px solid var(--line)}
td{padding:11px 12px;border-bottom:1px solid var(--line);font-size:13.5px}
tr:last-child td{border-bottom:none}
.td-sub{font-family:var(--mono);font-size:11px;color:var(--mute)}
.td-mono{font-family:var(--mono);font-size:12.5px}
.tabs-h{display:flex;overflow-x:auto;border-bottom:1px solid var(--line);margin-bottom:18px}
.tab-h{text-decoration:none;padding:12px 2px;margin-right:20px;font-size:13.5px;color:var(--mute);border-bottom:2px solid transparent;white-space:nowrap;min-height:44px}
.tab-h.on{color:var(--ink);border-color:var(--accent)}
.audit{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.audit-row{display:flex;justify-content:space-between;gap:12px;padding:10px 13px;border-bottom:1px solid var(--line);font-size:12.5px}
.audit-row:last-child{border-bottom:none}
.audit-row span{color:var(--mute);flex:none}
.audit-row b{font-family:var(--mono);font-size:11.5px;font-weight:500;text-align:right;word-break:break-all}
.code{background:var(--panel-2);border-radius:10px;padding:12px 14px;font-family:var(--mono);font-size:11.5px;
  color:var(--slate);white-space:pre-wrap;line-height:1.6;word-break:break-all}
.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.kv{display:flex;justify-content:space-between;font-size:12.5px;color:var(--slate);gap:10px}
.kv b{font-family:var(--mono);color:var(--ink)}
.facts{display:flex;gap:30px;flex-wrap:wrap;margin-top:18px}
.facts .n{font-family:var(--mono);font-size:22px;margin-top:4px}
.facts .n.sm{font-size:15px}
.logo{display:inline-flex;align-items:center;gap:9px;line-height:1}
.logo-mark{width:30px;height:30px;border-radius:9px;flex:none;
  background:linear-gradient(140deg,var(--accent-lt),var(--accent) 55%,#0C4A63);
  display:flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(20,120,166,.35)}
.logo-mark .ico{width:17px;height:17px;stroke:none;fill:#fff}
.logo-wm{font-weight:750;font-size:15.5px;letter-spacing:-.03em}
.logo-wm i{font-style:normal;font-weight:500;opacity:.55}
.logo-sm .logo-mark{width:24px;height:24px;border-radius:7px}
.logo-sm .logo-mark .ico{width:14px;height:14px}
.logo-sm .logo-wm{font-size:13.5px}
.avatar-brand{background:linear-gradient(140deg,var(--accent),#0E4F68)!important;color:#fff!important;
  font-weight:700;letter-spacing:.03em;box-shadow:0 2px 8px rgba(20,120,166,.35)}
.avatar-sm{width:32px;height:32px;font-size:11px;border-radius:50%}
.avatar-xs{width:28px;height:28px;font-size:11px;border-radius:50%}
.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:38px}
.langsel{display:flex;align-items:center;gap:1px;padding:2px;border-radius:999px;
  background:rgba(255,255,255,.04);border:1px solid var(--line)}
.langsel .ico{width:12px;height:12px;margin:0 3px 0 7px;stroke:var(--mute)}
.langsel button{font-family:var(--mono);font-size:10px;padding:7px 9px;border-radius:999px;color:var(--mute);letter-spacing:.03em;min-height:44px;display:flex;align-items:center}
.langsel button.on{background:rgba(255,255,255,.1);color:var(--ink)}
.g{padding:28px 0 30px;text-align:center;position:relative;isolation:isolate}
.g:before{content:"";position:absolute;top:-160px;left:50%;transform:translateX(-50%);
  width:100vw;height:760px;pointer-events:none;z-index:-2;
  background:
    radial-gradient(ellipse 46% 38% at 50% 16%, color-mix(in srgb,var(--accent) 42%,transparent), transparent 70%),
    radial-gradient(ellipse 34% 30% at 22% 4%, color-mix(in srgb,var(--accent-lt) 26%,transparent), transparent 68%),
    radial-gradient(ellipse 30% 28% at 80% 10%, color-mix(in srgb,#7B5BE0 24%,transparent), transparent 66%);
  filter:blur(14px);opacity:.85}
.g:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);pointer-events:none;z-index:-1;
  background-image:linear-gradient(135deg,rgba(120,195,230,.5) 0 1px,transparent 1px);
  background-size:6px 6px;opacity:.5;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.5) 45%,transparent 78%);
  mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.5) 45%,transparent 78%)}
.g>*{position:relative;z-index:1}
.pill{display:inline-flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line-lt);
  border-radius:999px;padding:7px 14px 7px 8px;font-size:12.5px;color:var(--slate);margin-bottom:22px}
.pill i{width:6px;height:6px;border-radius:50%;background:var(--green)}
.g-h{font-weight:750;letter-spacing:-.045em;line-height:1.04;font-size:clamp(32px,8.4vw,42px);max-width:16ch;margin:0 auto}
@media(min-width:768px){
.g-h{font-size:clamp(44px,4.6vw,58px);max-width:15ch}
}
.g-h span{color:var(--accent-lt)}
.g-sub{margin:18px auto 0;max-width:52ch;color:var(--slate);font-size:16px}
@media(min-width:768px){
.g-sub{font-size:17.5px}
}
.g-cta{max-width:420px;margin:28px auto 0}
.g-note{margin-top:14px;font-family:var(--mono);font-size:11.5px;color:var(--mute)}
.hatchband{height:84px;width:100vw;margin-left:calc(50% - 50vw);position:relative;overflow:hidden}
.hatchband:before{content:"";position:absolute;inset:0;
  background-image:linear-gradient(135deg,rgba(120,195,230,.5) 0 1px,transparent 1px);
  background-size:6px 6px;opacity:.55;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 28%,#000 72%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 28%,#000 72%,transparent)}
.tickstrip{height:14px;width:100%;
  background-image:repeating-linear-gradient(90deg,var(--line-lt) 0 1px,transparent 1px 11px),
                   repeating-linear-gradient(90deg,var(--mute) 0 1.5px,transparent 1.5px 55px);
  background-repeat:repeat-x;background-size:auto 6px,auto 12px;background-position-y:bottom;opacity:.65}
.g-facts{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
@media(min-width:768px){
.g-facts{grid-template-columns:repeat(3,1fr)}
}
.g-facts div{background:var(--bg);padding:20px}
.g-facts b{display:block;font-family:var(--mono);font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.g-facts span{font-size:13px;color:var(--mute)}
.foot{background:var(--panel);border-top:1px solid var(--line);color:#8890A6;padding:32px 0 24px}
.foot .wrap{max-width:1120px;display:flex;flex-direction:column;gap:16px}
.foot-links{display:flex;flex-wrap:wrap;gap:16px 22px;font-size:12.5px}
.foot-links button{color:#C3C8DA;border-bottom:1px solid rgba(255,255,255,.16);padding-bottom:1px;min-height:44px}
.foot-legal{font-size:11.5px;line-height:1.7;color:#666D82;max-width:820px}
.foot-legal b{color:#9BA2B8;font-weight:600}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:10.5px;color:#565D72;padding-top:16px;border-top:1px solid var(--line)}
.prose{max-width:70ch;color:var(--slate);font-size:14px;line-height:1.75;white-space:pre-line}
.prov{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:44px 20px;position:relative;overflow:hidden;text-align:center}
.prov:before{content:"";position:absolute;top:2%;left:50%;transform:translateX(-50%);width:620px;height:420px;
  background:radial-gradient(ellipse at 50% 40%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 68%);pointer-events:none}
.prov>*{position:relative;z-index:2}
.ring-wrap{position:relative;width:172px;height:172px;margin-bottom:30px}
.ring-wrap svg{transform:rotate(-90deg);width:100%;height:100%}
.ring-bg{fill:none;stroke:var(--panel-3);stroke-width:7}
.ring-fg{fill:none;stroke:url(#rg);stroke-width:7;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.3,.9,.3,1)}
.ring-txt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.ring-txt b{font-size:40px;font-weight:750;letter-spacing:-.045em;line-height:1}
.ring-txt b i{font-style:normal;font-size:19px;font-weight:600;color:var(--mute);margin-left:2px}
.ring-txt span{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.prov-h{font-weight:750;letter-spacing:-.03em;font-size:clamp(20px,5.4vw,25px)}
.prov-addr{font-family:var(--mono);font-size:12.5px;margin-top:7px;color:var(--accent)}
.res-list{width:100%;max-width:380px;margin-top:26px;text-align:left;display:flex;flex-direction:column}
.res{display:flex;align-items:center;gap:12px;padding:12px 2px;border-bottom:1px solid var(--line);transition:opacity .4s}
.res:last-child{border-bottom:none}
.res-mark{width:22px;height:22px;border-radius:50%;flex:none;border:2px solid var(--line-lt);
  display:flex;align-items:center;justify-content:center;transition:background .35s,border-color .35s,transform .35s}
.res-mark .ico{width:11px;height:11px;stroke:#fff;stroke-width:3.4;stroke-dasharray:22;stroke-dashoffset:22;transition:stroke-dashoffset .4s .1s}
.res-nm{flex:1;min-width:0;font-size:13.5px;color:var(--mute);transition:color .35s}
.res-ms{font-family:var(--mono);font-size:10.5px;color:var(--line-lt);transition:color .35s}
.res.on .res-mark{background:var(--accent);border-color:var(--accent);transform:scale(1.06)}
.res.on .res-mark .ico{stroke-dashoffset:0}
.res.on .res-nm{color:var(--ink);font-weight:550}
.res.on .res-ms{color:var(--mute)}
.res.now .res-mark{border-color:var(--accent);border-top-color:transparent;animation:spin .7s linear infinite}
@keyframes spin{
to{transform:rotate(360deg)}
}
.mid-wrap{min-height:100svh;display:flex;align-items:center;justify-content:center;padding:40px 24px}
.mid-card{width:100%;max-width:400px}
.mid-h{font-weight:750;font-size:22px;letter-spacing:-.02em;text-align:center;margin-top:16px}
.mid-s{text-align:center;color:var(--mute);font-size:13.5px;margin:6px 0 24px}
.mid-note{text-align:center;margin-top:14px}
.mid-mark{width:58px;height:58px;border-radius:18px;background:var(--panel-2);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;margin:0 auto 4px}
.mid-mark .ico{width:24px;height:24px;color:var(--amber)}
.link-sm{text-decoration:none;font-size:13px;color:var(--accent);text-align:center;display:block;margin-top:6px;width:100%;min-height:44px}
.paper{background:var(--paper);color:var(--paper-ink);border-radius:12px;overflow:hidden;border:1px solid var(--paper-line)}
.paper .p-hd{display:flex;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:2px solid var(--paper-ink)}
.paper .p-hd b{font-size:15.5px;font-weight:700}
.paper .p-hd .sm{font-size:12.5px;color:var(--paper-mute)}
.paper .p-hd .mono{font-family:var(--mono);font-size:10.5px;color:var(--paper-mute);text-align:right;letter-spacing:.06em}
.paper .p-li{display:flex;justify-content:space-between;gap:12px;padding:11px 20px;border-bottom:1px solid var(--paper-line);font-size:13.5px}
.paper .p-li b{font-family:var(--mono);font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.paper .p-tot{display:flex;justify-content:space-between;align-items:baseline;padding:15px 20px;background:var(--paper-2);border-top:2px solid var(--paper-ink)}
.paper .p-tot .l{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-mute)}
.paper .p-tot .n{font-family:var(--mono);font-size:26px;font-weight:700;letter-spacing:-.02em}
.pub{min-height:100svh;padding:20px 0 40px}
.pub-wrap{width:100%;max-width:560px;margin:0 auto;padding:0 18px}
.pub-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;max-width:560px;margin:0 auto}
.pub-h{font-weight:750;font-size:22px;letter-spacing:-.025em;margin:4px 0 16px}
.sig-band{display:flex;align-items:center;gap:11px;padding:14px;border-radius:12px;
  background:var(--green-dim);border:1px solid rgba(34,197,142,.28);margin-bottom:16px}
.sig-band .ic{width:34px;height:34px;border-radius:9px;background:var(--green);flex:none;display:flex;align-items:center;justify-content:center}
.sig-band .ic .ico{width:17px;height:17px;stroke:#fff;stroke-width:2.6}
.sig-band b{font-size:13.5px;display:block}
.sig-band span{font-size:12px;color:var(--slate)}
.sig-pad{background:var(--paper);border:1.5px dashed var(--paper-line);border-radius:12px;height:150px;position:relative;touch-action:none;margin-bottom:10px}
.sig-pad canvas{width:100%;height:100%;display:block;border-radius:12px}
.sig-pad .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:var(--paper-mute);font-size:13px;pointer-events:none}
.sig-canvas{background:var(--paper);border:1px solid var(--paper-line);border-radius:10px;padding:18px 16px;margin-bottom:14px}
.sig-canvas .mark{font-family:"Segoe Script","Bradley Hand",cursive;font-size:30px;color:var(--paper-ink);
  border-bottom:1.5px solid var(--paper-line);padding-bottom:8px;margin-bottom:8px}
.sig-canvas .who{font-size:11.5px;color:var(--paper-mute);font-family:var(--mono)}
.consent{display:flex;gap:11px;align-items:flex-start;padding:13px;border-radius:11px;background:var(--panel-2);margin-bottom:14px;text-align:left;width:100%;min-height:44px}
.consent .box{width:19px;height:19px;border-radius:5px;border:1.5px solid var(--line-lt);flex:none;display:flex;align-items:center;justify-content:center}
.consent.on .box{background:var(--accent);border-color:var(--accent)}
.consent .box .ico{width:11px;height:11px;stroke:#fff;stroke-width:3.2;opacity:0}
.consent.on .box .ico{opacity:1}
.consent span{font-size:12.5px;color:var(--slate);line-height:1.5}
.pf-hero{border-radius:16px;overflow:hidden;border:1px solid var(--line);margin-bottom:16px}
.pf-hero .hd{padding:22px 18px;background:linear-gradient(140deg,var(--accent),#0C4A63);color:#fff}
.pf-hero .hd b{font-size:20px;font-weight:750;letter-spacing:-.02em;display:block}
.pf-hero .hd span{font-family:var(--mono);font-size:11.5px;opacity:.85}
.pf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:var(--line)}
@media(min-width:600px){
.pf-grid{grid-template-columns:repeat(3,1fr)}
}
.pf-cell{aspect-ratio:1;position:relative;display:flex;align-items:flex-end;padding:8px}
.pf-cell span{font-family:var(--mono);font-size:9.5px;color:#fff;background:rgba(0,0,0,.4);border-radius:5px;padding:2px 6px}
.appgrid{display:flex;min-height:100svh}
.sidebar{display:none}
@media(min-width:768px){
.sidebar{display:flex;flex-direction:column;width:220px;flex:none;background:var(--panel);border-right:1px solid var(--line);
    padding:20px 14px;gap:2px;position:sticky;top:0;height:100svh;overflow-y:auto;transition:width .2s}
.sidebar.mini{width:70px}
.sidebar.mini .side-link span:last-child, .sidebar.mini .logo-wm, .sidebar.mini .side-sec, .sidebar.mini .nm{display:none}
.sidebar.mini .side-link{justify-content:center}
}
.sidebar .brand{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:6px 6px 18px}
.side-link{text-decoration:none;display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:10px;font-size:13.5px;color:var(--slate);width:100%;text-align:left;min-height:44px}
.side-link.on{background:var(--panel-2);color:var(--ink)}
.side-link .ico{width:17px;height:17px}
.side-sec{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);padding:12px 12px 6px}
.side-plat{background:var(--plat-dim);border-radius:12px;padding:4px;margin-top:8px}
.side-plat .side-link.on{background:rgba(147,51,234,.22);color:#7A2CB8}
.side-plat .side-sec{color:#9333EA}
.side-cta{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 12px;padding:11px 12px;
  border-radius:10px;background:var(--accent);color:#fff;font-size:13.5px;font-weight:650;min-height:44px}
.side-cta:hover{filter:brightness(1.06)}
.side-cta .ico{width:16px;height:16px;stroke-width:2.6}
.side-account{display:flex;align-items:center;gap:9px;padding:10px;border-radius:10px;margin-top:auto;
  border-top:1px solid var(--line);padding-top:16px;min-height:44px}
.side-account .nm{flex:1;min-width:0;text-align:left}
.side-account .nm b{font-size:13px;font-weight:650;display:block}
.side-account .nm span{font-size:11px;color:var(--mute)}
.main-area{flex:1;min-width:0;padding-bottom:96px;position:relative}
@media(min-width:768px){
.main-area{padding-bottom:0}
}
.topbar-app{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:12px;
  background:var(--panel);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40}
.avatar-btn{display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;border-radius:999px;
  background:var(--panel-2);border:1px solid var(--line);min-height:44px}
.impersonate-bar{background:var(--plat);color:#fff;display:flex;align-items:center;justify-content:space-between;
  padding:9px 16px;font-family:var(--mono);font-size:12px;position:sticky;top:0;z-index:60}
.impersonate-bar button{text-decoration:underline;min-height:44px}
.maint-bar{background:var(--amber);color:#2A1B00;display:flex;align-items:center;gap:8px;justify-content:center;
  padding:8px 16px;font-family:var(--mono);font-size:11.5px}
.bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;justify-content:space-around;
  background:linear-gradient(180deg,#12617F,#0E4F68);box-shadow:0 -6px 24px rgba(14,79,104,.28);
  padding:8px 4px calc(8px + env(safe-area-inset-bottom))}
.nav-item{text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 10px;border-radius:12px;position:relative;
  color:rgba(255,255,255,.62);min-width:44px;min-height:44px;justify-content:center}
.nav-item.on{color:#fff}
.nav-item.on:before{content:"";position:absolute;top:-8px;left:50%;transform:translateX(-50%);
  width:26px;height:3px;border-radius:0 0 3px 3px;background:#7FD4F5}
.nav-item span{font-family:var(--mono);font-size:9.5px}
.nav-badge{position:absolute;top:2px;right:6px;min-width:15px;height:15px;border-radius:8px;background:var(--amber);
  color:#2A1B00;font-size:9px;font-family:var(--mono);display:flex;align-items:center;justify-content:center;padding:0 4px;font-style:normal}
@media(min-width:768px){
.bottomnav{display:none}
}
.fab{position:fixed;right:18px;bottom:92px;z-index:55;width:56px;height:56px;border-radius:16px;background:var(--accent);
  display:flex;align-items:center;justify-content:center;box-shadow:0 10px 26px rgba(20,120,166,.45)}
.fab .ico{stroke:#fff;stroke-width:2}
@media(min-width:768px){
.fab{position:absolute;bottom:28px;right:28px}
}




.scrim{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:900;backdrop-filter:blur(2px)}
.bsheet{position:fixed;left:0;right:0;bottom:0;z-index:910;background:var(--panel);border-radius:22px 22px 0 0;
  box-shadow:var(--sh3);padding-bottom:calc(6px + env(safe-area-inset-bottom));height:56svh;
  display:flex;flex-direction:column;border-top:1px solid var(--line-lt);transition:height .28s cubic-bezier(.3,.9,.3,1)}
.bsheet.full{height:94svh}
.bsheet .handle{padding:12px 0 6px;display:flex;justify-content:center;cursor:grab;touch-action:none}
.bsheet .handle i{width:38px;height:4px;border-radius:3px;background:var(--line-lt);display:block}
.bsheet-title{font-weight:700;font-size:18px;letter-spacing:-.02em;padding:2px 20px 14px}
.bsheet-body{overflow-y:auto;padding:0 20px 18px;-webkit-overflow-scrolling:touch;flex:1}
.bsheet-foot{border-top:1px solid var(--line);padding:14px 20px}
@media(min-width:768px){
.bsheet, .bsheet.full{left:auto;right:0;top:0;bottom:0;width:480px;height:100svh;border-radius:0;
    border-left:1px solid var(--line-lt);border-top:none}
.bsheet .handle{display:none}
.bsheet-title{padding-top:24px}
}
.toast-zone{position:fixed;top:calc(10px + env(safe-area-inset-top));left:0;right:0;z-index:950;display:flex;justify-content:center;padding:0 16px;pointer-events:none}
.toast{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line-lt);
  border-radius:12px;padding:12px 16px;box-shadow:var(--sh3);font-size:13.5px;max-width:420px;width:100%}
.toast.ok .ico{color:var(--green)}
.toast.err .ico{color:var(--red)}
.toast{pointer-events:auto}
.toast-x{margin-left:4px;color:var(--mute);display:flex;align-items:center;padding:2px}
.toast-x .ico{width:14px;height:14px;color:var(--mute)}
.price-box{background:var(--panel-2);border-radius:12px;padding:16px;margin-bottom:14px}
.price-row{display:flex;justify-content:space-between;font-size:13.5px;padding:5px 0;color:var(--slate)}
.price-row.tot{border-top:1px solid var(--line);margin-top:8px;padding-top:10px;color:var(--ink);font-weight:650}
.price-row.tot b{font-family:var(--mono);font-size:19px}
.incl{display:flex;align-items:center;gap:9px;padding:7px 0;font-size:13px;color:var(--slate)}
.incl .ico{width:14px;height:14px;stroke:var(--green);stroke-width:2.6}
.qr-box{background:#fff;border-radius:14px;padding:16px;display:flex;justify-content:center;margin-bottom:12px;min-height:212px}
.qr-box img, .qr-box svg{display:block;width:180px;height:180px}
.copy-row{display:flex;gap:8px;align-items:center;margin-bottom:12px}
.copy-row .code{flex:1;min-width:0;max-height:66px;overflow:hidden}
.plan-card{background:linear-gradient(135deg,var(--panel-2),var(--panel));border:1px solid var(--line-lt);border-radius:16px;padding:20px}
.pay-note{display:flex;gap:12px;align-items:flex-start;padding:16px;margin-bottom:14px}
.pay-note .ico{color:var(--accent)}
.wz-bar{display:flex;align-items:center;gap:8px;padding:0 0 14px}
.wz-seg{flex:1;height:4px;border-radius:2px;background:var(--panel-3);overflow:hidden}
.wz-seg i{display:block;height:100%;width:0;border-radius:2px;background:var(--accent);transition:width .45s ease}
.wz-seg.done i, .wz-seg.now i{width:100%}
.wz-seg.now i{background:linear-gradient(90deg,var(--accent),var(--accent-lt))}
.wz-step{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);flex:none}
.wz-h{font-size:19px;font-weight:750;letter-spacing:-.025em;padding:0 0 4px}
.wz-sub{font-size:13px;color:var(--mute);margin-bottom:18px}
.pick{display:flex;flex-direction:column;gap:9px;margin-bottom:6px}
.pick button{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:13px;
  background:var(--panel-2);border:1.5px solid var(--line);text-align:left;transition:.2s;min-height:44px}
.pick button.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--panel-2))}
.pick .ic{width:36px;height:36px;border-radius:10px;background:var(--panel-3);flex:none;display:flex;align-items:center;justify-content:center;color:var(--accent)}
.pick .ic .ico{width:17px;height:17px;stroke-width:1.9}
.pick .tx{flex:1;min-width:0}
.pick .tx b{font-size:14px;font-weight:650;display:block}
.pick .tx span{font-size:12px;color:var(--mute)}
.pick .chk{width:20px;height:20px;border-radius:50%;border:2px solid var(--line-lt);flex:none;display:flex;align-items:center;justify-content:center}
.pick button.on .chk{background:var(--accent);border-color:var(--accent)}
.pick .chk .ico{width:10px;height:10px;stroke:#fff;stroke-width:3.4;opacity:0}
.pick button.on .chk .ico{opacity:1}
.wz-item{display:flex;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.wz-item:last-of-type{border-bottom:none}
.wz-item .del{width:44px;height:44px;border-radius:8px;color:var(--mute);flex:none;display:flex;align-items:center;justify-content:center}
.wz-rev{background:var(--panel-2);border-radius:14px;padding:16px;margin-bottom:14px}
.wz-rev .r{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:13px;color:var(--slate)}
.wz-rev .r b{color:var(--ink);font-weight:600;text-align:right}
.wz-rev .tot{border-top:1px solid var(--line);margin-top:8px;padding-top:12px;display:flex;justify-content:space-between;align-items:baseline}
.wz-rev .tot span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.wz-rev .tot b{font-variant-numeric:tabular-nums;font-weight:800;font-size:23px;letter-spacing:-.03em}
.wz-nav{display:flex;gap:10px}
.wz-nav .back{flex:none;width:52px}
.drop{aspect-ratio:16/10;background:var(--panel-2);border:1.5px dashed var(--line-lt);border-radius:12px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--mute);margin-bottom:16px}
@media(min-width:768px){
  .adminshell{overflow-x:auto}
  .adminshell .appgrid{min-width:1024px}
  .adminshell .sidebar{display:flex;flex-direction:column;position:sticky;top:0;width:220px;flex:none;
    background:var(--panel);border-right:1px solid var(--line);padding:20px 14px;gap:2px;height:100svh;overflow-y:auto}
  .adminshell .sidebar.mini{width:70px}
}
