.lp{--lp-bg: #f4f1ea;--lp-surface: #fbfaf6;--lp-surface-2: #ece6d8;--lp-ink: #1b1a15;--lp-ink-soft: #3c3a30;--lp-muted: #6f6a5c;--lp-green: #127a52;--lp-green-deep: #0b5f40;--lp-green-soft: #e2ede6;--lp-clay: #b5623a;--lp-border: #e3ddcd;--lp-line: #d6cfbc;--lp-dark: #17160f;--lp-dark-2: #211f15;--lp-on-dark: #f2efe6;--lp-on-dark-muted: #a9a390;--lp-shadow: 0 34px 70px -34px rgba(28, 22, 8, .4);--lp-shadow-sm: 0 10px 26px -14px rgba(28, 22, 8, .3);--lp-serif: ui-serif, Georgia, "Iowan Old Style", "Palatino Linotype", "Times New Roman", serif;--lp-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--lp-max: 1180px;color-scheme:light;background:var(--lp-bg);color:var(--lp-ink);font-family:var(--lp-sans);-webkit-font-smoothing:antialiased;min-height:100dvh;overflow-x:clip}body.on-landing{background:#f4f1ea}.lp *,.lp *:before,.lp *:after{box-sizing:border-box}.lp-container{width:100%;max-width:var(--lp-max);margin:0 auto;padding-inline:clamp(18px,5vw,44px)}.lp-skip{position:absolute;left:-9999px;top:10px;background:var(--lp-green);color:#fff;padding:10px 16px;border-radius:8px;z-index:80}.lp-skip:focus{left:16px}.lp :focus-visible{outline:2px solid var(--lp-green);outline-offset:3px;border-radius:3px}.lp-kicker{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--lp-green-deep);margin:0 0 18px}.lp-kicker:before{content:"";width:26px;height:1px;background:var(--lp-green)}.lp-kicker--onDark{color:#7fd6ac}.lp-kicker--onDark:before{background:#7fd6ac}.lp-display{font-family:var(--lp-serif);font-weight:600;letter-spacing:-.02em;line-height:1.02;color:var(--lp-ink);margin:0;font-size:clamp(2.6rem,6.4vw,5.1rem)}.lp-h2{font-family:var(--lp-serif);font-weight:600;letter-spacing:-.015em;line-height:1.08;margin:0;font-size:clamp(1.9rem,3.8vw,3.1rem);max-width:20ch}.lp-lead{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.6;color:var(--lp-ink-soft);max-width:46ch;margin:22px 0 0}.lp-p{font-size:1.02rem;line-height:1.7;color:var(--lp-muted);max-width:54ch;margin:0}.lp-fine{font-size:.86rem;line-height:1.6;color:var(--lp-muted);max-width:60ch}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--lp-sans);font-size:1rem;font-weight:600;padding:13px 22px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;text-decoration:none;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease}.lp-btn--primary{background:var(--lp-green);color:#fff}.lp-btn--primary:hover{background:var(--lp-green-deep);transform:translateY(-1px)}.lp-btn--ghost{background:transparent;color:var(--lp-ink);border-color:var(--lp-line)}.lp-btn--ghost:hover{border-color:var(--lp-ink)}.lp-btn--onDark{background:#fff;color:var(--lp-dark)}.lp-btn--onDark:hover{transform:translateY(-1px)}.lp-nav{position:sticky;top:0;z-index:60;transition:background .25s ease,border-color .25s ease;border-bottom:1px solid transparent}.lp-nav.is-scrolled{background:#f4f1eadb;-webkit-backdrop-filter:saturate(1.1) blur(8px);backdrop-filter:saturate(1.1) blur(8px);border-bottom-color:var(--lp-border)}.lp-nav__inner{display:flex;align-items:center;gap:20px;padding-block:18px}.lp-brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--lp-serif);font-weight:600;font-size:1.32rem;letter-spacing:-.01em;color:var(--lp-ink);text-decoration:none}.lp-brand__mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--lp-green);color:#fff}.lp-nav__links{display:flex;gap:26px;margin-left:auto}.lp-nav__links a{color:var(--lp-ink-soft);text-decoration:none;font-size:.98rem;font-weight:500;padding-block:4px;border-bottom:1.5px solid transparent}.lp-nav__links a:hover{color:var(--lp-ink);border-bottom-color:var(--lp-green)}.lp-nav__cta{flex:none}.lp-menu-btn{display:none;margin-left:auto;width:44px;height:44px;align-items:center;justify-content:center;background:transparent;border:1px solid var(--lp-line);border-radius:10px;color:var(--lp-ink);cursor:pointer}.lp-mobile{display:none;flex-direction:column;gap:2px;padding:6px 0 18px}.lp-mobile a{color:var(--lp-ink);text-decoration:none;font-size:1.1rem;padding:13px 6px;border-bottom:1px solid var(--lp-border)}.lp-mobile .lp-btn{margin-top:14px}.lp-section{padding-block:clamp(64px,9vw,132px)}.lp-section--tight{padding-block:clamp(48px,6vw,88px)}.lp-section__head{max-width:42ch;margin-bottom:clamp(34px,5vw,60px)}.lp-rule{height:1px;background:var(--lp-border);border:0;margin:0}.lp-hero{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:clamp(28px,5vw,64px);padding-block:clamp(40px,6vw,88px) clamp(52px,7vw,104px)}.lp-hero__copy{max-width:34rem}.lp-hero .lp-display{font-size:clamp(2.7rem,6.6vw,5.3rem)}.lp-hero__ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.lp-hero__note{margin:22px 0 0;font-size:.9rem;color:var(--lp-muted);display:inline-flex;align-items:center;gap:8px}.lp-hero__note .dot-qr,.lp-hero__note .dot-nfc{width:8px;height:8px;border-radius:50%;display:inline-block}.lp-hero__note .dot-qr{background:var(--lp-green)}.lp-hero__note .dot-nfc{background:var(--lp-clay)}.lp-hero__scene{overflow:hidden;border-radius:20px}.pcs{position:relative;width:100%;min-height:420px;display:grid;place-items:center;perspective:1400px}.pcs__floor{position:absolute;left:8%;right:8%;bottom:12%;height:40px;background:radial-gradient(ellipse at center,rgba(28,22,8,.22),transparent 70%);filter:blur(6px);z-index:0}.pcs__stage{position:relative;width:min(340px,78%);transform-style:preserve-3d;z-index:2}.pcs__tilt{position:relative;transform-style:preserve-3d;transition:transform .3s ease}.pcard{position:relative;border-radius:20px;transform-style:preserve-3d;box-shadow:var(--lp-shadow)}.pcard__body{position:relative;border-radius:20px;padding:20px;background:linear-gradient(155deg,#fff,#f6f3ec 60%,#efe9dc);border:1px solid rgba(0,0,0,.06);overflow:hidden}.pcard__body:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,rgba(255,255,255,.7) 0%,transparent 32%);mix-blend-mode:screen;pointer-events:none}.pcard__edge{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;background:linear-gradient(#d9d2c2,#c8c0ad);transform:translateZ(-10px) translateY(7px);z-index:-1}.pcard__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.pcard__brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--lp-serif);font-weight:600;font-size:1.05rem;color:var(--lp-ink)}.pcard__brand .lp-brand__mark{width:24px;height:24px;border-radius:7px}.pcard__nfc{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:var(--lp-green-deep)}.pcard__qr{position:relative;background:#fff;border-radius:12px;padding:14px;border:1px solid rgba(0,0,0,.05);aspect-ratio:1;display:grid;place-items:center;overflow:hidden}.pcard__qr svg{width:100%;height:100%;display:block}.pcard__foot{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.pcard__url{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.72rem;color:var(--lp-muted)}.pcs__nfc{position:absolute;top:22%;right:4%;width:84px;height:84px;z-index:3;pointer-events:none}.pcs__nfc span{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid var(--lp-green);border-radius:50%;opacity:0}.pcs__beam{position:absolute;left:6px;right:6px;top:0;height:28%;background:linear-gradient(180deg,rgba(18,122,82,.4),transparent);border-bottom:2px solid var(--lp-green);border-radius:4px;opacity:0;pointer-events:none;z-index:4}.pcs__phone{position:absolute;right:-6%;bottom:6%;width:96px;height:190px;border-radius:22px;background:linear-gradient(160deg,#26241b,#131109);border:3px solid #322f24;box-shadow:var(--lp-shadow-sm);transform:translate(30px) rotate(8deg);opacity:0;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .5s ease;z-index:5}.pcs__phone:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:34px;height:4px;border-radius:3px;background:#3f3c2e}.pcs__dest{position:absolute;top:8%;left:3%;display:inline-flex;align-items:center;gap:8px;background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:12px;padding:9px 13px;font-size:.82rem;font-weight:600;color:var(--lp-ink);box-shadow:var(--lp-shadow-sm);z-index:6}.pcs__dest .swatch{width:20px;height:20px;border-radius:6px;display:grid;place-items:center;color:#fff}.pcs__status{position:absolute;left:3%;bottom:22%;display:inline-flex;align-items:center;gap:8px;background:var(--lp-ink);color:#fff;border-radius:10px;padding:9px 13px;font-size:.8rem;font-weight:600;box-shadow:var(--lp-shadow-sm);opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s ease;z-index:6}.pcs__status.is-on{opacity:1;transform:none}.pcs__status .tick{width:16px;height:16px;border-radius:50%;background:var(--lp-green);color:#fff;display:grid;place-items:center;font-size:10px}.pcs__count{position:absolute;right:3%;top:40%;background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:12px;padding:10px 12px;box-shadow:var(--lp-shadow-sm);z-index:6;min-width:92px}.pcs__count .row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.78rem}.pcs__count .row+.row{margin-top:5px}.pcs__count .k{color:var(--lp-muted)}.pcs__count .v{font-variant-numeric:tabular-nums;font-weight:700}.pcs__count .v.qr{color:var(--lp-green-deep)}.pcs__count .v.nfc{color:var(--lp-clay)}@media(prefers-reduced-motion:no-preference){.pcs.is-running .pcs__stage{animation:pcs-settle 12s ease-in-out infinite}.pcs.is-running[data-step=tap] .pcs__phone,.pcs.is-running[data-step=scan] .pcs__phone{opacity:1;transform:translate(0) rotate(6deg)}.pcs.is-running[data-step=tap] .pcs__nfc span{animation:pcs-pulse 1.8s ease-out 2}.pcs.is-running[data-step=tap] .pcs__nfc span:nth-child(2){animation-delay:.5s}.pcs.is-running[data-step=tap] .pcs__nfc span:nth-child(3){animation-delay:1s}.pcs.is-running[data-step=scan] .pcs__beam{animation:pcs-scan 1.6s ease-in-out 1}}@keyframes pcs-settle{0%,to{transform:rotateX(6deg) rotateY(-9deg) translateY(0)}50%{transform:rotateX(4deg) rotateY(-6deg) translateY(-8px)}}@keyframes pcs-pulse{0%{transform:scale(.5);opacity:.75}to{transform:scale(1.5);opacity:0}}@keyframes pcs-scan{0%{top:4%;opacity:0}15%{opacity:.95}85%{top:66%;opacity:.95}to{top:66%;opacity:0}}.pcs.is-static .pcs__stage{transform:rotateX(5deg) rotateY(-8deg)}.pcs.is-static .pcs__status{opacity:1;transform:none}.lp-format{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px);align-items:center;padding-block:clamp(40px,5vw,72px)}.lp-format+.lp-format{border-top:1px solid var(--lp-border)}.lp-format:nth-child(2n) .lp-format__art{order:-1}.lp-format__copy h3{font-family:var(--lp-serif);font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:600;letter-spacing:-.01em;margin:0 0 14px}.lp-format__tags{display:flex;flex-wrap:wrap;gap:8px 20px;margin:18px 0 0;padding:0;list-style:none}.lp-format__tags li{color:var(--lp-ink-soft);font-size:.92rem;display:inline-flex;align-items:center;gap:8px}.lp-format__tags li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--lp-green)}.lp-scene{position:relative;border-radius:18px;background:radial-gradient(120% 90% at 50% 0%,var(--lp-surface) 0%,var(--lp-surface-2) 100%);border:1px solid var(--lp-border);min-height:300px;display:grid;place-items:center;padding:34px;overflow:hidden}.lp-scene:after{content:"";position:absolute;left:12%;right:12%;bottom:46px;height:26px;background:radial-gradient(ellipse at center,rgba(28,22,8,.18),transparent 70%);filter:blur(5px)}.mock-stand{position:relative;width:min(230px,70%);aspect-ratio:3 / 4;border-radius:14px 14px 4px 4px;background:linear-gradient(160deg,#fff,#efe9db);border:1px solid rgba(0,0,0,.07);box-shadow:var(--lp-shadow);transform:rotateX(6deg);display:grid;place-items:center;padding:20px;z-index:1}.mock-stand:before{content:"";position:absolute;bottom:-14px;left:30%;right:30%;height:16px;border-radius:0 0 8px 8px;background:linear-gradient(#e7e0cf,#d3cbb6)}.mock-tag{position:relative;width:min(150px,46%);aspect-ratio:2 / 3;border-radius:12px;background:linear-gradient(160deg,#fff,#efe9db);border:1px solid rgba(0,0,0,.07);box-shadow:var(--lp-shadow);transform:rotate(-5deg);display:grid;place-items:center;padding:16px}.mock-tag:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:12px;height:12px;border-radius:50%;border:2px solid var(--lp-line)}.mock-sign{position:relative;width:min(280px,82%);aspect-ratio:5 / 3;border-radius:14px;background:linear-gradient(160deg,#fff,#efe9db);border:1px solid rgba(0,0,0,.07);box-shadow:var(--lp-shadow);display:flex;align-items:center;gap:18px;padding:22px}.mock-qr{flex:none;width:42%;aspect-ratio:1;border-radius:10px;background:#fff;border:1px solid rgba(0,0,0,.06);display:grid;place-items:center;padding:10px}.mock-copy{min-width:0}.mock-copy .b{font-family:var(--lp-serif);font-weight:600;color:var(--lp-ink);font-size:1.05rem}.mock-copy .s{color:var(--lp-muted);font-size:.82rem;margin-top:4px}.decor-qr{width:100%;height:100%;display:block}.lp-editable{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,64px);align-items:center}.lp-editable__card{position:relative;justify-self:center;width:min(300px,88%)}.lp-editable__switch{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.lp-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1.5px solid var(--lp-line);background:transparent;color:var(--lp-ink-soft);font-size:.9rem;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.lp-chip.is-on{border-color:var(--lp-green);color:var(--lp-green-deep);background:var(--lp-green-soft)}.lp-editable__points{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}.lp-editable__points li{display:flex;gap:10px;color:var(--lp-ink-soft);line-height:1.5}.lp-editable__points svg{color:var(--lp-green);flex:none;margin-top:2px}.lp-editable__urlbar{position:absolute;left:50%;bottom:-18px;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;background:var(--lp-ink);color:#fff;padding:8px 14px;border-radius:999px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.74rem;white-space:nowrap;box-shadow:var(--lp-shadow-sm)}.lp-editable__urlbar .fixed{color:#7fd6ac;font-size:.62rem;font-family:var(--lp-sans);letter-spacing:.04em}.lp-steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;counter-reset:step}.lp-steps:before{content:"";position:absolute;top:26px;left:6%;right:6%;height:2px;background:linear-gradient(90deg,var(--lp-green),var(--lp-line));z-index:0}.lp-step{position:relative;z-index:1}.lp-step__num{width:52px;height:52px;border-radius:50%;background:var(--lp-bg);border:2px solid var(--lp-green);color:var(--lp-green-deep);display:grid;place-items:center;font-family:var(--lp-serif);font-size:1.3rem;font-weight:600;margin-bottom:18px}.lp-step h3{font-size:1.2rem;margin:0 0 8px;font-weight:650}.lp-step p{margin:0;color:var(--lp-muted);font-size:.95rem;line-height:1.6}.lp-qr__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,3vw,32px) clamp(14px,2.5vw,26px);align-items:end}.lp-qr__item{text-align:center}.lp-qr__art{width:100%;max-width:150px;margin:0 auto}.lp-qr__art svg{width:100%;height:auto;display:block;filter:drop-shadow(var(--lp-shadow-sm))}.lp-qr__item figcaption{margin-top:14px;font-size:.9rem;color:var(--lp-ink-soft);font-weight:500}.lp-qr__features{display:flex;flex-wrap:wrap;gap:8px 24px;margin:clamp(34px,5vw,56px) 0 0;padding:0;list-style:none}.lp-qr__features li{color:var(--lp-ink-soft);font-size:.95rem;display:inline-flex;align-items:center;gap:8px}.lp-qr__features li:before{content:"";width:6px;height:6px;border-radius:2px;background:var(--lp-clay)}.lp-qr__placeholder{min-height:220px;display:grid;place-items:center;color:var(--lp-muted);font-size:.9rem}.lp-analytics{background:var(--lp-dark);color:var(--lp-on-dark);border-radius:clamp(20px,3vw,34px);padding:clamp(34px,5vw,68px);display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(30px,5vw,60px);align-items:center}.lp-analytics .lp-h2{color:#fff}.lp-analytics .lp-p{color:var(--lp-on-dark-muted)}.lp-dash{background:var(--lp-dark-2);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:22px}.lp-dash__tag{display:inline-block;font-size:.74rem;font-weight:700;color:#f2c94c;background:#f2c94c24;border-radius:999px;padding:4px 12px;margin-bottom:16px}.lp-dash__split{display:flex;gap:10px;margin-bottom:18px}.lp-dash__pane{flex:1;border-radius:12px;padding:14px;background:#ffffff0a}.lp-dash__pane .k{font-size:.72rem;color:var(--lp-on-dark-muted)}.lp-dash__pane .v{font-size:1.7rem;font-weight:700;font-variant-numeric:tabular-nums;margin-top:4px}.lp-dash__pane .v.qr{color:#57d9a3}.lp-dash__pane .v.nfc{color:#e79b76}.lp-dash__rows{display:grid;gap:12px}.lp-dash__row{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:center;font-size:.8rem;color:var(--lp-on-dark-muted)}.lp-dash__bar{height:12px;border-radius:6px;background:#ffffff12;overflow:hidden;display:flex}.lp-dash__bar i{display:block;height:100%}.lp-dash__bar i.qr{background:#57d9a3}.lp-dash__bar i.nfc{background:#e79b76}.lp-dash__foot{margin:18px 0 0;font-size:.78rem;color:var(--lp-on-dark-muted);border-top:1px solid rgba(255,255,255,.09);padding-top:14px}.lp-use{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,4vw,56px);align-items:center;padding-block:clamp(36px,4.5vw,64px)}.lp-use+.lp-use{border-top:1px solid var(--lp-border)}.lp-use:nth-child(2n) .lp-use__art{order:-1}.lp-use__copy h3{font-family:var(--lp-serif);font-size:clamp(1.4rem,2.4vw,1.9rem);font-weight:600;margin:0 0 12px}.lp-use__tags{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}.lp-use__tags li{font-size:.84rem;color:var(--lp-ink-soft);border:1px solid var(--lp-border);border-radius:999px;padding:5px 12px}.lp-pilot{text-align:center;max-width:760px;margin:0 auto}.lp-pilot__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:clamp(28px,4vw,44px)}.lp-pilot__slot{border:1.5px dashed var(--lp-line);border-radius:16px;min-height:168px;padding:22px;display:flex;flex-direction:column;gap:14px;text-align:left;background:var(--lp-surface)}.lp-pilot__slot .badge{align-self:flex-start;font-size:.72rem;color:var(--lp-muted);border:1px solid var(--lp-border);border-radius:999px;padding:4px 11px}.lp-pilot__lines span{display:block;height:9px;border-radius:5px;background:var(--lp-surface-2);margin-top:9px}.lp-pilot__lines span:nth-child(2){width:82%}.lp-pilot__lines span:nth-child(3){width:62%}.lp-final{background:var(--lp-dark);color:#fff;border-radius:clamp(20px,3vw,34px);padding:clamp(48px,7vw,92px) clamp(24px,5vw,48px);text-align:center}.lp-final .lp-h2{color:#fff;margin:0 auto;max-width:18ch}.lp-final .lp-p{color:var(--lp-on-dark-muted);margin:18px auto 30px;text-align:center}.lp-foot{border-top:1px solid var(--lp-border)}.lp-foot__inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:26px;padding-block:clamp(36px,5vw,56px) 20px}.lp-foot__desc{color:var(--lp-muted);max-width:38ch;margin:14px 0 0;line-height:1.6;font-size:.94rem}.lp-foot__links{display:flex;flex-direction:column;gap:10px}.lp-foot__links a{color:var(--lp-ink-soft);text-decoration:none;font-size:.95rem}.lp-foot__links a:hover{color:var(--lp-green-deep)}.lp-foot__bar{border-top:1px solid var(--lp-border);padding-block:18px calc(20px + env(safe-area-inset-bottom));color:var(--lp-muted);font-size:.86rem}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}@media(max-width:940px){.lp-hero,.lp-editable,.lp-analytics,.lp-format,.lp-use{grid-template-columns:1fr}.lp-hero__scene,.lp-format:nth-child(2n) .lp-format__art,.lp-use:nth-child(2n) .lp-use__art{order:0}.lp-hero__scene{order:-1}.lp-nav__links,.lp-nav__cta{display:none}.lp-menu-btn{display:inline-flex}.lp-mobile.is-open{display:flex}.lp-steps{grid-template-columns:1fr 1fr;gap:28px 22px}.lp-steps:before{display:none}.lp-qr__grid{grid-template-columns:repeat(2,1fr)}.lp-pilot__grid{grid-template-columns:1fr}}@media(max-width:560px){.lp-steps{grid-template-columns:1fr}.pcs{min-height:360px}.pcs__phone{width:72px;height:144px;right:2%}.pcs__count{right:0;top:44%}.pcs__count,.pcs__dest,.pcs__status{transform:scale(.9)}.lp-editable__urlbar{font-size:.66rem}.pcs__count{right:0}.pcs__dest{left:0}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.lp *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}:root{color-scheme:dark;--bg: #0b1220;--bg-elev: #111a2e;--bg-elev-2: #16223c;--panel: #131d33;--border: #24334f;--border-soft: #1c2942;--text: #e6edf7;--text-dim: #9fb0c9;--text-faint: #6b7d99;--accent: #6366f1;--accent-hover: #7c7ff3;--accent-soft: rgba(99, 102, 241, .16);--qr: #38bdf8;--nfc: #f472b6;--success: #34d399;--danger: #f87171;--warning: #fbbf24;--radius: 12px;--radius-sm: 8px;--shadow: 0 10px 30px rgba(0, 0, 0, .35);--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:var(--accent-hover);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:650;letter-spacing:-.01em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);padding:9px 14px;border-radius:var(--radius-sm);font-size:14px;font-weight:550;cursor:pointer;transition:background .15s,border-color .15s,opacity .15s;white-space:nowrap}.btn:hover:not(:disabled){background:#1d2b48}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{background:transparent;border-color:#f8717180;color:var(--danger)}.btn-danger:hover:not(:disabled){background:#f871711f}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-elev-2)}.btn-sm{padding:6px 10px;font-size:13px}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;font-weight:550;color:var(--text-dim)}.input,.select,.textarea{width:100%;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:10px 12px;font-size:14px;font-family:inherit;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.textarea{resize:vertical;min-height:72px}.field-hint{font-size:12px;color:var(--text-faint)}.field-error{font-size:12px;color:var(--danger)}.input-error{border-color:var(--danger)}.panel{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:20px}.panel-title{font-size:15px;font-weight:600;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:14px}.stat{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:16px 18px}.stat-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:600}.stat-value{font-size:30px;font-weight:700;margin-top:6px;letter-spacing:-.02em}.stat-sub{font-size:13px;color:var(--text-dim);margin-top:4px}.delta-up{color:var(--success)}.delta-down{color:var(--danger)}.delta-flat{color:var(--text-faint)}.badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;border:1px solid var(--border)}.badge-active{color:var(--success);border-color:#34d39966;background:#34d3991a}.badge-inactive{color:var(--text-faint);background:#6b7d991f}.badge-qr{color:var(--qr);border-color:#38bdf866;background:#38bdf81a}.badge-nfc{color:var(--nfc);border-color:#f472b666;background:#f472b61a}.badge-ig{color:#e1306c;border-color:#e1306c66;background:#e1306c1a}.badge-google{color:#fbbf24;border-color:#fbbf2459;background:#fbbf241a}.badge-web{color:#a5b4fc;border-color:#818cf866;background:#818cf81f}.badge-page{color:#5eead4;border-color:#2dd4bf66;background:#2dd4bf1f}.btn-xs{padding:2px 7px;font-size:12px;line-height:1.4}.linklike{background:none;border:0;padding:0;color:var(--accent);cursor:pointer;font:inherit;text-align:left}tr.row-idle{opacity:.62}.page-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.page-form-grid .field{min-width:0}@media(max-width:640px){.page-form-grid{grid-template-columns:1fr}}.panel-lite{border:1px solid var(--border-soft);border-radius:12px;padding:14px 16px;background:var(--surface)}.pa-sources{display:flex;flex-direction:column;gap:10px}.pa-source-row{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:10px;font-size:13px}.pa-source-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pa-source-bar{height:8px;border-radius:999px;background:var(--accent-soft);overflow:hidden}.pa-source-fill{display:block;height:100%;border-radius:999px;background:var(--accent)}.pa-source-val{white-space:nowrap;font-variant-numeric:tabular-nums}.pa-origin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.pa-origin-card{border:1px solid var(--border-soft);border-radius:12px;padding:12px 14px;background:var(--surface)}.pa-origin-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.appearance-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:start}.appearance-preview{display:flex;flex-direction:column;align-items:center}@media(max-width:860px){.appearance-grid{grid-template-columns:1fr}}.dest-preview{margin-top:8px;padding:8px 10px;background:var(--bg);border:1px solid var(--border-soft);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:3px}.dest-preview-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:600}.dest-preview .mono{overflow-wrap:anywhere;color:var(--text-dim)}.table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--border-soft);border-radius:var(--radius)}table.data{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}table.data th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);font-weight:600;padding:12px 14px;border-bottom:1px solid var(--border);background:var(--bg-elev);white-space:nowrap}table.data td{padding:12px 14px;border-bottom:1px solid var(--border-soft);vertical-align:middle}table.data tr:last-child td{border-bottom:none}table.data tbody tr:hover{background:#6366f10d}.num{font-variant-numeric:tabular-nums;text-align:right}table.data th.num{text-align:right}table.data.data-analytics{table-layout:fixed}.mono{font-family:var(--mono);font-size:13px}.url-box{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font-family:var(--mono);font-size:12.5px;color:var(--text-dim);overflow:hidden}.url-box span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:var(--bg-elev);border-right:1px solid var(--border-soft);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px;font-weight:700;font-size:16px}.brand-mark{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--qr));display:grid;place-items:center;font-size:16px}.nav-link{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--text-dim);font-size:14px;font-weight:550}.nav-link:hover{background:var(--bg-elev-2);color:var(--text);text-decoration:none}.nav-link.active{background:var(--accent-soft);color:var(--text)}.nav-spacer{flex:1}.main{min-width:0;display:flex;flex-direction:column}.topbar{display:none;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-soft);background:var(--bg-elev);position:sticky;top:0;z-index:20}.content{padding:24px;max-width:1200px;width:100%;margin:0 auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.page-title{font-size:22px}.page-subtitle{color:var(--text-dim);font-size:14px;margin-top:4px}.section-gap>*+*{margin-top:20px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row-between{justify-content:space-between}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px}.grid-2>*{min-width:0}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.toolbar .field{margin-bottom:0;min-width:140px}.seg-tabs{display:inline-flex;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:2px}.seg-tab{border:none;background:transparent;color:var(--text-dim);font:inherit;font-size:13px;font-weight:550;padding:6px 12px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.seg-tab:hover:not(.is-active){color:var(--text)}.seg-tab.is-active{background:var(--accent);color:#fff}.seg-count{opacity:.75;margin-left:5px;font-variant-numeric:tabular-nums}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(1200px 600px at 50% -10%,#182747,var(--bg))}.login-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--border-soft);border-radius:16px;padding:28px;box-shadow:var(--shadow)}.toast-stack{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:10px;z-index:100;max-width:360px}.toast{background:var(--bg-elev-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;box-shadow:var(--shadow);animation:toast-in .18s ease}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#030712b3;display:grid;place-items:center;padding:20px;z-index:80}.modal{width:100%;max-width:460px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);max-height:90vh;overflow-y:auto}.modal-wide{max-width:720px}.fin-subnav{display:flex;gap:6px;align-items:flex-start}.fin-subnav-scroll{display:flex;gap:6px;flex:1 1 auto;min-width:0;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.fin-pill{flex:0 0 auto;padding:7px 13px;border-radius:999px;border:1px solid var(--border);color:var(--muted);font-size:13px;font-weight:600;white-space:nowrap;text-decoration:none}.fin-pill:hover{color:var(--text);border-color:var(--accent)}.fin-pill.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.fin-filters{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}.fin-filter{flex:0 0 auto;padding:7px 13px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--muted);font-size:13px;font-weight:600;white-space:nowrap;cursor:pointer}.fin-filter:hover{color:var(--text);border-color:var(--accent)}.fin-filter.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.modal-title{font-size:17px;margin-bottom:10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.center-screen{min-height:60vh;display:grid;place-items:center;color:var(--text-dim)}.empty{text-align:center;color:var(--text-dim);padding:36px 20px}.empty-icon{font-size:34px;margin-bottom:8px}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.linklike{background:none;border:none;padding:0;margin:0;color:var(--accent);cursor:pointer;font:inherit;text-align:left}.linklike:hover{text-decoration:underline}.text-qr{color:var(--qr)}.text-nfc{color:var(--nfc)}.divider{height:1px;background:var(--border-soft);margin:16px 0}.tag-list{display:flex;gap:6px;flex-wrap:wrap}.callout{background:#fbbf2414;border:1px solid rgba(251,191,36,.3);border-radius:var(--radius-sm);padding:12px 14px;font-size:13px;color:#fde68a}.callout-info{background:var(--accent-soft);border-color:#6366f159;color:#c7d2fe}.callout-danger{background:#dc26261a;border-color:#f8717166;color:#fecaca}.btn-danger-solid{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger-solid:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.modal-lead{font-size:14px;line-height:1.55;margin:0 0 12px;color:var(--text)}.fx-callout{background:var(--accent-soft);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:12px 14px;margin:4px 0 0}.fx-strong{font-size:18px;font-weight:700;margin-top:2px}.warn-callout{background:var(--bg-elev-2);border:1px solid var(--border-soft);border-left:3px solid var(--warning);border-radius:var(--radius-sm);padding:12px 14px;margin:0 0 12px}.input.readonly{background:var(--bg-elev-2);display:flex;align-items:center}.impact-list{display:flex;flex-direction:column;gap:6px;margin:4px 0 0}.impact-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-size:13px}.impact-list ul,.callout-danger ul{margin:8px 0 0;padding-left:18px;line-height:1.6}.danger-zone{display:flex;flex-direction:column}.danger-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}.danger-row+.danger-row{border-top:1px solid var(--border-soft)}.danger-row:first-child{padding-top:0}.danger-row:last-child{padding-bottom:0}.danger-row-title{font-weight:600;margin-bottom:2px}.danger-row-actions{flex-shrink:0}@media(max-width:560px){.danger-row{flex-direction:column;align-items:stretch}.danger-row-actions .btn{width:100%}}.danger-subhead{margin:14px 0 6px;font-size:13px}.confirm-card{display:flex;align-items:flex-start;gap:12px;margin-top:14px;padding:14px;min-height:44px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elev);cursor:pointer;transition:border-color .15s ease,background .15s ease}.confirm-card:hover{border-color:var(--danger)}.confirm-card.is-checked{border-color:var(--danger);background:#f871711a}.confirm-card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.confirm-card-box{flex-shrink:0;width:22px;height:22px;margin:2px 0;accent-color:var(--danger);cursor:pointer}.confirm-card-body{display:flex;flex-direction:column;gap:3px;min-width:0}.confirm-card-title{font-weight:600;line-height:1.35}.confirm-card-meta{font-size:13px;color:var(--text-dim)}.confirm-card-note{font-size:12px;color:var(--text-faint)}.danger-reason{margin:12px 0 0;font-size:13px;color:var(--warning)}.fin-menu{position:relative;display:inline-block}.fin-kebab{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel);color:var(--text);font-size:18px;line-height:1;cursor:pointer}.fin-kebab:hover{border-color:var(--accent)}.fin-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70}.fin-menu-pop{position:fixed;min-width:194px;max-width:calc(100vw - 16px);z-index:71;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column;gap:2px}.fin-menu-item{display:block;width:100%;text-align:left;padding:10px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text);font-size:13px;cursor:pointer}.fin-menu-item:hover{background:var(--bg-elev)}.fin-menu-item.danger{color:#f87171}.fin-menu-item.danger:hover{background:#dc26261f}.recipe-row{border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-elev);padding:10px;margin-bottom:8px}.recipe-row-material{margin:0 0 8px}.recipe-row-controls{display:flex;gap:8px;align-items:flex-end}.recipe-row-controls .field{flex:1 1 auto;margin:0}.recipe-row-remove{flex:0 0 auto}.production-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.produce-btn{margin-top:10px}@media(max-width:768px){.produce-btn{width:100%}}.qr-canvas-wrap{background:#fff;padding:14px;border-radius:var(--radius-sm);display:inline-block;line-height:0}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:248px;z-index:60;transform:translate(-100%);transition:transform .2s ease}.sidebar.open{transform:translate(0)}.topbar{display:flex}.content{padding:16px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:50}}.btn:focus-visible,.select:focus-visible,.input:focus-visible,.textarea:focus-visible,.th-sort:focus-visible,.menu-summary:focus-visible,.nav-link:focus-visible,.perf-search-input:focus-visible,.chart-wrap [tabindex]:focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}.spin{animation:spin .8s linear infinite}.dash-header{margin-bottom:4px}.header-actions{gap:8px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end;background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:12px 14px}.filter-field{display:flex;flex-direction:column;gap:5px;min-width:130px;flex:1 1 130px;max-width:220px}.filter-field label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint)}.filter-compare{justify-content:flex-end;min-width:170px}.checkbox-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;white-space:nowrap}.filter-refreshing{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim);align-self:center}.period-badge{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-size:13px;color:var(--text-dim)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(155px,100%),1fr));gap:12px}.kpi-card{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius);padding:14px 16px;min-width:0}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint);font-weight:600}.kpi-value{font-size:27px;font-weight:700;letter-spacing:-.02em;margin-top:4px;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kpi-delta{display:flex;align-items:center;gap:4px;margin-top:6px;font-size:12.5px;font-weight:600}.unique-note{margin:10px 0 0;font-size:12.5px;line-height:1.45}.info-hint{position:relative;display:inline-flex;margin-left:5px;vertical-align:middle}.info-hint-trigger{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--bg-elev);color:var(--text-faint);font-size:10px;font-weight:700;font-style:normal;line-height:1;text-transform:none;cursor:help}.info-hint-trigger:hover{color:var(--text);border-color:var(--accent)}.info-hint-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.info-hint-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:max-content;max-width:min(260px,72vw);padding:8px 10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-dim);font-size:12px;font-weight:400;font-style:normal;text-transform:none;letter-spacing:normal;line-height:1.4;text-align:left;white-space:normal;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:opacity .12s ease;pointer-events:none;z-index:20}.info-hint:hover .info-hint-bubble,.info-hint:focus-within .info-hint-bubble{opacity:1;visibility:visible}.trend-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.seg-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.seg-btn{padding:5px 10px;font-size:12.5px;font-weight:600;background:transparent;border:none;color:var(--text-dim);cursor:pointer}.seg-btn+.seg-btn{border-left:1px solid var(--border)}.seg-btn.is-active{background:var(--accent-soft);color:var(--text)}.seg-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.chart-wrap{width:100%}.chart-tooltip{position:absolute;top:4px;transform:translate(-50%);background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 10px;font-size:12px;box-shadow:var(--shadow);pointer-events:none;white-space:nowrap;z-index:5}.chart-tooltip-date{font-weight:600;margin-bottom:4px}.chart-legend{display:flex;gap:16px;margin-top:6px;font-size:12px;color:var(--text-dim);flex-wrap:wrap}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.legend-line{width:16px;height:0;border-top:1.5px dashed var(--text-faint);display:inline-block}.perf-section{min-width:0}.perf-search{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 10px;margin-bottom:12px;color:var(--text-faint);max-width:340px}.perf-search-input{border:none;background:transparent;color:var(--text);font-size:14px;width:100%;outline:none}.perf-table{min-width:0;width:100%;table-layout:fixed}.perf-table th:first-child,.perf-table td:first-child{width:22%}.perf-table th.num,.perf-table td.num{width:8%}.th-sort{background:none;border:none;color:inherit;font:inherit;font-size:12px;text-transform:uppercase;letter-spacing:.03em;font-weight:600;cursor:pointer;padding:0}.th-sort:hover{color:var(--text)}.cell-truncate{max-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-scroll-desktop{overflow-x:auto}.padm-list{display:flex;flex-direction:column}.padm-head,.padm-row{display:flex;align-items:center;gap:10px 14px;min-width:0}.padm-row{flex-wrap:wrap;padding:12px 4px;border-top:1px solid var(--border-soft)}.padm-list .padm-head+.padm-row,.padm-list .padm-row:first-child{border-top:none}.padm-head{padding:0 4px 8px;border-bottom:1px solid var(--border);font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);font-weight:600}.padm-row.is-idle{opacity:.62}.padm-cell{min-width:0}.padm-cell.reorder{flex:0 0 56px;display:flex;gap:2px}.padm-cell.label{flex:1 1 150px}.padm-cell.type{flex:0 0 118px;color:var(--text-dim);font-size:13px}.padm-cell.dest{flex:2 1 200px}.padm-cell.channel{flex:0 0 132px}.padm-cell.link{flex:2 1 220px;display:flex;align-items:center;gap:6px}.padm-cell.status{flex:0 0 84px}.padm-cell.controls{flex:0 0 auto;margin-left:auto;display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.padm-trunc{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.padm-cell.link .padm-trunc{flex:1 1 auto}.padm-cell.link .copy-btn,.padm-cell.link .btn{flex:0 0 auto}@media(max-width:760px){.padm-head{display:none}.padm-row{align-items:flex-start;gap:6px 12px}.padm-cell.controls{margin-left:0;flex-basis:100%;justify-content:flex-start}.padm-cell.type,.padm-cell.status{flex-basis:auto}}.perf-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;flex-wrap:wrap}.perf-cards{display:grid;gap:10px}.perf-card{display:block;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:12px 14px;color:inherit}.perf-card:hover{text-decoration:none;border-color:var(--border)}.perf-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.perf-card-name{font-weight:600}.perf-card-meta{font-size:12px;margin-top:2px}.perf-card-stats{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px;font-size:13px}.hbars{display:flex;flex-direction:column;gap:9px}.hbar-row{display:grid;grid-template-columns:minmax(90px,1fr) 2fr auto;align-items:center;gap:10px}.hbar-label{font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hbar-track{background:var(--bg);border-radius:999px;height:10px;overflow:hidden}.hbar-fill{height:100%;border-radius:999px;min-width:2px;transition:width .3s ease}.hbar-meta{font-size:12.5px;text-align:right;white-space:nowrap}.highlight-grid{display:grid;grid-template-columns:1fr;gap:12px}.highlight{border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:10px 12px;background:var(--bg-elev)}.highlight-label{display:flex;align-items:center;gap:6px;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);font-weight:600;margin-bottom:4px}.highlight-body{font-size:14px}.insight-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.insight-item{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;padding:9px 11px;border-radius:var(--radius-sm);border:1px solid var(--border-soft);background:var(--bg-elev)}.insight-icon{display:inline-flex;margin-top:1px}.insight-positive{border-left:3px solid var(--success)}.insight-positive .insight-icon{color:var(--success)}.insight-warning{border-left:3px solid var(--warning)}.insight-warning .insight-icon{color:var(--warning)}.insight-info{border-left:3px solid var(--qr)}.insight-info .insight-icon{color:var(--qr)}.insight-neutral{border-left:3px solid var(--text-faint)}.insight-neutral .insight-icon{color:var(--text-faint)}.insight-note{font-size:12px;margin:12px 0 0;line-height:1.5}.trend-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:12px;margin-bottom:16px}.trend-stat{display:flex;flex-direction:column;gap:3px;font-size:13px}.trend-stat strong{font-size:18px}.subhead{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-faint);margin-bottom:8px}.peak-chips{display:flex;gap:8px;flex-wrap:wrap}.chip{background:var(--accent-soft);border:1px solid rgba(99,102,241,.3);border-radius:999px;padding:4px 12px;font-size:12.5px;color:var(--text)}.lowdata-note{padding:20px;text-align:center;font-size:13.5px}.hour-strip{display:flex;align-items:flex-end;gap:2px;height:90px;padding:4px 0}.hour-col{flex:1;height:100%;display:flex;align-items:flex-end}.hour-bar{width:100%;min-height:2px;background:var(--accent);border-radius:2px 2px 0 0}.hour-axis{display:flex;justify-content:space-between;font-size:10px;margin-top:4px}.heatmap-wrap{overflow-x:auto}.heatmap{border-collapse:collapse;width:100%;min-width:420px}.heatmap-cell{width:3.6%;height:16px;border:1px solid var(--bg);border-radius:2px}.heatmap-row-label{font-size:11px;color:var(--text-faint);text-align:right;padding-right:8px;font-weight:500;width:34px}.heatmap-hour{font-size:9px;text-align:center}.health-summary{display:flex;gap:8px;flex-wrap:wrap}.menu{position:relative;display:inline-block}.menu-summary{list-style:none;cursor:pointer}.menu-summary::-webkit-details-marker{display:none}.menu-list{position:absolute;right:0;top:calc(100% + 6px);background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);min-width:220px;z-index:30;overflow:hidden}.menu-item{display:block;padding:10px 12px;font-size:13px;color:var(--text)}.menu-item:hover{background:var(--accent-soft);text-decoration:none}@media(min-width:900px){.highlight-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.filter-field{max-width:none;flex-basis:100%}.kpi-value{font-size:24px}.header-actions{width:100%}}.topbar{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-top:max(12px,env(safe-area-inset-top))}.sidebar{padding-bottom:max(20px,env(safe-area-inset-bottom))}.url-box span,.kv-value,.mono{overflow-wrap:anywhere;word-break:break-word}.modal{max-height:min(90dvh,720px);overflow-y:auto;overscroll-behavior:contain}table.kv-table{min-width:0}.kv-table,.kv-table tbody,.kv-table tr,.kv-table th,.kv-table td{display:block;width:100%}.kv-table th{border:none;background:none;padding:10px 0 2px;color:var(--text-faint)}.kv-table td{border:none;padding:0 0 8px}.kv-table tr+tr{border-top:1px solid var(--border-soft)}@media(min-width:640px){.kv-table{display:table}.kv-table tbody{display:table-row-group}.kv-table tr{display:table-row}.kv-table th{display:table-cell;width:40%;padding:10px 12px}.kv-table td{display:table-cell;padding:10px 12px}.kv-table tr+tr{border-top:none}}.list-cards{display:grid;gap:10px}.list-card{display:block;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:13px 14px;color:inherit}.list-card:hover{text-decoration:none;border-color:var(--border)}.list-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.list-card-title{font-weight:600;overflow-wrap:anywhere}.list-card-meta{font-size:12.5px;margin-top:3px;overflow-wrap:anywhere}.list-card-stats{display:flex;flex-wrap:wrap;gap:12px;margin-top:9px;font-size:13px}.list-card-actions{display:flex;gap:8px;margin-top:11px;flex-wrap:wrap}.list-card-actions .btn{flex:1 1 auto}.audit-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.audit-field{display:flex;flex-direction:column;gap:4px;flex:1 1 160px;min-width:0}.audit-field>span{font-size:12px;font-weight:600;color:var(--text-faint)}.audit-filter-actions{display:flex;gap:8px;align-items:center;flex:1 1 auto;justify-content:flex-end}.badge-audit{color:var(--accent);border-color:#6366f166;background:#6366f11a}.audit-summary{color:var(--text-dim);overflow-wrap:anywhere}.audit-time-date{font-weight:600}.audit-time-clock{font-size:12.5px;color:var(--text-faint)}.audit-list-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.audit-pager{display:flex;gap:10px;align-items:center;justify-content:flex-end;margin-top:14px}.audit-detail-grid{display:grid;grid-template-columns:116px 1fr;gap:8px 14px;align-items:baseline;margin:0}.audit-detail-grid dt{color:var(--text-faint);font-size:12.5px}.audit-detail-grid dd{margin:0;overflow-wrap:anywhere}.audit-req-id{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap}.audit-json{margin:0;padding:12px;border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg);font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--text-dim);white-space:pre-wrap;word-break:break-word;overflow:auto;max-height:320px}@media(max-width:768px){.audit-field{flex-basis:100%}.audit-filter-actions{justify-content:stretch}.audit-filter-actions .btn{flex:1 1 auto}}@media(max-width:480px){.audit-detail-grid{grid-template-columns:1fr;gap:2px 0}.audit-detail-grid dd{margin-bottom:8px}}.filter-toggle{display:none}.filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:11px;font-weight:700}@media(max-width:768px){.input,.select,.textarea,.perf-search-input{font-size:16px}.btn,.select,.input,.nav-link{min-height:44px}.btn-sm{min-height:40px;padding:8px 12px}.topbar .btn-ghost{min-width:44px;min-height:44px}.menu-item{min-height:44px;display:flex;align-items:center}.th-sort{min-height:36px}.perf-search{padding:10px 12px}.perf-search-input{min-height:24px}input[type=checkbox]{width:20px;height:20px}.checkbox-label{min-height:44px}.fin-kebab{width:44px;height:44px}.fin-menu-item{padding:12px;font-size:15px}.kpi-grid{grid-template-columns:1fr 1fr}.route-row{flex-wrap:wrap!important}.route-row .url-box{flex-basis:100%}.filter-toggle{display:inline-flex;align-items:center;gap:8px}.filter-bar.collapsed{display:none}.header-actions .btn{flex:1 1 auto;justify-content:center}.modal-actions{position:sticky;bottom:0;background:var(--panel);padding-top:12px;margin:20px -22px -22px;padding:14px 22px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--border-soft)}.modal-backdrop{padding:0}.modal{max-width:100%}.modal-wide{align-self:stretch;justify-self:stretch;width:100%;max-width:100%;min-height:100dvh;max-height:100dvh;border:none;border-radius:0}}@media(max-width:360px){.kpi-grid{grid-template-columns:1fr}.content{padding:14px 12px calc(14px + env(safe-area-inset-bottom))}}.chunk-fallback{min-height:100vh;display:grid;place-items:center;color:var(--text-faint);font-size:14px}.landing{min-height:100%;display:flex;flex-direction:column}.landing-bar{width:100%;max-width:940px;margin:0 auto;padding:22px 24px 4px}.landing-brand{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:700;letter-spacing:-.02em}.landing-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--accent-soft);border:1px solid var(--border);color:var(--accent-hover)}.landing-main{flex:1;width:100%;max-width:940px;margin:0 auto;padding:28px 24px 56px}.landing-eyebrow{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.landing-title{margin:0 0 18px;max-width:640px;font-size:clamp(28px,6vw,46px);line-height:1.12;letter-spacing:-.025em}.landing-lede{margin:0;max-width:640px;font-size:clamp(15px,2.2vw,18px);line-height:1.65;color:var(--text-dim)}.landing-section{margin-top:48px}.landing-h2{margin:0 0 16px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.landing-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));margin:0;padding:0;list-style:none}.landing-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px 18px}.landing-icon{display:grid;place-items:center;width:36px;height:36px;margin-bottom:14px;border-radius:10px;background:var(--bg-elev-2);border:1px solid var(--border-soft);color:var(--accent-hover)}.landing-card-title{margin:0 0 6px;font-size:16px}.landing-card-body{margin:0;font-size:14px;line-height:1.6;color:var(--text-dim)}.landing-body{margin:0;max-width:640px;line-height:1.7;color:var(--text-dim)}.landing-soon{display:inline-flex;align-items:center;gap:8px;margin:48px 0 0;padding:9px 16px;font-size:14px;color:var(--text-dim);background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:999px}.landing-foot{width:100%;max-width:940px;margin:0 auto;padding:20px 24px calc(20px + env(safe-area-inset-bottom));border-top:1px solid var(--border-soft);font-size:13px;color:var(--text-faint)}.landing a:focus-visible,.landing-brand:focus-visible{outline:2px solid var(--accent-hover);outline-offset:3px;border-radius:4px}@media(max-width:430px){.landing-bar{padding:18px 16px 2px}.landing-main{padding:22px 16px 44px}.landing-foot{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}.landing-section,.landing-soon{margin-top:38px}}.qr-studio{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) minmax(0,.9fr);gap:16px;align-items:start}@media(max-width:1100px){.qr-studio{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.qr-controls{grid-row:span 2}}@media(max-width:780px){.qr-studio{grid-template-columns:minmax(0,1fr)}.qr-controls{grid-row:auto}}.qr-controls{display:flex;flex-direction:column;gap:10px;min-width:0}.qr-group{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.qr-group>summary{cursor:pointer;padding:12px 14px;font-weight:600;font-size:14px;list-style:none;display:flex;justify-content:space-between;align-items:center}.qr-group>summary:after{content:"▾";color:var(--text-faint);transition:transform .15s}.qr-group[open]>summary:after{transform:rotate(180deg)}.qr-group>summary::-webkit-details-marker{display:none}.qr-group-body{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px}.qr-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px}.qr-preset{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);font-size:12px}.qr-preset.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.qr-preset-thumb{width:100%;max-width:62px}.qr-preset-thumb svg{width:100%;height:auto;display:block;border-radius:6px}.qr-segmented{border:0;margin:0;padding:0;min-width:0}.qr-segmented>legend{font-size:12px;color:var(--text-dim);margin-bottom:6px;padding:0}.qr-segmented-row{display:flex;flex-wrap:wrap;gap:6px}.qr-seg{padding:7px 10px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text-dim);border-radius:var(--radius-sm);font-size:13px;cursor:pointer}.qr-seg.active{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.qr-color-field{display:flex;flex-direction:column;gap:5px}.qr-color-field>label{font-size:12px;color:var(--text-dim)}.qr-color-row{display:flex;gap:8px;align-items:center}.qr-color-row input[type=color]{width:38px;height:38px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;flex:none}.qr-color-row .input{flex:1;min-width:0}.input.input-error{border-color:var(--danger)}.qr-subgroup{display:flex;flex-direction:column;gap:12px;padding-left:10px;border-left:2px solid var(--border-soft)}.qr-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer}.qr-range{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-dim)}.qr-range input[type=range]{width:100%}.qr-select-label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:var(--text-dim)}.qr-label-suggestions{display:flex;flex-wrap:wrap;gap:6px}.qr-chip{padding:5px 10px;border:1px solid var(--border);background:var(--bg-elev);color:var(--text-dim);border-radius:999px;font-size:12px;cursor:pointer}.qr-reset-row{display:flex;flex-wrap:wrap;gap:8px}.qr-preview-col{position:sticky;top:12px;display:flex;flex-direction:column;gap:12px;min-width:0}@media(max-width:780px){.qr-preview-col{position:static}}.qr-preview-card{background:linear-gradient(45deg,var(--bg-elev) 25%,transparent 25%) 0 0/20px 20px,linear-gradient(-45deg,var(--bg-elev) 25%,transparent 25%) 0 10px/20px 20px,linear-gradient(45deg,transparent 75%,var(--bg-elev) 75%) 10px -10px/20px 20px,linear-gradient(-45deg,transparent 75%,var(--bg-elev) 75%) -10px 0/20px 20px,var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);padding:24px;display:flex;align-items:center;justify-content:center}.qr-preview-svg{max-width:320px}.qr-preview-svg svg{width:100%;height:auto;display:block;filter:drop-shadow(0 6px 20px rgba(0,0,0,.35))}.qr-safety{border:1px solid var(--border);border-radius:var(--radius);padding:14px;background:var(--panel)}.qr-safety-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.qr-safety-badge{font-weight:700;font-size:13px;padding:3px 10px;border-radius:999px}.qr-safe-safe .qr-safety-badge{background:#34d39929;color:var(--success)}.qr-safe-review .qr-safety-badge{background:#fbbf2429;color:var(--warning)}.qr-safe-unsafe .qr-safety-badge{background:#f8717129;color:var(--danger)}.qr-safety-score{font-size:12px;color:var(--text-faint)}.qr-safety-list,.qr-safety-recs{margin:10px 0 0;padding-left:18px;font-size:13px;line-height:1.5}.qr-safety-list .sev-unsafe{color:var(--danger)}.qr-safety-list .sev-review{color:var(--warning)}.qr-safety-recs{color:var(--text-dim)}.qr-ack{margin-top:10px;font-size:12px;align-items:flex-start}.qr-test-reminder{margin:12px 0 0;font-size:12px;color:var(--text-faint);border-top:1px solid var(--border-soft);padding-top:10px}.qr-meta-col{display:flex;flex-direction:column;gap:12px;min-width:0}.qr-export-actions{display:flex;flex-direction:column;gap:8px}.qr-png-row{display:flex;gap:8px}.qr-png-row .btn{flex:1}@media(max-width:780px){.qr-studio-page .qr-controls .input,.qr-studio-page .select{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.tt-logo{display:inline-flex;align-items:center;gap:.34em;font-weight:800;letter-spacing:-.02em;line-height:1;white-space:nowrap}.tt-logo-mark{height:1.15em;width:calc(1.15em * 477 / 512);flex:none;transform:translateY(.05em);background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.tt-logo-word .tt-a{color:var(--tt-tone-a, currentColor)}.tt-logo-word .tt-b{color:var(--tt-tone-b, #6366f1)}.brand-wordmark{font-size:17px;--tt-tone-a: var(--text);--tt-tone-b: var(--accent-hover)}.topbar-brand{display:inline-flex;align-items:center}.fin-adv{position:relative;flex:0 0 auto}.fin-adv-summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:4px}.fin-adv-summary::-webkit-details-marker{display:none}.fin-adv-summary:after{content:"▾";font-size:10px;opacity:.7}.fin-adv[open] .fin-adv-summary{border-color:var(--accent);color:var(--text)}.fin-adv-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:30;display:flex;flex-direction:column;gap:4px;padding:8px;min-width:160px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 12px 30px #00000059}.fin-adv-menu .fin-pill{width:100%}.fin-quick{display:flex;flex-wrap:wrap;gap:8px}.impact-row.impact-total{background:var(--bg-elev-2);font-weight:700}.impact-row.impact-total strong{color:var(--text)}.bd-section-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:6px}.bd-qty{display:block;font-size:12px;color:var(--muted);margin-top:2px}.field-hint.err{color:var(--danger, #f87171)}.loc-list{display:flex;flex-direction:column}.loc-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--border-soft)}.loc-row:first-child{border-top:none}.loc-row.is-archived .loc-name{color:var(--muted)}.loc-main{min-width:0;flex:1 1 260px}.loc-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.loc-name{font-weight:600;font-size:15px;padding:0}.loc-meta{margin-top:3px;font-size:12.5px;overflow-wrap:anywhere}.loc-actions{display:flex;gap:6px;flex-wrap:wrap}.loc-cards{flex-basis:100%;margin:8px 0 0;padding:8px 12px;list-style:none;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-sm)}.loc-cards li{padding:3px 0;font-size:13px}.loc-clientwide{padding:8px 12px;background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-size:13px}.loc-insights{margin:12px 0 0;padding-left:18px;line-height:1.7;font-size:13.5px}.brand-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:20px;align-items:start}.brand-color-row{display:flex;align-items:center;gap:8px}.brand-swatch{width:40px;height:36px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:none;cursor:pointer;flex:0 0 auto}.brand-color-row .input{flex:1 1 auto;min-width:0}.brand-preview-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.brand-preview{border:1px solid var(--border);border-radius:var(--radius);padding:18px 18px 0;overflow:hidden;box-shadow:var(--shadow)}.brand-preview-platform{margin-bottom:12px}.brand-preview-for{font-size:12px}.brand-preview-identity{display:flex;align-items:center;gap:10px;margin:6px 0 16px}.brand-preview-logo{height:40px;max-width:120px;object-fit:contain}.brand-preview-monogram{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;flex:0 0 auto}.brand-preview-name{font-weight:700;font-size:18px;overflow-wrap:anywhere}.brand-preview-bar{height:5px;margin:0 -18px}@media(max-width:720px){.brand-grid{grid-template-columns:1fr}}@media(max-width:640px){.loc-row{flex-direction:column}.loc-actions{width:100%}.loc-actions .btn{flex:1 1 auto}}.fin-finished-panel{margin-top:12px}.fin-finished-head{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:flex-start}.fin-finished-qty{font-size:20px;display:flex;align-items:center;gap:4px;margin-top:2px}.fin-finished-adjust{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2fr) auto;gap:8px;align-items:end;margin-top:12px}.fin-finished-adjust .btn{height:40px}@media(max-width:640px){.fin-finished-adjust{grid-template-columns:1fr 1fr}.fin-finished-adjust .btn{grid-column:1 / -1;width:100%}}.analytics-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.analytics-tabs::-webkit-scrollbar{display:none}.analytics-tab{padding:10px 16px;font-size:14px;font-weight:600;color:var(--text-dim);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.analytics-tab:hover{color:var(--text);text-decoration:none}.analytics-tab.is-active{color:var(--text);border-bottom-color:var(--accent)}.analytics-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.mix-bar{display:flex;height:8px;min-width:56px;border-radius:999px;overflow:hidden;background:var(--bg)}.mix-qr{background:var(--qr)}.mix-nfc{background:var(--nfc)}.mix-empty{background:var(--bg)}.kpi-card .mix-bar{margin:8px 0 2px}.kpi-split-value{display:flex;align-items:baseline;gap:6px}.kpi-split-sep{font-weight:400}.leader{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.leader-name{font-size:18px;font-weight:700;letter-spacing:-.01em}.leader-meta{font-size:13px}.loc-table{min-width:880px}.loc-table th,.loc-table td{white-space:nowrap}.loc-sticky{position:sticky;left:0;z-index:1;background:var(--panel)}.loc-table thead .loc-sticky{background:var(--bg-elev);z-index:2}.loc-table tfoot .loc-sticky{background:var(--bg-elev-2)}.loc-cell{display:flex;align-items:center;gap:6px}.loc-caret{display:inline-flex;align-items:center;justify-content:center;padding:3px;border:none;background:none;color:var(--text-dim);cursor:pointer;border-radius:4px;flex:0 0 auto}.loc-caret:hover{color:var(--text);background:var(--bg-elev-2)}.loc-caret:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.loc-name-btn{padding:2px 4px;border:none;background:none;color:var(--text);font:inherit;font-weight:600;text-align:left;cursor:pointer;border-radius:4px;min-width:0;overflow:hidden;text-overflow:ellipsis}.loc-name-btn:hover{color:var(--accent-hover);text-decoration:underline}.loc-name-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.loc-arch{font-size:11px;text-transform:uppercase;letter-spacing:.03em}.loc-table tbody tr.is-selected>td{background:var(--accent-soft)}.loc-table tbody tr.is-selected .loc-sticky{background:#1b2547}.loc-table tbody tr:hover:not(.loc-drill-row) .loc-sticky{background:#182444}.loc-table tfoot .is-total td{background:var(--bg-elev-2);border-top:2px solid var(--border);font-weight:600}.loc-dagger{color:var(--text-faint);font-size:11px;vertical-align:super;margin-left:1px}.loc-drill-row>td{padding:0;background:var(--bg)}.loc-drill{margin:0;border:none;border-radius:0;border-top:1px solid var(--border-soft)}.loc-drill table.data{min-width:700px;background:var(--bg)}.loc-drill table.data th{background:var(--bg-elev)}.loc-drill-empty{margin:0;padding:12px 14px;background:var(--bg)}.loc-filter-chip{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:5px 6px 5px 12px;background:var(--accent-soft);border:1px solid var(--border);border-radius:999px;font-size:13px}.loc-cards-list{display:flex;flex-direction:column;gap:10px}.loc-card{border:1px solid var(--border-soft);border-radius:var(--radius-sm);padding:12px 14px;background:var(--bg-elev)}.loc-card.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.loc-card.is-total{background:var(--bg-elev-2)}.loc-card-head{display:flex;align-items:center;gap:6px}.loc-card-primary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}.loc-card-primary .mix-bar{flex:1 1 auto;max-width:150px;height:10px}.loc-big{font-size:24px;font-weight:700;line-height:1.1}.loc-sub{font-size:12px}.loc-card-stats{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:10px;font-size:13px}.loc-card .loc-drill{margin-top:10px;border-top:none}.cmp-modebar{margin:2px 0 16px}.cmp-picker{margin-bottom:16px}.cmp-picker-list{display:flex;flex-wrap:wrap;gap:8px}.cmp-pick{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--border);border-radius:999px;background:var(--bg-elev);font-size:13px;cursor:pointer;white-space:nowrap}.cmp-pick:hover{background:var(--bg-elev-2)}.cmp-pick.is-on{border-color:var(--accent);background:var(--accent-soft)}.cmp-pick input{accent-color:var(--accent);cursor:pointer}.cmp-pick-name{font-weight:600}.cmp-pick-int{font-size:12px}.cmp-picker-foot{display:flex;align-items:center;gap:12px;margin-top:10px;font-size:13px}.cmp-wrap{margin-top:4px}.cmp-table{min-width:420px}.cmp-table th,.cmp-table td{white-space:nowrap}.cmp-table thead th{background:var(--bg-elev)}.cmp-table td,.cmp-table thead .cmp-loc-head,.cmp-table thead .cmp-diff-head{text-align:right}.cmp-metric-head,.cmp-metric{position:sticky;left:0;z-index:1;text-align:left;background:var(--panel);font-weight:600}.cmp-table thead .cmp-metric-head{background:var(--bg-elev);z-index:2}.cmp-table tbody tr:hover .cmp-metric{background:var(--bg-elev)}.cmp-loc-head{min-width:92px;vertical-align:bottom}.cmp-metric-note{font-weight:400;font-size:11px}.cmp-diff-head,.cmp-diff{border-left:1px solid var(--border)}.cmp-diff-dir{font-weight:400;font-size:11px;margin-top:2px}.cmp-diff{color:var(--text-dim)}.cmp-mix-cell{min-width:78px}.cmp-mix-cell .mix-bar{height:10px;margin-left:auto;max-width:120px}.cmp-context{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:12px}.cmp-note{margin:8px 0 0;font-size:12px;line-height:1.6}.cmp-chart{margin-top:18px}.cmp-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.cmp-metric-select{display:inline-flex;align-items:center;gap:8px;font-size:13px}.cmp-metric-select .select{width:auto;min-width:150px;padding:6px 10px;font-size:13px}.report-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px 20px;align-items:end}.report-config-compare{align-self:center}.report-config-actions{display:flex;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap}.icon-flip{transform:rotate(180deg)}.report-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}.report-toolbar-actions{display:flex;gap:10px;flex-wrap:wrap}.report-preview-context{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:16px;padding:10px 14px;border:1px solid var(--border-soft);border-left-width:4px;border-radius:10px;background:var(--bg-elev);font-size:13px}.report-preview-context>strong{font-weight:650}.report-preview-context>span{color:var(--text-muted, #667085)}.report-preview-context.is-draft{border-left-color:#7c3aed}.report-preview-context.is-active{border-left-color:#0f766e}.report-preview-context.is-default{border-left-color:#94a3b8}.report-preview-context.is-warn{border-left-color:#d97706;background:#fffbeb}.report-stage{background:var(--bg-elev);border:1px solid var(--border-soft);border-radius:12px;padding:28px;display:flex;justify-content:center;overflow-x:auto}.report-stage:has(.report-has-frame){background:transparent;border-color:transparent}.report-surface{--r-bg: #ffffff;--r-fg: #1f2933;--r-muted: #667085;--r-faint: #98a2b3;--r-border: #e5e7eb;--r-border-strong: #d0d5dd;--r-panel: #f9fafb;--r-accent: #0f766e;--r-heading: #111827;--r-qr: #1d4ed8;--r-nfc: #b45309;width:100%;max-width:820px;background:var(--r-bg);color:var(--r-fg);border:1px solid var(--r-border);border-radius:8px;box-shadow:0 10px 40px #00000047;padding:46px 48px 34px;font-size:14px;line-height:1.55;box-sizing:border-box;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-surface :is(h1,h2,p,ul,dl,table,figure){margin:0}.report-pages{width:100%;max-width:840px;display:flex;flex-direction:column;align-items:center;gap:30px}.report-sheet.report-has-frame{max-width:840px;aspect-ratio:210 / 297;padding:0;border:none;border-radius:5px;box-shadow:0 14px 46px #0000004d;background:var(--r-frame) center center / 100% 100% no-repeat,var(--r-bg);display:flex;flex-direction:column;overflow:hidden}.report-sheet-inner{position:relative;z-index:1;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:14.5% 9.4% 4.5%}.report-sheet-inner:before{content:"";position:absolute;top:7%;right:5.5%;bottom:7%;left:5.5%;z-index:-1;pointer-events:none;background:radial-gradient(116% 86% at 50% 46%,color-mix(in srgb,var(--r-bg) 74%,transparent) 0%,color-mix(in srgb,var(--r-bg) 46%,transparent) 48%,transparent 82%)}.report-sheet-inner>.report-cover,.report-sheet-inner>.report-section:first-child{margin-top:0}.report-footer.report-sheet-foot{margin-top:auto;padding-top:16px;border-top:none}.report-has-frame .report-cover{border-top:none;padding-top:0;margin-bottom:20px}.report-sheet.report-has-frame,.report-sheet.report-has-frame:is(.report-cover-banner,.report-cover-minimal){color:var(--r-fg)}.report-sheet.report-has-frame .report-cover{background:none;border:none;border-radius:0;border-bottom:2px solid var(--r-accent);padding:0 0 12px;margin-bottom:18px;overflow:visible}.report-sheet.report-has-frame .report-logo{max-height:54px;max-width:200px;margin-bottom:14px}.report-sheet.report-has-frame .report-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.report-sheet.report-has-frame .report-kpi{padding:9px 10px 10px;min-width:0}.report-sheet.report-has-frame .report-kpi-label{font-size:8.5px;letter-spacing:.01em;line-height:1.22;min-height:2.44em}.report-sheet.report-has-frame .report-kpi-value{font-size:19px;margin-top:3px}.report-sheet.report-has-frame .report-kpi-value:after{width:16px;margin-top:6px}.report-sheet.report-has-frame .report-kpi-change,.report-sheet.report-has-frame .report-kpi-note{font-size:9px;margin-top:5px;line-height:1.3}@media(max-width:700px){.report-pages{gap:16px;max-width:100%}.report-sheet.report-has-frame{aspect-ratio:auto;max-width:100%;overflow:visible;border:1px solid var(--r-border);border-top:3px solid var(--r-accent);border-radius:12px;box-shadow:0 6px 22px #0000001f;background:var(--r-bg)}.report-sheet-inner{padding:24px 18px 20px}.report-sheet-inner:before{display:none}.report-sheet.report-has-frame .report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-pages .report-sheet:first-child .report-sheet-foot{display:none}.report-sheet-foot{border-top:1px solid var(--r-border);padding-top:14px}.report-sheet-foot .report-footer-meta{display:none}}.report-highlights{display:grid;grid-template-columns:1fr 1fr;gap:14px}.report-highlight{position:relative;background:var(--r-panel);border:1px solid var(--r-border);border-left:3px solid var(--r-accent);border-radius:var(--r-radius);padding:12px 14px;min-width:0}.report-highlight-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--r-muted)}.report-highlight-name{font-family:var(--r-heading-font, inherit);font-size:15px;font-weight:700;color:var(--r-heading);margin-top:3px;overflow-wrap:anywhere}.report-highlight-meta{font-size:11.5px;color:var(--r-muted);margin-top:4px;line-height:1.4}@media(max-width:520px){.report-highlights{grid-template-columns:1fr}}.report-cover{border-top:4px solid var(--r-accent);padding-top:22px;margin-bottom:26px}.report-logo{display:block;max-height:64px;max-width:260px;width:auto;object-fit:contain;margin-bottom:16px}.report-cover-name{font-size:24px;font-weight:700;color:var(--r-heading);letter-spacing:-.01em}.report-cover-title{font-size:15px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--r-accent);margin-top:4px}.report-cover-period{font-size:15px;color:var(--r-muted);margin-top:8px}.report-cover-source{display:inline-block;margin-top:10px;font-size:12px;font-weight:600;color:var(--r-muted);background:var(--r-panel);border:1px solid var(--r-border);border-radius:999px;padding:3px 12px}.report-section{margin-top:26px}.report-h2{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--r-heading);padding-bottom:8px;border-bottom:2px solid var(--r-border-strong);margin-bottom:16px!important}.report-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px}.report-kpi{background:var(--r-panel);border:1px solid var(--r-border);border-radius:6px;padding:12px 14px}.report-kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--r-muted)}.report-kpi-value{font-size:26px;font-weight:700;color:var(--r-heading);line-height:1.15;margin-top:4px}.report-kpi-value:after{content:"";display:block;width:22px;height:2px;margin-top:7px;background:var(--r-accent);border-radius:1px}.report-kpi-change{font-size:11px;color:var(--r-muted);margin-top:4px}.report-kpi-change-note{color:var(--r-faint)}.report-kpi-note{font-size:11px;color:var(--r-faint);margin-top:4px}.report-mix{margin-top:16px}.report-mix-head{display:flex;gap:24px;font-size:13px;margin-bottom:6px}.report-mix-cell strong{color:var(--r-heading)}.report-mix-bar{display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--r-border)}.report-mix-qr{background:var(--r-qr)}.report-mix-nfc{background:var(--r-nfc)}.report-chart{border:1px solid var(--r-border);border-radius:6px;padding:12px 14px 8px}.report-chart-legend{display:flex;gap:18px;margin-top:6px;font-size:12px;color:var(--r-muted)}.report-legend-item{display:inline-flex;align-items:center;gap:6px}.report-swatch{width:11px;height:11px;border-radius:2px;display:inline-block}.report-empty-note{color:var(--r-muted);font-size:13px;padding:20px 0;text-align:center}.report-table-wrap{overflow-x:auto}.report-table{width:100%;border-collapse:collapse;font-size:12.5px;table-layout:fixed}.report-table th,.report-table td{text-align:left;padding:7px 9px;border-bottom:1px solid var(--r-border);overflow-wrap:anywhere;word-break:normal}.report-table thead th{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--r-muted);background:var(--r-panel-alt);border-bottom:1.5px solid var(--r-border-strong)}.report-table tbody th{font-weight:600;color:var(--r-heading)}.report-table td.report-num,.report-table th.report-num{text-align:right;font-variant-numeric:tabular-nums}.report-table td.report-num{white-space:nowrap}.report-table-locations{min-width:600px}.report-table-cards{min-width:460px}.report-table-locations thead th{font-size:9px;letter-spacing:.02em;padding-left:6px;padding-right:6px}.report-table-locations th:first-child{width:19%}.report-table-cards th:nth-child(1){width:22%}.report-table-cards th:nth-child(2){width:17%}.report-table-cards th:nth-child(3){width:21%}.report-footnote{font-size:11.5px;color:var(--r-muted);margin-top:10px!important;line-height:1.5}.report-rank{margin-top:18px}.report-rank-title{font-size:12px;font-weight:600;color:var(--r-heading);margin-bottom:8px}.report-surface .hbars{gap:7px}.report-surface .hbar-track{background:var(--r-border)}.report-surface .hbar-label,.report-surface .hbar-meta{color:var(--r-fg)}.report-surface .hbar-label{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.report-insight{background:var(--r-panel-alt);border:1px solid var(--r-border);border-left:3px solid var(--r-accent);border-radius:var(--r-radius);padding:16px 18px}.report-insight-title{font-family:var(--r-heading-font, inherit);font-size:13px;font-weight:700;color:var(--r-heading);margin:0 0 10px!important}.report-about{background:var(--r-panel);border:1px solid var(--r-border);border-radius:var(--r-radius);padding:16px 18px}.report-about-title{font-family:var(--r-heading-font, inherit);font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--r-heading);margin:0 0 12px!important}.report-observations{list-style:none;padding:0;display:grid;gap:8px}.report-observations li{position:relative;padding-left:18px;color:var(--r-fg)}.report-observations li:before{content:"";position:absolute;left:2px;top:8px;width:6px;height:6px;border-radius:50%;background:var(--r-accent)}.report-defs{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;font-size:13px}.report-defs dt{font-weight:700;color:var(--r-heading)}.report-defs dd{color:var(--r-muted);margin:0}.report-privacy{font-size:11.5px;color:var(--r-muted);margin-top:12px!important;line-height:1.5}.report-empty-lead{font-size:16px;font-weight:600;color:var(--r-heading)}.report-empty-sub{color:var(--r-muted);margin-top:8px!important}.report-footer{margin-top:32px;padding-top:14px;border-top:1px solid var(--r-border);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11.5px;color:var(--r-faint)}.report-footer-brand{font-weight:700;color:var(--r-muted);letter-spacing:.02em}.report-foot-flourish{display:block;width:92px;max-width:40%;margin:22px auto 4px;color:var(--r-accent);opacity:.5}@media(max-width:640px){.report-stage{padding:12px}.report-surface{padding:26px 20px 24px}.report-cover-name{font-size:20px}.report-kpi-value{font-size:22px}}@media print{@page{size:A4 portrait;margin:14mm 12mm}body.report-mode .sidebar,body.report-mode .topbar,body.report-mode .scrim,body.report-mode .report-toolbar,body.report-mode .report-preview-context{display:none!important}body.report-mode,body.report-mode .app-shell,body.report-mode .main,body.report-mode .content{display:block;margin:0;padding:0;background:#fff}body.report-mode .content{overflow:visible}body.report-mode .report-stage{background:#fff;border:none;border-radius:0;padding:0;display:block;overflow:visible}body.report-mode .report-surface{max-width:none;width:100%;border:none;border-radius:0;box-shadow:none;padding:0;font-size:11pt}body.report-mode .report-pages{display:block;max-width:none;gap:0}body.report-mode .report-sheet.report-has-frame{aspect-ratio:auto;overflow:visible;box-shadow:none;border-radius:0;max-width:none;width:100%;background:var(--r-frame) top center / 100% auto no-repeat,var(--r-bg);break-after:page}body.report-mode .report-sheet.report-has-frame:last-child{break-after:auto}body.report-mode .report-sheet-inner{padding:22mm 14mm 14mm}body.report-mode .report-sheet-inner:before{display:none}body.report-mode .report-footer.report-sheet-foot{margin-top:20px}.report-table-wrap{overflow:visible}.report-table th,.report-table td{padding:5px 6px}.report-table thead th,.report-table tbody th{white-space:normal;overflow-wrap:anywhere}.report-cover,.report-kpi-grid,.report-mix,.report-chart,.report-rank,.report-observations,.report-defs,.report-footer,.report-keep{break-inside:avoid}.report-h2{break-after:avoid}.report-table thead{display:table-header-group}.report-table tr{break-inside:avoid}.report-footer{break-before:avoid}}.report-surface{--r-panel-alt: #f1f5f9;--r-accent-ink: #ffffff;--r-radius: 8px;--r-heading-font: inherit;--r-body-font: inherit;font-family:var(--r-body-font, inherit)}.report-cover-name,.report-cover-title,.report-h2,.report-kpi-value,.report-rank-title{font-family:var(--r-heading-font, inherit)}.report-kpi,.report-table-wrap,.report-mix-bar{border-radius:var(--r-radius)}.report-cover-band{display:none}.report-cover-banner .report-cover{border-top:none;padding-top:0}.report-cover-banner .report-cover-band{display:block;height:10px;background:var(--r-accent);border-radius:var(--r-radius);margin-bottom:18px}.report-cover-minimal .report-cover{border-top:none;padding-top:4px}.report-cover-sidebar .report-cover{border-top:none;padding-top:4px;padding-left:16px;border-left:6px solid var(--r-accent)}.report-sec-plain .report-h2{border-bottom:none}.report-sec-boxed .report-h2{background:var(--r-panel);border:1px solid var(--r-border);padding:8px 12px;border-radius:var(--r-radius)}.report-metric-plain .report-kpi{background:transparent;border:none;padding-left:0;padding-right:0}.report-metric-underline .report-kpi{background:transparent;border:none;border-bottom:2px solid var(--r-accent);border-radius:0;padding-left:0}.report-table-striped .report-table tbody tr:nth-child(2n){background:var(--r-panel)}.report-table-bordered .report-table th,.report-table-bordered .report-table td{border:1px solid var(--r-border)}.report-deco-none .report-cover-band{display:none}.report-deco-bold .report-h2{border-bottom-width:3px}.report-deco-bold .report-cover-title{letter-spacing:.12em}.report-density-compact .report-section{margin-top:18px}.report-density-compact .report-kpi{padding:9px 11px}.report-density-spacious .report-section{margin-top:34px}.report-density-spacious .report-kpi{padding:16px 18px}.report-chart-minimal .report-trend{opacity:.92}.report-cover{position:relative}.report-motif-botanical .report-cover{background:var(--r-panel-alt);border:1px solid var(--r-border);border-bottom:2px solid var(--r-accent);border-radius:var(--r-radius);padding:22px 24px 20px;overflow:hidden}.report-motif-botanical.report-cover-banner .report-cover-band,.report-motif-botanical .report-cover-band{display:none}.report-cover-sprig{position:absolute;top:-10px;right:-10px;width:108px;height:auto;color:var(--r-accent);opacity:.16;transform:scaleX(-1);pointer-events:none}.logo-manager{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.logo-preview{width:148px;height:100px;border:1px dashed var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--bg-elev);overflow:hidden;flex:0 0 auto}.logo-preview-img{max-width:100%;max-height:100%;object-fit:contain}.logo-preview-empty{font-size:12px;color:var(--muted)}.logo-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.bg-manager{display:flex;flex-direction:column;gap:14px}.bg-manager-row{display:flex;gap:16px;align-items:flex-start}.bg-manager-preview{width:120px;height:74px;flex:0 0 auto;border:1px dashed var(--border);border-radius:10px;background-color:var(--bg-elev);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center}.bg-manager-body{display:flex;flex-direction:column;gap:4px;min-width:0}.bg-manager-title{font-weight:650;color:var(--text)}.bg-manager-actions{display:flex;gap:8px;margin-top:4px}.bg-manager-surface{display:flex;flex-direction:column;gap:12px;padding:14px 0 4px;border-top:1px solid var(--border-soft)}.bg-manager-surface:first-of-type{border-top:none;padding-top:4px}.bg-manager-surface-head{display:flex;flex-direction:column;gap:2px}.bg-manager-surface-title{font-weight:700;color:var(--text)}.bg-manager-variants{display:flex;flex-direction:column;gap:12px;padding-left:12px;border-left:2px solid var(--border-soft)}.theme-empty{padding:4px 0}.theme-list{display:flex;flex-direction:column;gap:8px}.theme-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg-elev);flex-wrap:wrap}.theme-row.is-active{border-color:var(--accent, #6366f1);box-shadow:inset 3px 0 0 var(--accent, #6366f1)}.theme-row-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.theme-row-name{font-weight:600}.theme-row-ver{font-size:12px;color:var(--muted)}.theme-row-desc{font-size:12px}.theme-row-actions{display:flex;gap:6px;flex-wrap:wrap}.theme-status{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.theme-status-active{color:#065f46;background:#d1fae5;border-color:#a7f3d0}.theme-status-draft{color:#92400e;background:#fef3c7;border-color:#fde68a}.theme-status-archived,.theme-status-inactive{color:#475569;background:#f1f5f9;border-color:#e2e8f0}.theme-status-not_configured{color:var(--text-dim);background:transparent;border-color:var(--border)}.access-status{display:flex;flex-direction:column;gap:10px}.access-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:1px solid var(--border-soft)}.access-row:last-child{border-bottom:none;padding-bottom:0}.access-users{display:flex;flex-direction:column;gap:12px}.access-user{border:1px solid var(--border);border-radius:10px;padding:14px}.access-user-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.access-user-email{font-weight:600;word-break:break-all}.access-user-meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin:12px 0;font-size:13px}.access-user-meta>div{display:flex;flex-direction:column;gap:2px}.access-user-meta .faint{font-size:11px;text-transform:uppercase;letter-spacing:.03em}.access-user-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.access-role-select .input{min-width:120px}.theme-editor{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.theme-editor-preview{position:sticky;top:0}.theme-section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:14px 0 8px}.theme-palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px 14px}.theme-color-row{display:flex;align-items:center;gap:8px}.theme-color-label{flex:1 1 auto;font-size:12px;color:var(--muted)}.theme-color-hex{width:92px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.theme-color-hex.is-invalid{border-color:#ef4444}.theme-enum-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 14px}.theme-enum{margin:0}.theme-enum-label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.theme-json-area{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;resize:vertical}.theme-editor-actions{flex-wrap:wrap}.theme-editor-actions-spacer{flex:1 1 auto}.theme-preview{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--c-bg, #fff);color:var(--c-text, #111);font-family:var(--c-body-font, inherit)}.theme-preview-topbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--c-surface, #f5f5f5);border-bottom:1px solid var(--c-border, #e5e7eb)}.theme-preview-dot{width:10px;height:10px;border-radius:999px;background:var(--c-accent, #6366f1)}.theme-preview-brand{font-size:12px;font-weight:600;font-family:var(--c-heading-font, inherit);color:var(--c-text, #111)}.theme-preview-body{padding:12px 14px 14px}.theme-preview-h{font-family:var(--c-heading-font, inherit);font-size:16px;margin:0 0 4px;color:var(--c-primary, var(--c-text, #111))}.theme-preview-p{font-size:12px;color:var(--c-muted, #667085);margin:0 0 10px}.theme-preview-btns{display:flex;gap:8px;margin-bottom:12px}.theme-preview-btn{font-size:12px;padding:6px 12px;border-radius:var(--c-btn-radius, 8px);border:1px solid var(--c-secondary, var(--c-border, #e5e7eb));background:var(--c-surface-alt, #eef2f7);color:var(--c-secondary, var(--c-text, #111));cursor:default}.theme-preview-btn.is-primary{background:var(--c-accent, #6366f1);color:var(--c-accent-ink, #fff);border-color:transparent}.theme-preview-card{background:var(--c-surface, #f5f5f5);border:1px solid var(--c-border, #e5e7eb);border-radius:var(--c-card-radius, 10px);padding:10px 12px;margin-bottom:12px}.theme-preview-card-label{font-size:11px;color:var(--c-muted, #667085);text-transform:uppercase;letter-spacing:.04em}.theme-preview-metric{font-family:var(--c-heading-font, inherit);font-size:24px;font-weight:700;color:var(--c-text, #111)}.theme-preview-bar{height:8px;border-radius:999px;background:var(--c-surface-alt, #eef2f7);overflow:hidden;margin-top:6px}.theme-preview-bar>span{display:block;height:100%;background:var(--c-accent, #6366f1)}.theme-preview-table{width:100%;border-collapse:collapse;font-size:12px}.theme-preview-table th,.theme-preview-table td{text-align:left;padding:5px 8px;border-bottom:1px solid var(--c-border, #e5e7eb);color:var(--c-text, #111)}.theme-preview-table th{color:var(--c-muted, #667085);font-weight:600}.theme-rp{margin-top:8px;padding:12px;border-radius:10px;border:1px solid var(--border, #e5e7eb);background:var(--r-bg, #ffffff);color:var(--r-fg, #1f2933);display:grid;gap:10px;font-size:12px}.theme-rp-swatches{display:flex;flex-wrap:wrap;gap:6px 12px}.theme-rp-swatch{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--r-muted, #667085)}.theme-rp-chip{width:13px;height:13px;border-radius:3px;border:1px solid rgba(0,0,0,.14)}.theme-rp-kpi{background:var(--r-panel, #f9fafb);border:1px solid var(--r-border, #e5e7eb);border-radius:6px;padding:8px 10px}.theme-rp-kpi-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--r-muted, #667085)}.theme-rp-kpi-value{display:inline-block;font-size:18px;font-weight:700;color:var(--r-heading, #111827);margin-top:2px;border-bottom:2px solid var(--r-accent, #0f766e);padding-bottom:3px}.theme-rp-table{width:100%;border-collapse:collapse;font-size:11px}.theme-rp-table th,.theme-rp-table td{text-align:left;padding:4px 7px;border-bottom:1px solid var(--r-border, #e5e7eb)}.theme-rp-table thead th{background:var(--r-panel-alt, #f1f5f9);color:var(--r-muted, #667085);font-weight:700;text-transform:uppercase;font-size:9.5px;letter-spacing:.03em;border-bottom:1.5px solid var(--r-border-strong, #d0d5dd)}.theme-rp-table .theme-rp-num{text-align:right;font-variant-numeric:tabular-nums}.theme-rp-insight{background:var(--r-panel-alt, #f1f5f9);border:1px solid var(--r-border, #e5e7eb);border-left:3px solid var(--r-accent, #0f766e);border-radius:6px;padding:8px 10px}.theme-rp-insight-title{display:block;font-size:11px;font-weight:700;color:var(--r-heading, #111827);margin-bottom:3px}.theme-rp-insight-line{color:var(--r-fg, #1f2933)}.theme-rp-bar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--r-panel-alt, #f1f5f9)}.theme-rp-bar-qr{background:var(--r-qr, #1d4ed8)}.theme-rp-bar-nfc{background:var(--r-nfc, #b45309)}@media(max-width:860px){.theme-editor{grid-template-columns:minmax(0,1fr)}.theme-editor-preview{position:static}}.launch-status{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:14px 16px;margin:6px 0 4px;background:var(--bg-elev);border:1px solid var(--border);border-left:4px solid var(--text-faint);border-radius:var(--radius-sm)}.launch-status.is-ready{border-left-color:var(--success)}.launch-status.is-attention{border-left-color:var(--warning)}.launch-status.is-blocked{border-left-color:var(--danger)}.launch-status-headline{font-weight:700;font-size:15px}.launch-status-scores{display:flex;gap:18px}.launch-score{text-align:center;min-width:70px}.launch-score-num{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.launch-score-label{font-size:11px}.launch-section{margin-top:16px}.launch-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}.launch-section-title{margin:0;font-size:12px;font-weight:650;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.launch-check-list{list-style:none;margin:0;padding:0;border:1px solid var(--border-soft);border-radius:var(--radius-sm);overflow:hidden}.launch-check{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-top:1px solid var(--border-soft)}.launch-check:first-child{border-top:none}.launch-dot{flex:0 0 auto;width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--text-faint)}.launch-dot.is-ready{background:var(--success)}.launch-dot.is-blocked{background:var(--danger)}.launch-dot.is-attention{background:var(--warning)}.launch-dot.is-optional{background:var(--text-faint)}.launch-check-body{flex:1 1 auto;min-width:0}.launch-check-head{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.launch-check-label{font-weight:600}.launch-check-group{font-size:11px}.launch-check-reason{font-size:12.5px;margin-top:2px}.launch-check-detail{color:var(--text-faint)}.launch-check-action{flex:0 0 auto;display:flex;align-items:center}.launch-state-tag{font-size:11px;font-weight:600;white-space:nowrap;padding:2px 8px;border-radius:999px;border:1px solid var(--border-soft);color:var(--text-dim)}.launch-state-tag.is-ready{color:var(--success)}.launch-state-tag.is-blocked{color:var(--danger)}.launch-state-tag.is-attention{color:var(--warning)}.launch-state-tag.is-optional{color:var(--text-faint)}.launch-asset-table td,.launch-asset-table th{vertical-align:middle}.launch-asset-note{font-size:11px;margin-top:2px}.launch-cell{display:inline-block;min-width:22px;font-weight:700}.launch-cell.is-on{color:var(--success)}.launch-cell.is-off{color:var(--text-faint)}.launch-cell.is-na{color:var(--text-faint);font-weight:400;font-size:11px}.launch-template-grid,.launch-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.launch-template,.launch-preview{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-sm)}.launch-template-body{flex:1 1 auto}.launch-template-name,.launch-preview-title{font-weight:650}.launch-template-desc,.launch-preview-desc{font-size:12px;margin-top:3px}.launch-template .btn,.launch-preview .btn,.launch-preview a.btn{align-self:flex-start}.launch-preview-link{font-size:11px;word-break:break-all}@media(max-width:720px){.launch-status{align-items:flex-start}.launch-status-scores{gap:12px}.launch-check{flex-wrap:wrap}.launch-check-action{width:100%;padding-left:20px}}.plan-editor-heading{margin:18px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.plan-editor-group{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.plan-editor-group-label{font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin-top:6px}.plan-feature-row{display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:4px 0}.plan-feature-row input[type=checkbox]{margin-top:3px}.plan-feature-label{display:block;font-weight:600;color:var(--text)}.plan-feature-desc{display:block;font-size:12px}.plan-limit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.plan-limit-controls{display:flex;align-items:center;gap:12px}.plan-limit-input{width:96px}.plan-sub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:4px}.plan-comp-badge{display:inline-block;margin-top:6px;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent-hover);border:1px solid var(--border)}.plan-status-pill{display:inline-block;font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--border);text-transform:capitalize}.plan-status-pill.is-on{background:#34d39924;color:var(--success)}.plan-status-pill.is-off{background:#f8717124;color:var(--danger)}.plan-status-pill.is-warn{background:#fbbf2429;color:#d97706}.plan-access-summary{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.plan-access-detail{flex-basis:100%;margin-top:2px;color:var(--text-faint);font-size:12.5px}.plan-cancel-toggle{display:inline-flex;align-items:center;gap:8px;font-weight:500;cursor:pointer}.plan-cancel-toggle input{width:16px;height:16px}.eff-yes{color:var(--success);font-weight:600}.eff-no{color:var(--text-faint)}.eff-limit{font-weight:600;color:var(--text)}.plan-over-tag{color:var(--danger);font-size:12px;font-weight:600}.is-expired-row td{opacity:.55}.plan-override-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.plan-override-form .field{margin:0;min-width:150px}.plan-override-reason{flex:1;min-width:200px}@media(max-width:720px){.plan-sub-grid{grid-template-columns:1fr}.plan-override-form .field{width:100%;min-width:0}}.billing-state{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid var(--border);text-transform:capitalize;white-space:nowrap}.billing-state--complimentary{background:var(--accent-soft);color:var(--accent-hover)}.billing-state--current{background:#34d39924;color:var(--success)}.billing-state--due_soon{background:#fbbf2429;color:#b45309}.billing-state--configuration_required{background:var(--surface-alt, rgba(148, 163, 184, .14));color:var(--text-faint)}.billing-state--past_due{background:#f8717129;color:var(--danger)}.billing-state--suspended{background:#f871713d;color:var(--danger)}.billing-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.billing-tile{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface, transparent)}.billing-tile strong{font-size:20px;line-height:1.1}.plan-billing-profile{margin-top:6px}.plan-billing-facts{display:flex;flex-wrap:wrap;gap:18px;margin-top:10px}.plan-billing-facts>div{display:flex;flex-direction:column;gap:2px}.plan-cycle{border:1px solid var(--border);border-radius:12px;padding:14px}.plan-cycle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.plan-cycle-grid>div{display:flex;flex-direction:column;gap:2px}.plan-cycle-actions{margin-top:12px;display:flex;flex-direction:column;gap:8px}.plan-pay-form,.plan-waive-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.plan-pay-form .input{flex:1;min-width:120px}.plan-waive-form .input{flex:1;min-width:160px}@media(max-width:900px){.billing-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-cycle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.billing-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-cycle-grid{grid-template-columns:1fr}}
