/* =========================================================
   LDXT CLOUD · Design Preview
   Static prototype styles (no framework, no external assets)
   ========================================================= */

:root{
  --bg:#060a11;
  --bg-2:#0a111c;
  --panel:#0d1624;
  --panel-2:#111c2d;
  --panel-3:#152135;
  --text:#eef5ff;
  --text-2:#b8c5d9;
  --muted:#8290a7;
  --muted-2:#5d6a80;
  --line:rgba(151,177,217,.13);
  --line-2:rgba(151,177,217,.22);
  --cyan:#65e9ff;
  --cyan-2:#2bc9f5;
  --blue:#578bff;
  --violet:#8b7cff;
  --green:#42e3a1;
  --amber:#ffc465;
  --red:#ff7285;
  --font:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif;
  --font-num:"Bahnschrift","DIN Alternate","Segoe UI",Consolas,monospace;
  --radius:18px;
  --shadow:0 24px 70px rgba(0,0,0,.34);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;max-width:100%;overflow-x:clip}
body{
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(1100px 700px at 78% -16%, rgba(50,205,245,.11), transparent 62%),
    radial-gradient(900px 650px at 2% 24%, rgba(124,99,255,.09), transparent 64%),
    var(--bg);
  -webkit-font-smoothing:antialiased;
  font-size:14px;
  line-height:1.55;
}
body.grid-bg:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background-image:
    linear-gradient(rgba(150,180,220,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(150,180,220,.045) 1px,transparent 1px);
  background-size:78px 78px;
  mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.65) 55%,transparent 100%);
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(101,233,255,.24);color:#fff}
[hidden]{display:none!important}

.container{width:min(1400px,calc(100% - 96px));margin:0 auto}
.icon{width:18px;height:18px;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px;flex:0 0 auto}
.mono{font-family:var(--font-num);font-variant-numeric:tabular-nums}
.muted{color:var(--muted)}
.tiny{font-size:11px}

