h2.payh{margin:8px 0 0}.paytest{border:2px solid var(--flag);color:var(--flag);background:#f3ded3;font-weight:700}.warnbox{border:2px solid var(--flag);color:var(--flag);background:#f3ded3;flex-direction:column;gap:8px;padding:12px 14px;font-size:15px;line-height:1.4;display:flex}.warnbox .eyebrow{color:var(--flag)}.paytotal{flex-direction:column;gap:4px;display:flex}.paycard{gap:10px}.paycard.flagged,.readycard.flagged{border-color:var(--flag)}.paycard.paid{background:0 0}.payhead{justify-content:space-between;align-items:baseline;gap:10px;font-size:18px;display:flex}.copyfield{flex-direction:column;gap:4px;display:flex}.copyrow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.payamt{color:var(--ink);font-variant-numeric:tabular-nums;font-size:34px;font-weight:700;line-height:1.1}.paycontact{color:var(--ink);overflow-wrap:anywhere;min-width:0;font-size:19px;font-weight:700}.copybtn{min-width:96px;font-weight:700}.copybtn.done{background:var(--ok);color:var(--white);border-color:var(--ok)}.copyin{font-size:19px}.paystatus{font-size:15px}.paycard .btn.armed{font-size:16px}.bigready{font-size:20px;font-weight:700}.okword{color:var(--ok)}.screen.wide{max-width:1240px}.mtop{padding:calc(env(safe-area-inset-top) + 14px) 16px 12px;border-bottom:1px solid var(--brass);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.mtop-l{align-items:center;gap:6px;min-width:0;display:flex}.mtop-t{flex-direction:column;gap:4px;min-width:0;display:flex}.mtop-t h1{overflow-wrap:anywhere;font-size:28px}.mtop-r{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mbtn{background:var(--white);border:1px solid var(--stone);min-height:44px;color:var(--ink);cursor:pointer;padding:0 14px;font-size:15px}.mbtn.dark{background:var(--ink);color:var(--ivory);border-color:var(--ink);font-weight:700}.armed{background:var(--flag)!important;color:var(--white)!important;border-color:var(--flag)!important}.legend{flex-wrap:wrap;align-items:center;gap:14px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.sw{border:1px solid var(--stone);background:var(--white);width:14px;height:14px;display:inline-block}.sw.dash{border:1px dashed var(--brass);background:0 0}.offword{color:var(--flag);font-weight:700}.wk{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;display:grid}@media (max-width:900px){.wk{grid-template-columns:1fr}}.wkday{flex-direction:column;gap:8px;min-width:0;display:flex}.wkhead{color:var(--ink);border-bottom:1px solid var(--bone);padding-bottom:6px;font-size:13px;font-weight:700}.wkday.today .wkhead{border-bottom:2px solid var(--ink)}.offline-note{color:var(--flag);font-size:12.5px;font-weight:700}.vcard{background:var(--white);border:1px solid var(--stone);flex-direction:column;display:flex}.vcard.sug{border:1px dashed var(--brass);background:0 0}.vbody{text-align:left;cursor:pointer;min-height:44px;color:var(--graphite);background:0 0;border:0;flex-direction:column;gap:4px;padding:8px;font-size:13.5px;line-height:1.3;display:flex}.vwhen{color:var(--muted)}.vwhat{color:var(--ink);overflow-wrap:anywhere;font-weight:700}.vtag{color:#6b5320;font-size:12px;font-weight:700}.vact{gap:6px;padding:0 8px 8px;display:flex}.vact .mbtn{flex:1;min-height:44px;font-size:14px}.mgrid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.mgrid b{color:var(--muted);text-align:center;font-size:11px}.mday{border:1px solid var(--bone);background:var(--white);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:52px;font-size:14px;display:flex}.mday.other{color:var(--stone)}.mday.on{border:2px solid var(--ink);font-weight:700}.mday.today span:first-child{text-decoration:underline}.marks{gap:3px;min-height:6px;display:flex}.dot{background:var(--brass);border-radius:3px;width:6px;height:6px;display:inline-block}.dot.sug{border:1px dashed var(--brass);background:0 0}.dot.off{background:var(--flag)}.mpanel{max-width:640px}.two{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.chips.big{gap:8px}.pchip{border:1px solid var(--stone);background:var(--white);cursor:pointer;min-height:44px;padding:0 12px;font-size:15px}.pchip.on{background:var(--ink);color:var(--ivory);border-color:var(--ink)}.pchip.off{color:var(--flag);border-color:var(--flag)}.pchip.on.off{background:var(--flag);color:var(--white)}.acard.flagged{border-color:var(--flag)}.acard.cost{background:0 0}.arow{cursor:pointer;text-align:left;min-height:44px;color:var(--ink);background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:0;font-size:17px;display:flex}.linkbtn{cursor:pointer;color:inherit;text-align:center;background:0 0;border:0;min-height:44px;padding:4px 6px;font-size:15px;text-decoration:underline}.linkbtn.left{text-align:left;padding-left:0}.linkline{border:0;border-bottom:1px solid var(--bone);text-align:left;cursor:pointer;width:100%;min-height:44px;color:inherit;background:0 0}.mapbox{border:1px solid var(--bone);width:100%;max-width:560px;height:auto;display:block}.pin{stroke:var(--white);stroke-width:2px}.pin.prop{fill:var(--ink)}.pin.in{fill:#2f5d3a}.pin.out{fill:var(--flag)}.pin.wh{fill:var(--brass)}.pinlab{fill:var(--ink);font-size:12px;font-family:var(--text)}.pinlab.small{font-size:11px}.maplink{align-items:center;min-height:44px;margin-right:14px;display:inline-flex}.stagebar{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;display:grid}.stg{border-top:4px solid var(--bone);color:var(--muted);flex-direction:column;gap:2px;padding-top:6px;font-size:12px;display:flex}.stg.done{border-top-color:var(--ink);color:var(--ink);font-weight:700}.stg small{color:var(--muted);font-weight:400}.chip.src{margin-left:8px;font-size:11px}.row-r{align-items:center;gap:8px;display:inline-flex}.check{align-items:center;gap:10px;min-height:44px;font-size:15px;display:flex}.check input{width:22px;height:22px}.filebtn{position:relative;overflow:hidden}.filebtn input{opacity:0;cursor:pointer;position:absolute;top:0;bottom:0;left:0;right:0}.drop{border:2px dashed var(--stone);text-align:center;color:var(--muted);padding:26px 16px;font-size:15px}.drop.on{border-color:var(--ink);background:var(--bone);color:var(--ink)}.fgrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.ftile{border:1px solid var(--bone);background:var(--white);flex-direction:column;display:flex}.ftile img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.fvid{aspect-ratio:4/3;background:var(--graphite);color:var(--ivory);justify-content:center;align-items:center;font-size:14px;text-decoration:none;display:flex}.fmeta{align-items:center;gap:6px;padding:6px;display:flex}.star{border:1px solid var(--bone);background:var(--white);min-width:44px;min-height:44px;color:var(--stone);cursor:pointer;font-size:20px}.star.on{color:var(--brass);border-color:var(--brass)}.fsel{border:1px solid var(--bone);background:var(--white);flex:1;min-width:0;min-height:44px;font-size:13px}.faded{opacity:.6}.btnrow{flex-wrap:wrap;gap:8px;padding-top:8px;display:flex}.tile{flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;min-height:76px;padding:10px 16px}.msw button{min-height:44px}.rejbox{flex-direction:column;gap:8px;width:100%;padding:8px 0;display:flex}:root{--ivory:#f8f3e8;--graphite:#3a3733;--ink:#101010;--bone:#e8e2d6;--brass:#b49b68;--stone:#9b948a;--muted:#5f5a52;--white:#fff;--flag:#8a3b12;--ok:#2f5d3a;--title:"Playfair Display", Georgia, serif;--text:Karla, system-ui, -apple-system, sans-serif}*{box-sizing:border-box}html,body{background:var(--ivory);height:100%;color:var(--graphite);font-family:var(--text);-webkit-text-size-adjust:100%;margin:0;font-size:16px}body{overscroll-behavior-y:none}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--graphite)}#app{min-height:100%}.screen{min-height:100vh;background:var(--ivory);flex-direction:column;max-width:560px;min-height:100dvh;margin:0 auto;display:flex}.top{padding:calc(env(safe-area-inset-top) + 16px) 20px 12px;border-bottom:1px solid var(--bone);justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{letter-spacing:.28em;color:var(--ink);font-size:11px;font-weight:500}.who{color:var(--muted);text-align:right;font-size:14px}.net{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.net.bad{color:var(--flag)}.main{flex-direction:column;flex:1;gap:18px;padding:22px 20px;display:flex}.foot{flex-direction:column;gap:10px;padding:0 20px 18px;display:flex}h1{font-family:var(--title);color:var(--ink);margin:0;font-size:30px;font-weight:400;line-height:1.15}.sub{color:var(--muted);font-size:14px}.eyebrow{letter-spacing:.14em;color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:700}.back{align-items:center;gap:12px;display:flex}.iconbtn{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;display:inline-flex}.btn{border:1px solid var(--ink);background:var(--white);min-height:52px;color:var(--ink);cursor:pointer;text-align:center;border-radius:0;justify-content:center;align-items:center;gap:8px;width:100%;padding:0 16px;font-size:16px;font-weight:700;text-decoration:none;display:flex}.btn.primary{background:var(--ink);color:var(--ivory)}.btn.big{letter-spacing:.02em;min-height:112px;font-size:24px}.btn.tall{border-width:2px;min-height:72px;font-size:21px}.btn.mid{min-height:64px;font-size:17px}.btn.quiet{border-color:var(--bone);font-weight:500}.btn:disabled{opacity:.45;cursor:default}.card{border:1px solid var(--bone);background:var(--white);flex-direction:column;gap:8px;padding:16px;display:flex}.row{justify-content:space-between;align-items:center;gap:12px;display:flex}.strong{color:var(--ink);font-weight:700}.big-num{color:var(--ink);font-size:22px;font-weight:700}.note{color:var(--muted);align-items:flex-start;gap:8px;font-size:13px;line-height:1.4;display:flex}.flagtext{color:var(--flag)}.nav{border-top:1px solid var(--bone);background:var(--white);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;position:-webkit-sticky;position:sticky;bottom:0}.nav button{height:64px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-top:2px solid #0000;font-size:15px}.nav button.on{color:var(--ink);border-top-color:var(--ink);font-weight:700}label.field{color:var(--muted);flex-direction:column;gap:6px;font-size:14px;display:flex}input.in,select.in,textarea.in{border:1px solid var(--stone);background:var(--white);min-height:52px;color:var(--ink);border-radius:0;width:100%;padding:10px 12px;font-size:17px}textarea.in{resize:vertical;min-height:80px}.mic{color:var(--muted);font-size:12px}.timer{background:var(--ink);color:var(--ivory);flex-direction:column;gap:8px;padding:22px 20px;display:flex}.timer .lab{letter-spacing:.16em;color:var(--brass);font-size:12px;font-weight:700}.timer .clock{font-variant-numeric:tabular-nums;font-size:52px;font-weight:700}.timer .what{font-size:17px}.timer .since{color:#cfc8bb;font-size:14px}.tasks{flex-direction:column;gap:8px;display:flex}.task{border:1px solid var(--bone);background:var(--white);min-height:56px;color:var(--ink);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;width:100%;padding:0 16px;font-size:17px;display:flex}.task.sched{border:2px solid var(--ink)}.task .tag{letter-spacing:.12em;color:var(--brass);font-size:11px;font-weight:700}.task.on{background:var(--ink);color:var(--ivory)}.dd{border:1px solid var(--stone);background:var(--white)}.dd-head{min-height:56px;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:0 14px;font-size:18px;font-weight:700;display:flex}.dd-list{border-top:1px solid var(--bone);max-height:52vh;overflow-y:auto}.dd-group{letter-spacing:.14em;color:var(--muted);padding:10px 14px 4px;font-size:11px;font-weight:700}.dd-item{text-align:left;width:100%;min-height:48px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 14px;font-size:16px;display:flex}.dd-item.sel{background:var(--bone);font-weight:700}.dd-item .meta{color:var(--muted);font-size:13px}.banner{background:var(--bone);align-items:center;gap:10px;padding:12px 14px;font-size:15px;display:flex}.tabs{border-bottom:1px solid var(--bone);grid-template-columns:1fr 1fr;display:grid}.tabs button{height:52px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;font-size:16px}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink);font-weight:700}.room{border:1px solid var(--bone);background:var(--white);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.room .top2{color:var(--ink);justify-content:space-between;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--bone);color:var(--graphite);padding:4px 8px;font-size:12px}.chip.ok{color:var(--ok);background:#dce8dd}.chip.wait{color:#6b5320;background:#f1e6cf}.chip.bad{color:var(--flag);background:#f3ded3}.capbtn{border:1px solid var(--ink);background:var(--white);cursor:pointer;min-height:44px;padding:0 12px;font-size:14px;font-weight:700}.dmg{border:1px solid var(--stone);background:var(--white);cursor:pointer;white-space:nowrap;min-height:44px;padding:0 12px;font-size:14px}.dmg.on{background:var(--flag);color:var(--white);border-color:var(--flag)}.opts{flex-wrap:wrap;gap:8px;display:flex}.opt{border:1px solid var(--stone);background:var(--white);cursor:pointer;flex:auto;min-height:48px;padding:0 14px;font-size:15px}.opt.on{background:var(--ink);color:var(--ivory);border-color:var(--ink);font-weight:700}.q{flex-direction:column;gap:10px;display:flex}.q .qt{color:var(--ink);font-size:17px;font-weight:700}.q.need{outline-offset:6px;border-radius:6px;outline:3px solid #b3261e}.list .line{border-bottom:1px solid var(--bone);justify-content:space-between;gap:10px;padding:12px 0;font-size:15px;display:flex}.pay{background:var(--white);border:1px solid var(--bone);flex-direction:column;gap:6px;padding:18px;display:flex}.pay .amt{color:var(--ink);font-size:34px;font-weight:700}.strip{grid-template-columns:repeat(7,1fr);gap:6px;padding:12px 20px 0;display:grid}.day{border:1px solid var(--bone);background:var(--white);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:56px;font-size:14px;display:flex;position:relative}.day b{color:var(--muted);font-size:11px}.day.on{border:2px solid var(--ink);font-weight:700}.day.off{color:var(--flag)}.day .dot{background:var(--brass);border-radius:3px;width:6px;height:6px;position:absolute;bottom:5px}.month{grid-template-columns:repeat(7,1fr);gap:4px;padding:12px 20px 0;display:grid}.switcher{border:1px solid var(--ink);display:inline-flex}.switcher button{background:var(--white);cursor:pointer;border:0;min-height:36px;padding:0 12px;font-size:14px}.switcher button.on{background:var(--ink);color:var(--ivory)}.visit{border:1px solid var(--bone);background:var(--white);flex-direction:column;gap:6px;padding:14px;display:flex}.visit .when{color:var(--muted);font-size:14px}.visit .what{color:var(--ink);font-size:17px;font-weight:700}.sheet{z-index:20;background:#10101080;justify-content:center;align-items:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.sheet .panel{background:var(--ivory);width:100%;max-width:560px;max-height:90vh;padding:20px 20px calc(20px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex;overflow-y:auto}.toast{left:16px;right:16px;bottom:calc(90px + env(safe-area-inset-bottom));background:var(--ink);color:var(--ivory);z-index:30;max-width:528px;margin:0 auto;padding:14px 16px;font-size:15px;position:fixed}.rec{color:#fff;z-index:40;background:#000;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.rec video{object-fit:cover;background:#111;flex:1;width:100%;min-height:0}.rec .bar{padding:calc(env(safe-area-inset-top) + 12px) 16px 12px;justify-content:space-between;align-items:center;font-size:15px;display:flex}.rec .bar button{color:#fff;cursor:pointer;background:0 0;border:0;min-height:44px;font-size:16px}.rec .count{text-align:center;text-shadow:0 2px 12px #000;pointer-events:none;font-size:72px;font-weight:700;position:absolute;top:40%;left:0;right:0}.rec .count.warn{color:#ffb199}.rec .controls{padding:16px 16px calc(24px + env(safe-area-inset-bottom));grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.rec .shutter{cursor:pointer;background:#fff;border:4px solid #fff;border-radius:38px;width:76px;height:76px}.rec .shutter.video{background:#c0392b}.rec .shutter.recording{border-radius:12px}.rec .mode{color:#aaa;cursor:pointer;background:0 0;border:0;min-height:44px;font-size:15px}.rec .mode.on{color:#fff;font-weight:700}.rec .help{color:#ccc;text-align:center;padding:0 16px;font-size:13px}.rec .flash{pointer-events:none;border:10px solid #c0392b;position:absolute;top:0;bottom:0;left:0;right:0}.progress{background:var(--bone);height:4px}.progress>div{background:var(--brass);height:4px}.logo{object-fit:contain;width:96px;height:96px}.step{gap:14px;display:flex}.step .n{background:var(--ink);width:32px;height:32px;color:var(--ivory);border-radius:16px;flex:0 0 32px;justify-content:center;align-items:center;font-weight:700;display:flex}.step .b{flex-direction:column;gap:8px;font-size:15px;line-height:1.45;display:flex}.hidden{display:none!important}
