:root{color-scheme:dark;--bg: #071614;--ink: #f4fbf8;--muted: #93ada4;--line: rgba(255, 255, 255, .08);--accent: #1fe08a;--accent-ink: #053222;--card: #102722;--font: "Manrope", "Segoe UI", sans-serif;font-family:var(--font);background:var(--bg);color:var(--ink)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg)}button,input{font:inherit}button{cursor:pointer}a{color:inherit}img,svg{display:block}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cta{border:0;background:var(--accent);color:var(--accent-ink);font-weight:800;border-radius:999px;padding:15px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;box-shadow:0 12px 28px #1fe08a38}.cta:hover{background:#3af09a}.cta:disabled{opacity:.65;cursor:wait}.cta-inline{width:auto;padding-inline:18px}.ghost-link{background:none;border:0;color:#e7fff5;text-decoration:underline;text-underline-offset:4px;padding:8px}.ghost-link.dim{color:#8eaea4;text-decoration:none}.text-btn{width:100%;margin-top:8px;background:none;border:0;color:#d5eee4;font-weight:700}.icon-btn{width:40px;height:40px;border-radius:50%;border:0;background:#08100e8c;color:#fff;display:grid;place-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.kicker{color:var(--accent);font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:12px}.loading,.empty{color:var(--muted)}.sheet-error{color:#ffb4a8;font-size:13px}.hint{color:#d7c48a;font-size:13px}.warning{color:#e7c27a;font-size:13px;line-height:1.45}.splash{min-height:100vh;display:grid;place-items:center;align-content:center;gap:12px;background:radial-gradient(500px 280px at 50% 40%,#16382f,#071614 70%)}.brand{display:flex;align-items:center;gap:12px;text-align:left}.brand strong{display:block;font-size:20px}.brand span{display:block;color:#8eaea4;font-size:13px}.form{display:grid;gap:12px}.form .cta{width:100%}.field{display:flex;flex-direction:column;gap:6px;text-align:left;color:#c9e0d8;font-size:13px;font-weight:700}.field input{background:#081412b8;border:1px solid var(--line);border-radius:14px;padding:13px 14px;color:#fff}.stage{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(800px 480px at 50% 42%,#1a463c,transparent 68%),#071614}.phone{width:390px;height:min(844px,calc(100vh - 36px));background:#0c1412;border-radius:42px;border:10px solid #171717;box-shadow:0 0 0 1px #3c3c3c,0 40px 80px #00000073;position:relative;overflow:hidden}.phone-screen{height:100%}.phone-screen>*{height:100%}.tabbar{position:absolute;left:0;right:0;bottom:0;height:74px;display:grid;grid-template-columns:repeat(4,1fr);background:#0c1412f0;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:6}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#8ea79e;text-decoration:none;font-size:11px;font-weight:700}.tab.is-on{color:var(--accent)}.scan{position:relative;height:100%;min-height:100%;background:#101413;overflow:hidden;color:#fff}.scan-stage{position:absolute;top:0;right:0;bottom:0;left:0}.scan-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#1b1f1e}.scan-photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;background:#071614}.scan-video.mirror{transform:scaleX(-1)}.scan-buffer{display:none}.scan-shade{position:absolute;left:0;right:0;bottom:0;height:48%;background:linear-gradient(transparent,#0000008c);pointer-events:none}.scan-top,.scan-badges,.bbox,.scan-sheet,.sheet-modal{position:absolute;z-index:3}.scan-top{top:16px;left:14px;right:14px;display:flex;justify-content:space-between}.scan-badges{top:66px;left:12px;right:12px;display:flex;flex-wrap:wrap;gap:6px}.badge{background:#0a12109e;border:1px solid rgba(255,255,255,.08);color:#e8fff6;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.badge-live{color:#9fffd4}.bbox{border:2px solid #39f5a4;border-radius:12px;box-shadow:0 0 28px #39f5a447}.bbox i{position:absolute;width:16px;height:16px;border:3px solid #7dffa8}.bbox i:nth-child(2){top:-3px;left:-3px;border-right:0;border-bottom:0}.bbox i:nth-child(3){top:-3px;right:-3px;border-left:0;border-bottom:0}.bbox i:nth-child(4){bottom:-3px;left:-3px;border-right:0;border-top:0}.bbox i:nth-child(5){bottom:-3px;right:-3px;border-left:0;border-top:0}.bbox-tag{position:absolute;left:0;bottom:calc(100% + 8px);background:#1fe08a;color:#053222;border-radius:10px;padding:7px 8px;min-width:180px}.bbox-tag.inside{bottom:auto;top:8px;left:8px}.bbox-tag b,.bbox-tag small{display:block}.bbox-tag b{font-size:12px}.bbox-tag small{font-weight:650;opacity:.75;font-size:11px}.scan-sheet{left:10px;right:10px;bottom:10px;background:#0e1816f0;border:1px solid rgba(255,255,255,.06);border-radius:24px;padding:14px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);max-height:62%;overflow:auto}.source-row,.sheet-row,.prep,.face-row,.num-line{display:flex;align-items:center;gap:8px}.source-row{margin-bottom:12px}.source-row button,.source-row label{position:relative;border:1px solid rgba(255,255,255,.1);background:transparent;color:#d7efe6;border-radius:999px;padding:7px 12px;font-weight:800;font-size:12px;cursor:pointer;overflow:hidden}.source-row button.is-on,.source-row label.is-on{background:var(--accent);color:var(--accent-ink);border-color:transparent}.source-row label input,.photo-cta input,.photo-text input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.photo-cta{position:relative;display:inline-flex;margin-top:10px;overflow:hidden}.photo-text{position:relative;display:block;width:100%;text-align:center;overflow:hidden}.scan-drop{position:absolute;inset:18% 16px auto;display:grid;place-items:center;text-align:center;gap:8px;color:#d7efe6;pointer-events:none}.scan-drop p{color:#8eaea4;font-size:13px;max-width:240px}.sheet-row{justify-content:space-between}.ok-pill{display:inline-flex;align-items:center;gap:6px;color:#b9ffe0;font-weight:800;font-size:13px}.ok-pill i{width:8px;height:8px;border-radius:50%;background:#1fe08a;display:block}.scan-sheet h2{font-size:26px;letter-spacing:-.04em;margin:8px 0}.prep-label{color:#8eaea4;font-size:12px;margin:10px 0 6px}.prep{flex-wrap:wrap;margin-bottom:10px}.guide{margin:4px 0 12px}.guide-text{color:#d7efe6;font-size:13px;line-height:1.45;margin:0 0 4px}.guide-tip{margin:8px 0 0;padding:8px 10px;border-radius:12px;background:#ffc45c1a;color:#ffe7b0;font-size:12px;line-height:1.4;font-weight:650}.prep-chip{display:inline-flex;align-items:center;gap:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.06);border-radius:999px;padding:8px 10px;font-size:12px;font-weight:700}.scan-wait{display:flex;gap:12px;align-items:flex-start}.scan-wait p{color:var(--muted);font-size:13px;margin-top:4px}.correct-grid{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 12px}.correct-chip,.face-row button{border:1px solid var(--line);background:transparent;color:#fff;border-radius:999px;padding:7px 10px;font-weight:800;font-size:12px}.correct-chip.is-on,.face-row button.is-on{background:var(--accent);color:var(--accent-ink);border-color:transparent}.sheet-modal{top:0;right:0;bottom:0;left:0;background:#00000073;display:grid;align-items:end;padding:12px}.sheet-card{background:#12211e;border-radius:20px;padding:16px}.sheet-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.sheet-card p{color:var(--muted);margin-bottom:12px}.bin-pill{border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;letter-spacing:.04em}.tone-yellow{background:#fff4d2;color:#8a6408}.tone-blue{background:#e5f0ff;color:#1d4f9c}.tone-green{background:#e5f8ea;color:#1d7a3a}.tone-gray{background:#eceff1;color:#4d565e}.tone-brown{background:#f6ecdf;color:#7a4e28}.tone-black{background:#24302c;color:#d5e4de}.impact{display:flex;flex-direction:column;background:#0c1614;color:#fff}.impact-hero{height:230px;flex:none;display:grid;place-items:center;background:linear-gradient(180deg,#0c161400 40%,#0c1614 96%),radial-gradient(circle at 50% 80%,#e7e1d6,#8d8680 42%,#3a3834 72%)}.impact-hero .art{width:150px;height:180px;background:transparent}.impact-sheet{flex:1;margin-top:-36px;background:#121e1c;border-radius:28px 28px 0 0;padding:18px 16px 96px;overflow:auto}.impact-sheet h1{font-size:28px;letter-spacing:-.04em;margin-bottom:12px}.metric-row{display:grid;grid-template-columns:1.15fr .9fr .9fr;gap:8px;margin-bottom:14px;align-items:start}.metric-row>div{min-width:0}.metric-row .num-line{align-items:flex-start;flex-wrap:wrap}.metric-row strong,.impact-nums strong,.stats-nums strong{display:block;font-size:28px;letter-spacing:-.05em;line-height:1}.metric-row span,.impact-nums span,.mini-stat span,.mini-stat small{color:var(--muted);font-size:12px;display:block;margin-top:4px}.num-line{align-items:center;flex-wrap:wrap}.delta{border-radius:999px;padding:3px 7px;font-size:11px;font-weight:800;font-style:normal}.delta.up{background:#1fe08a29;color:#8dffc4}.delta.down{background:#ff8c7829;color:#ffb1a4}.stackbar{display:flex;height:10px;border-radius:99px;overflow:hidden;background:#ffffff0f;margin:8px 0 10px}.stackbar span{display:block;height:100%}.legend{list-style:none;display:flex;flex-wrap:wrap;gap:8px 12px;padding:0;margin:0 0 14px;color:#c5ddd4;font-size:12px}.legend li,.bars-name{display:inline-flex;align-items:center;gap:6px}.legend i,.bars-name i{width:8px;height:8px;border-radius:50%;display:block}.scan-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.scan-list li{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;background:#ffffff08;border-radius:16px;padding:8px}.scan-list li>div{min-width:0}.scan-list .art{width:54px;height:54px}.scan-list strong,.scan-list small{display:block}.scan-list small{color:var(--muted);margin-top:2px}.guide{overflow:auto;padding:22px 16px 96px;background:#0c1614}.guide-head{margin-bottom:16px}.guide-head h1,.page-head h1,.settings-page h1,.stats-page h1,.model-page h1{font-size:32px;letter-spacing:-.045em;margin:4px 0 8px}.guide-head p,.page-head p{color:var(--muted);line-height:1.5}.guide-grid{display:grid;gap:12px}.material-card,.panel-card,.quote,.where-card,.steps-card,.result-card{background:linear-gradient(160deg,#163a329e,#0a201c80);border:1px solid rgba(190,255,230,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:20px}.material-card{padding:14px;display:grid;gap:10px}.material-card header{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.material-card h2{font-size:18px}.material-card header p,.where-line{color:var(--muted);font-size:13px}.code-badge{min-width:42px;height:24px;border-radius:7px;display:inline-grid;place-items:center;font-size:10px;font-weight:800;padding:0 6px}.profile,.result{overflow:auto;background:#0c1614;color:#fff;padding:22px 16px 28px}.profile-hero,.result-top{text-align:center}.profile-hero h1{margin:10px 0 4px}.profile-hero p{color:var(--muted);margin-bottom:10px}.avatar{display:inline-grid;place-items:center;border-radius:50%;background:linear-gradient(160deg,#1fe08a,#0e8f68);color:#053222;font-weight:800}.avatar.lg{width:84px;height:84px;font-size:28px}.avatar.sm{width:32px;height:32px;font-size:12px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.profile-stats div{background:#132420;border-radius:16px;padding:12px 8px;text-align:center}.profile-stats strong{display:block;font-size:20px}.profile-stats span,.profile-links a,.profile-links button{color:var(--muted)}.profile-links{display:grid;gap:8px}.profile-links a,.profile-links button{text-align:left;background:#132420;border:0;border-radius:14px;padding:14px;text-decoration:none;color:#fff;font-weight:700}.result-top{display:flex;align-items:center;gap:10px;text-align:left;margin-bottom:12px;font-weight:800}.result-card{display:grid;grid-template-columns:1fr 120px;gap:8px;padding:16px;background:radial-gradient(300px 160px at 90% 20%,rgba(31,224,138,.2),transparent 60%),linear-gradient(160deg,#12382f,#0d221e);margin-bottom:12px}.result-card h1{font-size:42px;letter-spacing:-.05em}.result-card p,.result-card small{color:#c9e6da}.result.is-wide{max-width:520px;margin:0 auto;background:transparent}.where-card,.steps-card{padding:14px;margin-bottom:12px}.where-card>div{display:flex;gap:10px;align-items:center;margin-top:8px}.where-card strong,.steps-card p,.where-card>p{display:block}.bin-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.step-line{display:grid;grid-template-columns:20px 1fr 20px;gap:8px;align-items:center;padding:8px 0;color:#d7eee6}.result .cta{width:100%;margin-top:8px}.desk{min-height:100vh;height:100vh;display:grid;grid-template-columns:252px 1fr;background:#071614;color:#f4fbf8;overflow:hidden}.side{padding:22px 16px;display:flex;flex-direction:column;gap:18px}.side{background:#081916;border-right:1px solid rgba(255,255,255,.04)}.brand-link{text-decoration:none}.side nav{display:grid;gap:6px}.side-link{display:flex;align-items:center;gap:10px;text-decoration:none;border-radius:12px;padding:11px 12px;color:#c5ddd4;font-weight:700}.desk .side-link.is-on{background:#12875c;color:#fff}.side-card{margin-top:auto;padding:16px;border-radius:18px;background:linear-gradient(180deg,#1fe08a29,#1fe08a0d);border:1px solid rgba(31,224,138,.28)}.side-card p{color:#b7d6cb;margin-top:6px;font-size:13px}.desk-main{padding:18px 22px 22px;min-width:0;min-height:0;height:100vh;display:flex;flex-direction:column;overflow:auto}.desk-main>.home-grid,.desk-main>.stats-page,.desk-main>.settings-page{overflow:visible}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.hello,.userchip,.top-actions,.section-head,.page-head,.hist-head{display:flex;align-items:center}.hello{gap:10px;background:#102722;border-radius:999px;padding:8px 14px 8px 8px}.hello i{width:10px;height:10px;border-radius:50%;background:var(--accent);display:block}.hello span,.userchip{color:#b7d2c8}.hello strong{color:#fff}.top-actions{gap:10px}.bell,.userchip{background:#102722;border:0;color:#fff;border-radius:999px}.bell{width:42px;height:42px;display:grid;place-items:center;position:relative}.bell-wrap{position:relative}.bell-pop{position:absolute;right:0;top:48px;width:240px;background:#17312b;border:1px solid var(--line);border-radius:14px;padding:12px;font-size:13px;line-height:1.4;z-index:5}.userchip{text-decoration:none;gap:8px;padding:6px 10px 6px 6px;font-weight:700}.panel-card{padding:16px}.section-head,.page-head,.hist-head{justify-content:space-between;gap:12px;margin-bottom:12px}.section-head a{color:var(--accent);font-weight:800;text-decoration:none}.chip{background:#1fe08a1f;color:#b9ffe0;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.impact-nums{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin-bottom:8px}.recent-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.mini-scan{background:#0d201c;border-radius:16px;padding:8px;border:1px solid rgba(255,255,255,.04)}.mini-scan h3{font-size:14px;margin-top:8px}.mini-scan p{color:var(--muted);font-size:12px;margin:2px 0 8px}.mini-scan footer{display:flex;justify-content:space-between;align-items:center;color:var(--accent)}.mini-scan .art,.impact-hero .art{background:linear-gradient(#efe8df,#b7c3c0)}.art{display:grid;place-items:center;border-radius:14px;overflow:hidden;min-height:84px}.scan-photo{border-radius:14px;overflow:hidden}.scan-thumb{width:100%;height:92px;object-fit:cover;display:block;background:#10241f}.scan-photo.compact{width:42px;height:42px;border-radius:8px;flex:none}.scan-photo.compact .art{min-height:42px;width:42px}.scan-photo.compact .scan-thumb{width:42px;height:42px}.object-cell{display:flex;align-items:center;gap:10px}.art svg{width:78%;height:88%}.tips ul{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:10px}.tips li{display:flex;gap:10px;align-items:flex-start;color:#d5eee4;font-size:14px;line-height:1.4}.tips svg{flex:none;background:var(--accent);color:var(--accent-ink);border-radius:50%;padding:6px}.quote{background:radial-gradient(160px 110px at 100% 100%,rgba(31,224,138,.25),transparent 70%),linear-gradient(160deg,#163a32b3,#0a201c8c)}.quote p{font-size:18px;font-weight:800;line-height:1.35;letter-spacing:-.02em}.quote small{display:block;margin-top:14px;color:#b7d6cb}.desk-main .guide{background:transparent;overflow:visible;padding:0}.desk-main .warning{background:#e7c27a14;padding:10px 12px;border-radius:12px}.guide-panel .guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{align-items:flex-end;margin-bottom:16px}.summary{display:grid;grid-template-columns:1.5fr repeat(3,.7fr);gap:12px}.big-stat{display:grid;grid-template-columns:1fr 1fr;gap:18px}.big-stat>div{min-width:0}.big-stat strong,.mini-stat strong{color:var(--accent);letter-spacing:-.05em;display:block}.big-stat strong{font-size:58px;line-height:.95}.big-stat span,.mini-stat span,.mini-stat small{display:block;color:var(--muted)}.mini-stat strong{font-size:34px;margin:8px 0 2px}.mid-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px;margin-top:12px}.chart{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;min-height:190px}.chart-col{display:flex;flex-direction:column;align-items:center;gap:6px;height:190px;color:#d5eee4;font-size:12px;font-weight:700}.chart-track{flex:1;width:100%;display:flex;align-items:flex-end}.chart-track i{display:block;width:100%;max-width:36px;margin:0 auto;border-radius:8px 8px 4px 4px;background:#1d6a4c}.chart-track i.is-today{background:var(--accent)}.bars{list-style:none;padding:0;margin:0;display:grid;gap:12px}.bars li{display:grid;grid-template-columns:132px 1fr 28px;gap:8px;align-items:center;font-size:13px}.bars-track{height:8px;background:#ffffff14;border-radius:99px;overflow:hidden}.bars-track b{display:block;height:100%;border-radius:inherit}.hist{margin-top:12px}.filters{display:flex;flex-wrap:wrap;gap:4px;background:#ffffff0a;border-radius:999px;padding:4px}.filters button{border:0;background:transparent;border-radius:999px;padding:8px 12px;color:#b7d2c8;font-weight:700}.filters button.is-on{background:var(--accent);color:var(--accent-ink)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:12px;color:var(--muted);font-weight:700;padding:8px 10px}td{padding:13px 10px;border-top:1px solid var(--line);font-size:14px;white-space:nowrap}td:first-child{display:flex;align-items:center;gap:8px}.action-pill{background:#ffffff0f;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.cert{font-weight:800;color:#e7c27a}.cert.high{color:var(--accent)}.model-stats,.stats-nums{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.model-stats article span,.stats-nums span{color:var(--muted);font-size:13px}.model-stats strong,.stats-nums strong{display:block;margin-top:6px;font-size:22px}.model-page>.panel-card+.panel-card{margin-top:12px}.pipeline ol{margin:8px 0 0;padding-left:18px;display:grid;gap:6px;line-height:1.45;color:#d5eee4}.model-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.model-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;border-radius:14px;padding:12px 14px;background:#ffffff08;border:1px solid var(--line)}.model-list small{display:block;color:var(--muted);margin-top:2px}.model-list .ok span{color:var(--accent);font-weight:800}.model-list .bad span{color:#ffb1a4;font-weight:800}.stats-nums{grid-template-columns:repeat(4,1fr)}.status-card strong{display:flex;align-items:center;gap:8px}.status-card strong i{width:8px;height:8px;border-radius:50%;background:var(--accent);display:block;flex:none}.status-card.is-wait strong i{background:#e7c27a}.status-card.is-off{background:#ff8c7814;border-color:#ff8c784d}.status-card.is-off strong i{background:#ff8c78}.status-card .text-btn{text-align:left;padding:0;color:var(--accent)}.ghost-btn{width:100%;margin-top:10px;border:1px solid rgba(31,224,138,.45);background:#1fe08a14;color:#d9ffe9;border-radius:999px;padding:13px 18px;font-weight:800}.ghost-btn:disabled{opacity:.65;cursor:wait}.settings-actions{display:flex;gap:10px;align-items:center}.settings-actions .ghost-btn{width:auto;margin-top:0}.cta-sm{padding:10px 14px;box-shadow:none}.load-error{display:grid;justify-items:start;gap:8px;padding:20px;border-radius:20px;background:#ff8c780f;border:1px solid rgba(255,140,120,.25)}.load-error p{color:var(--muted)}.stats-nums article,.settings-card,.settings-list{background:linear-gradient(160deg,#163a329e,#0a201c80);border:1px solid rgba(190,255,230,.1);border-radius:18px;padding:16px}.settings-card{display:flex;gap:14px;align-items:center;margin-bottom:12px}.settings-list{display:grid;gap:12px;margin-bottom:16px}.settings-list div{display:flex;justify-content:space-between;gap:12px}.settings-list span{color:#b7d6cb}.desk-scan-frame{height:640px;margin-top:20px;border-radius:28px;overflow:hidden;border:1px solid rgba(190,255,230,.12);background:#0b1613;box-shadow:0 24px 60px #00000059}.scan-desk{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,420px);height:100%;min-height:560px}.scan-desk .scan-stage{position:relative;min-height:420px;height:100%}.scan-desk .scan-shade{display:none}.scan-desk .scan-stage{background:radial-gradient(420px 260px at 50% 50%,rgba(29,226,141,.08),transparent 70%),#0b1613}.scan-desk .scan-drop{top:76px;right:24px;bottom:24px;left:24px;align-content:center;border:2px dashed rgba(29,226,141,.45);border-radius:22px;background:#1de28d0a;animation:drop-glow 3s ease-in-out infinite}@keyframes drop-glow{0%,to{box-shadow:inset 0 0 #1de28d00}50%{box-shadow:inset 0 0 40px #1de28d1f}}.scan-desk .scan-sheet{position:relative;left:auto;right:auto;bottom:auto;max-height:none;height:100%;border-radius:0;border-left:1px solid rgba(255,255,255,.08);background:#101c19}.stats-page .mid-grid{margin-top:0}.glass{background:linear-gradient(160deg,#163a329e,#0a201c80);border:1px solid rgba(190,255,230,.12);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 18px 40px #00000047,inset 0 1px #ffffff0d}.glass-card{padding:16px;border-radius:20px;background:linear-gradient(160deg,#163a329e,#0a201c80);border:1px solid rgba(190,255,230,.12);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 14px 34px #00000038}.glass-card h2{font-size:16px;margin-bottom:10px}.aurora{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.aurora i{position:absolute;width:52vmax;height:52vmax;border-radius:50%;filter:blur(70px);opacity:.32;animation:drift 20s ease-in-out infinite alternate}.aurora i:nth-child(1){background:#1de28d;left:-18vmax;top:-20vmax}.aurora i:nth-child(2){background:#19c5c5;right:-22vmax;top:10vmax;animation-duration:26s;opacity:.22}.aurora i:nth-child(3){background:#0f8f62;left:20vmax;bottom:-30vmax;animation-duration:30s}.cta-glow{position:relative;overflow:hidden;background:linear-gradient(90deg,#1de28d,#19c5c5);box-shadow:0 12px 34px #1de28d59}.cta-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translate(-120%);animation:shimmer 3.8s ease-in-out infinite}.cta-glow:hover{filter:brightness(1.08);background:linear-gradient(90deg,#1de28d,#19c5c5)}.grad,.page-hero em{background:linear-gradient(90deg,#1de28d,#19c5c5);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:normal}.welcome-hero{position:relative;min-height:100vh;overflow:hidden;display:flex;flex-direction:column;align-items:center;padding:18px 18px 40px;background:radial-gradient(700px 460px at 42% 38%,rgba(29,226,141,.16),transparent 65%),linear-gradient(180deg,#031a14,#0a2e24)}.welcome-top{position:relative;z-index:2}.hero-stage{position:relative;z-index:1;width:min(1060px,100%);display:flex;flex-direction:column;align-items:center}.scene{position:relative;width:min(560px,100%,calc((100vh - 330px)*1.2));min-width:min(300px,100%);aspect-ratio:600 / 500;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.scene-svg{width:100%;height:100%;overflow:visible}.stars circle{fill:#e9fff6;animation:twinkle 3.6s ease-in-out infinite}.orbit-line{fill:none;stroke:#a0ffd733;stroke-width:1.5}.planet{overflow:visible}.planet-halo{transform-box:fill-box;transform-origin:center;animation:halo 5s ease-in-out infinite}.planet.is-spinning .planet-lands{animation:lands 26s linear infinite}.scene-planet.is-pulse{transform-box:fill-box;transform-origin:center;animation:pulse .6s ease-out}.arm{transform-box:view-box;transform-origin:318px 196px;animation:wave 6s ease-in-out infinite}.phone-glow{animation:glow 2.4s ease-in-out infinite}.phone-text{font:700 7.5px var(--font);fill:#bfffe6}.drop-item{transform-box:view-box;transform-origin:0 0;animation:drop 3.6s cubic-bezier(.5,0,.9,.5) infinite}.mini-bag{transform-box:fill-box;transform-origin:50% 100%;animation:bag-bounce 3.6s ease-in-out infinite}.bag-spark{transform-box:fill-box;transform-origin:center;opacity:0;animation:spark 3.6s ease-out infinite}.planet-hit{position:absolute;left:18.67%;top:28.4%;width:39.33%;height:47.2%;border-radius:50%;border:0;background:transparent;cursor:grab;touch-action:none}.planet-hit:active{cursor:grabbing}.planet-hit:focus-visible{outline:3px solid var(--accent);outline-offset:8px}.fact-bubble{position:absolute;left:0;top:4%;max-width:250px;padding:10px 12px;border-radius:16px 16px 16px 4px;font-size:13px;line-height:1.4;color:#e7fff5;background:#0c2821b8;border:1px solid rgba(190,255,230,.16);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fact-in .5s cubic-bezier(.2,.8,.2,1) both}.fact-bubble span{display:block;color:var(--accent);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}.scene-hint{position:absolute;left:38.3%;bottom:1%;transform:translate(-50%);white-space:nowrap;color:#8eaea4;font-size:12px}.impact-panel{position:relative;z-index:2;width:min(400px,100%);padding:16px;border-radius:22px;animation:panel-up .5s cubic-bezier(.2,.8,.2,1) both}.impact-panel header{display:flex;justify-content:space-between;align-items:center}.impact-panel h2{font-size:18px}.panel-close{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);background:#ffffff0d;color:#d5eee4;display:grid;place-items:center}.impact-note{color:var(--muted);font-size:13px;line-height:1.4;margin:6px 0 12px}.impact-counters{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.impact-counters div{background:#ffffff0a;border-radius:14px;padding:10px 6px;text-align:center}.impact-counters strong{display:block;font-size:22px;color:var(--accent);letter-spacing:-.03em}.impact-counters span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.impact-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 8px;margin-top:14px}.ring{margin:0;position:relative;display:grid;justify-items:center}.ring svg{width:58px;height:58px;transform:rotate(-90deg)}.ring-track{fill:none;stroke:#ffffff14;stroke-width:6}.ring-bar{fill:none;stroke-width:6;stroke-linecap:round}.ring strong{position:absolute;top:20px;font-size:12px}.ring figcaption{color:var(--muted);font-size:11px;margin-top:4px;text-align:center}.welcome-copy{position:relative;z-index:1;text-align:center;max-width:760px;margin-top:6px}.welcome-copy h1{font-size:clamp(32px,5vw,54px);line-height:1.08;letter-spacing:-.045em;font-weight:800}.welcome-copy>p{color:#9eb2aa;line-height:1.5;max-width:470px;margin:12px auto 0}.cta-xl{display:flex;width:min(380px,100%);margin:22px auto 8px;padding:18px;font-size:17px}.welcome-copy .ghost-link{display:block;margin:4px auto 0}@media (min-width: 1040px){.hero-stage.is-open .scene{transform:translate(-190px)}.hero-stage .impact-panel{position:absolute;top:50%;left:calc(50% + 130px);width:350px;animation-name:panel-side}}.auth{position:relative;min-height:100vh;overflow:hidden;display:grid;place-items:center;padding:90px 16px 32px;perspective:1200px;background:radial-gradient(600px 420px at 50% 30%,rgba(29,226,141,.16),transparent 65%),linear-gradient(180deg,#031a14,#0a2e24)}.leaf-rain{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.leaf-rain span{position:absolute;top:-40px;left:calc(var(--i) * 11% + 3%);width:16px;height:10px;border-radius:0 100%;background:linear-gradient(135deg,#8ff0b2,#1fbf73);opacity:.55;animation:leaf-fall calc(9s + var(--i) * 1.3s) linear infinite;animation-delay:calc(var(--i) * -1.7s)}.auth-card{position:relative;z-index:1;width:min(440px,100%);padding:22px 24px 18px;border-radius:28px;text-align:center;transform:rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .25s ease-out,box-shadow .3s;animation:card-in .7s cubic-bezier(.2,.8,.2,1) both}.auth-card.is-shake{animation:shake .45s}.auth-card.is-done{box-shadow:0 0 0 2px #1de28d8c,0 0 70px #1de28d59}.auth-planet{position:relative;width:112px;height:112px;margin:-78px auto 8px;animation:float 6s ease-in-out infinite}.auth-orbit{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:50%;border:1px dashed rgba(160,255,215,.35);animation:spin 14s linear infinite}.auth-orbit:after{content:"";position:absolute;top:8px;left:14px;width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.auth-card .brand{justify-content:center;margin-bottom:14px}.auth-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;background:#ffffff0d;border-radius:999px;padding:4px;margin-bottom:12px}.auth-tabs button{position:relative;z-index:1;border:0;background:none;color:#b7d2c8;font-weight:800;padding:10px;border-radius:999px;transition:color .3s}.auth-tabs button[aria-selected=true]{color:var(--accent-ink)}.auth-tabs-pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:linear-gradient(90deg,#1de28d,#19c5c5);transition:transform .4s cubic-bezier(.2,.8,.2,1)}.auth-tabs[data-mode=register] .auth-tabs-pill{transform:translate(100%)}.auth-lead{color:#9eb2aa;font-size:14px;margin-bottom:14px}.auth-form>*{animation:rise .45s cubic-bezier(.2,.8,.2,1) both}.auth-form>*:nth-child(2){animation-delay:.06s}.auth-form>*:nth-child(3){animation-delay:.12s}.auth-form>*:nth-child(4){animation-delay:.18s}.float-field{position:relative;display:flex;align-items:center;gap:10px;padding:0 12px 0 14px;border-radius:16px;background:#04120f99;border:1px solid rgba(190,255,230,.12);color:#8eaea4;text-align:left;transition:border-color .2s,box-shadow .2s}.float-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px #1de28d26;color:var(--accent)}.float-field input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:22px 0 8px;font-size:15px}.float-field>span{position:absolute;left:42px;top:50%;transform:translateY(-50%);color:#8eaea4;font-size:14px;pointer-events:none;transition:top .2s,font-size .2s,color .2s}.float-field input:focus~span,.float-field input:not(:placeholder-shown)~span{top:14px;font-size:11px;color:var(--accent)}.field-eye{border:0;background:none;color:#8eaea4;padding:6px;display:grid;place-items:center;border-radius:10px}.field-eye:hover{color:#fff}.auth-error{text-align:left}.auth-submit{width:100%;height:52px;margin-top:4px}.spinner{width:20px;height:20px;border-radius:50%;border:3px solid rgba(5,50,34,.25);border-top-color:#053222;animation:spin .8s linear infinite}.auth-divider{display:flex;align-items:center;gap:10px;color:#8eaea4;font-size:12px;margin:14px 0 2px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-card .ghost-link{display:block;margin:8px auto 0}.desk{background:radial-gradient(900px 600px at 60% 10%,rgba(29,226,141,.12),transparent 60%),radial-gradient(700px 500px at 100% 100%,rgba(25,197,197,.08),transparent 60%),#04140f}.desk .side{background:#03120eb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.desk .side-link{transition:background .2s,color .2s}.desk .side-link:hover{background:#ffffff0a;color:#fff}.desk .side-link.is-on{background:linear-gradient(90deg,#1de28d3d,#19c5c50f);color:#fff;box-shadow:inset 3px 0 0 var(--accent),0 8px 24px #1de28d1f}.desk .hello{background:#102c26b3;border:1px solid rgba(190,255,230,.1)}.page-hero{text-align:center;margin:2px 0 18px}.page-hero h1{font-size:clamp(30px,3.6vw,44px);letter-spacing:-.045em;line-height:1.1;font-weight:800}.page-hero p{color:var(--muted);margin-top:6px}.hero-trio{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,1.05fr) minmax(220px,1fr);gap:18px;align-items:center}.tile-stack{display:grid;gap:14px;align-content:center}.stat-tile{display:flex;gap:14px;align-items:center;padding:16px;border-radius:20px;transition:transform .25s}.stat-tile:hover{transform:translateY(-3px)}.stat-emoji{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:14px;background:#1de28d1f;font-size:22px}.stat-tile strong{display:block;font-size:22px;letter-spacing:-.03em}.stat-tile div>span{display:block;color:var(--muted);font-size:13px;margin-top:2px}.bag-stage{display:grid;justify-items:center;gap:12px}.recycle-play{width:min(360px,100%);display:grid;gap:10px;justify-items:center}.bag-drop{position:relative;width:100%;min-height:300px}.bag-drop.is-over .recycle-bag{filter:drop-shadow(0 0 18px rgba(29,226,141,.65))}.toss-item{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(190,255,230,.25);background:#081c18e0;color:#e7fff5;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:grab;animation:bob 5s ease-in-out infinite}.toss-item:active{cursor:grabbing}.toss-dot{width:8px;height:8px;border-radius:50%}.toss-hint,.toss-tip{text-align:center;max-width:330px;margin:0}.toss-hint{color:var(--muted);font-size:13px}.toss-tip{padding:10px 12px}.toss-tip p{margin:4px 0;color:#d5eee4;font-size:13px}.toss-tip em{color:var(--accent);font-style:normal;font-weight:800}.recycle-bag{width:100%;max-width:330px;height:auto;overflow:visible}.hero-trio.is-compact .recycle-bag{max-width:270px}.bag-item{transform-box:fill-box;transform-origin:center;animation:bob 5s ease-in-out infinite;animation-delay:var(--d)}.bag-body{transform-box:fill-box;transform-origin:50% 100%;animation:breathe 6s ease-in-out infinite}.bag-network circle{animation:glow 2.4s ease-in-out infinite}.material-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.material-chips li{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#ffffff0d;border:1px solid var(--line);font-size:12px;font-weight:700}.material-chips i{width:8px;height:8px;border-radius:50%;display:block}.glass-card.tips ul{margin-top:4px}.glass-card.tips svg{padding:4px}.home-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.8fr) minmax(220px,1fr);gap:16px;margin-top:20px}.grow-tree{display:grid;justify-items:center;gap:4px;min-width:88px}.grow-tree p{display:grid;gap:2px;text-align:center;margin:0}.grow-tree p span,.grow-tree small{color:var(--muted);font-size:11px}.tree-svg{width:80px;height:90px}.grow-tree.is-compact .tree-svg{width:56px;height:64px}.grove{display:flex;gap:10px;overflow:auto;padding:4px 0 12px}.grove>div{display:grid;justify-items:center;gap:4px;min-width:72px}.grove span{font-size:12px;font-weight:700}.code-ttl{letter-spacing:0;font-weight:700;color:var(--accent)}.level-card{display:flex;gap:14px;align-items:center}.level-emoji{font-size:40px;animation:float 5s ease-in-out infinite}.level-card small{color:var(--muted);font-size:12px}.level-card h2{font-size:20px;margin:2px 0 8px}.level-bar{height:8px;border-radius:99px;background:#ffffff14;overflow:hidden}.level-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1de28d,#19c5c5);transition:width 1s ease-out}.level-card p{color:var(--muted);font-size:12px;margin-top:6px}.step-card strong{display:block;font-size:15px}.step-card p{color:var(--muted);font-size:13px;margin-top:4px}.hint-dim{color:var(--muted);font-size:12px;margin:10px 0}.timeline{margin-top:20px}.timeline ol{list-style:none;padding:0;margin:6px 0 0;display:grid;gap:14px}.timeline li{position:relative;display:flex;gap:14px;align-items:center}.timeline li>span{position:relative;z-index:1;flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#1de28d,#19c5c5);color:#053222;font-weight:800}.timeline li:not(:last-child):after{content:"";position:absolute;left:15px;top:32px;width:2px;height:14px;background:#1de28d66}.timeline p{color:#d5eee4;line-height:1.45}.head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.head-actions .ghost-btn{width:auto;margin:0;display:inline-flex;align-items:center;gap:6px;padding:11px 16px;text-decoration:none}.auth-guest-note,.auth-moved{font-size:13px;line-height:1.4;padding:10px 12px;border-radius:14px;margin-bottom:12px;text-align:left}.auth-guest-note{background:#1de28d14;border:1px solid rgba(29,226,141,.25);color:#d9ffe9}.auth-moved{background:#1de28d2e;color:#fff;font-weight:800;animation:rise .4s both}.points-link{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;margin:4px 0 8px}.rooms-grid{display:grid;grid-template-columns:minmax(250px,320px) minmax(0,1fr);gap:18px;align-items:start}.room-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.room-list button{width:100%;text-align:left;border:1px solid var(--line);background:#ffffff08;color:#fff;border-radius:14px;padding:10px 12px;transition:background .2s,border-color .2s}.room-list button:hover{background:#ffffff0f}.room-list button.is-on{border-color:var(--accent);background:#1de28d1f}.room-list strong,.room-list small{display:block}.room-list small{color:var(--muted);margin-top:2px}.room-form{display:grid;gap:10px}.room-form h2{margin-bottom:0}.room-form input,.points-search input{background:#04120f99;border:1px solid rgba(190,255,230,.12);border-radius:12px;padding:11px 12px;color:#fff;outline:0}.room-form input:focus,.points-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1de28d26}.room-form .ghost-btn{margin-top:0}.rooms-guest{max-width:520px;margin:0 auto;text-align:center;display:grid;gap:10px;justify-items:center;padding:28px}.rooms-guest>span{font-size:46px}.rooms-guest p{color:var(--muted)}.ranking-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.ranking-head h2{font-size:22px;margin-bottom:4px}.ranking-head p{color:var(--muted);font-size:13px}.code-chip{display:inline-flex;align-items:center;gap:6px;border:1px dashed rgba(29,226,141,.6);background:#1de28d1a;color:#d9ffe9;border-radius:12px;padding:8px 12px;font-weight:800;letter-spacing:.12em}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:end;margin:6px 0 16px}.podium-step{display:grid;justify-items:center;gap:2px;padding:14px 8px;border-radius:18px 18px 8px 8px;background:linear-gradient(180deg,#1de28d29,#1de28d0a);border:1px solid rgba(29,226,141,.2);animation:rise .5s both}.podium-step.step-1{order:2;min-height:150px;background:linear-gradient(180deg,#ffd16638,#1de28d0d)}.podium-step.step-2{order:1;min-height:120px;animation-delay:.1s}.podium-step.step-3{order:3;min-height:100px;animation-delay:.2s}.podium-step.is-me{box-shadow:0 0 0 2px var(--accent)}.podium-step .medal{font-size:32px}.podium-step strong{text-align:center}.podium-step small{color:var(--muted)}.ranking-card tr.is-me td{background:#1de28d14}.ranking-card td:first-child{display:table-cell;font-weight:800;color:var(--accent)}.me-badge{margin-left:8px;font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px;background:var(--accent);color:var(--accent-ink)}.leave-btn{width:auto;margin-top:12px;color:#ffb1a4}.points-search{display:flex;align-items:center;gap:10px;padding:10px 12px;margin-bottom:12px;color:var(--accent)}.points-search input{flex:1;min-width:0}.city-chips{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:-4px 0 12px}.city-chips-label{font-size:12px;color:var(--muted);font-weight:600;margin-right:4px}.city-chips button{border:1px dashed rgba(29,226,141,.3);background:#1de28d0d;color:#beffe6;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.city-chips button:hover{background:#1de28d26;border-color:var(--accent)}.city-chips button.is-on{background:var(--accent);color:var(--accent-ink);border-color:transparent}.kind-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.kind-chips button{border:1px solid var(--line);background:#ffffff0a;color:#d5eee4;border-radius:999px;padding:7px 12px;font-weight:700;font-size:13px}.kind-chips button.is-on{background:linear-gradient(90deg,#1de28d,#19c5c5);color:var(--accent-ink);border-color:transparent}.points-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:16px}.points-map{padding:0;overflow:hidden;min-height:520px}.leaflet-host{width:100%;height:100%;min-height:520px;background:#0b1613}.leaflet-container{font-family:var(--font)}.leaflet-host .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.9) contrast(.92) saturate(.55)}.leaflet-control-attribution{background:#081410c7!important;color:#9ecbb8!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#10241f;color:#e7fff5}.leaflet-popup-content a{color:var(--accent);font-weight:800}.leaflet-container a.leaflet-popup-close-button{color:#d5eee4}.points-list{max-height:560px;overflow:auto}.points-list ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}.points-list li{display:grid;gap:6px;padding:10px;border-radius:14px;background:#ffffff08;border:1px solid var(--line)}.point-row{text-align:left;border:0;background:none;color:#fff;padding:0;display:grid;gap:2px}.point-row small{color:var(--muted)}.point-kinds{color:var(--accent);font-size:12px;font-weight:700}.point-kinds.dim{color:var(--muted);font-weight:600}.point-go{justify-self:start;color:var(--accent);font-weight:800;font-size:13px;text-decoration:none}.points-note{color:var(--muted);font-size:12px;margin-top:12px}.points-note a{color:var(--accent)}.report-page{min-height:100vh;background:#eef3f0;color:#10241c;padding:24px 16px 40px}.report-actions{max-width:900px;margin:0 auto 14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.report-actions .ghost-link{color:#12875c}.report-actions span{color:#5d7268;font-size:13px}.report{max-width:900px;margin:0 auto;background:#fff;border-radius:18px;padding:32px;box-shadow:0 20px 50px #10241c1f}.report-head{display:flex;gap:14px;align-items:center;padding-bottom:18px;border-bottom:2px solid #1de28d;margin-bottom:18px}.report-head h1{font-size:28px;letter-spacing:-.03em}.report-head p{color:#5d7268}.report-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:22px}.report-stats div{background:#f2f8f5;border-radius:12px;padding:12px;text-align:center}.report-stats strong{display:block;font-size:22px;color:#12875c}.report-stats span{font-size:12px;color:#5d7268}.report h2{font-size:17px;margin:18px 0 8px}.report-table{width:100%;border-collapse:collapse;font-size:12.5px}.report-table th{color:#5d7268;border-bottom:1px solid #d7e3dc;padding:8px 6px}.report-table td{border-top:1px solid #edf2ef;padding:8px 6px;white-space:normal}.report-table td:first-child{display:table-cell}.report-table td i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px}.report-empty{color:#5d7268}.report-foot{margin-top:24px;color:#8aa096;font-size:12px;text-align:center}.report-page .load-error p,.report-page .loading{color:#5d7268}@media print{@page{margin:14mm}body,.report-page{background:#fff!important}.report-page{padding:0}.report-actions{display:none}.report{box-shadow:none;border-radius:0;padding:0;max-width:none}.report-table tr{break-inside:avoid}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@keyframes drift{to{transform:translate(8vmax,6vmax) scale(1.12)}}@keyframes shimmer{0%,55%{transform:translate(-120%)}85%,to{transform:translate(120%)}}@keyframes twinkle{0%,to{opacity:.25}50%{opacity:1}}@keyframes halo{0%,to{transform:scale(1);opacity:.85}50%{transform:scale(1.05);opacity:1}}@keyframes lands{to{transform:translate(-480px)}}@keyframes pulse{0%{transform:scale(1)}35%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes wave{0%,to{transform:rotate(0)}50%{transform:rotate(-4deg)}}@keyframes glow{0%,to{opacity:1}50%{opacity:.6}}@keyframes drop{0%{transform:translate(424px,132px) rotate(0) scale(.9);opacity:0}8%{opacity:1}58%{transform:translate(515px,366px) rotate(220deg) scale(1);opacity:1}64%,to{transform:translate(515px,386px) rotate(240deg) scale(.4);opacity:0}}@keyframes bag-bounce{0%,58%{transform:scale(1)}63%{transform:scale(1.07,.9)}69%{transform:scale(.97,1.05)}75%,to{transform:scale(1)}}@keyframes spark{0%,60%{opacity:0;transform:scale(.3)}66%{opacity:1;transform:scale(1.1)}80%,to{opacity:0;transform:scale(1.5)}}@keyframes fact-in{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}@keyframes panel-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes panel-side{0%{opacity:0;transform:translate(30px,-50%)}to{opacity:1;transform:translateY(-50%)}}@keyframes leaf-fall{0%{transform:translateY(-40px) rotate(0)}50%{transform:translate(40px,50vh) rotate(180deg)}to{transform:translate(-20px,110vh) rotate(360deg)}}@keyframes card-in{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg))}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes bob{0%,to{transform:translateY(0) rotate(var(--r, 0deg))}50%{transform:translateY(-12px) rotate(calc(var(--r, 0deg) + 6deg))}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media (max-width: 1180px){.mid-grid,.summary,.guide-panel .guide-grid,.scan-desk{grid-template-columns:1fr}.scan-desk{grid-template-rows:minmax(420px,1fr) auto;min-height:0}.scan-desk .scan-stage{min-height:420px}.scan-desk .scan-sheet{height:auto;max-height:none}.desk-scan-frame{height:auto}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-nums,.model-stats,.hero-trio{grid-template-columns:1fr 1fr}.bag-stage{grid-column:1 / -1;order:-1}.recycle-bag{max-width:260px}.home-bottom{grid-template-columns:1fr 1fr}.home-bottom>:first-child{grid-column:1 / -1}.rooms-grid,.points-grid{grid-template-columns:1fr}.report-stats{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1000px) and (max-width: 1180px){.scan-desk{grid-template-columns:minmax(0,1.4fr) minmax(280px,380px);grid-template-rows:none;min-height:560px}.scan-desk .scan-sheet{height:100%}}@media (max-width: 860px){.desk{grid-template-columns:1fr;height:auto;overflow:visible}.desk-main{height:auto}.side{border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.side nav{grid-template-columns:repeat(3,minmax(0,1fr))}.side-card{display:none}}@media (max-width: 760px){.stage{padding:0;background:#0c1412}.phone{width:100%;height:100vh;height:100dvh;border:0;border-radius:0;box-shadow:none}.page-head{align-items:stretch;flex-direction:column}.hero-trio,.home-bottom{grid-template-columns:1fr}.fact-bubble{max-width:50%;top:0;font-size:11.5px;padding:8px 10px}.impact-panel{margin-top:4px}}