/* ---------------- Brand / buttons / generic ---------------- */
.brand{display:inline-flex;align-items:center;gap:11px;flex:0 0 auto}
.brand-mark{
  width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#04111d;
  background:linear-gradient(145deg,#a0f6ff 0%,#5ee7ff 38%,#4a8dff 72%,#927dff 100%);
  box-shadow:0 0 0 1px rgba(255,255,255,.16) inset,0 10px 30px rgba(58,201,255,.22);
  position:relative;overflow:hidden;
}
.brand-mark:after{content:"";position:absolute;left:-20%;top:-85%;width:140%;height:100%;background:rgba(255,255,255,.34);transform:rotate(24deg)}
.brand-mark svg{width:22px;height:22px;position:relative;z-index:1;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.brand-copy{display:flex;flex-direction:column;line-height:1.04}
.brand-copy strong{font-size:19px;letter-spacing:.09em;font-weight:800}
.brand-copy small{font-size:8px;letter-spacing:.18em;color:var(--muted);margin-top:4px;font-weight:600}
.brand.light .brand-copy strong{color:#fff}

.btn{
  border:1px solid transparent;border-radius:10px;height:40px;padding:0 16px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-size:13px;font-weight:650;letter-spacing:.01em;white-space:nowrap;
  transition:.18s ease;color:var(--text);background:transparent;
}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn-primary{
  color:#03111d;
  background:linear-gradient(135deg,#9af4ff 0%,#5ce7ff 45%,#36c5f4 100%);
  box-shadow:0 10px 28px rgba(48,208,244,.23),0 0 0 1px rgba(255,255,255,.16) inset;
}
.btn-primary:hover{box-shadow:0 14px 36px rgba(48,208,244,.3),0 0 0 1px rgba(255,255,255,.22) inset}
.btn-ghost{background:rgba(255,255,255,.025);border-color:var(--line-2);color:var(--text-2)}
.btn-ghost:hover{color:#fff;border-color:rgba(151,196,255,.4);background:rgba(255,255,255,.05)}
.btn-soft{background:rgba(101,233,255,.09);border-color:rgba(101,233,255,.18);color:#9aefff}
.btn-soft:hover{background:rgba(101,233,255,.14)}
.btn-lg{height:52px;padding:0 24px;border-radius:13px;font-size:14px}
.btn-sm{height:32px;padding:0 11px;border-radius:8px;font-size:12px}
.btn-block{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none;transform:none}
.icon-btn{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--text-2)}
.icon-btn:hover{color:#fff;border-color:var(--line-2);background:rgba(255,255,255,.05)}

.badge{display:inline-flex;align-items:center;gap:6px;height:24px;border-radius:999px;padding:0 9px;font-size:10.5px;font-weight:650;white-space:nowrap;border:1px solid transparent}
.badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.badge-idle{color:#5ff0ba;background:rgba(66,227,161,.08);border-color:rgba(66,227,161,.17)}
.badge-busy{color:#88b3ff;background:rgba(87,139,255,.1);border-color:rgba(87,139,255,.2)}
.badge-paused{color:var(--amber);background:rgba(255,196,101,.09);border-color:rgba(255,196,101,.2)}
.badge-muted{color:var(--muted);background:rgba(255,255,255,.04);border-color:var(--line)}
.badge-danger{color:var(--red);background:rgba(255,114,133,.09);border-color:rgba(255,114,133,.2)}

/* ---------------- Landing header ---------------- */
.site-header{
  position:fixed;left:0;top:0;right:0;z-index:60;height:82px;
  background:linear-gradient(180deg,rgba(6,10,17,.94),rgba(6,10,17,.7));
  border-bottom:1px solid rgba(151,177,217,.1);
  backdrop-filter:blur(18px);
}
.site-header .container{height:100%;display:flex;align-items:center;gap:30px}
.site-nav{display:flex;align-items:center;gap:30px;margin-left:38px}
.site-nav a{font-size:13px;color:#8593a9;position:relative;padding:8px 0;transition:.18s}
.site-nav a:hover,.site-nav a.active{color:#fff}
.site-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--cyan),transparent)}
.header-actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.header-login{font-size:13px;color:#aebbd0;padding:0 10px}
.header-login:hover{color:#fff}
.header-sep{width:1px;height:18px;background:var(--line);margin:0 2px}

/* ---------------- Landing ---------------- */
.home-main{min-height:100vh;padding-top:82px;overflow:hidden;position:relative}
.home-main:before{
  content:"";position:absolute;inset:82px 0 auto 0;height:720px;pointer-events:none;
  background:radial-gradient(700px 420px at 69% 34%,rgba(48,208,244,.12),transparent 70%);
}
.hero{
  position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:38px;
  align-items:center;min-height:650px;padding-top:26px;
}
.eyebrow{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.16em;color:#83dff0;font-weight:700}
.eyebrow .pulse{position:relative;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(66,227,161,.8)}
.eyebrow .pulse:after{content:"";position:absolute;inset:-4px;border:1px solid rgba(66,227,161,.35);border-radius:50%;animation:pulse 2.4s infinite}
@keyframes pulse{0%{transform:scale(.6);opacity:1}70%{transform:scale(2.2);opacity:0}100%{opacity:0}}
.hero-copy{padding:8px 0 0 4px}
.hero h1{
  font-size:clamp(60px,5.1vw,82px);line-height:1.025;letter-spacing:-.062em;font-weight:820;
  margin:23px 0 20px;max-width:690px;
}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(100deg,#b7f8ff 0%,#61e8ff 35%,#7ab4ff 70%,#a894ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 26px rgba(80,213,255,.15));
}
.hero-sub{max-width:522px;color:#93a1b7;font-size:14.5px;line-height:1.95;margin:0}
.hero-actions{display:flex;align-items:center;gap:11px;margin-top:30px;flex-wrap:wrap}
.hero-note{display:flex;align-items:center;gap:8px;margin-top:14px;color:#65748b;font-size:11px}
.hero-note .icon{width:14px;height:14px;color:#7c8da8}
.hero-proof{display:flex;gap:26px;margin-top:42px;padding-top:20px;border-top:1px solid var(--line);max-width:555px}
.proof-item{display:flex;gap:9px;align-items:flex-start;min-width:0}
.proof-icon{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:rgba(101,233,255,.06);border:1px solid rgba(101,233,255,.1);color:#82e8fa;flex:0 0 auto}
.proof-icon .icon{width:15px;height:15px}
.proof-item b{display:block;font-size:11.5px;color:#dce7f7;font-weight:600;margin-bottom:1px}
.proof-item span{display:block;font-size:9.5px;color:#65748b;white-space:nowrap}

/* Hero product visual */
.hero-visual{position:relative;height:560px;display:flex;align-items:center;justify-content:center;perspective:1200px}
.stage-glow{position:absolute;width:580px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(52,207,244,.16),rgba(82,92,255,.06) 48%,transparent 70%);filter:blur(18px)}
.stage-ring{position:absolute;width:580px;height:580px;border:1px solid rgba(130,182,255,.09);border-radius:50%;transform:rotate(-18deg)}
.stage-ring:before,.stage-ring:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(130,182,255,.06)}
.stage-ring:before{inset:66px}.stage-ring:after{inset:132px}
.hero-browser{
  position:relative;width:100%;max-width:650px;border-radius:22px;overflow:hidden;
  border:1px solid rgba(179,210,255,.17);background:#0a111d;
  box-shadow:0 45px 100px rgba(0,0,0,.55),0 0 0 1px rgba(0,0,0,.35) inset;
  transform:rotate(-1.2deg);
}
.browser-bar{height:38px;display:flex;align-items:center;gap:7px;padding:0 14px;background:#0c1420;border-bottom:1px solid rgba(151,177,217,.1)}
.browser-dot{width:6px;height:6px;border-radius:50%;background:#334157}
.browser-dot:nth-child(1){background:#ff7285}.browser-dot:nth-child(2){background:#ffc465}.browser-dot:nth-child(3){background:#42e3a1}
.browser-url{margin-left:8px;height:23px;flex:1;border-radius:6px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.045);display:flex;align-items:center;gap:6px;padding:0 9px;font:9px var(--font-num);color:#7b8ba3;overflow:hidden;white-space:nowrap}
.browser-url .lock{color:#5ce7b4}
.browser-stage{height:410px;position:relative;overflow:hidden;background:#0a1017}
.browser-stage>img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.8) contrast(1.06);transform:scale(1.03)}
.browser-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,9,16,.58),transparent 33%,transparent 64%,rgba(4,9,16,.72))}
.mini-control{
  position:absolute;z-index:2;left:14px;right:14px;top:14px;height:54px;border-radius:12px;
  background:rgba(7,13,22,.76);border:1px solid rgba(193,221,255,.16);backdrop-filter:blur(14px);
  box-shadow:0 10px 30px rgba(0,0,0,.28);display:flex;align-items:center;padding:0 11px;gap:10px;
}
.mini-machine{display:flex;align-items:center;gap:8px;min-width:0}
.mini-num{width:27px;height:27px;border-radius:7px;background:linear-gradient(145deg,rgba(101,233,255,.18),rgba(82,139,255,.12));border:1px solid rgba(101,233,255,.24);display:grid;place-items:center;font:700 10px var(--font-num);color:#9bf2ff}
.mini-machine b{display:block;font-size:10.5px;line-height:1.15;color:#e6f0ff}
.mini-machine span{display:flex;align-items:center;gap:4px;font-size:8px;color:#69e8b4;margin-top:2px}
.mini-machine span i{width:4px;height:4px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green)}
.mini-timer{margin-left:auto;text-align:right}
.mini-timer small{display:block;font-size:7px;letter-spacing:.13em;color:#72839b;margin-bottom:1px}
.mini-timer b{font:600 19px var(--font-num);letter-spacing:.03em;color:#fff}
.mini-actions{display:flex;gap:5px;margin-left:10px}
.mini-btn{width:27px;height:27px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);display:grid;place-items:center;color:#9babc0}
.mini-btn .icon{width:12px;height:12px}
.mini-btn.danger{color:#ff8ea0;border-color:rgba(255,114,133,.16);background:rgba(255,114,133,.07)}
.browser-bottom{position:absolute;z-index:2;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:9px}
.browser-pill{height:28px;border-radius:8px;display:inline-flex;align-items:center;gap:6px;padding:0 9px;background:rgba(5,11,19,.68);border:1px solid rgba(203,226,255,.13);font-size:8.5px;color:#a9b9cd;backdrop-filter:blur(10px)}
.browser-pill .icon{width:12px;height:12px;color:#65e9ff}
.browser-pill strong{font-weight:600;color:#dce9fa}
.browser-pill.right{margin-left:auto;color:#7fe9be}
.float-card{
  position:absolute;z-index:5;border-radius:13px;background:rgba(11,20,33,.9);
  border:1px solid rgba(173,207,255,.16);box-shadow:0 20px 50px rgba(0,0,0,.4);
  backdrop-filter:blur(18px);padding:12px 14px;
}
.float-balance{right:-7px;bottom:107px;width:188px;transform:rotate(1.6deg)}
.float-balance small{font-size:8px;letter-spacing:.12em;color:#7788a0;display:block}
.float-balance b{display:block;font:600 22px var(--font-num);color:#fff;margin:2px 0 4px;letter-spacing:.02em}
.float-balance span{display:flex;align-items:center;gap:4px;font-size:8px;color:#5ff0ba}
.float-balance span i{width:4px;height:4px;border-radius:50%;background:var(--green)}
.float-live{left:-24px;top:304px;display:flex;align-items:center;gap:9px;padding:10px 13px;transform:rotate(-2deg)}
.float-live .live-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:#71edff;background:rgba(101,233,255,.09);border:1px solid rgba(101,233,255,.14)}
.float-live b{display:block;font-size:9.5px;color:#dfeaf8}
.float-live span{display:block;font-size:7.5px;color:#66778f;margin-top:1px}

/* Features */
.home-features{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 0 36px;margin-top:-8px}
.feature-card{
  display:flex;align-items:center;gap:14px;padding:15px 17px;border-radius:14px;
  background:linear-gradient(180deg,rgba(16,27,43,.72),rgba(11,19,31,.72));
  border:1px solid var(--line);backdrop-filter:blur(8px);
}
.feature-icon{width:35px;height:35px;border-radius:9px;display:grid;place-items:center;color:#7debfd;background:rgba(101,233,255,.065);border:1px solid rgba(101,233,255,.11);flex:0 0 auto}
.feature-icon .icon{width:17px;height:17px}
.feature-card b{display:block;font-size:11.5px;color:#e2ecf9;font-weight:600;margin-bottom:2px}
.feature-card span{display:block;font-size:9.5px;color:#718097}
.home-foot{display:flex;align-items:center;justify-content:space-between;padding:15px 0 19px;border-top:1px solid rgba(151,177,217,.08);font-size:9px;color:#536177}
.home-foot .foot-links{display:flex;gap:18px}
.home-foot a:hover{color:#9ba9bd}

/* ---------------- Auth ---------------- */
.auth-page{min-height:100vh;overflow:hidden;background:#050911;position:relative}
.auth-page:before{content:"";position:fixed;inset:0;background:radial-gradient(800px 600px at 22% 38%,rgba(62,201,245,.13),transparent 65%),radial-gradient(700px 500px at 88% 5%,rgba(123,95,255,.09),transparent 65%);pointer-events:none}
.auth-top{position:relative;z-index:2;height:82px;width:min(1400px,calc(100% - 96px));margin:auto;display:flex;align-items:center;justify-content:space-between}
.auth-back{display:flex;align-items:center;gap:7px;font-size:12px;color:#8493a9}
.auth-back:hover{color:#fff}
.auth-back .icon{width:15px;height:15px;transform:rotate(180deg)}
.auth-wrap{position:relative;z-index:2;min-height:calc(100vh - 82px);display:flex;align-items:center;justify-content:center;padding:4px 32px 52px}
.auth-shell{
  width:min(1100px,100%);min-height:650px;display:grid;grid-template-columns:1.06fr .94fr;
  border-radius:28px;overflow:hidden;border:1px solid rgba(170,205,255,.14);
  box-shadow:0 50px 120px rgba(0,0,0,.5);background:#0a111b;
}
.auth-story{position:relative;overflow:hidden;padding:44px 46px;background:
  radial-gradient(620px 450px at 10% 85%,rgba(41,196,239,.14),transparent 70%),
  linear-gradient(150deg,#0d1828,#080d16 65%)}
.auth-story:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(149,184,230,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(149,184,230,.04) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(160deg,#000,transparent 82%)}
.auth-story:after{content:"";position:absolute;width:440px;height:440px;border-radius:50%;border:1px solid rgba(121,174,255,.11);right:-210px;bottom:-190px}
.auth-story>.brand{position:relative;z-index:2}
.auth-kicker{position:relative;z-index:2;margin-top:70px;font-size:9px;letter-spacing:.18em;color:#77e5f7;font-weight:700}
.auth-story h2{position:relative;z-index:2;font-size:42px;line-height:1.18;letter-spacing:-.055em;margin:16px 0 14px;font-weight:800;max-width:430px}
.auth-story h2 em{font-style:normal;background:linear-gradient(100deg,#7debfd,#9d8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.auth-story>p{position:relative;z-index:2;color:#8595ac;font-size:12px;line-height:1.9;max-width:390px;margin:0}
.auth-points{position:relative;z-index:2;display:grid;gap:12px;margin-top:34px;max-width:410px}
.auth-point{display:flex;gap:11px;align-items:center}
.auth-point i{width:28px;height:28px;border-radius:8px;border:1px solid rgba(101,233,255,.14);background:rgba(101,233,255,.06);display:grid;place-items:center;color:#7cebfc;flex:0 0 auto}
.auth-point .icon{width:14px;height:14px}
.auth-point b{display:block;font-size:10.5px;font-weight:600;color:#dce8f7}
.auth-point span{display:block;font-size:8.5px;color:#66768d;margin-top:1px}
.auth-quote{position:absolute;z-index:2;left:46px;right:46px;bottom:33px;padding-top:15px;border-top:1px solid rgba(151,177,217,.1);display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#586980;letter-spacing:.04em}
.auth-quote b{color:#91a4bc;font-weight:600}
.auth-form-panel{background:#f7f9fd;color:#162033;padding:46px 54px;display:flex;flex-direction:column;justify-content:center;position:relative}
.auth-form-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.auth-form-head h1{font-size:26px;line-height:1.25;letter-spacing:-.035em;margin:0;color:#101827}
.auth-form-head p{font-size:11px;color:#8591a5;margin:6px 0 0}
.auth-tabs{display:flex;gap:5px;padding:4px;border-radius:10px;background:#eef2f8;border:1px solid #e6ebf3;margin-top:29px}
.auth-tab{flex:1;height:36px;display:flex;align-items:center;justify-content:center;border-radius:7px;font-size:12px;color:#77849a;font-weight:600;border:0;background:transparent;font-family:inherit;cursor:pointer}
.auth-tab.active{background:#fff;color:#101827;box-shadow:0 2px 8px rgba(30,50,90,.08)}
.auth-form{margin-top:23px}
.form-field{margin-bottom:15px}
.form-field label{display:flex;align-items:center;justify-content:space-between;font-size:10.5px;color:#5c687c;font-weight:600;margin-bottom:6px}
.form-input-wrap{position:relative}
.form-input{width:100%;height:44px;border-radius:9px;border:1px solid #dfe6f0;background:#fff;padding:0 12px;color:#152033;font-size:12px;outline:none;transition:.18s}
.form-input::placeholder{color:#a9b4c5;font-size:11px}
.form-input:focus{border-color:#67d7ec;box-shadow:0 0 0 3px rgba(43,201,245,.11)}
.form-icon{position:absolute;right:12px;top:13px;color:#a0acbe;pointer-events:none}
.form-icon .icon{width:17px;height:17px}
.form-between{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#7d899c;margin:3px 0 19px}
.code-row{display:flex;gap:8px}
.code-row .form-input-wrap{flex:1}
.code-btn{flex:0 0 102px;height:44px;border-radius:9px;border:1px solid #d8e4ef;background:#f3f8fc;color:#1a8ba3;font-size:10px;font-weight:600;cursor:pointer}
.code-btn:hover{background:#eaf6fb;border-color:#b7dce7}
.auth-terms{display:flex;align-items:flex-start;gap:6px;font-size:9px;line-height:1.65;color:#8e9aab;margin:2px 0 14px}
.auth-terms input{width:13px;height:13px;accent-color:#2bc9f5;margin:1px 0 0;flex:0 0 auto}
.auth-terms a{color:#128eab;font-weight:600}
.check{display:flex;align-items:center;gap:6px;cursor:pointer}
.check input{width:13px;height:13px;accent-color:#2bc9f5;margin:0}
.auth-submit{height:46px;width:100%;border:0;border-radius:9px;font-size:12.5px;font-weight:700;color:#04131e;background:linear-gradient(135deg,#84f0ff,#43d4f4);box-shadow:0 9px 24px rgba(43,201,245,.2)}
.auth-submit:hover{filter:brightness(1.04)}
.auth-divider{display:flex;align-items:center;gap:10px;color:#a2adbd;font-size:9px;margin:18px 0 14px}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e5eaf2;flex:1}
.auth-alt{width:100%;height:42px;border-radius:9px;border:1px solid #dde5f0;background:#fff;color:#4e5b70;font-size:11.5px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:7px}
.auth-alt:hover{border-color:#b9cfe8;color:#152033}
.auth-foot{text-align:center;font-size:10px;color:#8a96a8;margin-top:22px}
.auth-foot a{color:#128eab;font-weight:700}
.auth-legal{font-size:8.5px;line-height:1.65;color:#a5b0bf;text-align:center;margin-top:16px}

/* ---------------- User app ---------------- */
.user-page{min-height:100vh;background:
  radial-gradient(900px 520px at 60% -10%,rgba(37,183,226,.08),transparent 65%),
  #070b12}
.user-header{height:74px;border-bottom:1px solid rgba(151,177,217,.1);background:rgba(7,11,18,.86);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}
.user-header .container{height:100%;display:flex;align-items:center;gap:28px;max-width:1434px}
.user-nav{display:flex;align-items:center;gap:4px;margin-left:24px}
.user-nav a{height:34px;display:flex;align-items:center;padding:0 13px;border-radius:8px;font-size:12px;color:#8190a6}
.user-nav a:hover{color:#dbe7f7;background:rgba(255,255,255,.03)}
.user-nav a.active{color:#b9f5ff;background:rgba(101,233,255,.07);box-shadow:0 0 0 1px rgba(101,233,255,.08) inset}
.user-head-right{margin-left:auto;display:flex;align-items:center;gap:10px}
.balance-chip{display:flex;align-items:center;gap:8px;height:34px;padding:0 11px;border-radius:9px;border:1px solid rgba(101,233,255,.13);background:rgba(101,233,255,.045);color:#9ceffc;font-size:11px}
.balance-chip .icon{width:14px;height:14px;opacity:.85}
.balance-chip b{font-family:var(--font-num);font-size:13px;font-weight:600;color:#dffcff;letter-spacing:.03em}
.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#3b5c86,#1e2e46);border:1px solid rgba(183,215,255,.18);font-size:10px;font-weight:700;color:#dff4ff}
.user-main{width:min(1434px,calc(100% - 64px));margin:0 auto;padding:29px 0 42px}
.user-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.user-title-row h1{font-size:24px;letter-spacing:-.035em;margin:0;font-weight:760}
.user-title-row h1 span{color:#7debfd}
.user-title-row p{color:#738198;font-size:11px;margin:6px 0 0}
.title-tools{display:flex;align-items:center;gap:9px;color:#738198;font-size:10px}
.online-pill{display:flex;align-items:center;gap:6px;height:29px;border-radius:8px;padding:0 10px;border:1px solid rgba(66,227,161,.13);background:rgba(66,227,161,.05);color:#7beec3;font-size:9.5px}
.online-pill i{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}
.wallet-grid{display:grid;grid-template-columns:1.58fr .92fr;gap:14px;margin-top:20px}
.wallet-card{
  position:relative;overflow:hidden;border-radius:18px;border:1px solid rgba(169,207,255,.14);
  background:
    radial-gradient(520px 300px at 100% -30%,rgba(70,205,250,.2),transparent 68%),
    linear-gradient(128deg,#101d30 0%,#0c1523 62%,#0a111c 100%);
  min-height:174px;padding:21px 24px;display:flex;flex-direction:column;
}
.wallet-card:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;border:1px solid rgba(145,193,255,.1);right:-95px;top:-150px}
.wallet-card:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;border:1px solid rgba(145,193,255,.07);right:-35px;top:-105px}
.wallet-head{display:flex;align-items:center;gap:9px;position:relative;z-index:1}
.wallet-head .label{font-size:10px;letter-spacing:.08em;color:#8797ae}
.wallet-head .verified{display:inline-flex;align-items:center;gap:4px;height:19px;padding:0 7px;border-radius:5px;background:rgba(101,233,255,.055);border:1px solid rgba(101,233,255,.1);color:#79e7f8;font-size:7.5px;letter-spacing:.02em}
.wallet-head .icon{width:11px;height:11px}
.wallet-balance{position:relative;z-index:1;display:flex;align-items:baseline;gap:8px;margin-top:7px}
.wallet-balance strong{font-family:var(--font-num);font-size:45px;line-height:1;font-weight:600;letter-spacing:.025em;color:#f5fbff;text-shadow:0 0 35px rgba(99,232,255,.13)}
.wallet-balance span{font-size:10px;color:#72839a}
.wallet-meta{position:relative;z-index:1;margin-top:9px;display:flex;align-items:center;gap:18px;font-size:9px;color:#718198}
.wallet-meta b{font-family:var(--font-num);font-weight:500;color:#b4c5dc;font-size:10px}
.wallet-actions{position:absolute;z-index:2;right:22px;bottom:20px;display:flex;align-items:center;gap:8px}
.wallet-actions .btn{height:32px;font-size:10.5px;padding:0 12px;border-radius:8px}
.wallet-actions .icon{width:13px;height:13px}
.wallet-deco{position:absolute;right:23px;top:20px;z-index:1;display:flex;align-items:center;gap:6px;color:#5e7088;font:8px var(--font-num);letter-spacing:.08em}
.wallet-deco i{width:4px;height:4px;border-radius:50%;background:#5ee7ff;box-shadow:0 0 8px #5ee7ff}
.redeem-card{border-radius:18px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(18,29,47,.92),rgba(11,19,31,.92));padding:19px 20px;min-height:174px;display:flex;flex-direction:column}
.redeem-head{display:flex;align-items:flex-start;gap:10px}
.redeem-icon{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;color:#8feefe;background:rgba(101,233,255,.07);border:1px solid rgba(101,233,255,.12);flex:0 0 auto}
.redeem-icon .icon{width:15px;height:15px}
.redeem-head h3{font-size:12px;font-weight:650;margin:0;color:#e0ebf9}
.redeem-head p{font-size:8.5px;color:#6e7e95;margin:2px 0 0}
.redeem-form{display:flex;gap:7px;margin-top:14px}
.redeem-form input{flex:1;min-width:0;height:38px;border-radius:8px;border:1px solid rgba(151,177,217,.17);background:rgba(5,10,17,.58);padding:0 11px;font:10px var(--font-num);letter-spacing:.04em;color:#d9f8ff;outline:none}
.redeem-form input::placeholder{color:#53647d;letter-spacing:.02em}
.redeem-form input:focus{border-color:rgba(101,233,255,.4);box-shadow:0 0 0 3px rgba(101,233,255,.07)}
.redeem-form .btn{height:38px;font-size:10.5px;padding:0 14px;border-radius:8px}
.redeem-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:11px;font-size:8px;color:#64748c}
.redeem-foot a{color:#78ddef}
.redeem-foot .icon{width:10px;height:10px;margin-right:2px}
.machine-section{margin-top:25px}
.machine-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}
.machine-head h2{font-size:15px;margin:0;letter-spacing:-.01em;display:flex;align-items:center;gap:8px;font-weight:650}
.machine-head h2 span{font-size:9px;font-weight:500;color:#62728a;letter-spacing:.08em;font-family:var(--font-num)}
.machine-head-actions{display:flex;align-items:center;gap:8px}
.seg{display:flex;align-items:center;gap:3px;padding:3px;border-radius:9px;border:1px solid var(--line);background:rgba(255,255,255,.018)}
.seg button{height:27px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#75849b;font-size:9.5px}
.seg button.active{background:rgba(101,233,255,.09);color:#a9f3ff;box-shadow:0 0 0 1px rgba(101,233,255,.08) inset}
.seg button b{font-family:var(--font-num);font-weight:500;margin-left:3px;opacity:.7}
.machine-search{width:160px;height:33px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.025);display:flex;align-items:center;gap:7px;padding:0 10px;color:#6d7c93}
.machine-search .icon{width:13px;height:13px}
.machine-search input{width:100%;border:0;background:transparent;outline:none;color:#cbd8ea;font-size:10px}
.machine-search input::placeholder{color:#5f6e84}
.machine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.machine-card{
  position:relative;overflow:hidden;border-radius:15px;border:1px solid var(--line);
  background:linear-gradient(165deg,rgba(17,29,46,.95),rgba(10,17,28,.96));
  transition:.18s;display:flex;flex-direction:column;min-width:0;
}
.machine-card:hover{transform:translateY(-2px);border-color:rgba(144,195,255,.25);box-shadow:0 16px 36px rgba(0,0,0,.22)}
.machine-card.is-idle{border-color:rgba(66,227,161,.13)}
.machine-card.is-busy{opacity:.86}
.machine-card.is-paused{border-color:rgba(255,196,101,.18)}
.machine-cover{height:84px;position:relative;overflow:hidden;background:#0b111b}
.machine-cover img{width:100%;height:100%;object-fit:cover;filter:brightness(.62) saturate(.72);transition:.3s}
.machine-card:hover .machine-cover img{transform:scale(1.025);filter:brightness(.7) saturate(.82)}
.machine-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,11,19,.1),rgba(11,19,31,.7))}
.machine-status{position:absolute;z-index:2;left:10px;top:9px;height:20px;padding:0 7px;border-radius:5px;font-size:8px;display:flex;align-items:center;gap:4px;background:rgba(5,11,19,.72);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(7px)}
.machine-status:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor}
.machine-status.idle{color:#5ff0ba}.machine-status.busy{color:#8baeff}.machine-status.paused{color:var(--amber)}
.machine-no{position:absolute;z-index:2;right:10px;top:9px;font:8px var(--font-num);letter-spacing:.12em;color:rgba(230,244,255,.45)}
.machine-info{position:absolute;z-index:2;left:11px;right:11px;bottom:8px}
.machine-info b{font-size:11.5px;color:#e8f2ff;font-weight:650;letter-spacing:0;display:block;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.machine-info span{display:flex;align-items:center;gap:4px;font-size:7.5px;color:#8496ad;margin-top:1px}
.machine-info span .icon{width:9px;height:9px}
.machine-body{padding:10px 11px 7px;display:flex;flex-direction:column;gap:7px;flex:1}
.machine-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:8px;color:#6c7d94}
.machine-meta-row span{display:flex;align-items:center;gap:4px;white-space:nowrap}
.machine-meta-row .icon{width:10px;height:10px;opacity:.8}
.machine-meta-row .latency{color:#72e4bb}
.machine-session{font-size:8px;line-height:1.45;color:#6c7d94;min-height:23px;padding:5px 7px;border-radius:6px;background:rgba(255,255,255,.024);border:1px solid rgba(255,255,255,.035)}
.machine-session b{color:#c0cfe2;font-weight:500}
.machine-session.paused{color:#b28b51;background:rgba(255,196,101,.035);border-color:rgba(255,196,101,.08)}
.machine-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 11px 11px}
.machine-price{font-size:8px;color:#61728a}
.machine-price b{font-family:var(--font-num);font-size:11px;color:#b8cce4;font-weight:500}
.machine-foot .btn{height:28px;padding:0 11px;font-size:9px;border-radius:7px}
.machine-foot .btn[disabled]{color:#627188;background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.04);opacity:1}
.machine-card.is-paused .btn[disabled]{color:#c69a58;background:rgba(255,196,101,.06);border-color:rgba(255,196,101,.1)}
.user-notice{display:flex;align-items:center;gap:10px;margin-top:17px;padding:11px 14px;border:1px solid rgba(151,177,217,.1);border-radius:9px;background:rgba(255,255,255,.018);color:#70819a;font-size:9px}
.user-notice .icon{width:13px;height:13px;color:#71e7f8;flex:0 0 auto}
.user-notice b{color:#a7bdd6;font-weight:500}
.user-notice .sep{width:1px;height:11px;background:rgba(151,177,217,.13);margin:0 4px}
.user-foot{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0;font-size:8px;color:#4f5e74}
.user-foot a{color:#687a92}

/* ---------------- Play screen ---------------- */
.play-page{height:100vh;overflow:hidden;background:#03070c;color:#fff}
.map-layer{position:fixed;inset:0;overflow:hidden;z-index:0}
.map-layer img{width:100%;height:100%;object-fit:cover;filter:brightness(.78) saturate(.86) contrast(1.04);transform:scale(1.02)}
.map-layer:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,6,12,.82) 0%,rgba(2,6,12,.12) 21%,transparent 55%,rgba(2,6,12,.56) 100%)}
.map-layer .map-vignette{position:absolute;inset:0;box-shadow:inset 0 0 180px 40px rgba(0,0,0,.55)}
.map-tag{position:fixed;z-index:4;left:18px;bottom:19px;display:flex;align-items:center;gap:7px;height:30px;padding:0 10px;border-radius:8px;background:rgba(5,11,18,.58);border:1px solid rgba(203,226,255,.1);backdrop-filter:blur(10px);font-size:8px;color:#8597ae}
.map-tag .icon{width:12px;height:12px;color:#6de7f9}
.map-tag b{font-weight:500;color:#aebfd4}
.play-bar{
  position:fixed;z-index:1000;top:14px;left:14px;right:14px;height:82px;
  border-radius:18px;border:1px solid rgba(190,220,255,.16);
  background:linear-gradient(180deg,rgba(12,21,35,.93),rgba(7,13,22,.9));
  backdrop-filter:blur(22px);box-shadow:0 24px 70px rgba(0,0,0,.44);
  display:flex;align-items:center;gap:18px;padding:0 14px 0 18px;
}
.play-bar:before{content:"";position:absolute;left:18px;right:18px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(101,233,255,.6),rgba(139,124,255,.35),transparent)}
.play-brand{display:flex;align-items:center;gap:9px;padding-right:17px;border-right:1px solid rgba(151,177,217,.13);height:42px}
.play-brand .brand-mark{width:32px;height:32px;border-radius:9px}
.play-brand .brand-mark svg{width:18px;height:18px}
.play-brand-copy{display:flex;flex-direction:column;line-height:1.05}
.play-brand-copy strong{font-size:11px;letter-spacing:.1em;color:#ecf7ff}
.play-brand-copy small{font-size:6.5px;letter-spacing:.1em;color:#64758c;margin-top:3px}
.play-machine{display:flex;align-items:center;gap:11px;min-width:225px}
.play-machine-no{width:39px;height:39px;border-radius:10px;display:grid;place-items:center;font:700 13px var(--font-num);letter-spacing:.04em;color:#a9f4ff;background:linear-gradient(145deg,rgba(101,233,255,.16),rgba(82,139,255,.11));border:1px solid rgba(101,233,255,.22);box-shadow:0 0 26px rgba(50,202,240,.1)}
.play-machine-copy b{display:block;font-size:12.5px;font-weight:650;color:#f0f7ff;letter-spacing:.01em}
.play-machine-copy span{display:flex;align-items:center;gap:5px;font-size:8.5px;color:#5cf0b8;margin-top:3px}
.play-machine-copy span i{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green)}
.play-machine-copy span em{font-style:normal;color:#71839b;margin-left:2px}
.play-timer{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:220px;margin:0 auto;position:relative}
.play-timer small{font-size:8px;letter-spacing:.17em;color:#7d8fa7;margin-bottom:1px;text-transform:uppercase}
.play-timer strong{font-family:var(--font-num);font-size:34px;line-height:1.05;font-weight:600;letter-spacing:.05em;color:#f8fcff;text-shadow:0 0 32px rgba(93,230,255,.14)}
.play-timer:after{content:"";position:absolute;bottom:-9px;width:92px;height:1px;background:linear-gradient(90deg,transparent,rgba(101,233,255,.35),transparent)}
.play-actions{display:flex;align-items:center;gap:8px}
.play-used{text-align:right;padding-right:6px;margin-right:2px;border-right:1px solid rgba(151,177,217,.11);min-width:94px}
.play-used small{display:block;font-size:7px;letter-spacing:.12em;color:#687a91;margin-bottom:1px}
.play-used b{display:block;font:500 13px var(--font-num);color:#b9c8db;letter-spacing:.03em}
.play-btn{height:42px;border-radius:10px;border:1px solid rgba(169,202,245,.16);background:rgba(255,255,255,.04);color:#c6d5e8;font-size:10.5px;font-weight:550;padding:0 14px;display:inline-flex;align-items:center;gap:7px}
.play-btn:hover{background:rgba(255,255,255,.075);border-color:rgba(186,220,255,.26);color:#fff}
.play-btn .icon{width:14px;height:14px}
.play-btn.danger{color:#ff9aaa;border-color:rgba(255,114,133,.24);background:rgba(255,114,133,.085)}
.play-btn.danger:hover{background:rgba(255,114,133,.14);color:#ffd9df}
.play-btn.primary{color:#04141e;background:linear-gradient(135deg,#9af4ff,#44d5f4);border-color:transparent;font-weight:700;box-shadow:0 7px 20px rgba(50,205,244,.18)}
.play-btn.paused{color:#ffd08a;border-color:rgba(255,196,101,.26);background:rgba(255,196,101,.09)}
.play-quick{position:fixed;z-index:9;right:18px;bottom:19px;display:flex;align-items:center;gap:10px}
.quick-card{height:44px;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:10px;background:rgba(5,11,18,.62);border:1px solid rgba(203,226,255,.1);backdrop-filter:blur(12px)}
.quick-card small{display:block;font-size:7px;letter-spacing:.11em;color:#667991;margin-bottom:1px}
.quick-card b{display:block;font:500 13px var(--font-num);color:#d7e7f9;letter-spacing:.03em}
.quick-card .dot{width:5px;height:5px;border-radius:50%;background:var(--green);box-shadow:0 0 8px var(--green)}
.play-toast{position:fixed;z-index:1200;left:50%;top:110px;transform:translateX(-50%) translateY(-12px);opacity:0;pointer-events:none;height:38px;padding:0 16px;border-radius:9px;display:flex;align-items:center;gap:8px;background:rgba(8,16,27,.94);border:1px solid rgba(101,233,255,.19);box-shadow:0 12px 36px rgba(0,0,0,.35);font-size:10px;color:#c9f8ff;transition:.2s}
.play-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.play-toast .icon{width:13px;height:13px;color:#63e8b0}
.pause-shade{position:fixed;z-index:500;inset:0;background:rgba(3,7,12,.42);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:.22s}
.play-page.is-paused .pause-shade{opacity:1;pointer-events:auto}
.pause-note{position:fixed;z-index:520;left:50%;top:50%;transform:translate(-50%,-50%) scale(.97);opacity:0;pointer-events:none;width:360px;border-radius:18px;border:1px solid rgba(255,196,101,.22);background:rgba(11,19,31,.94);box-shadow:var(--shadow);padding:24px;text-align:center;transition:.22s;backdrop-filter:blur(20px)}
.play-page.is-paused .pause-note{opacity:1;transform:translate(-50%,-50%) scale(1);pointer-events:auto}
.pause-note .pause-icon{width:44px;height:44px;border-radius:12px;margin:0 auto 12px;display:grid;place-items:center;color:#ffca77;background:rgba(255,196,101,.08);border:1px solid rgba(255,196,101,.16)}
.pause-note .pause-icon .icon{width:21px;height:21px}
.pause-note h3{margin:0;font-size:16px;letter-spacing:-.02em}
.pause-note p{margin:6px 0 0;color:#8292a8;font-size:10px;line-height:1.8}
.pause-note .btn{margin-top:16px;height:37px;font-size:10.5px;width:100%}

/* Expired state */
.play-page.is-expired .map-layer img{filter:brightness(.36) saturate(.55) blur(5px);transform:scale(1.04)}
.play-page.is-expired .map-layer:after{background:rgba(2,6,12,.66)}
.expire-wrap{position:fixed;z-index:700;inset:0;display:grid;place-items:center;padding:24px}
.expire-card{position:relative;width:440px;border-radius:22px;border:1px solid rgba(178,208,255,.18);background:linear-gradient(165deg,rgba(16,27,44,.97),rgba(8,14,23,.97));box-shadow:0 40px 100px rgba(0,0,0,.55);padding:29px 30px 25px;text-align:center;overflow:hidden}
.expire-card:before{content:"";position:absolute;left:40px;right:40px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,196,101,.7),transparent)}
.expire-icon{width:52px;height:52px;border-radius:15px;margin:0 auto 15px;display:grid;place-items:center;color:#ffc465;background:rgba(255,196,101,.07);border:1px solid rgba(255,196,101,.16)}
.expire-icon .icon{width:24px;height:24px}
.expire-card h2{font-size:21px;letter-spacing:-.03em;margin:0;color:#f3f9ff}
.expire-card>p{color:#8292a8;font-size:10.5px;line-height:1.8;margin:7px auto 0;max-width:330px}
.expire-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:19px 0 0;text-align:left}
.expire-stat{border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.05);padding:10px 12px}
.expire-stat small{display:block;font-size:7.5px;color:#6b7d94;margin-bottom:2px;letter-spacing:.04em}
.expire-stat b{display:block;font:500 14px var(--font-num);color:#d9e7f7;letter-spacing:.02em}
.expire-stat b.green{color:#6df0c2}
.expire-actions{display:flex;gap:8px;margin-top:18px}
.expire-actions .btn{flex:1;height:40px;font-size:10.5px;border-radius:9px}
.expire-foot{font-size:8px;color:#596a81;margin-top:13px;display:flex;align-items:center;justify-content:center;gap:5px}
.expire-foot .icon{width:11px;height:11px;color:#5de3b2}
.expired-id{position:fixed;z-index:5;left:18px;bottom:19px;display:flex;align-items:center;gap:7px;height:30px;padding:0 10px;border-radius:8px;background:rgba(5,11,18,.58);border:1px solid rgba(203,226,255,.1);font-size:8px;color:#8597ae}

/* ---------------- Admin ---------------- */
:root{
  --a-bg:#f4f6fb;--a-card:#fff;--a-text:#182034;--a-text2:#5e6a80;--a-muted:#96a0b3;
  --a-line:#e8edf5;--a-primary:#5b5bd6;--a-cyan:#18b7d6;--a-nav:#0d1424;
}
.admin-body{background:var(--a-bg);color:var(--a-text);min-height:100vh;font-size:13px}
.admin-body:before{display:none}
.admin-layout{display:flex;min-height:100vh}
.admin-sidebar{width:232px;flex:0 0 232px;position:fixed;left:0;top:0;bottom:0;z-index:100;background:linear-gradient(180deg,#0d1424 0%,#0b1120 52%,#090e19 100%);color:#d8e1f0;display:flex;flex-direction:column;overflow:hidden}
.admin-sidebar:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(72,204,248,.12),transparent 68%);right:-120px;top:-100px;pointer-events:none}
.admin-brand{height:69px;display:flex;align-items:center;gap:10px;padding:0 19px;border-bottom:1px solid rgba(255,255,255,.065);position:relative;z-index:1}
.admin-brand .brand-mark{width:31px;height:31px;border-radius:9px}
.admin-brand .brand-mark svg{width:17px;height:17px}
.admin-brand-copy{display:flex;flex-direction:column;line-height:1.08}
.admin-brand-copy strong{font-size:13.5px;letter-spacing:.06em;color:#f1f6ff}
.admin-brand-copy small{font-size:6.5px;color:#5f7390;letter-spacing:.12em;margin-top:3px}
.admin-nav{position:relative;z-index:1;padding:13px 10px 20px;flex:1;overflow-y:auto}
.admin-nav::-webkit-scrollbar{width:0}
.admin-group{font-size:8px;letter-spacing:.14em;color:#52627a;padding:15px 11px 6px;font-weight:600}
.admin-group:first-child{padding-top:2px}
.admin-link{height:39px;display:flex;align-items:center;gap:10px;padding:0 11px;margin:2px 0;border-radius:8px;font-size:11.5px;color:#8999b0;border-left:2px solid transparent;transition:.15s}
.admin-link .icon{width:16px;height:16px;opacity:.85}
.admin-link:hover{background:rgba(255,255,255,.04);color:#d5e2f4}
.admin-link.active{background:linear-gradient(90deg,rgba(74,216,245,.14),rgba(94,91,219,.13));color:#f1fbff;border-left-color:#56e4ff;box-shadow:0 0 0 1px rgba(107,227,255,.06) inset}
.admin-link.active .icon{color:#6feafd}
.admin-link .count{margin-left:auto;min-width:19px;height:17px;border-radius:5px;display:grid;place-items:center;background:rgba(255,112,130,.13);color:#ff9aaa;font:9px var(--font-num)}
.admin-side-foot{position:relative;z-index:1;padding:12px 15px 16px;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:9px}
.admin-side-foot .avatar{width:29px;height:29px;font-size:9px;background:linear-gradient(145deg,#25445f,#192b44)}
.admin-side-foot b{display:block;font-size:9.5px;color:#c9d7e9;font-weight:500}
.admin-side-foot small{display:block;font-size:7.5px;color:#5c7088;margin-top:1px}
.admin-side-foot .icon{margin-left:auto;width:14px;height:14px;color:#5e7189}
.admin-main{margin-left:232px;flex:1;min-width:0;min-height:100vh;display:flex;flex-direction:column}
.admin-topbar{height:62px;background:#fff;border-bottom:1px solid var(--a-line);display:flex;align-items:center;gap:14px;padding:0 25px;position:sticky;top:0;z-index:40}
.admin-crumb{display:flex;align-items:center;gap:7px;font-size:10px;color:#9aa5b7}
.admin-crumb b{font-size:12px;color:#253047;font-weight:600}
.admin-crumb .icon{width:12px;height:12px;color:#c0c8d5}
.admin-top-spacer{flex:1}
.admin-top-status{display:flex;align-items:center;gap:7px;font-size:9px;color:#718097;padding:0 10px;height:27px;border-radius:7px;background:#f7f9fc;border:1px solid #edf1f7}
.admin-top-status i{width:5px;height:5px;border-radius:50%;background:#21c897;box-shadow:0 0 6px rgba(33,200,151,.7)}
.admin-top-icon{width:31px;height:31px;border-radius:8px;display:grid;place-items:center;border:1px solid #e9edf5;background:#fff;color:#6f7d93;position:relative}
.admin-top-icon .icon{width:15px;height:15px}
.admin-top-icon .bell-dot{position:absolute;right:7px;top:7px;width:4px;height:4px;border-radius:50%;background:#ff6e83;border:1px solid #fff}
.admin-top-user{display:flex;align-items:center;gap:8px;padding-left:9px;border-left:1px solid #edf1f7}
.admin-top-user .avatar{width:28px;height:28px;font-size:8px;background:linear-gradient(145deg,#2f7c93,#1e3c61)}
.admin-top-user b{display:block;font-size:9.5px;color:#354158;font-weight:600}
.admin-top-user small{display:block;font-size:7.5px;color:#9ca7b8;margin-top:1px}
.admin-content{padding:21px 25px 30px;flex:1;max-width:1656px;width:100%}
.admin-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:17px}
.admin-page-head h1{font-size:20px;line-height:1.25;letter-spacing:-.025em;margin:0;color:#1a2337;font-weight:680}
.admin-page-head p{font-size:9.5px;color:#929eb1;margin:5px 0 0}
.admin-page-actions{display:flex;align-items:center;gap:8px}
.a-btn{height:33px;padding:0 12px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #e1e7f0;background:#fff;color:#59667b;font-size:10px;font-weight:550;white-space:nowrap}
.a-btn:hover{border-color:#cbd6e5;color:#26334a}
.a-btn .icon{width:13px;height:13px}
.a-btn.primary{color:#fff;background:linear-gradient(135deg,#6b5ce7,#5b5bd6);border-color:transparent;box-shadow:0 5px 14px rgba(91,91,214,.2)}
.a-btn.cyan{color:#075363;background:#e6fbfe;border-color:#c9f3f8}
.a-btn.danger{color:#d83d54;background:#fff4f6;border-color:#ffe0e5}
.a-btn.sm{height:27px;font-size:9px;padding:0 9px;border-radius:6px}
.a-btn.sm .icon{width:11px;height:11px}
.a-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}
.a-stat{position:relative;background:#fff;border:1px solid var(--a-line);border-radius:12px;padding:14px 15px;box-shadow:0 2px 10px rgba(22,34,58,.025);overflow:hidden}
.a-stat .stat-label{font-size:9.5px;color:#8a96a9;display:flex;align-items:center;gap:6px}
.a-stat .stat-value{font-family:var(--font-num);font-size:27px;font-weight:600;line-height:1.05;letter-spacing:.01em;color:#1b263a;margin-top:8px;display:flex;align-items:baseline;gap:5px}
.a-stat .stat-value small{font-family:var(--font);font-size:9px;letter-spacing:0;color:#8f9caf;font-weight:500}
.a-stat .stat-foot{display:flex;align-items:center;gap:5px;margin-top:6px;font-size:8px;color:#8b97a9}
.a-stat .stat-foot b{color:#13a67d;font-weight:600}
.a-stat .stat-icon{position:absolute;right:12px;top:12px;width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:#f3f6fb;color:#7f8da2}
.a-stat .stat-icon .icon{width:15px;height:15px}
.a-stat.highlight{background:linear-gradient(135deg,#18233b,#10182b 65%,#0d1424);border-color:#253454}
.a-stat.highlight:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,rgba(72,218,245,.22),transparent 68%);right:-50px;top:-70px}
.a-stat.highlight .stat-label{color:#93a5bf}
.a-stat.highlight .stat-value{color:#f3fcff}
.a-stat.highlight .stat-value small{color:#7f96b2}
.a-stat.highlight .stat-foot{color:#6e829e}
.a-stat.highlight .stat-foot b{color:#65e9ff}
.a-stat.highlight .stat-icon{background:rgba(101,233,255,.08);color:#69e6fa}
.a-stat .spark{position:absolute;left:15px;right:15px;bottom:10px;height:24px;opacity:.4;display:flex;align-items:flex-end;gap:3px}
.a-stat .spark i{flex:1;background:linear-gradient(180deg,#5b5bd6,#a5b4fc);border-radius:2px 2px 0 0}
.admin-grid-main{display:grid;grid-template-columns:1.58fr .82fr;gap:14px;margin-bottom:14px}
.admin-grid-bottom{display:grid;grid-template-columns:1.58fr .82fr;gap:14px}
.a-panel{background:#fff;border:1px solid var(--a-line);border-radius:12px;box-shadow:0 2px 10px rgba(22,34,58,.025);min-width:0;overflow:hidden}
.a-panel-head{height:48px;padding:0 15px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #f0f3f8}
.a-panel-head h3{font-size:11.5px;font-weight:650;color:#26334a;margin:0;display:flex;align-items:center;gap:7px}
.a-panel-head h3:before{content:"";width:3px;height:12px;border-radius:2px;background:linear-gradient(180deg,#5b5bd6,#49d5ec)}
.a-panel-head .sub{font-size:8px;color:#9da8b8;margin-left:3px}
.a-panel-head .spacer{flex:1}
.a-panel-head .a-link{font-size:8.5px;color:#6a73c7;display:flex;align-items:center;gap:2px}
.a-panel-body{padding:0 15px}
.a-table{width:100%;border-collapse:collapse;font-size:9.5px;table-layout:fixed}
.a-table th{text-align:left;font-size:8px;letter-spacing:.03em;color:#96a1b2;font-weight:600;padding:10px 8px;border-bottom:1px solid #f0f3f8;white-space:nowrap;background:#fbfcfe}
.a-table td{padding:10px 8px;border-bottom:1px solid #f3f5f9;color:#5a687d;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.a-table tr:last-child td{border-bottom:0}
.a-table tr:hover td{background:#fbfcff}
.a-table th:first-child,.a-table td:first-child{padding-left:15px}
.a-table th:last-child,.a-table td:last-child{padding-right:15px}
.a-table .machine-cell{display:flex;align-items:center;gap:8px;min-width:0}
.a-machine-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(145deg,#eef4ff,#e8f7fb);color:#607fa6;border:1px solid #e1eaf5;flex:0 0 auto}
.a-machine-icon .icon{width:13px;height:13px}
.machine-cell b{display:block;font-size:9.5px;color:#28364d;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.machine-cell small{display:block;font-size:7.5px;color:#9ca8b9;margin-top:1px;font-family:var(--font-num)}
.a-tag{display:inline-flex;align-items:center;gap:4px;height:18px;padding:0 6px;border-radius:4px;font-size:8px;font-weight:500;background:#f2f4f8;color:#7e8a9c}
.a-tag:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}
.a-tag.green{background:#eafaf3;color:#12a273}
.a-tag.blue{background:#eef2ff;color:#5a61cf}
.a-tag.amber{background:#fff8e8;color:#c88a19}
.a-tag.red{background:#fff1f3;color:#dd5168}
.url-cell{font:8px var(--font-num);color:#8b98aa;display:flex;align-items:center;gap:4px;min-width:0}
.url-cell span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.url-cell .icon{width:10px;height:10px;color:#b0bbca;flex:0 0 auto}
.a-row-actions{display:flex;align-items:center;gap:5px;justify-content:flex-end}
.a-mini-btn{width:22px;height:22px;border-radius:5px;border:1px solid #e7ecf4;background:#fff;display:grid;place-items:center;color:#7e8ca1}
.a-mini-btn:hover{border-color:#cbd6e6;color:#3f4e65}
.a-mini-btn .icon{width:11px;height:11px}
.alert-list{padding:5px 15px 7px}
.alert-item{display:flex;gap:9px;padding:10px 0;border-bottom:1px solid #f3f5f9}
.alert-item:last-child{border-bottom:0}
.alert-dot{width:22px;height:22px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;background:#fff7e8;color:#d89b2d}
.alert-dot.red{background:#fff1f3;color:#dd556c}
.alert-dot.blue{background:#eef2ff;color:#5b61cf}
.alert-dot .icon{width:12px;height:12px}
.alert-copy{min-width:0;flex:1}
.alert-copy b{display:block;font-size:9.5px;color:#3c4a61;font-weight:600;line-height:1.4}
.alert-copy span{display:block;font-size:8px;color:#9aa6b7;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.alert-copy em{font-style:normal;color:#c48a24;font-weight:500}
.alert-time{font:7.5px var(--font-num);color:#b1bbc8;white-space:nowrap;padding-top:2px}
.mini-chart{height:108px;padding:10px 15px 8px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid #f3f5f9}
.mini-chart .bar{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;position:relative}
.mini-chart .bar i{display:block;width:100%;max-width:26px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,#7c8cf8,#5b5bd6);min-height:4px;box-shadow:0 0 0 1px rgba(91,91,214,.05) inset;position:relative}
.mini-chart .bar:nth-child(6) i{background:linear-gradient(180deg,#66e5f7,#27b7d2)}
.mini-chart .bar span{font:7px var(--font-num);color:#abb4c1}
.chart-meta{display:flex;align-items:center;justify-content:space-between;padding:9px 15px 11px;font-size:8px;color:#98a3b4}
.chart-meta b{font-family:var(--font-num);font-size:11px;color:#28364c;font-weight:600}
.legend{display:flex;align-items:center;gap:10px;font-size:7.5px;color:#8e9aab}
.legend span{display:flex;align-items:center;gap:4px}
.legend i{width:5px;height:5px;border-radius:2px;background:#6d78e9}
.legend i.cyan{background:#40cfe7}
.card-stock{padding:12px 15px 13px}
.stock-line{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#7f8b9c;margin-bottom:7px}
.stock-line b{font-family:var(--font-num);font-size:11px;color:#29364b;font-weight:600}
.stock-bar{height:5px;border-radius:99px;background:#eef2f7;overflow:hidden;display:flex;margin-bottom:12px}
.stock-bar i{display:block;height:100%;background:linear-gradient(90deg,#5b5bd6,#8d91f0)}
.stock-bar i.used{background:#31c6de}
.stock-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:4px}
.stock-stat{padding:8px 9px;border-radius:7px;background:#f8fafd;border:1px solid #eff3f8}
.stock-stat small{display:block;font-size:7px;color:#9ca8b7;margin-bottom:2px}
.stock-stat b{font:600 13px var(--font-num);color:#2c3a50}
.stock-stat b.green{color:#13a67d}
.stock-stat b.amber{color:#c7912f}
.admin-panel-empty{padding:32px;text-align:center;color:#a0aabb;font-size:9px}

/* Admin machine page */
.a-filters{display:flex;align-items:center;gap:8px;padding:12px 15px;background:#fff;border:1px solid var(--a-line);border-radius:12px;margin-bottom:13px;box-shadow:0 2px 10px rgba(22,34,58,.025)}
.a-search{height:31px;width:220px;border:1px solid #e3e9f2;border-radius:7px;display:flex;align-items:center;gap:6px;padding:0 9px;background:#fbfcfe;color:#93a0b2}
.a-search .icon{width:12px;height:12px}
.a-search input{border:0;background:transparent;outline:none;font-size:9.5px;color:#3e4c62;width:100%}
.a-search input::placeholder{color:#aab4c2}
.a-select{height:31px;border:1px solid #e3e9f2;border-radius:7px;background:#fbfcfe;color:#617086;font-size:9.5px;padding:0 26px 0 9px;outline:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2396a2b3' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 9px center}
.a-filter-spacer{flex:1}
.a-filter-count{font-size:8.5px;color:#95a0b1}
.a-filter-count b{color:#37455b;font-family:var(--font-num)}
.admin-table-panel{background:#fff;border:1px solid var(--a-line);border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(22,34,58,.025)}
.admin-table-panel .a-table th{padding-top:11px;padding-bottom:11px}
.admin-table-panel .a-table td{padding-top:11px;padding-bottom:11px}
.a-checkbox{width:13px;height:13px;border:1px solid #d9e1ec;border-radius:3px;background:#fff;display:inline-block;vertical-align:middle}
.a-pagination{display:flex;align-items:center;justify-content:space-between;padding:11px 15px;border-top:1px solid #f1f4f8;font-size:8px;color:#9aa6b7}
.a-pages{display:flex;gap:4px}
.a-page{width:24px;height:24px;border-radius:5px;border:1px solid #e7ecf3;background:#fff;display:grid;place-items:center;color:#7c899d;font-size:8px}
.a-page.active{background:#5b5bd6;border-color:#5b5bd6;color:#fff}
.drawer-mask{position:fixed;inset:0;z-index:180;background:rgba(15,23,42,.08)}
.a-drawer{position:fixed;z-index:200;right:0;top:0;bottom:0;width:432px;background:#fff;box-shadow:-20px 0 60px rgba(15,23,42,.18);display:flex;flex-direction:column}
.drawer-head{height:62px;display:flex;align-items:center;gap:10px;padding:0 20px;border-bottom:1px solid var(--a-line)}
.drawer-head h3{font-size:14px;margin:0;color:#1c263a;font-weight:650}
.drawer-head p{font-size:8.5px;color:#98a4b4;margin:2px 0 0}
.drawer-close{margin-left:auto;width:28px;height:28px;border-radius:7px;border:1px solid #e8edf4;background:#fff;display:grid;place-items:center;color:#8491a4}
.drawer-close .icon{width:14px;height:14px}
.drawer-body{flex:1;overflow-y:auto;padding:17px 20px}
.drawer-section{margin-bottom:21px}
.drawer-section-title{font-size:9px;letter-spacing:.08em;color:#8d99aa;font-weight:600;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.drawer-section-title:before{content:"";width:3px;height:10px;border-radius:2px;background:#5b5bd6}
.drawer-field{margin-bottom:12px}
.drawer-field label{display:flex;align-items:center;justify-content:space-between;font-size:9.5px;color:#6a778b;margin-bottom:5px;font-weight:500}
.drawer-field label span{font-size:7.5px;color:#a5afbd;font-weight:400}
.drawer-input{width:100%;height:35px;border:1px solid #e0e7f0;border-radius:7px;background:#fbfcfe;padding:0 10px;font-size:10px;color:#2c3a50;outline:none}
.drawer-input:focus{border-color:#8edfe9;background:#fff;box-shadow:0 0 0 3px rgba(43,201,245,.08)}
.drawer-textarea{min-height:78px;padding:9px 10px;resize:vertical;height:auto;line-height:1.6;font-family:var(--font-num);font-size:8.5px;word-break:break-all}
.drawer-hint{font-size:7.5px;color:#a1acba;line-height:1.6;margin-top:4px;display:flex;align-items:flex-start;gap:4px}
.drawer-hint .icon{width:10px;height:10px;color:#b5bfcc;margin-top:1px}
.drawer-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.drawer-switch-row{display:flex;align-items:center;justify-content:space-between;height:39px;border:1px solid #e8edf4;border-radius:7px;background:#fbfcfe;padding:0 10px;font-size:9.5px;color:#536075}
.a-switch{width:34px;height:19px;border-radius:99px;background:#dbe3ee;position:relative;transition:.2s;flex:0 0 auto}
.a-switch:after{content:"";position:absolute;left:2px;top:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(20,30,50,.2);transition:.2s}
.a-switch.on{background:#5b5bd6}
.a-switch.on:after{left:17px}
.drawer-note{padding:10px 11px;border-radius:8px;background:#f0fbfc;border:1px solid #d7f3f6;font-size:8px;line-height:1.7;color:#4f7f88}
.drawer-note b{color:#1b7c8b;font-weight:600}
.drawer-foot{padding:13px 20px;border-top:1px solid var(--a-line);display:flex;align-items:center;gap:8px;background:#fff}
.drawer-foot .a-btn{flex:1;height:35px;font-size:10px}
.drawer-foot .danger-link{flex:0 0 auto;color:#d84c62;background:#fff5f6;border-color:#ffe0e5}

/* Admin cards */
.card-generator{background:#fff;border:1px solid var(--a-line);border-radius:12px;box-shadow:0 2px 10px rgba(22,34,58,.025);overflow:hidden}
.card-generator .a-panel-head{padding:0 16px}
.card-gen-body{padding:15px 16px 16px}
.gen-field{margin-bottom:12px}
.gen-field label{display:block;font-size:9px;color:#68768a;margin-bottom:5px;font-weight:500}
.gen-input{width:100%;height:34px;border:1px solid #e1e8f1;border-radius:7px;background:#fbfcfe;padding:0 10px;font-size:9.5px;color:#344258;outline:none}
.gen-input:focus{border-color:#8fdfe9;background:#fff;box-shadow:0 0 0 3px rgba(43,201,245,.08)}
.gen-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%2396a2b3' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.gen-two{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.gen-preview{margin:3px 0 13px;border:1px dashed #dce5f0;border-radius:8px;background:#f8fafc;padding:10px 11px;font:11px var(--font-num);letter-spacing:.09em;color:#59687c;display:flex;align-items:center;justify-content:space-between}
.gen-preview span{font-family:var(--font);font-size:7.5px;color:#9ca8b7;letter-spacing:0}
.gen-preview b{color:#4e5b6d;font-weight:500}
.gen-preview .icon{width:12px;height:12px;color:#abb6c5}
.gen-summary{display:flex;justify-content:space-between;align-items:center;background:#f6f8fc;border:1px solid #eef2f7;border-radius:7px;padding:8px 10px;font-size:8px;color:#8d99a9;margin-bottom:12px}
.gen-summary b{font-family:var(--font-num);font-size:11px;color:#344258}
.gen-submit{width:100%;height:36px;font-size:10px;border-radius:7px}
.gen-help{font-size:7.5px;line-height:1.7;color:#a3aebc;margin:10px 0 0;display:flex;gap:5px;align-items:flex-start}
.gen-help .icon{width:10px;height:10px;color:#aab5c3;margin-top:1px}
.admin-cards-grid{display:grid;grid-template-columns:325px minmax(0,1fr);gap:13px;align-items:start}
.cards-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:13px}
.cards-summary .a-stat{padding:11px 12px}
.cards-summary .stat-value{font-size:21px;margin-top:4px}
.cards-summary .stat-foot{margin-top:2px}
.batch-pill{height:18px;display:inline-flex;align-items:center;gap:4px;padding:0 6px;border-radius:4px;background:#f3f5fa;color:#7b889b;font:8px var(--font-num)}
.code-text{font:9px var(--font-num);letter-spacing:.055em;color:#334259}
.code-text.used{color:#9ba6b6;text-decoration:line-through;text-decoration-color:#cbd3df}
.card-table-toolbar{display:flex;align-items:center;gap:7px;padding:11px 13px;border-bottom:1px solid #f0f3f8}
.card-table-toolbar .a-filter-spacer{flex:1}
.card-table-toolbar .a-search{width:185px;height:29px}
.card-table-toolbar .a-select{height:29px}
.mask-code{font:9px var(--font-num);letter-spacing:.06em;color:#4e5d72}
.card-status{display:inline-flex;align-items:center;gap:4px;height:18px;border-radius:4px;padding:0 6px;font-size:8px;background:#f2f4f8;color:#8692a3}
.card-status:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor}
.card-status.unused{background:#eafaf3;color:#12a273}
.card-status.used{background:#f3f4f7;color:#8f99a8}

/* Responsive preview (only for review; primary screenshots are desktop) */
@media (max-width:1180px){
  .container{width:calc(100% - 56px)}
  .hero{grid-template-columns:1fr;height:auto;padding-top:20px}
  .hero-visual{height:520px;margin-top:12px}
  .hero h1{font-size:64px}
  .home-features{grid-template-columns:1fr 1fr 1fr}
  .machine-grid{grid-template-columns:repeat(2,1fr)}
  .wallet-grid{grid-template-columns:1fr}
  .auth-shell{grid-template-columns:1fr}
  .auth-story{display:none}
  .auth-form-panel{padding:44px}
}
@media (max-width:760px){
  .container{width:calc(100% - 32px)}
  .site-nav{display:none}
  .site-header .container{gap:12px}
  .header-actions{margin-left:auto}
  .header-login{display:none}
  .hero{padding-top:24px;gap:20px}
  .hero h1{font-size:48px}
  .hero-sub{font-size:13px}
  .hero-proof{gap:13px;flex-wrap:wrap;margin-top:26px}
  .hero-visual{height:380px}
  .hero-browser{transform:none}
  .browser-stage{height:310px}
  .float-live{left:-8px;top:88px}
  .float-balance{right:-5px;bottom:84px}
  .home-features{grid-template-columns:1fr;padding-bottom:26px}
  .home-foot{display:block;line-height:2}
  .user-header .container{width:calc(100% - 28px)}
  .user-nav{display:none}
  .user-head-right{gap:7px}
  .user-head-right .icon-btn{display:none}
  .balance-chip{height:31px;padding:0 8px;font-size:9px;gap:5px}
  .balance-chip b{font-size:11.5px}
  .avatar{width:31px;height:31px}
  .user-main{width:calc(100% - 28px)}
  .user-title-row{flex-wrap:wrap;gap:10px}
  .title-tools{width:100%;justify-content:flex-start}
  .wallet-deco{display:none}
  .wallet-meta{flex-wrap:wrap;gap:7px 14px}
  .redeem-form{flex-wrap:nowrap}
  .redeem-form .btn{flex:0 0 auto}
  .machine-grid{grid-template-columns:1fr}
  .machine-head{align-items:flex-start;flex-direction:column}
  .machine-head-actions{width:100%;flex-wrap:wrap}
  .seg{flex:1;overflow:auto}
  .machine-search{width:100%}
  .wallet-actions{position:static;margin-top:14px}
  .wallet-card{padding-bottom:18px}
  .play-bar{height:auto;min-height:76px;flex-wrap:wrap;padding:10px 12px;gap:9px}
  .play-brand{display:none}
  .play-machine{min-width:0;flex:1}
  .play-timer{min-width:100%;order:3;margin:1px 0 0;padding-top:7px;border-top:1px solid rgba(151,177,217,.1)}
  .play-timer strong{font-size:28px}
  .play-used{display:none}
  .play-actions{gap:6px}
  .play-btn{width:34px;height:34px;padding:0;justify-content:center;font-size:0;gap:0}
  .play-btn .icon{width:15px;height:15px}
  .play-quick{left:12px;right:12px;justify-content:space-between}
  .quick-card{padding:0 9px;gap:7px}
  .quick-card b{font-size:11px}
  .quick-card small{font-size:6.5px}
  .map-tag{display:none}
  .auth-form-panel{padding:30px 22px}
  .auth-wrap{padding:0 14px 30px}
  .auth-top{width:calc(100% - 28px)}
  .admin-sidebar{width:64px;flex-basis:64px}
  .admin-brand{padding:0 16px}
  .admin-brand-copy,.admin-nav .admin-group,.admin-link span,.admin-link .count,.admin-side-foot div,.admin-side-foot .icon{display:none}
  .admin-link{justify-content:center;padding:0}
  .admin-main{margin-left:64px}
  .a-stat-grid{grid-template-columns:1fr 1fr}
  .admin-grid-main,.admin-grid-bottom{grid-template-columns:1fr}
  .admin-cards-grid{grid-template-columns:1fr}
  .a-drawer{width:100%}
}
