:root{--bg:#f4f5f8;--card:#fff;--ink:#1f2430;--muted:#6b7280;--line:#e4e6eb;--accent:#0068b7;--accent-weak:#e6f1fa;--brand2:#865ca2;--brand2-weak:#f2ebf7;--brand2-ink:#6a4488;--brand-grad:linear-gradient(135deg,#0068b7 0%,#865ca2 100%);--ok:#2b8a3e;--ok-weak:#e3f6e8;--warn:#d9480f;--warn-weak:#fff0e6;--ng:#c92a2a;--ng-weak:#ffe8e8;--gray-weak:#eceef2;--banner-bg:#fff4c2;--banner-ink:#6b5200;--on-accent:#fff;--chip-ink:#4b5563;--w-ink:#8a3a0c;--w-bd:#ffd8bd;--n-ink:#8f1d1d;--n-bd:#ffc9c9;--i-ink:#0a4a80;--i-bd:#bcd9ef;--soft:#fafbfc;--simbar-bg:#eef0f6;--dis:#c9ced8}:root[data-theme=dark]{--bg:#14171f;--card:#1d212b;--ink:#e8eaf0;--muted:#9aa3b2;--line:#2e3443;--accent:#4da3e8;--accent-weak:#17324b;--brand2:#b48fd1;--brand2-weak:#2b2138;--brand2-ink:#d8bff0;--ok:#5fcf7a;--ok-weak:#16301f;--warn:#ff9a62;--warn-weak:#3a251a;--ng:#ff7b7b;--ng-weak:#3b1f22;--gray-weak:#272c39;--banner-bg:#3a3210;--banner-ink:#f1dc7a;--on-accent:#0b1118;--chip-ink:#c3c9d6;--w-ink:#ffc9a8;--w-bd:#5a3a28;--n-ink:#ffb3b3;--n-bd:#5a2a2d;--i-ink:#a9d3f5;--i-bd:#2a4d6e;--soft:#222633;--simbar-bg:#1a1e28;--dis:#3a4052;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14171f;--card:#1d212b;--ink:#e8eaf0;--muted:#9aa3b2;--line:#2e3443;--accent:#4da3e8;--accent-weak:#17324b;--brand2:#b48fd1;--brand2-weak:#2b2138;--brand2-ink:#d8bff0;--ok:#5fcf7a;--ok-weak:#16301f;--warn:#ff9a62;--warn-weak:#3a251a;--ng:#ff7b7b;--ng-weak:#3b1f22;--gray-weak:#272c39;--banner-bg:#3a3210;--banner-ink:#f1dc7a;--on-accent:#0b1118;--chip-ink:#c3c9d6;--w-ink:#ffc9a8;--w-bd:#5a3a28;--n-ink:#ffb3b3;--n-bd:#5a2a2d;--i-ink:#a9d3f5;--i-bd:#2a4d6e;--soft:#222633;--simbar-bg:#1a1e28;--dis:#3a4052;color-scheme:dark}}.tipbtn{width:20px;height:20px;border-radius:50%;border:0;background:var(--muted);color:var(--card);font:italic 700 13px/20px Georgia,Times New Roman,serif;padding:0;vertical-align:middle;margin-left:6px;cursor:pointer;flex:none;text-align:center}.tipbtn[aria-expanded=true]{background:var(--accent)}.tipbox{background:var(--accent-weak);color:var(--i-ink);border:1px solid var(--i-bd);border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.6;margin:6px 0 10px;font-weight:400;text-align:left}.shiftbox{margin:4px 0 12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.tgl{width:48px;height:28px;border-radius:14px;border:0;background:var(--line);position:relative;flex:none;padding:0}.tgl:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:left .15s}.tgl.on{background:var(--accent)}.tgl.on:after{left:23px}.setrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.setrow:first-of-type{border-top:0}*{box-sizing:border-box}html,body{margin:0}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--bg)}[hidden]{display:none!important}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){#toast{transition:none}}body{background:var(--bg);color:var(--ink);font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Meiryo,sans-serif;font-size:15px;line-height:1.55}button{font:inherit;cursor:pointer}.banner{background:var(--banner-bg);color:var(--banner-ink);text-align:center;font-size:12.5px;padding-block:6px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));border-bottom:1px solid #f1dc7a}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));background:var(--card);border-bottom:1px solid var(--line);border-top:4px solid transparent;border-image:var(--brand-grad) 1 0 0 0;position:sticky;top:env(safe-area-inset-top,0px);z-index:5}.brand{display:flex;align-items:center;gap:8px;font-weight:700;letter-spacing:.02em}.brand .logo{height:32px;width:auto;display:block}@media(max-width:400px){.brand small{display:none}}.brand span.g{background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.brand small{font-weight:400;color:var(--muted);margin-left:6px}.seg{display:inline-flex;background:var(--gray-weak);border-radius:10px;padding:3px}.seg button{border:0;background:transparent;padding:6px 14px;border-radius:8px;color:var(--muted)}.seg button.on{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #00000014}.linkbtn{border:0;background:none;color:var(--accent);text-decoration:underline;padding:6px;font-size:13.5px}.authcard{padding:20px}.authcard .rf input{min-height:44px}.demo{border-style:dashed}.phone{max-width:440px;margin:0 auto;padding-block:16px 96px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.tabbar{position:fixed;left:0;right:0;bottom:0;background:var(--card);border-top:1px solid var(--line);display:flex;justify-content:center;z-index:6;padding-bottom:env(safe-area-inset-bottom,0px);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.tabbar .in{display:flex;width:100%;max-width:440px}.tabbar button{flex:1 1 auto;border:0;background:none;padding:12px 4px 14px;white-space:nowrap;font-size:13px;color:var(--muted);font-weight:600}.tabbar button.on{color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px}.card h3{margin:0 0 8px;font-size:14px;color:var(--muted);font-weight:600}.row{display:flex;align-items:center;justify-content:space-between;gap:8px}.muted{color:var(--muted)}.small{font-size:12.5px}.chip{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600;background:var(--gray-weak);color:var(--chip-ink);white-space:nowrap}.chip.ok{background:var(--ok-weak);color:var(--ok)}.chip.warn{background:var(--warn-weak);color:var(--warn)}.chip.ng{background:var(--ng-weak);color:var(--ng)}.chip.info{background:var(--accent-weak);color:var(--accent)}.chip.pur{background:var(--brand2-weak);color:var(--brand2-ink)}.hello{font-size:20px;font-weight:700;margin:4px 0 0}.date{color:var(--muted);margin:0 0 12px}.clock{font-size:44px;font-weight:700;text-align:center;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin:4px 0 12px}.stamp{width:100%;border:0;border-radius:16px;padding:22px 12px;font-size:22px;font-weight:700;color:#fff;background:var(--accent);box-shadow:0 6px 16px #0068b747}.stamp.out{background:var(--brand2);box-shadow:0 6px 16px #865ca24d}.stamp:disabled{background:var(--dis);box-shadow:none;cursor:default}.net{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--ok);margin-right:6px}.dot.off{background:var(--ng)}.btn{border:1px solid var(--line);background:var(--card);border-radius:10px;padding:7px 12px;font-size:13.5px}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff;font-weight:600}.btn.ng{background:var(--card);border-color:var(--ng);color:var(--ng);font-weight:600}.btn:disabled{opacity:.45;cursor:default}.kv{display:grid;grid-template-columns:1fr 1fr;gap:10px}.kv div{background:var(--bg);border-radius:10px;padding:10px 12px}.kv b{display:block;font-size:19px;font-variant-numeric:tabular-nums}.kv span{font-size:12px;color:var(--muted)}.alert{border-radius:12px;padding:12px 14px;margin-bottom:12px;font-size:14px}.alert.warn{background:var(--warn-weak);color:var(--w-ink);border:1px solid var(--w-bd)}.alert.ng{background:var(--ng-weak);color:var(--n-ink);border:1px solid var(--n-bd)}.alert.info{background:var(--accent-weak);color:var(--i-ink);border:1px solid var(--i-bd)}.days{padding:0;overflow:hidden}.day{display:grid;grid-template-columns:62px 1fr auto;gap:8px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}.day:last-child{border-bottom:0}.day .d{font-weight:600;font-variant-numeric:tabular-nums}.day .d.sat{color:var(--accent)}.day .d.sun{color:var(--ng)}.day .t{font-variant-numeric:tabular-nums}.day .h{font-variant-numeric:tabular-nums;font-weight:600;text-align:right;min-width:62px}.day.adj{cursor:pointer}.day.adj:active{background:var(--brand2-weak)}.adjl{color:var(--accent);font-weight:600;margin-top:2px}.clk{cursor:pointer}.clk:hover td{background:var(--accent-weak)}button.lnk{border:0;background:transparent;padding:0;font:inherit;color:var(--accent);text-decoration:underline;cursor:pointer;text-align:left}.rview{display:flex;justify-content:flex-end;margin:0 0 8px}.rcal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:0 0 12px}.rcal .wk{text-align:center;font-size:12px;color:var(--muted);padding:2px 0}.rcal .wk.sat{color:var(--accent)}.rcal .wk.sun{color:var(--ng)}.rcal .cd{min-height:52px;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;gap:3px;font:inherit;color:var(--ink)}button.cd{cursor:pointer}.rcal .cd.on{border-color:var(--accent);background:var(--accent-weak)}.rcal .cd.none{background:transparent;border-style:dashed;color:var(--muted)}.rcal .cd.blank{border:0;background:transparent}.rcal .cd b{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.rcal .cd.sat b{color:var(--accent)}.rcal .cd.sun b{color:var(--ng)}.rcal .cd.now b{text-decoration:underline}.rsum{display:flex;gap:8px;align-items:center;margin:0 0 8px;font-size:13px}.rdays{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;margin:0 -2px}.rd{flex:0 0 auto;min-width:62px;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:2px;font:inherit;color:var(--ink);cursor:pointer}.rd.on{border-color:var(--accent);background:var(--accent-weak)}.dot2{font-size:11px;font-weight:700;border-radius:999px;padding:0 7px}.dot2.ok{background:var(--ok-weak);color:var(--ok)}.dot2.wn{background:var(--warn-weak);color:var(--warn)}.rf{margin-bottom:14px}.rf label{display:block;font-weight:600;font-size:14px;margin-bottom:6px}.rf textarea,.rf input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit;background:var(--card);color:var(--ink)}.rf textarea{min-height:96px;resize:vertical}.conds{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cnd{border:1px solid var(--line);background:var(--card);border-radius:12px;padding:10px 4px;display:flex;flex-direction:column;align-items:center;gap:2px;font:inherit;color:var(--ink);cursor:pointer}.cnd b{font-size:22px}.cnd.on.ok{background:var(--ok-weak);border-color:var(--ok)}.cnd.on.warn{background:var(--warn-weak);border-color:var(--warn)}.cnd.on.ng{background:var(--ng-weak);border-color:var(--ng)}.bdg{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--ng);margin-left:4px;vertical-align:top}.xrow{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--line)}.xrow.adj{cursor:pointer}.xrow.adj:active{background:var(--brand2-weak)}.xrow .h{font-weight:600;white-space:nowrap}.xhead{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;border:0;background:none;padding:14px;font:inherit;font-weight:600;color:var(--ink);cursor:pointer;text-align:left}.dchips{display:flex;flex-wrap:wrap;gap:6px}.dchip input{position:absolute;opacity:0;pointer-events:none}.dchip span{display:inline-block;padding:6px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;background:var(--card);cursor:pointer}.dchip input:checked+span{background:var(--accent-weak);border-color:var(--accent);color:var(--accent);font-weight:600}.dchip input:focus-visible+span{outline:2px solid var(--accent)}.chk{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-weight:400!important}.chk input{width:auto!important}.mseg{display:flex;gap:6px;margin:0 0 10px}.mseg button{flex:1;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:8px 4px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.mseg button.on{border-color:var(--accent);background:var(--accent-weak);color:var(--accent)}.simbar{background:var(--simbar-bg);border-bottom:1px solid var(--line);padding:6px 16px;font-size:12.5px;color:var(--chip-ink)}.simbar select{font:inherit;max-width:100%;padding:3px 6px}.day.future{opacity:.45}.day.rest{background:var(--soft)}.day.today{background:var(--accent-weak)}.sub{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.admin{max-width:1180px;margin:0 auto;padding-block:20px 60px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.sec{font-size:16px;margin:0 0 10px}.atabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:16px;overflow-x:auto}.atabs button{white-space:nowrap}.atabs button{border:0;background:none;padding:10px 16px;color:var(--muted);font-weight:600;border-bottom:3px solid transparent}.atabs button.on{color:var(--accent);border-bottom-color:var(--accent)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px}.cards .card{margin:0}.cards b{font-size:26px;display:block;font-variant-numeric:tabular-nums}.cards span{font-size:12.5px;color:var(--muted)}.tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}.tools .btn.on,.btn.on{background:var(--accent-weak);border-color:var(--accent);color:var(--accent);font-weight:600}.tw{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;min-width:720px}th,td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12.5px;color:var(--muted);font-weight:600;background:var(--soft)}td.n,th.n{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0}tr.me td{background:var(--accent-weak)}tr.total td{font-weight:700;background:var(--soft)}.acts{display:flex;gap:6px}.mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#14182673;display:flex;align-items:center;justify-content:center;padding:16px;z-index:20}.modal{background:var(--card);border-radius:16px;padding:20px;width:100%;max-width:420px}.modal{max-height:90vh;overflow:auto}.modal.wide{max-width:480px}.modal h2{margin:0 0 8px;font-size:18px}.form{display:flex;flex-direction:column;gap:12px;margin:8px 0 12px}.form label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted);font-weight:600}.form input,.form select,.sel{font:inherit;color:var(--ink);padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card);min-width:0}.sel{padding:6px 8px;border-radius:8px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cp{display:flex;flex-direction:column;gap:8px}.cp input[type=search]{font:inherit;color:var(--ink);padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--card);min-width:0}.cpsel{font-size:14px}.rchips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rchips:empty{display:none}.chip.rc{border:0;cursor:pointer;font:inherit;font-size:12px;font-weight:600}.cplist{max-height:168px;overflow:auto;border:1px solid var(--line);border-radius:10px}.cpi{display:flex;justify-content:space-between;gap:8px;width:100%;border:0;border-bottom:1px solid var(--line);background:var(--card);color:var(--ink);padding:9px 12px;text-align:left}.cpi:last-child{border-bottom:0}.cpi.on{background:var(--accent-weak);font-weight:600}.wds{display:flex;gap:6px;flex-wrap:wrap}.wds label{flex-direction:row;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:6px 10px;color:var(--ink);font-weight:600}.wds input{padding:0}.modal textarea{width:100%;min-height:84px;border:1px solid var(--line);border-radius:10px;padding:10px;font:inherit;margin:8px 0}.modal .foot{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}#toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom,0px));transform:translate(-50%) translateY(20px);background:#1f2430;color:#fff;padding:10px 16px;border-radius:12px;font-size:14px;opacity:0;pointer-events:none;transition:.25s;z-index:30;max-width:90vw;text-align:center}#toast.show{opacity:1;transform:translate(-50%) translateY(0)}
