@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/archivo-var.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plexmono-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/plexmono-500.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plexmono-600.woff2) format("woff2")}:root{--bg: #F3EDE3;--surface: #FBF8F1;--line: #DCCFBB;--ink: #2B1D12;--muted: #8B7861;--leather: #5B3A21;--leather-deep: #3B2414;--cream: #F2E8D8;--cream-dim: #CBB9A0;--tan: #A9711F;--danger: #A33B2E;--ok: #4C6B45;--sans: "Archivo", system-ui, -apple-system, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", monospace;--t-cap: 11px;--t-small: 13px;--t-body: 15px;--t-title: 17px;--t-head: 22px;--t-num: 26px;--t-clock: 52px;--t-clock-s: 40px;--r-card: 14px;--r-btn: 10px;--r-ctl: 10px;--ease: cubic-bezier(.22, .61, .21, 1);--pause-s: 28px;--pause-m: 52px;--pad: 20px;--tap: 44px;--card: var(--surface);--r: var(--r-card);--barclear: calc(env(safe-area-inset-bottom, 0px) + 78px) }*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{font-family:var(--sans);font-size:16px;line-height:1.4;color:var(--ink);background:var(--bg);min-height:100dvh;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,select,textarea{font:inherit;color:inherit}input,select,textarea,button{font-size:16px}.app{max-width:480px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column}.appmain{display:flex;flex-direction:column;flex:1;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 16px) var(--pad) 12px}.topbar .brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.topbar .demo-tag{font-family:var(--mono);font-size:var(--t-cap);color:var(--muted);letter-spacing:.06em}.topbar .avatar,.avatar.big{width:34px;height:34px;border-radius:50%;background:var(--leather);color:var(--cream);font-weight:700;font-size:var(--t-body);display:inline-flex;align-items:center;justify-content:center;transition:transform 80ms var(--ease);overflow:hidden;flex-shrink:0}.topbar .avatar:active{transform:scale(.94)}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.big{width:64px;height:64px;font-size:var(--t-num)}.screen{flex:1;padding:8px var(--pad) 40px;display:flex;flex-direction:column;gap:22px;animation:rise-in .28s var(--ease)}@keyframes rise-in{0%{opacity:0;transform:translateY(4px)}}.tabbar{position:sticky;bottom:0;display:flex;align-items:stretch;gap:10px;background:var(--surface);border-top:1px solid var(--line);padding:10px var(--pad) calc(env(safe-area-inset-bottom,0px) + 10px)}.tabbar .spacer{flex:1}.tabbar .cat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:60px;color:var(--muted);font-size:var(--t-cap);font-weight:600;letter-spacing:.02em;transition:color .14s var(--ease)}.tabbar .cat.active{color:var(--leather)}.tabbar .cat svg{width:22px;height:22px}.bar-action{min-height:50px;padding:0 16px;border-radius:var(--r-ctl);background:var(--leather);color:var(--cream);font-weight:700;font-size:var(--t-body);display:inline-flex;align-items:center;gap:8px;transition:transform 80ms var(--ease),background-color .14s var(--ease)}.bar-action:active{transform:scale(.97)}.bar-action[aria-current]{background:var(--leather-deep)}.bar-action svg{width:20px;height:20px}.railmark{display:none}.tabbar.nav3,.tabbar.nav5{gap:0}.tabbar.nav3 .nav-item,.tabbar.nav5 .nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--muted);font-size:var(--t-cap);font-weight:600;letter-spacing:.02em;transition:color .14s var(--ease);min-height:48px}.tabbar.nav3 .nav-item.active,.tabbar.nav5 .nav-item.active{color:var(--leather)}.tabbar.nav3 .nav-item svg,.tabbar.nav5 .nav-item svg{width:22px;height:22px}.tabbar.nav3,.tabbar.nav5{position:sticky}.tabbar.nav5 .nav-item{font-size:var(--t-cap);letter-spacing:-.01em}.tabbar.nav5 .nav-item svg{width:21px;height:21px}.tabbar .nav-icon .dot{position:absolute;top:-1px;right:-3px;width:7px;height:7px;border-radius:50%;background:var(--tan);animation:breathe 2s ease-in-out infinite}.pagehead{display:flex;align-items:center;min-height:28px}.pagetitle,.greeting h1{font-size:var(--t-head);font-weight:800;letter-spacing:-.01em}.model-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.model-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-align:left;display:flex;flex-direction:column;transition:transform 80ms var(--ease)}.model-card:active{transform:scale(.98)}.model-hero{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.model-hero.blank{background:var(--cream)}.model-meta{padding:10px 12px 12px;display:flex;flex-direction:column;gap:3px}.model-meta .title{font-weight:700;font-size:var(--t-body)}.model-meta .sub{font-size:var(--t-small);color:var(--muted)}.model-meta .tagline{font-style:normal}.photo-strip.big .photo-thumb{width:108px;height:108px}.hero-star{position:absolute;top:4px;right:4px;font-size:var(--t-cap);background:var(--card);border-radius:var(--r-ctl);padding:0 4px}.tagrow{display:flex;flex-wrap:wrap;gap:8px;text-align:left}.desc-text{font-size:var(--t-body);line-height:1.5}.desc-text.muted{color:var(--muted)}.draft-box{background:var(--cream);border-radius:var(--r-ctl);padding:10px 12px;margin-top:10px}.price-line .num{font-size:var(--t-head);font-weight:800;font-family:var(--mono)}.segments{display:flex;gap:6px;margin:6px var(--pad) 0;background:var(--cream);border-radius:var(--r-ctl);padding:4px}.segments button{flex:1;min-height:38px;border-radius:var(--r-ctl);font-weight:700;font-size:var(--t-body);color:var(--muted)}.segments button.active{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #2b1d121a}.caja{display:flex;flex-direction:column;flex:1}.rulegrid{display:grid;grid-template-columns:auto auto auto 1fr auto 1fr;gap:8px 6px;align-items:center}.rulegrid input{width:100%;min-width:0}.rulegrid .rulename{font-weight:700;font-size:var(--t-body)}.dot-inline{width:9px;height:9px;border-radius:50%;background:var(--tan);animation:breathe 2s ease-in-out infinite}.card{background:var(--surface);border-radius:var(--r-card);padding:var(--pad)}.cardhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line)}.cardhead .total{font-weight:600}.label{font-family:var(--mono);font-size:var(--t-cap);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.small{font-size:var(--t-small)}.empty{color:var(--muted);font-size:var(--t-body);text-align:center;padding:18px 8px}h2{font-size:var(--t-title);font-weight:700;letter-spacing:-.01em}.btn{min-height:var(--tap);padding:0 18px;border-radius:var(--r-btn);font-weight:700;font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;transition:transform 80ms var(--ease),background-color .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease),opacity .14s var(--ease)}.btn:active{transform:scale(.985)}.btn.primary{background:var(--leather);color:var(--cream)}.btn.secondary{background:var(--cream);color:var(--leather)}.btn.danger{background:var(--danger);color:var(--cream)}.btn.ghost{color:var(--muted);font-weight:600}.btn.block{width:100%}.btn.big{min-height:56px;font-size:var(--t-title)}.btn:disabled{opacity:.45}.linklike{color:var(--muted);font-size:var(--t-small);text-decoration:underline;text-underline-offset:3px;min-height:var(--tap);display:inline-flex;align-items:center}.timer-card{border-radius:var(--r-card);padding:26px var(--pad) 22px;text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center}.timer-card.idle{background:var(--surface);border:1px solid var(--line)}.timer-card.running{background:var(--leather-deep);color:var(--cream);border:1px solid var(--leather-deep)}.timer-clock{font-family:var(--mono);font-weight:500;font-size:var(--t-clock);line-height:1;letter-spacing:.01em;font-variant-numeric:tabular-nums}.timer-card.running .timer-piece{color:var(--cream-dim);font-size:var(--t-body)}.timer-card.running .label{color:var(--cream-dim)}.rec-row{display:inline-flex;align-items:center;gap:8px}.rec-dot{width:8px;height:8px;border-radius:50%;background:var(--tan);animation:breathe 2s ease-in-out infinite}@keyframes breathe{50%{opacity:.25}}.loader{height:2px;border-radius:1px;background:var(--line);overflow:hidden;position:relative;width:100%}.loader:after{content:"";position:absolute;top:0;bottom:0;left:0;width:36%;border-radius:1px;background:var(--leather);animation:sweep 1.2s ease-in-out infinite}@keyframes sweep{0%{transform:translate(-110%)}to{transform:translate(390%)}}.chips{display:flex;gap:8px;overflow-x:auto;padding:2px;max-width:100%;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;min-height:var(--tap);padding:0 16px;border-radius:999px;background:var(--cream);font-weight:600;font-size:var(--t-body);white-space:nowrap;transition:background-color .14s var(--ease),color .14s var(--ease),border-color .14s var(--ease)}.chip.selected{background:var(--leather);border-color:var(--leather);color:var(--cream)}.rows{display:flex;flex-direction:column}.row{display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 0;border-top:1px solid var(--line);text-align:left;width:100%}.row:first-child{border-top:none}.row .grow{flex:1;min-width:0}.row .title{font-weight:600;font-size:var(--t-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .sub{font-family:var(--mono);font-size:var(--t-small);color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row .amt{font-family:var(--mono);font-size:var(--t-body);font-weight:500;white-space:nowrap}.row .chev{color:var(--muted);font-size:var(--t-title);line-height:1;flex:0 0 auto}button.row{transition:background-color .12s var(--ease)}button.row:active{background:var(--bg)}.iconbtn{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:background-color .12s var(--ease)}.iconbtn:active{background:var(--bg)}.iconbtn svg{width:16px;height:16px}.piece-card{width:100%;text-align:left}.piece-card .stats{display:flex;gap:14px;margin-top:8px;font-family:var(--mono);font-size:var(--t-small);color:var(--muted)}.badge{font-family:var(--mono);font-size:var(--t-cap);padding:3px 8px;border-radius:var(--r-ctl);letter-spacing:.04em}.badge.done{background:var(--ok);color:var(--cream)}.newpiece{display:flex;gap:8px}.newpiece input{flex:1}.field{display:flex;flex-direction:column;gap:6px}.field input,.field select,.field textarea{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--r-btn);background:var(--surface);padding:8px 12px;width:100%}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--leather);outline-offset:-1px}.field input[type=time],.field input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;justify-content:flex-start}input[type=time]::-webkit-date-and-time-value,input[type=date]::-webkit-date-and-time-value{text-align:left;margin:0}.formgrid{display:flex;flex-direction:column;gap:14px}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:10px}input.plain{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--r-btn);background:var(--surface);padding:8px 12px}input.plain:focus{outline:2px solid var(--leather);outline-offset:-1px}.cat-chips{display:flex;flex-wrap:wrap;gap:8px}.cat-chips .chip{font-size:var(--t-small);padding:0 13px;min-height:40px}.scan-preview{width:100%;border-radius:var(--r-btn);border:1px solid var(--line);max-height:260px;object-fit:contain;background:var(--leather-deep)}.scan-wait{padding:22px var(--pad);text-align:center;border-radius:var(--r-card);background:var(--surface);border:1px solid var(--line)}.thumb{width:44px;height:44px;object-fit:cover;border-radius:var(--r-ctl);border:1px solid var(--line);flex:0 0 auto}.thumb-blank{background:var(--line);display:inline-block}.scanedit{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--leather-deep);color:var(--cream);display:flex;flex-direction:column}.scanedit-top{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 10px) var(--pad) 10px}.scanedit-top .label,.scanedit-top .linklike{color:var(--cream-dim)}.scanedit-box{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px}.scanedit-stage{position:relative}.scanedit-stage>canvas{display:block;border-radius:var(--r-ctl)}.scanedit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none}.scanedit-quad{fill:#a9711f24;stroke:var(--tan);stroke-width:2}.scanedit-handle{fill:var(--cream);stroke:var(--tan);stroke-width:3}.scanedit-loupe{position:absolute;width:120px;height:120px;border-radius:50%;overflow:hidden;border:2px solid var(--cream);box-shadow:0 4px 18px #0006;pointer-events:none}.scanedit-foot{display:flex;flex-direction:column;gap:12px;padding:12px var(--pad) calc(env(safe-area-inset-bottom,0px) + 14px)}.scanedit-foot .chip{background:transparent;color:var(--cream-dim);border-color:#f2e8d859}.scanedit-foot .chip.selected{background:var(--cream);color:var(--ink);border-color:var(--cream)}.monthnav{display:flex;align-items:center;justify-content:space-between}.monthnav .btn{min-width:var(--tap)}.monthnav .month{font-weight:700;font-size:var(--t-title)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:14px;display:flex;flex-direction:column;gap:6px}.tile .num{font-family:var(--mono);font-weight:600;font-size:var(--t-num);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.tile.wide{grid-column:1 / -1}.tile .note{font-size:var(--t-small);color:var(--muted);line-height:1.45}.cat-breakdown{display:flex;flex-direction:column;gap:8px}.cat-breakdown .catrow{display:flex;justify-content:space-between;font-family:var(--mono);font-size:var(--t-small)}.cat-breakdown .bar{height:4px;background:var(--leather);border-radius:2px;opacity:.85;transform-origin:left;animation:grow-x .45s ease-out both}@keyframes grow-x{0%{transform:scaleX(0)}}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2b1d1273;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--bg);border-radius:18px 18px 0 0;width:100%;max-width:480px;max-height:88dvh;overflow-y:auto;padding:10px var(--pad) calc(env(safe-area-inset-bottom,0px) + 18px);display:flex;flex-direction:column;gap:14px;animation:sheet-up .18s ease-out}@keyframes sheet-up{0%{transform:translateY(24px);opacity:.6}to{transform:translateY(0);opacity:1}}@media (prefers-reduced-motion: reduce){.sheet{animation:none}}.sheet .grab{width:36px;height:4px;border-radius:2px;background:var(--line);margin:0 auto}.sheet h3{font-size:var(--t-title);font-weight:700}.sheet-actions{display:flex;gap:10px}.sheet-actions .btn{flex:1}.toasts{position:fixed;bottom:var(--barclear);left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:6px;z-index:60;pointer-events:none}.toast{background:var(--ink);color:var(--cream);font-size:var(--t-body);font-weight:600;padding:10px 16px;border-radius:var(--r-ctl);max-width:86vw;animation:toast-life 2.6s ease both}@keyframes toast-life{0%{opacity:0;transform:translateY(8px)}7%,86%{opacity:1;transform:none}to{opacity:0;transform:translateY(4px)}}.ready-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ok);margin-left:7px;vertical-align:1px}.checkchip{min-height:30px;padding:0 11px;font-size:var(--t-small);font-family:var(--mono);color:var(--muted)}.checkchip.done{color:var(--ok);border-color:var(--ok);background:transparent}.photo-strip{display:flex;gap:8px;overflow-x:auto;padding:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.photo-strip::-webkit-scrollbar{display:none}.photo-thumb{width:62px;height:62px;object-fit:cover;border-radius:var(--r-ctl);border:1px solid var(--line);flex:0 0 auto;padding:0}.photo-add{width:62px;height:62px;border-radius:var(--r-ctl);border:1px dashed var(--line);color:var(--muted);font-size:var(--t-small);font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.photo-big{width:100%;max-height:58vh;object-fit:contain;border-radius:var(--r-btn);background:var(--leather-deep)}.stickyactions{position:sticky;bottom:var(--barclear);margin-top:auto;display:flex;flex-direction:column;gap:10px;padding-top:14px;background:linear-gradient(to bottom,transparent,var(--bg) 26%)}.login{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:32px;max-width:480px;margin:0 auto;gap:26px}.login .brand{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--ink);animation:rise-in .3s ease-out}.login .brand .sub{font-family:var(--mono);font-size:var(--t-small);color:var(--muted)}.login form{display:flex;flex-direction:column;gap:14px}.login .error{color:var(--danger);font-size:var(--t-body);text-align:center}.stack{display:flex;flex-direction:column;gap:10px}.hstack{display:flex;align-items:center;gap:10px}.spread{display:flex;align-items:center;justify-content:space-between;gap:10px}@media (prefers-reduced-motion: reduce){.screen,.login .brand,.sheet,.cat-breakdown .bar,.rec-dot,.tabbar .running-dot,.loader:after{animation:none}.toast{animation:none}.btn,.chip,.tabbar button{transition:none}.btn:active{transform:none}}.screenhead{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:6px 0 var(--pause-s)}.hint{font-size:var(--t-small);color:var(--muted);line-height:1.45}.warn{color:var(--tan)}.ok{color:var(--ok)}.spaced{margin-bottom:12px}.pad{padding:24px 0}.breakall{word-break:break-all}.empty-state{padding:40px 0;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:14px}.card-thumb{position:relative;width:100%;aspect-ratio:4 / 5;background:var(--cream);overflow:hidden}.card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.card-thumb-empty{display:block;width:100%;height:100%;background:var(--cream)}.flag{position:absolute;left:6px;bottom:6px;font-family:var(--mono);font-size:var(--t-cap);letter-spacing:.04em;text-transform:uppercase;padding:3px 6px;border-radius:var(--r-ctl)}.flag.live{background:var(--ok);color:#fff}.flag.ready{background:var(--tan);color:#fff}.model-name{font-weight:600;padding:8px 10px 0}.model-meta{padding:2px 10px 10px;font-size:var(--t-small);color:var(--muted)}.blockers{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip.missing{background:#f6ecda;color:var(--tan);font-size:var(--t-small);padding:4px 9px}.progress-line{color:var(--muted)}.row-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.field-row{display:flex;align-items:center;gap:10px;margin-top:6px}.sublabel{font-family:var(--mono);font-size:var(--t-cap);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.input.area{min-height:110px;resize:vertical;line-height:1.5}.input.area.tall{min-height:160px;width:100%}.input.narrow{width:90px}.pricegrid,.codegrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.pricefield{display:flex;flex-direction:column;gap:4px}.variant{border-radius:var(--r-btn);padding:12px;margin-top:12px;background:var(--cream)}.variant.ready{background:#eaf0e6}.variant.newcolor{background:var(--surface);display:flex;flex-direction:column;gap:4px}.variant.newcolor .sublabel{display:block;margin-top:6px}.variant.newcolor .sublabel:first-child{margin-top:0}.variant-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.variant-name{font-weight:600}.variant-price{color:var(--muted);display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.gaps{margin-top:8px}.photogrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0 4px}.ptile{position:relative;aspect-ratio:1;background:var(--cream-dim);border-radius:var(--r-ctl);overflow:hidden}.ptile img{width:100%;height:100%;object-fit:cover;display:block}.ptile.hero{outline:3px solid var(--ok);outline-offset:-3px}.ptile.add{background:var(--surface);color:var(--muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:var(--t-head);line-height:1;text-align:center;padding:6px}.ptile.add .small{font-size:var(--t-cap)}.ptile-pub{position:absolute;left:0;right:0;bottom:0;border:none;cursor:pointer;font-family:var(--mono);font-size:var(--t-cap);letter-spacing:.04em;padding:5px 4px;text-align:center;background:#2b1d12b8;color:var(--cream)}.ptile-pub.on{background:#4c6b45e0;color:#fff}.danger-zone{text-align:center}.linklike.danger{color:var(--danger)}.linklike.tiny{font-size:var(--t-cap);min-height:0;padding:2px 0}.needed{margin:10px 2px 4px;font-size:var(--t-body);line-height:1.5;color:var(--muted)}.needed strong{color:var(--ink);font-weight:700}.needed .ok{color:var(--ok);font-weight:600}.helper{margin-top:14px}.helper>summary{font-family:var(--mono);font-size:var(--t-small);color:var(--muted);cursor:pointer;min-height:var(--tap);display:flex;align-items:center;gap:6px}.helper>summary::marker{color:var(--cream-dim)}.helper[open]>summary{color:var(--ink)}.costline{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;color:var(--muted)}.costline .strong{color:var(--ink);font-weight:600}.suggestrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.suggest{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--cream);border-radius:var(--r-btn);padding:8px 12px}.addcolor{margin-top:14px;min-height:52px}.tagcloud{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 6px}.tag{border:none;border-radius:999px;cursor:pointer;background:var(--cream);color:var(--muted);font-size:var(--t-small);font-weight:600;padding:8px 14px;transition:background-color .14s var(--ease),color .14s var(--ease)}.tag.on{background:var(--leather);color:var(--cream)}.donutrow{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.donut{width:132px;height:132px;flex:none}.donutkey{list-style:none;flex:1;min-width:180px;display:flex;flex-direction:column;gap:6px}.donutkey li{display:flex;align-items:center;gap:8px;font-size:var(--t-small)}.donutkey .dot{width:10px;height:10px;border-radius:2px;flex:none}.donutkey .k{flex:1}.donutkey .v{font-family:var(--mono);font-size:var(--t-small)}.donutkey .pc{font-family:var(--mono);font-size:var(--t-small);color:var(--muted);width:34px;text-align:right}.donutkey.rest{margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}.donutkey.rest li{color:var(--muted);font-size:var(--t-small)}.iconaction{display:inline-flex;align-items:center;gap:6px;background:var(--cream);color:var(--leather);border-radius:var(--r-btn);padding:8px 12px;min-height:38px;font-size:var(--t-small);font-weight:600}.iconaction svg{width:17px;height:17px;flex:none}.iconaction:active{background:var(--cream-dim)}.qr{width:100%;max-width:300px;height:auto;margin:0 auto;display:block;background:#fff}.twoup{display:grid;grid-template-columns:1fr 1fr;gap:10px}.twoup .btn{min-height:50px;font-size:var(--t-body);padding:0 10px}.seelinks{display:flex;gap:10px;margin-top:4px}.seelinks .btn{flex:1;text-decoration:none;font-size:var(--t-body);min-height:46px}.titlerow{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.titlerow .pagetitle{flex:1;min-width:0}.section-fold>summary{cursor:pointer;min-height:var(--tap);display:flex;align-items:center;gap:8px;list-style:none}.section-fold>summary::-webkit-details-marker{display:none}.section-fold>summary:before{content:"";width:7px;height:7px;flex:0 0 auto;border-right:1.8px solid var(--cream-dim);border-bottom:1.8px solid var(--cream-dim);transform:rotate(-45deg);transition:transform .12s var(--ease)}.section-fold[open]>summary:before{transform:rotate(45deg)}.commitbar{margin-top:18px;display:flex;flex-direction:column;gap:10px}.commitbar .twoup .btn{min-height:56px;font-size:var(--t-title)}.needed.flagged{background:#f6e4e0;color:var(--danger);border-radius:var(--r-btn);padding:10px 12px;margin:0}.needed.flagged strong{color:var(--danger)}.variant.invalid{outline:2px solid var(--danger);outline-offset:-2px}.gaps{color:var(--danger)}.ptile-open{position:absolute;top:0;right:0;bottom:0;left:0;padding:0;cursor:zoom-in}.ptile-open img{width:100%;height:100%;object-fit:cover;display:block}.ptile.prodhero{outline:3px solid var(--leather);outline-offset:-3px}.applightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#14100cf2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px}.applightbox img{max-width:94vw;max-height:calc(100vh - 160px);object-fit:contain}.applightbox .lb-close{position:absolute;top:12px;right:16px;color:#fff;font-size:var(--t-num);opacity:.8;cursor:pointer;padding:6px 10px}.applightbox .lb-bar{position:absolute;left:0;right:0;bottom:calc(16px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:18px;color:var(--cream-dim)}.applightbox .lb-bar button{color:#fff;font-size:var(--t-num);opacity:.8;cursor:pointer;padding:4px 14px}.lb-decide{position:absolute;left:0;right:0;bottom:calc(64px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:0 12px;color:var(--cream)}.lb-flag{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:6px 13px;border:1px solid rgba(242,232,216,.35);border-radius:999px;color:var(--cream);font-family:var(--mono);font-size:var(--t-cap);letter-spacing:.04em;cursor:pointer;transition:background-color .14s var(--ease),border-color .14s var(--ease)}.lb-flag.on{background:var(--cream);color:var(--leather-deep);border-color:var(--cream)}.lb-decide .small{color:var(--cream)}.lb-decide .linklike.tiny{color:var(--cream-dim)}.pubritual{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:var(--leather-deep);color:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:28px 20px calc(28px + env(safe-area-inset-bottom));animation:rise-in .28s var(--ease)}.pubritual img{max-width:min(78vw,420px);max-height:52vh;object-fit:contain}.pubritual .pr-name{font-size:clamp(34px,9vw,48px);font-weight:500;letter-spacing:-.01em;text-align:center;line-height:1.1}.pubritual .pr-line{font-size:var(--t-small);color:var(--cream-dim)}.pubritual .pr-doors{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px}.pubritual .pr-doors .btn{background:var(--cream);color:var(--leather-deep)}.pubritual .pr-doors .linklike{color:var(--cream-dim)}@media (prefers-reduced-motion: reduce){.pubritual{animation:none}}.empty-state .empty-mark{opacity:.16}.publishbtn{margin-top:18px}.hint.centered{text-align:center;margin-top:6px}.tail-actions{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:22px;padding-bottom:8px}.orderlist{display:flex;flex-direction:column;gap:8px}.orderrow{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-btn);background:var(--card);cursor:pointer}.orderrow.nuevo{border-left:3px solid var(--tan)}.orderrow.cerrado{opacity:.6}.orderrow-shop{font-weight:600;display:flex;align-items:center;gap:7px}.orderrow-total{white-space:nowrap;font-weight:600}.dot-new{width:7px;height:7px;border-radius:50%;background:var(--tan);display:inline-block}.contactrow{display:flex;gap:8px;flex-wrap:wrap}.notebox{border-left:2px solid var(--line);padding-left:12px;color:var(--muted);font-size:var(--t-body);margin:4px 0}.itemlist{border:1px solid var(--line);border-radius:var(--r-btn);overflow:hidden}.itemrow{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);font-size:var(--t-body)}.itemrow:last-child{border-bottom:none}.itemrow.total{font-weight:600;background:var(--surface)}.sheet.tall{max-height:88vh;overflow-y:auto}.shoprow{padding:10px 0;border-bottom:1px solid var(--line)}.shoprow:last-of-type{border-bottom:none}.shoprow.off{opacity:.55}.shoprow-main{display:flex;flex-direction:column;gap:2px}.shoprow-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px}.openlink{border-top:1px solid var(--line);padding-top:14px;margin-top:6px}.qrsheet{align-items:center;text-align:center}.qr{width:260px;height:260px;max-width:100%;border:1px solid var(--line);background:#fff;image-rendering:pixelated}.nav-icon{position:relative;display:inline-flex}.badge{position:absolute;top:-5px;right:-9px;min-width:15px;height:15px;border-radius:var(--r-ctl);background:var(--tan);color:#fff;font-family:var(--mono);font-size:var(--t-cap);line-height:15px;text-align:center;padding:0 3px}.segments.small button{font-size:var(--t-small);padding:6px 10px}.pagehead{justify-content:space-between;gap:12px;flex-wrap:nowrap}.pagehead .linklike{flex:0 1 auto;white-space:nowrap}.pagehead .btn{flex:0 0 auto}.pricegrid>*,.codegrid>*{min-width:0}.pricegrid input,.codegrid input{width:100%}.input.area{min-height:132px}.clockcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:20px var(--pad);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.clockcard.running{border-color:var(--tan)}.clockwhat{font-size:var(--t-body);font-weight:600}.clockface{font-size:var(--t-clock-s);font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1}.clockacts{display:flex;gap:10px;width:100%}.clockacts .btn{flex:1}.hourrow{padding:5px 0;font-size:var(--t-body)}.daygroup{display:flex;flex-direction:column}.dayhead{padding:16px 0 4px;font-family:var(--mono);font-size:var(--t-small)}.sessionrow{display:flex;align-items:baseline;gap:12px;width:100%;padding:9px 0;background:none;border:none;border-top:1px solid var(--line);text-align:left;color:inherit;cursor:pointer;font:inherit}.daygroup .sessionrow:first-of-type{border-top:none}.sess-what{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.sess-model{font-size:var(--t-body)}.sess-note{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sess-time{flex:none;color:var(--muted);display:flex;flex-direction:column;align-items:flex-end;gap:2px}.sess-time b{color:var(--ink);font-weight:500}.picklist{display:flex;flex-direction:column;max-height:52vh;overflow-y:auto}.pickrow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:var(--tap);padding:10px 2px;background:none;border:none;border-bottom:1px solid var(--line);text-align:left;color:inherit;font:inherit;font-size:var(--t-body);cursor:pointer}.pickrow.on{font-weight:700;color:var(--leather)}.pickrow:last-child{border-bottom:none}.tagadmin{display:flex;flex-direction:column}.tagadmin-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;border-top:1px solid var(--line);padding:4px 0}.tagadmin-row:first-child{border-top:none}.tagadmin-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px;min-height:var(--tap);justify-content:center;padding:4px 2px;background:none;border:none;text-align:left;color:inherit;font:inherit;font-size:var(--t-body);cursor:pointer}.aiverdict{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--line);border-left-width:3px;border-radius:var(--r-btn);background:var(--surface)}.aiverdict.ok{border-left-color:var(--ok)}.aiverdict.bad{border-left-color:var(--danger)}.aiverdict strong{font-size:var(--t-body);font-weight:600;line-height:1.4}.aidetail{font-family:var(--mono);font-size:var(--t-small);color:var(--muted);white-space:pre-wrap;word-break:break-word;max-height:8.5em;overflow-y:auto}.herovid{width:100%;max-width:220px;aspect-ratio:27 / 40;object-fit:cover;border-radius:var(--r-ctl);background:var(--cream);display:block}label.btn.disabled{opacity:.55;pointer-events:none}@media (min-width: 768px) and (min-height: 500px){:root{--pad: 32px;--barclear: calc(env(safe-area-inset-bottom, 0px) + 16px) }.app{max-width:none;display:grid;grid-template-columns:232px minmax(0,1fr);grid-template-rows:auto 1fr;grid-template-areas:"rail top" "rail main"}.topbar{grid-area:top;width:100%;max-width:880px;margin:0 auto;padding-top:24px}.appmain{grid-area:main}.tabbar,.tabbar.nav3,.tabbar.nav5{grid-area:rail;position:sticky;top:0;bottom:auto;height:100dvh;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:2px;padding:20px 14px 20px calc(env(safe-area-inset-left,0px) + 14px);border-top:none;border-right:1px solid var(--line)}.tabbar.nav3 .nav-item,.tabbar.nav5 .nav-item{flex:none;flex-direction:row;justify-content:flex-start;gap:12px;min-height:var(--tap);padding:0 12px;border-radius:var(--r-btn);font-size:var(--t-body);font-weight:600;letter-spacing:0}.tabbar.nav3 .nav-item svg,.tabbar.nav5 .nav-item svg{width:20px;height:20px}.railmark{display:block;padding:6px 10px 18px;color:var(--ink)}.topbar .brand{display:none}.tabbar.nav3 .nav-item.active,.tabbar.nav5 .nav-item.active{background:var(--cream);color:var(--leather)}.screen,.caja{width:100%;max-width:880px;margin:0 auto}.model-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.photogrid{grid-template-columns:repeat(4,1fr)}.input.area.tall{min-height:220px}.picklist{max-height:60vh}.sheet-backdrop{align-items:center;padding:32px}.sheet,.sheet.tall{border-radius:var(--r-card);max-width:560px;max-height:84dvh}.sheet .grab{display:none}.toasts{bottom:24px}}@media (hover: hover) and (pointer: fine){.btn.primary:hover,.bar-action:hover{background:var(--leather-deep)}.btn.secondary:hover,.iconaction:hover{background:var(--cream-dim)}.btn.ghost:hover,.linklike:hover{color:var(--ink)}.chip:hover:not(.selected),.tag:hover:not(.on){background:var(--cream-dim)}button.row:hover,.iconbtn:hover,.pickrow:hover,.sessionrow:hover,.tagadmin-name:hover{background:var(--cream)}.orderrow:hover{border-color:var(--cream-dim)}.tabbar .nav-item:hover{color:var(--leather);background:var(--cream)}.model-card:hover{border-color:var(--cream-dim)}.topbar .avatar:hover{background:var(--leather-deep)}.segments button:hover:not(.active){color:var(--ink)}.helper>summary:hover,.section-fold>summary:hover{color:var(--ink)}.scanedit-foot .chip:hover:not(.selected){background:#f2e8d81f}}:focus-visible{outline:2px solid var(--leather);outline-offset:2px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,input.plain:focus-visible,.input:focus-visible{outline-offset:-1px}
