:root{--t-micro:11px;--t-xs:12px;--t-sm:13.5px;--t-md:16px;--t-lg:20px;--t-xl:40px;--track-label:.14em;--w-normal:400;--w-medium:500;--w-bold:600;--lh-body:1.55;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:32px;--sp-8:40px;--r-panel:10px;--r-ctl:6px;--r-tag:4px;--sh:0 1px 2px #0000000d,0 10px 28px -18px #0000004d;--ease:.12s cubic-bezier(.4,0,.2,1);--paper:#f7f7f5;--surface:#fff;--ink:#111;--muted:#555;--faint:#767676;--line:#ececea;--rule:#d6d6d2;--wash:#f3f3f0;--wash2:#e9e9e5;--shu:#c8442d;--shu-wash:#fae8e4;--ok:#1f7a4d;--ok-wash:#e4f1ea;--warn:#b45309;--warn-wash:#fbeedc;--serif:"Space Grotesk","IBM Plex Sans",-apple-system,"Hiragino Sans","Noto Sans JP",sans-serif;--jp:"Space Grotesk","Noto Sans JP","Hiragino Sans","PingFang SC",sans-serif;--sans:"Space Grotesk","IBM Plex Sans",-apple-system,"Hiragino Sans","PingFang SC","Noto Sans JP",sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace}*{box-sizing:border-box}html{background:var(--paper)}body{font-family:var(--sans);font-size:var(--t-sm);line-height:var(--lh-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.num,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.serif{font-family:var(--serif)}.jp{font-family:var(--jp)}.muted{color:var(--muted)}.faint{color:var(--faint)}.bad{color:var(--shu)}.ok{color:var(--ok)}.warn{color:var(--warn)}.lbl{font-family:var(--jp);font-size:var(--t-micro);letter-spacing:var(--track-label);color:var(--muted);margin-bottom:var(--sp-1);display:block}h3.sub{font-family:var(--jp);letter-spacing:.1em;margin:var(--sp-5) 0 var(--sp-2);border-left:3px solid var(--ink);padding-left:9px;font-size:14px;font-weight:500;line-height:1.2}.shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:5;background:var(--ink);color:#fff;align-items:center;gap:26px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.brand{font-family:var(--jp);letter-spacing:.1em;white-space:nowrap;align-items:center;gap:10px;font-size:21px;display:inline-flex}.mark{background:currentColor;flex:none;width:32px;height:32px;display:inline-block;-webkit-mask:url(/logo/mark.png) 50%/contain no-repeat;mask:url(/logo/mark.png) 50%/contain no-repeat}.brand em{font-style:normal;font-family:var(--serif);letter-spacing:.3em;color:#ffffff8c;align-self:flex-end;margin-bottom:4px;margin-left:-2px;font-size:11px}.topbar nav{gap:2px;height:100%;display:none}.topbar nav a{font-family:var(--jp);letter-spacing:.1em;color:#ffffff9e;transition:color var(--ease);align-items:center;padding:0 14px;font-size:15px;font-weight:500;display:flex;position:relative}.topbar nav a:hover,.topbar nav a.on{color:#fff}.topbar nav a.on:after{content:"";background:var(--shu);height:2px;position:absolute;bottom:13px;left:14px;right:14px}.topbar nav a svg{display:none}.topbar .right{font-family:var(--jp);letter-spacing:.1em;color:#ffffff9e;align-items:center;gap:14px;margin-left:auto;font-size:12.5px;display:flex}.topbar .right button{cursor:pointer;font-family:var(--jp);letter-spacing:.1em;color:#ffffff9e;background:0 0;border:0;padding:0;font-size:12.5px}.topbar .right button:hover{color:#fff}.main{width:100%;max-width:1240px;padding:22px 28px calc(84px + env(safe-area-inset-bottom));flex:1;margin:0 auto}.tabbar{background:var(--surface);border-top:1px solid var(--rule);padding:8px 0 calc(6px + env(safe-area-inset-bottom));z-index:5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{font-family:var(--jp);letter-spacing:.12em;color:var(--faint);flex-direction:column;align-items:center;gap:3px;font-size:10.5px;display:flex}.tabbar a.on{color:var(--ink)}.tabbar a.on svg{stroke:var(--shu)}.tabbar a svg{width:22px;height:22px}@media (width>=1000px){.topbar nav{display:flex}.tabbar{display:none}.main{padding-bottom:var(--sp-8)}}@media (width<=640px){.topbar{gap:12px;height:56px;padding:0 16px}.brand{letter-spacing:.1em;font-size:18px}.mark{width:26px;height:26px}.topbar .right{gap:12px}.topbar .right .mono{display:none}.main{padding:14px 16px calc(84px + env(safe-area-inset-bottom))}}.dayhead{flex-wrap:wrap;align-items:baseline;gap:20px;margin-bottom:18px;display:flex}.date{font-family:var(--serif);font-size:var(--t-xl);letter-spacing:-.01em;white-space:nowrap;line-height:1}.date small{font-family:var(--jp);letter-spacing:.12em;color:var(--shu);border:1px solid var(--shu);vertical-align:middle;border-radius:2px;margin-left:12px;padding:2px 7px;font-size:14px}.kpis{gap:24px;margin-left:auto;display:flex}.kpi{text-align:right}.kpi .v{font-family:var(--serif);white-space:nowrap;font-size:26px;line-height:1}.kpi .k{font-family:var(--jp);letter-spacing:.12em;color:var(--muted);margin-top:3px;font-size:11px}.kpi.due .v{color:var(--shu)}.meta-line{color:var(--muted);flex-wrap:wrap;gap:6px 18px;margin:0 0 6px;font-size:13px;display:flex}.meta-line b{color:var(--ink);font-weight:500}@media (width<=640px){.date{font-size:30px}.date small{margin-left:8px;font-size:12px}.dayhead{margin-bottom:12px}.kpis{border:1px solid var(--line);border-radius:6px;grid-template-columns:repeat(4,1fr);gap:0;width:100%;margin-left:0;display:grid;overflow:hidden}.kpi{text-align:center;border-right:1px solid var(--line);background:var(--surface);padding:8px 4px}.kpi:last-child{border-right:0}.kpi .v{font-size:20px}.kpi .k{letter-spacing:.12em;font-size:10px}.meta-line{flex-direction:column;gap:4px;font-size:12.5px}}.panel{background:var(--surface);box-shadow:var(--sh);border-radius:var(--r-panel);padding:var(--sp-5);margin-bottom:var(--sp-4)}.panel.flush{padding-left:0;padding-right:0}.panel.flush .panel-head{margin-left:var(--sp-5);margin-right:var(--sp-5)}.panel-head{align-items:baseline;gap:var(--sp-3);padding-bottom:var(--sp-3);border-bottom:1px solid var(--rule);margin-bottom:var(--sp-4);display:flex}.panel-head h2{font-family:var(--jp);letter-spacing:.1em;border-left:3px solid var(--ink);white-space:nowrap;margin:0;padding-left:9px;font-size:16px;font-weight:500;line-height:1.2}.panel-head .summary{text-align:right;color:var(--muted);font-size:12.5px;font-family:var(--mono);margin-left:auto}@media (width<=640px){.panel-head{flex-wrap:wrap}.panel-head .summary{text-align:left;width:100%;margin-left:0;font-size:11.5px}}.hero{justify-content:space-between;align-items:baseline;gap:var(--sp-4);flex-wrap:wrap;display:flex}.hero-num{font-family:var(--serif);font-size:var(--t-xl);letter-spacing:-.01em;line-height:1}.metrics{gap:var(--sp-3) var(--sp-4);padding-top:var(--sp-4);margin-top:var(--sp-4);border-top:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.metrics .v{font-family:var(--serif);font-size:22px;line-height:1.1}.metrics .v small{font-family:var(--mono);font-size:var(--t-xs);color:var(--faint);margin-left:4px}.section-h{margin:var(--sp-5) 0 var(--sp-2);font-family:var(--jp);letter-spacing:.1em;border-left:3px solid var(--ink);align-items:baseline;gap:10px;padding-left:9px;font-size:16px;font-weight:500;line-height:1.2;display:flex}.section-h .rgt{color:var(--faint);letter-spacing:.1em;margin-left:auto;font-size:12px;font-weight:400}.rows{background:var(--surface);box-shadow:var(--sh);border-radius:var(--r-panel);overflow:hidden}.row{border-bottom:1px solid var(--line);cursor:pointer;transition:background var(--ease);grid-template-columns:minmax(0,1.4fr) 88px minmax(0,1.2fr) 130px auto;grid-template-areas:"g rm meta bal acts";align-items:center;gap:12px 16px;padding:11px 16px;display:grid}.row:last-child{border-bottom:0}.row:hover{background:var(--wash)}.row .g{text-overflow:ellipsis;white-space:nowrap;grid-area:g;min-width:0;font-size:14px;font-weight:500;overflow:hidden}.row .rm{font-family:var(--mono);grid-area:rm;font-size:13px}.row .rm.none{color:var(--shu);font-family:var(--jp);letter-spacing:.06em;font-size:12.5px}.row .meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;grid-area:meta;font-size:12.5px;overflow:hidden}.row .meta .sep{color:var(--rule);margin:0 6px}.row .bal{text-align:right;grid-area:bal}.row .acts{grid-area:acts;justify-content:flex-end;min-width:64px;display:flex}@media (width<=640px){.row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"g rm""meta meta""bal acts";align-items:center;gap:4px 10px;padding:12px 14px}.row .g{font-size:15px}.row .rm{text-align:right;font-size:14px}.row .meta{white-space:normal;line-height:1.5}.row .bal{text-align:left;margin-top:4px}.row .acts{margin-top:4px}.row .acts .ctl{height:32px;padding:0 14px;font-size:13px}}.chip{color:var(--muted);white-space:nowrap;font-size:12px;display:inline-block}.chip:before{content:"";vertical-align:1px;border:1.5px solid var(--muted);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.chip.inhouse{color:var(--ink);font-weight:500}.chip.inhouse:before{background:var(--ink);border-color:var(--ink)}.chip.pending:before{border-style:dashed}.chip.out:before{background:var(--rule);border-color:var(--rule)}.chip.noshow,.chip.cancelled{color:var(--shu)}.chip.noshow:before,.chip.cancelled:before{border-color:var(--shu);background:var(--shu-wash)}.chip.block:before{background:repeating-linear-gradient(45deg,var(--rule) 0 2px,#ececea 2px 4px);border-color:var(--rule)}.dot{vertical-align:middle;border-radius:50%;width:7px;height:7px;margin-left:6px;display:inline-block}.dot.bad{background:var(--shu)}.dot.note{background:var(--warn)}.ctl{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-ctl);cursor:pointer;height:30px;transition:border-color var(--ease),background var(--ease);white-space:nowrap;color:var(--ink);align-items:center;gap:6px;padding:0 11px;font-size:12.5px;display:inline-flex}.ctl:hover{border-color:var(--ink)}.ctl.primary{background:var(--shu);color:#fff;border-color:var(--shu);font-weight:500}.ctl.primary:hover{background:#b23a25}.ctl.danger{color:var(--shu)}.ctl:disabled{opacity:.5;cursor:default}.stepper{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-ctl);height:34px;display:inline-flex;overflow:hidden}.stepper button{color:var(--muted);cursor:pointer;transition:background var(--ease),color var(--ease);background:0 0;border:0;padding:0 11px;font-size:14px}.stepper button:hover{background:var(--wash);color:var(--ink)}.stepper .v{font-family:var(--mono);border-inline:1px solid var(--line);align-items:center;padding:0 8px;font-size:12.5px;display:flex}.stepper .v input{font-family:var(--mono);width:112px;color:var(--ink);background:0 0;border:0;padding:0;font-size:12.5px}.seg{border:1px solid var(--rule);border-radius:var(--r-ctl);grid-auto-columns:1fr;grid-auto-flow:column;height:34px;display:inline-grid;overflow:hidden}.seg button{background:var(--surface);font-family:var(--jp);letter-spacing:.1em;color:var(--muted);cursor:pointer;border:0;border-right:1px solid var(--line);transition:background var(--ease),color var(--ease);padding:0 14px;font-size:13px}.seg button:last-child{border-right:0}.seg button.on{background:var(--ink);color:var(--paper)}.toolbar{gap:var(--sp-2);margin-bottom:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.toolbar .grow{flex:1}.field{margin-bottom:var(--sp-3);flex-direction:column;gap:4px;display:flex}.field input,.field select,.field textarea{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);width:100%;min-height:40px;padding:8px 10px;font-size:16px}.field textarea{resize:vertical;min-height:72px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--ink);outline-offset:1px}.row2{gap:var(--sp-3);grid-template-columns:1fr 1fr;display:grid}.row3{gap:var(--sp-3);grid-template-columns:1fr 1fr 1fr;display:grid}@media (width<=640px){.row3{grid-template-columns:1fr 1fr}}.err{color:var(--shu);margin:var(--sp-2) 0;font-size:13px}.msg{color:var(--muted);margin:var(--sp-2) 0;font-size:13px}.empty{color:var(--faint);padding:var(--sp-4) 0;text-align:center;font-size:13px;font-family:var(--jp);letter-spacing:.1em}.skel div{background:var(--wash2);border-radius:3px;height:14px;margin:10px 0;animation:1.2s infinite sk}.skel div:nth-child(2){width:70%}.skel div:nth-child(3){width:40%}@keyframes sk{50%{opacity:.5}}table{border-collapse:collapse;width:100%}thead th{font-family:var(--jp);letter-spacing:.16em;color:var(--muted);text-align:left;padding:0 var(--sp-2) var(--sp-2) 0;border-bottom:1px solid var(--rule);white-space:nowrap;font-size:11.5px;font-weight:400}tbody td{padding:8px var(--sp-2) 8px 0;border-bottom:1px solid var(--line);vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background var(--ease)}.hoverable tbody tr:hover{background:var(--wash)}.clickable tbody tr{cursor:pointer}td.r,th.r{text-align:right;white-space:nowrap;font-family:var(--mono)}td.num{font-family:var(--mono)}td.t-name{text-overflow:ellipsis;white-space:nowrap;max-width:0;overflow:hidden}tr.total td{border-top:1px solid var(--rule);font-weight:600}.t-note{color:var(--faint);font-size:var(--t-xs);margin-left:6px}tr.void td{color:var(--faint);text-decoration:line-through}.tp{align-items:flex-start;display:flex}.tp-left{border-right:1px solid var(--rule);background:var(--surface);z-index:2;flex:none;width:104px;position:relative}.tp-scroll{-webkit-overflow-scrolling:touch;flex:1;min-width:0;overflow-x:auto}.tp-h{border-bottom:1px solid var(--rule);background:var(--wash);height:36px;display:flex}.tp-h .th{text-align:center;font-family:var(--mono);color:var(--faint);border-right:1px solid var(--line);flex:none;padding-top:5px;font-size:11px;line-height:1.2}.tp-h .th.wk{color:var(--shu)}.tp-h .th.today{background:var(--wash2);color:var(--ink)}.tp-rm,.tp-grp{border-bottom:1px solid var(--line);align-items:center;height:40px;display:flex}.tp-left .tp-rm{font-family:var(--mono);gap:6px;padding:0 10px;font-size:12.5px}.tp-left .tp-rm.un{color:var(--shu);font-family:var(--jp);letter-spacing:.06em;font-size:12px}.tp-left .tp-grp{background:var(--wash);height:26px;font-family:var(--jp);letter-spacing:.06em;color:var(--muted);padding:0 10px;font-size:12px}.tp-left .tp-grp small{font-family:var(--sans);color:var(--faint);margin-left:5px;font-size:10px}.tp-scroll .tp-grp{background:var(--wash);height:26px}.tp-scroll .gc{text-align:center;font-family:var(--mono);color:var(--faint);border-right:1px solid var(--line);flex:none;font-size:11px;line-height:26px}.tp-scroll .gc.z{color:var(--shu);font-weight:600}.trow{border-bottom:1px solid var(--line);height:40px;display:flex;position:relative}.trow .cell{border-right:1px solid var(--line);cursor:pointer;flex:none;height:100%}.trow .cell.today,.trow .cell:hover{background:var(--wash)}.hk{border-radius:50%;width:7px;height:7px;display:inline-block}.hk.dirty{background:var(--shu)}.hk.ooo{background:var(--ink)}.bar{white-space:nowrap;z-index:1;cursor:pointer;border:1px solid var(--rule);background:var(--wash2);height:26px;color:var(--ink);box-sizing:border-box;border-radius:3px;align-items:center;padding:0 8px;font-size:12px;display:flex;position:absolute;top:7px;overflow:hidden}.bar .n{opacity:.6;font-family:var(--mono);margin-left:6px;font-size:11px}.bar.pending{background:var(--surface);border-style:dashed}.bar.confirmed{background:var(--surface)}.bar.in_house{background:var(--ink);border-color:var(--ink);color:var(--paper)}.bar.checked_out{background:var(--wash);color:var(--faint)}.bar.block{color:var(--ink);background:repeating-linear-gradient(45deg,#dcdcd8 0 6px,#ececea 6px 12px)}.bar .d{border-radius:50%;flex:none;width:7px;height:7px;margin-right:6px}.bar .d.bad{background:var(--shu)}.bar.in_house .d.bad{background:#f0a08e}.legend{color:var(--faint);font-size:11.5px;font-family:var(--jp);letter-spacing:.06em;flex-wrap:wrap;gap:14px;margin-top:12px;display:flex}.legend i{border:1px solid var(--rule);vertical-align:-1px;border-radius:2px;width:13px;height:10px;margin-right:5px;display:inline-block}@media (width<=640px){.tp-left{width:82px}.tp-left .tp-rm{padding:0 6px;font-size:11.5px}.panel.flush .legend{padding:0 16px}}.hkgrid{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));display:grid}.hkcard{border:1px solid var(--line);border-radius:var(--r-panel);background:var(--surface);flex-direction:column;gap:4px;min-height:96px;padding:10px 12px;display:flex}.hkcard .n{font-family:var(--mono);font-size:var(--t-md);font-weight:600}.hkcard.dirty{border-left:3px solid var(--shu)}.hkcard.clean{border-left:3px solid var(--rule)}.hkcard.inspected{border-left:3px solid var(--ok)}.hkcard.out_of_order{border-left:3px solid var(--ink);background:var(--wash)}.hkcard .meta{font-size:var(--t-xs);color:var(--muted)}.hkcard .acts{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;display:flex}.hkcard .acts .lnk{color:var(--faint);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font-size:11px;text-decoration:underline}.rtTabs{border-bottom:1px solid var(--rule);margin-bottom:var(--sp-4);gap:2px;display:flex;overflow-x:auto}.rtTabs button{color:var(--muted);cursor:pointer;font-family:var(--jp);letter-spacing:.1em;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:14px}.rtTabs button.on{color:var(--ink);border-bottom-color:var(--shu)}.photos{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));display:grid}.photo{border:1px solid var(--line);border-radius:var(--r-ctl);background:var(--wash);overflow:hidden}.photo img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.photo .pm{font-size:var(--t-micro);color:var(--muted);align-items:center;gap:4px;padding:6px;display:flex}.photo .pm input{border:1px solid var(--line);background:var(--surface);border-radius:3px;flex:1;min-width:0;padding:3px 5px;font-size:12px}.matrix td{vertical-align:top;min-width:120px}.cellbox{flex-direction:column;gap:4px;display:flex}.cellbox textarea{border:1px solid var(--line);resize:vertical;background:var(--surface);border-radius:3px;width:100%;min-height:44px;padding:4px 6px;font-size:12px}.cellbox .st{font-size:var(--t-micro);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.cellbox .st button{border:1px solid var(--rule);background:var(--surface);cursor:pointer;border-radius:3px;padding:1px 6px;font-size:11px}.cellbox .st button.ok{background:var(--ok-wash);border-color:var(--ok);color:var(--ok)}.cellbox .st button.bad{background:var(--shu-wash);border-color:var(--shu);color:var(--shu)}.cellbox .st .un{color:var(--warn)}.bars{border-bottom:1px solid var(--rule);align-items:flex-end;gap:2px;height:120px;padding-bottom:2px;display:flex}.bars div{background:var(--ink);border-radius:2px 2px 0 0;flex:1;min-height:1px;position:relative}.bars div.plat{background:var(--rule)}.bars div span{color:var(--faint);white-space:nowrap;font-size:10px;font-family:var(--mono);display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.bars div:hover span{display:block}.barx{color:var(--faint);font-size:10px;font-family:var(--mono);gap:2px;margin-top:4px;display:flex}.barx span{text-align:center;flex:1;overflow:hidden}.shiftgrid{background:var(--line);border:1px solid var(--line);border-radius:var(--r-panel);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.shiftgrid .dow{background:var(--wash);font-family:var(--jp);font-size:var(--t-micro);letter-spacing:.12em;color:var(--muted);text-align:center;padding:6px 0}.shiftgrid .day{background:var(--surface);cursor:pointer;min-height:78px;transition:background var(--ease);flex-direction:column;gap:2px;padding:6px;display:flex}.shiftgrid .day:hover{background:var(--wash)}.shiftgrid .day.pad{background:var(--wash);cursor:default}.shiftgrid .day .d{font-family:var(--mono);font-size:var(--t-xs);color:var(--muted);justify-content:space-between;display:flex}.shiftgrid .day .d small{color:var(--faint);font-family:var(--sans)}.shiftgrid .day.today .d{color:var(--shu);font-weight:600}.shiftgrid .day.wk .d{color:var(--shu)}.shiftgrid .day .n{font-size:13px;font-weight:500;line-height:1.35}.shiftgrid .day .note{font-size:var(--t-micro);color:var(--faint);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.export{background:var(--surface);padding:var(--sp-4)}.export h3{margin:0 0 var(--sp-3);font-family:var(--jp);font-weight:500;font-size:var(--t-lg);letter-spacing:.1em}.checks{gap:var(--sp-2);margin-bottom:var(--sp-3);grid-template-columns:repeat(2,1fr);display:grid}.checks label{border:1px solid var(--rule);border-radius:var(--r-ctl);cursor:pointer;align-items:center;gap:8px;min-height:40px;padding:8px 10px;display:flex}.checks label.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.overlay{z-index:20;background:#1c1a176b;justify-content:flex-end;display:flex;position:fixed;inset:0}.drawer{background:var(--surface);width:min(520px,100%);height:100%;padding:var(--sp-5) var(--sp-6);overflow:auto;box-shadow:-8px 0 24px #1c1a172e}.drawer.wide{width:min(760px,100%)}.drawer-head{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.drawer-head h2{font-family:var(--jp);letter-spacing:.06em;flex:1;min-width:0;margin:0;font-size:22px;font-weight:500}@media (width<=640px){.overlay{align-items:flex-end}.drawer,.drawer.wide{width:100%;height:94vh;padding:var(--sp-4);border-radius:12px 12px 0 0;box-shadow:0 -8px 24px #0000002e}}.kv{grid-template-columns:96px 1fr;gap:6px 12px;font-size:13px;display:grid}.kv .k{font-family:var(--jp);color:var(--muted);font-size:var(--t-xs);letter-spacing:.1em}.folio{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);font-family:var(--mono);margin:14px 0;padding:8px 0;font-size:13px}.folio .l{justify-content:space-between;padding:3px 0;display:flex}.folio .l.tot{font-family:var(--serif);border-top:1px solid var(--line);margin-top:4px;padding-top:8px;font-size:21px}.login{max-width:360px;padding:0 var(--sp-4);margin:14vh auto 0}.login h1{font-family:var(--jp);letter-spacing:.1em;align-items:center;gap:10px;margin:0;font-size:22px;font-weight:500;display:flex}:where(a,button,summary,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:var(--r-tag)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.chtag{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--rule);color:var(--muted);vertical-align:1px;border-radius:2px;margin-right:8px;padding:0 4px;font-size:10px;line-height:16px;display:inline-block}.strip{font-family:var(--jp);letter-spacing:.06em;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;max-width:100%;font-size:12px;display:inline-flex;overflow:hidden}@media (width<=640px){.strip{width:100%;font-size:11.5px}.strip .ch{display:none}}.strip i{background:var(--rule);border-radius:50%;width:8px;height:8px;display:inline-block}.strip i.on{background:var(--ok)}.shiftgrid .day.sel{background:var(--wash2);box-shadow:inset 0 0 0 2px var(--ink)}.shiftgrid .day.sel .d{color:var(--ink);font-weight:600}.rtcard{padding:0;overflow:hidden}.rtc-hero{grid-template-columns:minmax(220px,38%) 1fr;gap:0;display:grid}.rtc-hero img,.rtc-noimg{aspect-ratio:4/3;object-fit:cover;background:var(--wash2);width:100%;display:block}.rtc-noimg{color:var(--faint);font-family:var(--jp);letter-spacing:.1em;justify-content:center;align-items:center;font-size:13px;display:flex}.rtc-title{font-family:var(--jp);letter-spacing:.08em;margin-bottom:8px;font-size:22px}.rtc-specs{color:var(--muted);flex-wrap:wrap;gap:6px 18px;margin-bottom:10px;font-size:13px;display:flex}.rtc-specs b{font-family:var(--serif);color:var(--ink);font-size:18px}.rtc-hl{font-family:var(--jp);letter-spacing:.06em;margin-bottom:10px;font-size:14px}.rtc-desc p{color:var(--muted);max-width:60ch;margin:0;font-size:13.5px}.rtcard form{padding:0 22px 18px}@media (width<=640px){.rtc-hero{grid-template-columns:1fr}.rtc-main{padding:14px 16px}.rtcard form{padding:0 16px 16px}}.rota{border-collapse:collapse;min-width:100%}.rota th,.rota td{border-bottom:1px solid var(--line);text-align:center;white-space:nowrap;font-family:var(--mono);padding:6px 10px;font-size:12.5px}.rota thead th{font-family:var(--jp);letter-spacing:.1em;color:var(--muted);border-bottom:1px solid var(--rule);background:var(--wash);font-size:12px}.rota td.dt,.rota th.dt{text-align:left;width:64px;font-family:var(--mono)}.rota td.dt span{font-family:var(--jp);color:var(--faint);margin-left:6px;font-size:11px}.rota tr.wk td.dt{color:var(--shu)}.rota tr.today td{background:var(--wash2)}.rota td.on{background:var(--wash2);color:var(--ink);font-weight:500}.rota td.nt{text-align:left;font-family:var(--sans);color:var(--muted);white-space:normal;min-width:120px}.rota-list{margin:0;padding:0 16px;list-style:none}.rota-list li{border-bottom:1px solid var(--line);grid-template-columns:52px 1fr;gap:10px;padding:8px 0;font-size:13px;display:grid}.rota-list li.today{background:var(--wash2);margin:0 -16px;padding:8px 16px}.rota-list li.wk .dd{color:var(--shu)}.rota-list .dd{font-family:var(--mono)}.rota-list .dd span{font-family:var(--jp);color:var(--faint);margin-left:4px;font-size:11px}.rota-list .who{flex-wrap:wrap;gap:4px 10px;display:flex}.rota-list .who span{white-space:nowrap}.rota-list .nt{color:var(--faint);grid-column:2;font-size:12px}@media (width<=640px){.toolbar .ctl{padding:0 9px;font-size:12px}.toolbar .stepper .v input{width:104px}}.rota-list li.pick{cursor:pointer}.rota-list li.pick.on{background:var(--wash2)}.rota-list .tick{font-family:var(--mono);color:var(--faint);text-align:right}.rota-list li.on .tick{color:var(--ink);font-weight:600}.rota-list .who .t{font-family:var(--mono);color:var(--muted);margin-left:3px;font-size:12px}body{font-size:14px}.lbl{font-family:var(--sans);letter-spacing:.08em;font-size:11px}thead th{font-family:var(--sans);letter-spacing:.08em;font-size:11px;font-weight:500}.kpi .k{font-family:var(--sans);letter-spacing:.08em;color:var(--faint);font-size:11px}.date small{font-family:var(--sans);letter-spacing:.12em;color:var(--muted);vertical-align:baseline;border:0;margin-left:10px;padding:0;font-size:12px}.section-h{letter-spacing:.12em;border-left:0;margin:24px 0 8px;padding-left:0;font-size:15px}.section-h .cnt{font-family:var(--sans);color:var(--faint);letter-spacing:0;font-size:12px}.panel-head h2{letter-spacing:.12em;border-left:0;padding-left:0;font-size:15px}h3.sub{letter-spacing:.12em;border-left:0;padding-left:0}.rows{border:0;border-top:1px solid var(--rule);background:0 0;border-radius:0}.row{border-bottom:1px solid var(--line);padding:12px 4px}.row .g{font-size:14.5px;font-weight:500}.chtag{letter-spacing:.08em;color:var(--faint);vertical-align:0;border:0;margin-right:8px;padding:0;font-size:10.5px}.chip{font-size:12.5px}.chip:before{vertical-align:0;width:7px;height:7px;margin-right:6px}.pay{font-family:var(--sans);letter-spacing:0;background:0 0;border:0;padding:0;font-size:13px}.pay.plat,.pay.done{color:var(--ok);background:0 0}.pay.due{color:var(--shu);font-family:var(--mono);font-weight:500}.ctl{border-color:var(--rule);background:var(--surface);border-radius:5px;height:32px;padding:0 12px;font-size:13px}.ctl.sm{height:30px;padding:0 12px;font-size:13px}.strip{font-family:var(--sans);letter-spacing:.02em;font-size:12px}.meta-line{gap:6px 20px;margin:2px 0 4px;font-size:13px}.metrics .v{font-family:var(--serif)}.topbar .right,.topbar .right button{font-family:var(--sans);letter-spacing:.02em;font-size:13px}.legend{font-family:var(--sans);letter-spacing:.02em}.rtTabs button{font-family:var(--sans);letter-spacing:.02em;font-size:13.5px}.seg button{font-family:var(--sans);letter-spacing:.02em}.tabbar a{font-family:var(--sans);letter-spacing:.04em;font-size:10.5px}.tp-left .tp-grp,.tp-left .tp-rm.un{font-family:var(--sans);letter-spacing:.04em}.rota thead th{font-family:var(--sans);letter-spacing:.06em}.rota-list .dd span{font-family:var(--sans)}.empty{font-family:var(--sans);letter-spacing:.02em}.kv .k{font-family:var(--sans);letter-spacing:.06em}.hkcard .n{font-weight:500}@media (width<=640px){.kpis{border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:0 0;border-radius:0;padding:8px 0}.kpi{border-right:1px solid var(--line);background:0 0;padding:4px 2px}.kpi .v{font-size:22px}.kpi .k{letter-spacing:.06em;font-size:10.5px}.date{font-size:30px}.row{gap:3px 10px;padding:12px 0}.row .g{font-size:15px}.row .meta{font-size:12.5px}.row .bal{font-size:13px}.row .acts .ctl{height:32px;padding:0 14px}.section-h{margin:20px 0 6px}.panel{border-radius:6px;padding:16px}}.pagehead{flex-wrap:wrap;align-items:center;gap:16px;margin:6px 0 14px;display:flex}.pagehead h1{font-family:var(--jp);letter-spacing:.1em;margin:0;font-size:22px;font-weight:500;line-height:1.2}.pagehead .ph-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.sec.first{margin-top:0}.section-h{margin:0 0 8px}.section-h .rgt{font-family:var(--sans);color:var(--faint);letter-spacing:0;margin-left:auto;font-size:12px;font-weight:400}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px 24px}@media (width<=640px){.pagehead{margin:2px 0 12px}.pagehead h1{font-size:19px}.pagehead .ph-right{justify-content:flex-start;width:100%;margin-left:0}.sheet{padding:16px}.sec{margin-top:20px}}.hkcard{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;min-height:0;padding:12px 0 12px 12px;position:relative}.hkcard:before{content:"";background:var(--rule);border-radius:2px;width:3px;position:absolute;top:12px;bottom:12px;left:0}.hkcard.dirty:before{background:var(--shu)}.hkcard.inspected:before{background:var(--ok)}.hkcard.out_of_order:before{background:var(--ink)}.hkcard.dirty,.hkcard.clean,.hkcard.inspected,.hkcard.out_of_order{background:0 0;border-left:0}.hkcard .acts{margin-top:8px}.rtc-hero.noimg{grid-template-columns:1fr}.rtc-hero.noimg .rtc-noimg{display:none}.rtcard{background:0 0;border:0;padding:0}.rtc-main{padding:0}.ulist li{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:9px 0;display:flex}.ulist li:last-child{border-bottom:0}.ulist li.off{color:var(--faint)}.ulist .nm{flex:1;font-size:14px}.ulist button.lnk{color:var(--faint);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.rep-hero{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.rep-hero .kv{grid-template-columns:auto auto;gap:4px 16px}.bars-legend{color:var(--faint);gap:14px;margin-top:6px;font-size:11.5px;display:flex}.bars-legend i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.it{white-space:nowrap}.it+.it:before{content:"·";color:var(--rule);margin:0 8px}.panel-head .summary,.section-h .rgt{font-family:var(--sans);font-variant-numeric:tabular-nums;white-space:normal;line-height:1.6}.panel-head .summary .it{white-space:nowrap}@media (width<=640px){.panel-head .summary{color:var(--faint);font-size:12px}}.pay.due{font-family:var(--sans);font-variant-numeric:tabular-nums;font-weight:500}.row .bal,.kpi .v,.hero-num,.folio,.folio .l.tot,td.r,td.num,.metrics .v,.rota td,.rota-list .dd,.rota-list .who .t{font-family:var(--sans);font-variant-numeric:tabular-nums}.kpi .v,.hero-num,.metrics .v,.folio .l.tot{font-family:var(--serif)}.row .rm,.tp-left .tp-rm,.hkcard .n,.rota td.dt,.rota-list .dd{font-family:var(--mono)}.row{padding:13px 4px}.sec{margin-top:28px}.meta-line{color:var(--muted);margin:0 0 6px;font-size:13px}.meta-line a{color:inherit}.meta-line .strip{font-size:12px}.chip:before{width:6px;height:6px}.section-h{font-size:15px}.dayhead{margin-bottom:10px}@media (width<=640px){.meta-line{flex-flow:wrap;gap:4px 0}.row{padding:13px 0}.meta-line{flex-direction:column;gap:3px;margin-bottom:4px}.meta-line .it+.it:before{content:none}.meta-line .it{white-space:normal}}.meta-line+.sec,.meta-line+.section-h{margin-top:22px}.moresheet{background:var(--surface);padding:12px 8px calc(20px + env(safe-area-inset-bottom));border-radius:12px 12px 0 0;gap:2px;display:grid;position:absolute;bottom:0;left:0;right:0}.moresheet a{font-family:var(--jp);letter-spacing:.1em;border-radius:6px;padding:14px 16px;font-size:16px;display:block}.moresheet a.on{background:var(--wash2)}@media (width<=640px){.toolbar .seg{grid-auto-columns:1fr;width:100%}.toolbar .seg button{white-space:nowrap;padding:0 4px;font-size:12px}.toolbar input[type=search]{width:100%!important}}html,body{background:var(--paper)}.card,.panel,.sheet{background:var(--surface);box-shadow:var(--sh);border:0;border-radius:10px;margin-bottom:20px;padding:22px 24px}.card.flush,.panel.flush{padding-left:0;padding-right:0}.card.sec{margin-top:0}.stack>.card:last-child,.stack>.panel:last-child{margin-bottom:0}.two{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.two{grid-template-columns:1fr}}.hero-card .dayhead{margin-bottom:8px}.section-h{margin:0 0 4px;font-size:16px}.rows{border-top:0}.row{border-top:1px solid var(--line);border-bottom:0;grid-template-columns:minmax(0,1fr) 88px 130px auto;grid-template-areas:"g rm bal acts""meta rm bal acts";gap:2px 16px;padding:13px 0}.row:first-child{border-top:0}.row .g{grid-area:g;font-size:15px}.row .rm{grid-area:rm}.row .meta{white-space:normal;grid-area:meta}.row .bal{grid-area:bal}.row .acts{grid-area:acts}.row .meta .sep{display:none}.row .meta .chip{margin-right:6px}.rows .empty{padding:12px 0}@media (width<=640px){.card,.panel,.sheet{border-radius:10px;margin-bottom:14px;padding:16px}.row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"g rm""meta meta""bal acts";gap:4px 10px;padding:14px 0}.row .bal{text-align:left;margin-top:4px}.row .acts{margin-top:4px}.kpis{border-top:1px solid var(--line);border-bottom:0;margin-top:12px;padding:12px 0 0}.kpi{text-align:left;border-right:0;padding:0}}.pagehead{margin:8px 0 16px}.tp-left,.tp-h,.tp-left .tp-rm,.tp-left .tp-grp{background:var(--surface)}.tp-h,.tp-left .tp-grp,.tp-scroll .tp-grp{background:var(--wash)}.hkgrid{gap:0 24px}.rota thead th{background:var(--wash)}.moresheet{box-shadow:var(--sh)}.ovt{min-width:100%}.ovt th,.ovt td{white-space:nowrap}.ovt tbody tr{cursor:pointer}.ovt tbody tr.on td{background:var(--wash2)}.ovt td.mono{font-size:12.5px}.frows{margin:0;padding:0;list-style:none}.frows li{border-top:1px solid var(--line);cursor:pointer;grid-template-columns:110px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:12px 0;display:grid}.frows li:first-child{border-top:0}.frows li:hover{background:var(--wash)}.frows .fl{color:var(--muted);font-size:13px}.frows .fv{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;overflow:hidden}.frows .fa{color:var(--rule);text-align:right;font-size:18px}.lnk{color:var(--faint);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}@media (width<=640px){.frows li{grid-template-columns:96px minmax(0,1fr) 14px;padding:13px 0}.frows .fv{white-space:normal}}.main,.card,.panel,.sheet{min-width:0}.ovlist{margin:0;padding:0;list-style:none}.ovlist li{border-top:1px solid var(--line);cursor:pointer;padding:10px 0}.ovlist li:first-child{border-top:0}.ovlist li.on{background:var(--wash)}.ovlist .l1{justify-content:space-between;gap:10px;font-size:15px;display:flex}.ovlist .l1 b{font-weight:500}.ovlist .l1 .rmz{font-family:var(--mono);color:var(--muted);font-size:13px}.ovlist .l2{color:var(--muted);margin-top:2px;font-size:12.5px}.tapewrap{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto}.titlebtn{font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:baseline;gap:8px;padding:0;display:inline-flex}.titlebtn .pen{color:var(--faint);font-size:13px;font-family:var(--sans)}.titlebtn:hover .pen{color:var(--ink)}.mix{gap:6px;display:grid}.mixrow{grid-template-columns:72px 1fr 44px;align-items:center;gap:10px;font-size:13px;display:grid}.mixrow .mb{background:var(--wash2);border-radius:2px;height:10px;overflow:hidden}.mixrow .mb i{background:var(--ink);height:100%;display:block}.mixrow .mp{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}@media (width<=640px){.drawer form .ctl.primary{width:100%;height:46px;margin-top:4px;font-size:15px}.drawer form .field select,.drawer form .field input{min-height:44px}}.chips{margin:0 0 var(--sp-3);flex-wrap:wrap;gap:6px;display:flex}.chips button{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-ctl);height:32px;color:var(--muted);cursor:pointer;transition:background var(--ease),color var(--ease);padding:0 12px;font-size:13px}.chips button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.chips button:hover{color:var(--ink)}@media (width<=640px){.kpi .k,.lbl,.t-note,.chtag,.section-h .cnt,.section-h .rgt,.legend,thead th,.rota-list .dd span,.rota-list .who .t,.rota-list .nt,.shiftgrid .dow,.hkcard .acts .lnk,.ulist button.lnk,.tp-left .tp-grp,.tp-h .th,.tp-scroll .gc,.rota td.dt span,.metrics .v small,.bar .n,.titlebtn .pen{font-size:12px}.hkcard .meta,.ovlist .l2,.row .meta,.panel-head .summary,.msg,.toolbar .ctl,.toolbar .seg button{font-size:13px}.ctl,.stepper,.seg{height:40px}.ctl.sm{height:36px;padding:0 12px}.seg button,.stepper .v input{font-size:13px}.chips{gap:8px}.chips button{flex:auto;height:38px;padding:0 14px;font-size:14px}.lnk,.ulist button.lnk,.hkcard .acts .lnk{min-height:40px;padding:10px 0;line-height:20px;display:inline-block}.titlebtn{padding:6px 0}.cellbox .st button{height:36px;padding:0 10px}.ovlist li{padding:12px 0}.ovlist .l1{flex-wrap:wrap;align-items:baseline}.ovlist .l1 .rmz{margin-left:auto;font-size:14px}.rtTabs{margin:0 -16px var(--sp-4);scrollbar-width:none;padding:0 16px}.rtTabs::-webkit-scrollbar{display:none}.rtTabs button{padding:10px 12px}.rota-list li{grid-template-columns:56px 1fr auto;align-items:center;padding:12px 0}.rota-list .nt{white-space:nowrap;grid-column:3;font-size:12px}.toolbar{gap:8px}.barx{font-size:11px}.barx span{white-space:nowrap}.bars-legend,.tp-left .tp-grp small{font-size:12px}.tabbar a{font-size:11px}.topbar .right button,.topbar .right a{align-items:center;min-height:40px;padding:10px 4px;display:inline-flex}.ulist li{padding:4px 0}}.drawer-head{top:calc(-1 * var(--sp-5));margin:calc(-1 * var(--sp-5)) calc(-1 * var(--sp-6)) var(--sp-4);padding:var(--sp-4) var(--sp-6);background:var(--surface);z-index:2;border-bottom:1px solid var(--line);position:sticky}.dsum .big{font-family:var(--serif);letter-spacing:-.01em;font-size:26px;line-height:1.1}.dsum .big small{font-family:var(--sans);color:var(--muted);letter-spacing:0;margin-left:10px;font-size:13px}.dsum .line{margin-top:8px;font-size:14px;line-height:1.5}.dsum .line .chtag{margin-right:6px}.dsum .ctls{grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;display:grid}.ctlf{flex-direction:column;gap:4px;display:flex}.ctlf .lbl{margin:0}.ctlf select,.ctlf input{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);width:100%;height:40px;padding:0 10px;font-size:15px}.acts2{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.acts2 .ctl{justify-content:center;height:44px;font-size:15px}.acts2 .ctl:only-child{grid-column:1/-1}.acts2.sub{margin-top:20px}.acts2.sub .ctl{height:40px;font-size:14px}.folio{margin:18px 0 10px;font-size:14px}.folio .l{padding:5px 0}.folio .l.tot{font-size:24px}.folio .l.paymode{font-family:var(--sans);padding-top:8px;font-size:13px}.acc{border-top:1px solid var(--line);padding:2px 0}.acc summary{cursor:pointer;align-items:center;gap:10px;min-height:46px;font-size:15px;font-weight:500;list-style:none;display:flex}.acc summary::-webkit-details-marker{display:none}.acc summary:after{content:"+";color:var(--faint);margin-left:auto;font-size:20px;font-weight:400}.acc[open] summary:after{content:"−"}.acc summary .cnt{color:var(--faint);font-size:12px;font-weight:400}.acc form{padding:2px 0 14px}.acc .field:last-of-type{margin-bottom:12px}.acc form .ctl{height:40px}.plist{margin:0 0 14px;padding:0;list-style:none}.plist li{border-top:1px solid var(--line);grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px;padding:8px 0;font-size:13px;display:grid}.plist li.void{color:var(--faint);text-decoration:line-through}.plist .r{text-align:right;font-weight:500}@media (width<=640px){.drawer-head{top:calc(-1 * var(--sp-4));margin:calc(-1 * var(--sp-4)) calc(-1 * var(--sp-4)) var(--sp-4);padding:var(--sp-3) var(--sp-4)}.dsum .big{font-size:24px}.acts2 .ctl.primary{font-size:16px}.plist li{grid-template-columns:auto 1fr auto;grid-template-areas:"d a v""n n n"}.plist li span:nth-child(3){grid-area:n}.tp-left{width:116px}.tp-left .tp-grp{white-space:nowrap;letter-spacing:0}.tp-left .tp-grp small{margin-left:4px}.barx span{white-space:nowrap;font-size:11px;overflow:visible}.rep-hero .kv{grid-template-columns:auto auto;gap:6px 14px;font-size:13px}select,input:not([type=checkbox]):not([type=radio]),.stepper .v input{min-height:40px}}.filters{margin-bottom:var(--sp-4);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filters .search{width:240px}.filters .range{padding-right:28px}.filters .dates{align-items:center;gap:8px;display:flex}.bk .row{grid-template-columns:minmax(0,1fr) 150px 88px 150px;grid-template-areas:"g when rm bal""meta when rm bal";align-items:center;gap:2px 16px}.bk .row .when{grid-area:when;font-size:14px}.bk .row .meta{grid-area:meta}.bk .row .bal .amt{margin-top:2px;font-size:12px;display:block}.bk .row .bal{flex-direction:column;align-items:flex-end;gap:2px;display:flex}@media (width<=640px){.filters{gap:8px}.filters .search{width:100%}.filters .seg{flex:auto;min-width:0}.filters .range{flex:none;max-width:44%}.filters .dates{width:100%}.filters .dates .ctl{flex:1}.bk .row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"g rm""when when""meta meta""bal bal";gap:3px 10px;padding:14px 0}.bk .row .g{font-size:16px}.bk .row .rm{font-size:15px}.bk .row .when{color:var(--ink);margin-top:1px;font-size:14.5px}.bk .row .meta{font-size:13px}.bk .row .bal{flex-direction:row;align-items:baseline;gap:10px;margin-top:4px}.bk .row .bal:empty{display:none}.bk .row .bal .amt{margin:0;display:inline}}.bk .row{grid-template-columns:minmax(0,1fr) 230px 96px 150px}.bk .row .when{font-variant-numeric:tabular-nums;white-space:nowrap}.filters .seg button{white-space:nowrap;padding:0 6px}.row .meta .fact{color:var(--ink)}.kv4{grid-template-columns:1fr 1fr;gap:6px 16px;margin-top:8px;display:grid}.kv4 span{justify-content:space-between;gap:8px;font-size:13px;display:flex}.kv4 i{color:var(--muted);font-style:normal}.kv4 b{font-variant-numeric:tabular-nums;font-weight:500}@media (width<=640px){.filters .seg button{padding:0 3px;font-size:12.5px}.bk .row .when{white-space:normal}}.stickyhead{z-index:4;background:var(--paper);margin:0 -28px;padding:0 28px 8px;position:sticky;top:64px}.stickyhead .pagehead{margin-top:0;padding-top:12px}@media (width<=640px){.stickyhead{box-shadow:0 1px 0 var(--rule);margin:0 -16px;padding:0 16px 10px;top:56px}.pagehead.inline .ph-right{width:auto;margin-left:auto}.pagehead.inline h1{font-size:20px}.stickyhead .filters{margin-bottom:0}}.ocs{flex-direction:column;gap:10px;display:flex}.oc{background:var(--surface);box-shadow:var(--sh);cursor:pointer;transition:background var(--ease);border-radius:10px;align-items:flex-start;gap:12px;padding:12px 14px 12px 12px;display:flex}.oc:hover{background:#fff}.oc.off{opacity:.55}.oc .rt{background:var(--wash);border:1px solid var(--line);width:48px;height:48px;font-family:var(--mono);border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-items:center;font-size:16px;font-weight:600;line-height:1.1;display:flex}.oc .rt.two{font-size:13px}.oc .rt small{color:var(--muted);font-size:10.5px;font-weight:400}.oc .rt.none{font-family:var(--sans);color:var(--shu);letter-spacing:.02em;text-align:center;font-size:11px;font-weight:500;line-height:1.2}.oc-main{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.oc-name{align-items:center;gap:8px;min-width:0;font-size:16px;font-weight:600;line-height:1.3;display:flex}.oc-name .chip{font-size:12px;font-weight:400}.oc-line{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;min-width:0;font-size:13.5px;display:flex}.oc-line .ico{width:14px;height:14px;color:var(--faint);flex:none;margin-right:1px}.oc-line .num{color:var(--ink);font-variant-numeric:tabular-nums}.oc-line i{color:var(--muted);font-size:12px;font-style:normal}.oc-line i.wk{color:var(--shu)}.oc-line .arr{color:var(--faint);margin:0 2px}.oc-line .n{margin-left:4px;font-size:12.5px}.oc-line .vsep{background:var(--rule);width:1px;height:12px;margin:0 5px}.oc-tag{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;padding-top:8px;display:flex}.oc-tag .sp{flex:1}.oc-tag .why{color:var(--muted);font-size:12.5px}.ctag{background:var(--shu-wash);color:var(--shu);white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:5px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.ctag .ico{width:15px;height:15px}.ctag b{font-family:var(--sans);font-weight:600}.ctag.sm{padding:3px 8px;font-size:12px}.collectbox{border:1px solid var(--line);border-radius:8px;margin:14px 0 4px;padding:10px 12px}.collectbox.on{background:#fdf6f4;border-color:#efc9c0}.collectbox .row2{margin-top:10px}.collectbox .field{margin-bottom:0}.cb-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.cb-row .sp{flex:1}.cb-line{margin:14px 0 4px}.chk{cursor:pointer;align-items:center;gap:10px;display:flex}.chk input{width:20px;height:20px;accent-color:var(--shu);margin:0}.chk span{flex-direction:column;line-height:1.3;display:flex}.chk b{font-size:14px;font-weight:500}.chk small{color:var(--muted);font-size:12px}@media (width>=1000px){.bk .oc{align-items:center}.bk .oc-main{grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,1fr);grid-template-areas:"name date who";align-items:center;gap:4px 18px;display:grid}.bk .oc-main:has(.oc-tag){grid-template-areas:"name date who""tag tag tag"}.bk .oc-name{grid-area:name}.bk .oc-line:nth-of-type(2){grid-area:date}.bk .oc-line:nth-of-type(3){grid-area:who}.bk .oc-tag{grid-area:tag;margin-top:4px}}@media (width>=641px){.oc .rt{width:44px;height:44px}}.oc-tag .act{margin-left:auto}@media (width<=640px){.oc{padding:12px}.oc-line{font-size:13.5px}.oc-tag .ctl{height:36px}}.plist.top{border-top:1px solid var(--line);margin:10px 0 4px}.drawer{padding-top:0}.drawer-head{margin:0 calc(-1 * var(--sp-6)) var(--sp-4);padding:14px var(--sp-6);top:0}.drawer-head .back{color:var(--ink);cursor:pointer;background:0 0;border:0;height:40px;padding:0 10px 0 0;font-size:30px;line-height:1;display:none}@media (width<=640px){.drawer,.drawer.wide{padding-top:0}.drawer-head{margin:0 calc(-1 * var(--sp-4)) var(--sp-4);padding:10px var(--sp-4) 10px 8px;top:0}.drawer-head .back{align-items:center;display:inline-flex}.drawer-head h2{font-size:19px}.drawer-head .ctl{display:none}}.drawer-head .back{align-items:center;display:inline-flex}@media (width<=640px){.overlay{align-items:stretch}.drawer,.drawer.wide{width:100%;height:auto;max-height:none;padding-bottom:calc(24px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;border-radius:0;position:absolute;inset:0}.drawer-head{padding-top:calc(10px + env(safe-area-inset-top))}}.shell{min-height:100dvh}@media (width<=640px){input,select,textarea,.ctl input,.stepper .v input,.toolbar .ctl,.filters .ctl{font-size:16px}}.filters .sortbtn{white-space:nowrap}@media (width<=640px){.filters .sortbtn{flex:auto}.filters .range{flex:auto;max-width:none}}.otable{border-collapse:collapse;table-layout:fixed;width:100%}.otable thead th{font-family:var(--sans);letter-spacing:.06em;color:var(--muted);text-align:left;border-bottom:1px solid var(--rule);white-space:nowrap;padding:0 10px 10px;font-size:11.5px;font-weight:500}.otable thead th.r{text-align:right}.otable th.sortable{cursor:pointer;color:var(--ink)}.otable .sortmark{color:var(--shu);margin-left:2px}.otable tbody td{border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;height:52px;padding:0 10px;font-size:14px;overflow:hidden}.otable tbody tr{cursor:pointer;transition:background var(--ease)}.otable tbody tr:hover{background:var(--wash)}.otable tbody tr:last-child td{border-bottom:0}.otable tbody tr.off{opacity:.55}.otable tbody tr.flag td{background:#fdf8f7}.otable tbody tr.flag:hover td{background:#fbf1ee}.otable td.r{text-align:right}.otable .num{font-variant-numeric:tabular-nums}.otable .c-name{font-size:15px;font-weight:500}.otable .rtag{text-align:center;background:var(--wash);border:1px solid var(--line);min-width:44px;font-family:var(--mono);border-radius:6px;padding:5px 8px;font-size:13.5px;font-weight:600;display:inline-block}.otable .rtag.none{background:var(--shu-wash);color:var(--shu);font-family:var(--sans);border-color:#0000;font-size:12px;font-weight:500}.otable .wd{color:var(--muted);margin-left:5px;font-size:11.5px;font-style:normal}.otable .wd.wk{color:var(--shu)}.otable .cwrap{align-items:center;gap:8px;display:inline-flex}.otable .cwrap .why{color:var(--muted);font-size:12.5px}.otable .cwrap .ctl{height:30px}.bk .card:has(.otable){padding-bottom:6px}.otable td.ec{cursor:text;position:relative}.otable td.ec:hover{background:var(--wash2);box-shadow:inset 0 0 0 1px var(--rule)}.otable tr.flag td.ec:hover{background:#f8e9e5}.otable td.ec.on{box-shadow:inset 0 0 0 2px var(--ink);background:#fff;overflow:visible}.otable td.ec.on input,.otable td.ec.on select{font:inherit;background:0 0;border:0;outline:0;width:100%;height:32px;padding:0;font-size:14px}.otable td.ec.on input[type=number]{text-align:right}.otable .c-more{text-align:right;width:40px}.otable .more{cursor:pointer;color:var(--faint);background:0 0;border:0;border-radius:6px;padding:6px}.otable .more:hover{background:var(--wash2);color:var(--ink)}.otable .more .ico{width:18px;height:18px}.otable .lnk.mark{color:var(--faint);text-decoration:none}.otable .lnk.mark:hover{color:var(--shu)}.otable .cwrap.edit input{border:1px solid var(--rule);background:#fff;border-radius:5px;height:32px;padding:0 8px;font-size:14px}.otable .c-ref{width:140px}.otable tbody tr{cursor:default}.otable .c-date{width:104px}.otable .c-n{width:52px}.otable .c-ch,.otable .c-ref{width:118px}.otable td.c-name{white-space:nowrap}.bk .card:has(.otable){margin-bottom:28px}.bk .card:has(.otable) .section-h{border-bottom:2px solid var(--ink);align-items:baseline;margin:0 0 10px;padding-bottom:10px;font-size:18px;display:flex}.bk .card:has(.otable) .section-h .cnt{margin-left:8px;font-size:13px}.otable td.c-collect{position:relative;overflow:visible}.cpop{z-index:6;width:280px;box-shadow:0 12px 32px -8px #00000047,0 0 0 1px var(--line);white-space:normal;cursor:default;background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex;position:absolute;top:6px;right:0}.cpop label{flex-direction:column;gap:4px;display:flex}.cpop label span{color:var(--muted);font-size:12px}.cpop input{border:1px solid var(--rule);background:#fff;border-radius:6px;width:100%;height:36px;padding:0 10px;font-size:14px}.cpop-acts{justify-content:flex-end;gap:8px;display:flex}.otable .lnk.mark{opacity:0;transition:opacity var(--ease)}.otable tbody tr:hover .lnk.mark{opacity:1}.otable td.ec.on select{cursor:pointer}.otable tbody tr:has(.cpop) td{overflow:visible}.filters .rangeseg{order:5}.filters .rangeseg button{white-space:nowrap;padding:0 12px}.filters .sortbtn{order:6}.otable .c-st{width:92px}.otable .c-collect{width:220px}.otable td.c-name,.otable th:nth-child(2){min-width:140px}@media (width<=1279px){.otable .c-ref{display:none}.otable .c-collect{width:190px}.otable .c-ch{width:104px}.otable .c-date{width:96px}}.rpick{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px}.rp-row{border-top:1px solid var(--line);grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:6px 0;display:grid}.rp-row:first-child{border-top:0}.rp-f{color:var(--faint);font-size:12px;font-family:var(--mono)}.rp-chips{flex-wrap:wrap;gap:6px;display:flex}.rp-chip{border:1px solid var(--rule);min-width:52px;height:36px;font-family:var(--mono);cursor:pointer;color:var(--ink);background:#fff;border-radius:6px;padding:0 10px;font-size:14px}.rp-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.rp-chip.aux{color:var(--muted);border-style:dashed}.rp-chip.aux.on{color:#fff}.rp-chip.busy{background:var(--wash);color:var(--faint);cursor:not-allowed;text-decoration:line-through}.rp-chip.busy.on{background:var(--shu);border-color:var(--shu);color:#fff;text-decoration:none}.rp-quick{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.rp-quick .lnk{white-space:nowrap;font-size:12.5px}.rp-foot{border-top:1px solid var(--line);margin-top:4px;padding-top:8px;font-size:12.5px}@media (width<=640px){.rp-row{grid-template-columns:28px 1fr}.rp-quick{grid-column:2;justify-content:flex-start}}.roomval{border:1px solid var(--rule);border-radius:var(--r-ctl);height:40px;font-family:var(--mono);cursor:pointer;width:100%;color:var(--ink);background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-size:15px;display:flex}.roomval .faint{font-family:var(--sans);font-size:12px}.otable td.c-room{position:relative;overflow:visible}.cpop.rpop{width:420px;left:0;right:auto}.otable .c-room{width:120px}.otable .rtag{white-space:nowrap}.tp-left .tp-rm.setfirst{box-shadow:inset 0 -1px 0 var(--line)}.tp-left .tp-rm.aux{color:var(--muted);font-style:normal}.rules dl{margin:0}.rules .rl{border-top:1px solid var(--line);grid-template-columns:240px 1fr;gap:16px;padding:12px 0;display:grid}.rules .rl:first-child{border-top:0}.rules dt{align-items:baseline;gap:10px;display:flex}.rules dt b{min-width:36px;font-size:15px}.rules dt .num{font-family:var(--mono);color:var(--muted);font-size:13px}.rules dd{margin:0;font-size:14px;line-height:1.7}@media (width<=640px){.rules .rl{grid-template-columns:1fr;gap:4px}}.floormap .fm-tabs{margin-bottom:14px;display:inline-grid}.floormap .fm-tabs button{min-width:56px}.floormap img{border:1px solid var(--line);border-radius:8px;width:100%;height:auto;display:block}@media (width>=641px){.floormap img{max-width:900px}}.oc.clash{box-shadow:inset 4px 0 0 var(--shu),var(--sh)}.oc.clash .rt{background:var(--shu-wash);color:var(--shu);border-color:#efc9c0}.clashtag{color:#fff;background:var(--shu);white-space:nowrap;border-radius:4px;align-items:center;gap:4px;margin-left:8px;padding:1px 7px;font-size:12px;font-weight:600;display:inline-flex}.otable tbody tr.clash td{background:#fdf0ed}.otable tbody tr.clash td:first-child{box-shadow:inset 4px 0 0 var(--shu)}.bar.clash{background:var(--shu)!important;border-color:var(--shu)!important;color:#fff!important}.rota thead th:last-child{text-align:left}.rota td.on{min-width:96px}
