:root{--ground:#f4f2ed;--panel:#faf9f6;--panel-line:#e3dfd7;--inset:#f1eee8;--ink:#1a1714;--body:#4a443d;--muted:#6b645b;--faint:#a39b8f;--caution:#9a5b2e;--bad:#9c3b2b;--good:#3f6b3c;--pending-bg:#fbf5ec;--sidebar:#1d1a17;--sidebar-active:#2c2723;--sidebar-active-line:#a0703f;--sidebar-line:#3a3530;--sidebar-text:#d8d2c8;--sidebar-muted:#a39b8f;--on-dark:#faf9f6;--badge:#c08a55;--sync:#8db38a;--outside-core:#b5ac9e;--btn-line:#bdb6aa;--input-line:#cfc9bf;--ui:"Inter", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--ui);color:var(--ink);background:var(--ground);margin:0;font-size:14px;line-height:1.45}a{color:var(--ink);text-underline-offset:3px}a:hover{color:var(--caution)}button,input,select,textarea{color:inherit;font-family:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--caution);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.caps{letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.th{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.t-bad{color:var(--bad)}.t-close{color:var(--caution)}.t-good{color:var(--good)}.t-muted{color:var(--muted)}.t-faint{color:var(--faint)}.small{font-size:12px}.strong{font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.shell{flex-wrap:wrap;min-height:100vh;display:flex}.sidebar{background:var(--sidebar);max-width:260px;color:var(--sidebar-text);flex-direction:column;flex:220px;gap:22px;padding:28px 16px 24px;display:flex}@media (max-width:820px){.sidebar{flex-basis:100%;max-width:none}}.sb-brand{flex-direction:column;gap:4px;padding:0 4px;display:flex}.sb-brand span:first-child{letter-spacing:.14em;color:var(--badge);font-size:10px;font-weight:600}.sb-brand span:last-child{color:var(--on-dark);font-size:17px;font-weight:600}.sb-dept{border:1px solid var(--sidebar-line);background:#24201c;border-radius:4px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.sb-dept span{color:var(--sidebar-muted);font-size:11px}.sb-dept select,.sb-dept strong{color:var(--on-dark);background:0 0;border:0;min-height:24px;padding:0;font-size:13px;font-weight:500}.sb-dept select option{color:var(--ink)}.sb-nav{flex-direction:column;gap:2px;display:flex}.sb-nav a{min-height:40px;color:var(--sidebar-text);border:1px solid #0000;border-radius:3px;align-items:center;gap:10px;padding:0 10px;font-size:13px;text-decoration:none;display:flex}.sb-nav a:hover{color:var(--on-dark)}.sb-nav a[aria-current=page]{color:var(--on-dark);background:var(--sidebar-active);border-color:var(--sidebar-active-line);font-weight:500}.sb-badge{background:var(--badge);min-width:20px;height:20px;color:var(--sidebar);border-radius:10px;justify-content:center;align-items:center;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:flex}.sb-foot{border-top:1px solid var(--sidebar-line);flex-direction:column;gap:6px;padding:16px 4px 0;font-size:12px;display:flex}.sb-foot .who{color:var(--on-dark)}.sb-foot .links{color:var(--sidebar-muted);gap:12px;display:flex}.sb-foot .links a,.sb-foot .links button{color:var(--sidebar-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.sb-sync-label{letter-spacing:.14em;color:var(--badge);align-items:center;gap:6px;font-size:10px;font-weight:600;display:flex}.sb-dot{background:var(--sync);border-radius:3px;width:6px;height:6px}.sb-dot.bad{background:#c8704f}.sb-dot.off{background:var(--sidebar-muted)}.sb-sync-btn{width:100%;min-height:40px;color:var(--on-dark);letter-spacing:.12em;cursor:pointer;background:0 0;border:1px solid #5a534b;margin-top:8px;font-size:11px;font-weight:600}.sb-sync-btn:disabled{opacity:.5;cursor:default}.main{flex:999 560px;min-width:0;padding:48px 32px 80px}@media (max-width:600px){.main{padding:32px 16px 64px}}.page{flex-direction:column;gap:40px;max-width:1240px;margin:0 auto;display:flex}.page-head{flex-direction:column;gap:10px;display:flex}.eyebrow{letter-spacing:.14em;color:var(--caution);text-transform:uppercase;font-size:11px;font-weight:600}.h1{letter-spacing:-.02em;font-size:40px;font-weight:700;line-height:1.1}.lede{max-width:660px;color:var(--body);font-size:15px}.tiles{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:-8px;display:grid}.tile{background:var(--panel);border:1px solid var(--panel-line);flex-direction:column;gap:4px;padding:20px;display:flex}.tile-label{letter-spacing:.1em;color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:600}.tile-value{font-variant-numeric:tabular-nums;font-size:36px;font-weight:700;line-height:1.15}.tile-sub{color:var(--muted);font-size:13px}.section{flex-direction:column;gap:14px;display:flex}.section-head{border-top:1px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:16px;display:flex}.h2{font-size:18px;font-weight:700}.panel{background:var(--panel);border:1px solid var(--panel-line)}.card{background:var(--panel);border:1px solid var(--panel-line);flex-wrap:wrap;align-items:center;gap:16px 32px;padding:18px 20px;display:flex}.card-col{flex-direction:column;min-width:0;display:flex}.empty{background:var(--panel);border:1px dashed var(--input-line);color:var(--body);padding:18px 20px}.scroll-x{overflow-x:auto}.rule-blocks{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px 56px;display:grid}.rule-blocks p{color:var(--body);font-size:13px}.btn,.btn-line{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:0;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.btn{background:var(--ink);color:var(--panel);border:1px solid var(--ink)}.btn:hover{color:var(--panel);background:#2b2622}.btn-line{color:var(--ink);border:1px solid var(--btn-line);background:#fff}.btn-line:hover{border-color:var(--ink);color:var(--ink)}.btn:disabled,.btn-line:disabled,.btn[aria-disabled=true],.btn-line[aria-disabled=true]{color:var(--faint);border-color:var(--panel-line);cursor:not-allowed;background:#fff}.btn-done{letter-spacing:.1em;min-height:44px;color:var(--good);border:1px solid var(--good);background:#fff;align-items:center;padding:0 18px;font-size:11px;font-weight:600;display:inline-flex}.btn-quiet{border:1px solid var(--input-line);min-height:44px;color:var(--ink);cursor:pointer;background:#fff;align-items:center;padding:0 16px;font-size:12px;text-decoration:none;display:inline-flex}.link{min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0 6px;font-size:12px;text-decoration:underline}.link:disabled{color:var(--faint);cursor:default}.icon-btn{border:1px solid var(--input-line);width:40px;height:40px;color:var(--ink);cursor:pointer;background:#fff;justify-content:center;align-items:center;text-decoration:none;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.seg{border:1px solid var(--input-line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.seg button{min-height:40px;color:var(--ink);cursor:pointer;background:#fff;border:0;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:4px 10px;font-size:13px;display:flex}.seg.tall button{min-height:44px}.seg button[aria-pressed=true]{background:var(--ink);color:var(--panel);font-weight:600}.seg button:disabled{color:var(--faint);cursor:not-allowed}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{min-height:36px;color:var(--ink);border:1px solid var(--input-line);cursor:pointer;background:#fff;padding:0 12px;font-size:12px}.chip[aria-pressed=true]{background:var(--ink);color:var(--panel);border-color:var(--ink);font-weight:600}.chip.day{min-width:52px;min-height:40px;color:var(--muted);font-size:13px}.chip.day[aria-pressed=true]{color:var(--panel)}.tabs{border-bottom:1px solid var(--panel-line);flex-wrap:wrap;gap:4px 20px;display:flex}.tab{min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:4px;margin-bottom:-1px;padding:0;font-size:13px;text-decoration:none;display:inline-flex}.tab[aria-pressed=true],.tab[aria-current=page]{border-bottom-color:var(--ink);color:var(--ink);font-weight:600}.tab .count{color:var(--caution);margin-left:2px;font-weight:600}.sort{flex-wrap:wrap;align-items:center;gap:4px 18px;display:flex}.sort a{min-height:40px;color:var(--muted);border-bottom:2px solid #0000;align-items:center;font-size:13px;text-decoration:none;display:inline-flex}.sort a[aria-current=true]{border-bottom-color:var(--ink);color:var(--ink);font-weight:600}.field{border:1px solid var(--input-line);min-height:44px;color:var(--ink);background:#fff;border-radius:0;width:100%;padding:0 12px;font-size:14px}.field.short{min-height:40px;padding:0 10px}textarea.field{resize:vertical;min-height:80px;padding:10px 12px}.label{letter-spacing:.12em;color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:600}.field-group{flex-direction:column;gap:6px;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px 24px;display:grid}.notice{border-left:2px solid;padding:10px 12px;font-size:13px}.notice.bad{color:var(--bad);background:#9c3b2b12}.notice.good{color:var(--good);background:#3f6b3c14}.grid-row{align-items:stretch;gap:6px;display:grid}.cell{font-variant-numeric:tabular-nums;border:1px solid var(--panel-line);text-align:left;min-height:58px;font:inherit;color:inherit;background:0 0;flex-direction:column;justify-content:center;gap:1px;width:100%;padding:8px 10px;display:flex}.cell.on{background:var(--panel)}.cell.marked{background:var(--panel);border:1px solid var(--ink)}.cell.pending{background:var(--pending-bg);border:1px dashed var(--caution)}button.cell{cursor:pointer}button.cell:hover{border-color:var(--ink)}.cell .t{font-size:14px;font-weight:600}.cell .off{color:var(--muted);font-size:13px}.cell .tag{letter-spacing:.08em;font-size:10px;font-weight:600}.bars{border-bottom:1px solid var(--input-line);align-items:flex-end;gap:2px;height:40px;display:flex}.bars>div{flex:1}.legend{color:var(--muted);flex-wrap:wrap;gap:18px;font-size:11px;display:flex}.legend span{align-items:center;gap:6px;display:flex}.legend i{width:10px;height:10px;display:inline-block}dialog.sheet{border:1px solid var(--panel-line);background:var(--panel);width:calc(100% - 32px);max-width:420px;padding:22px 24px}dialog.sheet::backdrop{background:#1a171459}.save-bar{background:var(--sidebar);color:var(--on-dark);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex;position:sticky;bottom:0}.save-bar button{border:1px solid var(--on-dark);letter-spacing:.1em;cursor:pointer;min-height:44px;color:var(--on-dark);background:0 0;padding:0 20px;font-size:11px;font-weight:600}.save-bar button.dirty{background:var(--on-dark);color:var(--ink)}.phone{flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.phone-head{flex-direction:column;gap:6px;padding:26px 20px 16px;display:flex}.phone-head .eyebrow{font-size:10px}.phone-head h1{letter-spacing:-.02em;font-size:28px;font-weight:700;line-height:1.1}.phone-main{flex-direction:column;flex:1;gap:12px;padding:0 20px 96px;display:flex}.phone-card{background:var(--panel);border:1px solid var(--panel-line);flex-direction:column;gap:10px;padding:16px;display:flex}.inset{background:var(--inset);border:1px solid var(--panel-line);font-variant-numeric:tabular-nums;flex-direction:column;gap:6px;padding:10px 12px;font-size:13px;display:flex}.inset .line{justify-content:space-between;gap:8px;display:flex}.bottom-bar{background:var(--sidebar);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-bar a{min-height:58px;color:var(--sidebar-text);letter-spacing:.06em;border-top:2px solid var(--sidebar);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.bottom-bar a[aria-current=page]{color:var(--on-dark);border-top-color:var(--badge);font-weight:600}.btn-wide{width:100%;min-height:48px;font-size:12px}
