.kt{--navy:var(--brand-dark);--navy-2:var(--brand-dark-2);--accent:var(--brand-accent);--accent-ink:var(--brand-accent-ink);--bg:#f3f5f1;--page-bg:#e7ece3;--surface:#fff;--surface-2:#f7f8f6;--text:#1b2333;--text-muted:#6b7480;--text-faint:#95a0a8;--border:#e3e7e2;--shadow:0 10px 30px -12px #16294b47;--danger:#ff3b30;--leader:#22abee;--tint:16%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--page-bg);min-height:100dvh;color:var(--text);-webkit-tap-highlight-color:transparent;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}@media (prefers-color-scheme:dark){.kt{--navy:#0f1b33;--navy-2:#16294b;--accent:#9ed74a;--accent-ink:#0e1608;--bg:#12151c;--page-bg:#0b0d12;--surface:#1a1f2b;--surface-2:#202633;--text:#edeff3;--text-muted:#9aa3b2;--text-faint:#6b7480;--border:#2a3140;--shadow:0 10px 30px -12px #0009;--danger:#ff8a80;--leader:#64d2ff;--tint:24%;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.kt *,.kt :before,.kt :after{box-sizing:border-box}.kt button,.kt input,.kt select,.kt textarea{color:inherit;font-family:inherit}.kt .tint{background:color-mix(in srgb, var(--c) var(--tint), var(--surface));color:var(--c)}@media (prefers-color-scheme:dark){.kt .tint{color:color-mix(in srgb, var(--c) 65%, white)}}.kt .ink{color:var(--c)}@media (prefers-color-scheme:dark){.kt .ink{color:color-mix(in srgb, var(--c) 65%, white)}}.kt .stage{top:var(--app-top,0px);height:var(--app-h,100%);justify-content:center;display:flex;position:fixed;left:0;right:0}.kt .stage:before{content:"";pointer-events:none;background:radial-gradient(1100px 500px at 15% -10%,#8fcb3a29,#0000 60%),radial-gradient(900px 500px at 100% 0,#16294b24,#0000 55%);position:fixed;inset:0}.kt .shell{background:var(--bg);flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:clip}@media (min-width:768px) and (hover:hover){.kt .stage{padding:24px 16px}.kt .shell{max-width:428px;height:min(860px,100dvh - 48px);box-shadow:var(--shadow), 0 0 0 1px var(--border);border-radius:28px}}.kt .topbar{background:linear-gradient(180deg, var(--navy), var(--navy-2));color:#fff;padding:calc(14px + env(safe-area-inset-top,0px)) 16px 12px;flex:none}.kt .topbar-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.kt .brand{align-items:center;gap:8px;display:flex}.kt .brand .logo{background:var(--accent);width:28px;height:28px;color:var(--accent-ink);border-radius:8px;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.kt .brand .name{letter-spacing:.02em;color:#ffffffd9;font-size:12px;font-weight:700}.kt .me{background:#ffffff29;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:11px;font-weight:700;display:flex}.kt .topbar-actions{align-items:center;gap:8px;display:flex}.kt .icon-btn{color:#fff;cursor:pointer;background:#ffffff24;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;padding:0;display:flex}.kt .month-nav{justify-content:center;align-items:center;gap:14px;margin-top:10px;display:flex}.kt .month-nav button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff38;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;display:flex}.kt .month-nav .label{text-align:center;font-variant-numeric:tabular-nums;min-width:118px;font-size:17px;font-weight:700}.kt .tabs{background:#ffffff14;border-radius:11px;gap:6px;margin-top:12px;padding:4px;display:flex}.kt .tabs button{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 4px;font-size:12.5px;font-weight:700}.kt .tabs button.active{color:var(--brand-dark);background:#fff}.kt .view{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.kt .view::-webkit-scrollbar{width:0}.kt .view.month{flex-direction:column;display:flex;position:relative;overflow:hidden}.kt .fab{right:14px;bottom:calc(70px + env(safe-area-inset-bottom,0px));background:var(--accent);width:52px;height:52px;color:var(--accent-ink);cursor:pointer;z-index:3;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:26px;font-weight:700;line-height:1;display:flex;position:absolute;box-shadow:0 10px 22px -8px #00000073}.kt .loading-bar{background:var(--accent);z-index:4;height:2px;animation:1s ease-in-out infinite kt-loading;position:absolute;top:0;left:0;right:0}@keyframes kt-loading{0%{transform-origin:0;transform:scaleX(0)}50%{transform-origin:0;transform:scaleX(1)}51%{transform-origin:100%}to{transform-origin:100%;transform:scaleX(0)}}.kt .grid-wrap{flex-direction:column;flex:1;min-height:0;padding:6px 10px 8px;display:flex}.kt .weekdays{color:var(--text-faint);flex:none;grid-template-columns:repeat(7,1fr);padding:4px;font-size:10.5px;font-weight:700;display:grid}.kt .weekdays span{text-align:center}.kt .weekdays span:nth-child(6){color:#3b6dd8}.kt .weekdays span:nth-child(7){color:#d84343}.kt .month-grid{flex:1;grid-template-columns:repeat(7,1fr);gap:4px;min-height:0;display:grid;position:relative}.kt .day-cell{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;border-radius:9px;flex-direction:column;gap:1px;min-width:0;height:100%;min-height:0;padding:3px;display:flex;overflow:hidden}.kt .day-cell.other{opacity:.38}.kt .day-cell.today{border-color:var(--accent);box-shadow:0 0 0 1.5px var(--accent) inset}.kt .day-cell .num{font-variant-numeric:tabular-nums;color:var(--text-muted);flex:none;font-size:10.5px;font-weight:700}.kt .day-cell.today .num{color:var(--brand-accent-text)}@media (prefers-color-scheme:dark){.kt .day-cell.today .num{color:var(--accent)}}.kt .day-cell .num.sat{color:#3b6dd8}.kt .day-cell .num.sun,.kt .day-cell .num.holiday{color:#d84343}.kt .month-grid{--chip-font:9px;--chip-line:12px}@media (max-width:340px){.kt .month-grid{--chip-font:8px;--chip-line:11px}}.kt .day-cell .chip{font-size:var(--chip-font);line-height:var(--chip-line);height:var(--chip-line);white-space:nowrap;text-overflow:clip;letter-spacing:-.02em;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:3px;flex:none;padding:0 3px;font-weight:600;overflow:hidden}.kt .day-cell .chip.ink{padding-left:0;padding-right:0}.kt .day-cell .chip.cx-slot{visibility:hidden;touch-action:auto}.kt .day-cell .chip.drag-source{opacity:.25}.kt .day-cell.drop-target{outline:2px solid var(--accent);outline-offset:-2px;background:var(--surface-2)}.kt .day-cell .more{font-size:var(--chip-font);line-height:var(--chip-line);height:var(--chip-line);color:var(--text-faint);flex:none;padding-left:2px;font-weight:700}.kt .cross-bar{z-index:2;cursor:pointer;font-size:var(--chip-font);color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#111318;border-radius:4px;align-items:center;padding:0 4px;font-weight:700;display:flex;position:absolute;overflow:hidden}.kt-drag-ghost{z-index:50;pointer-events:none;white-space:nowrap;background:#fff;border-radius:4px;padding:2px 7px;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-size:10.5px;font-weight:700;position:fixed;transform:translate(-50%,-140%);box-shadow:0 8px 20px -6px #00000080}.kt .drag-trash{z-index:8;height:calc(64px + env(safe-area-inset-bottom,0px));color:#fff;padding-bottom:env(safe-area-inset-bottom,0px);background:#d9342b;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:700;transition:background .15s;display:flex;position:absolute;bottom:0;left:0;right:0}.kt .drag-trash.drop-hover{background:#a8241d}.kt .drag-trash svg{width:20px;height:20px}.kt .day-head{padding:14px 16px 4px}.kt .day-head .d{font-size:18px;font-weight:700}.kt .day-head .sub{color:var(--text-muted);margin-top:2px;font-size:11.5px}.kt .roster{padding:10px 16px 4px}.kt .roster .lbl{color:var(--text-muted);margin-bottom:8px;font-size:11px;font-weight:700}.kt .avatars{gap:10px;padding-bottom:6px;display:flex;overflow-x:auto}.kt .avatar{flex-direction:column;flex:none;align-items:center;gap:4px;width:44px;display:flex}.kt .avatar .circle{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:700;display:flex}.kt .avatar .nm{color:var(--text-muted);text-align:center;font-size:9.5px;line-height:1.2}.kt .timeline{flex-direction:column;gap:8px;padding:6px 16px 84px;display:flex}.kt .entry{background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;-webkit-user-select:none;user-select:none;border-radius:13px;gap:10px;width:100%;padding:10px 12px;display:flex}.kt .entry .bar{background:var(--c);border-radius:3px;flex:none;width:4px}.kt .entry .body{flex:1;min-width:0}.kt .entry .time{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:700}.kt .entry .title{color:var(--text);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:14px;font-weight:700;display:flex}.kt .entry .staffline{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;overflow:hidden}.kt .entry .staffline .leader-name{color:var(--text);font-weight:800}.kt .entry.night{background:#111318;border-color:#111318}.kt .entry.night .time{color:#ffffffad}.kt .entry.night .title{color:#fff}.kt .entry.night .staffline{color:#ffffffb8}.kt .entry.night .staffline .leader-name{color:#fff}.kt .entry.has-shortage{border-color:var(--danger);box-shadow:0 0 0 1.5px var(--danger) inset}.kt .badge{border-radius:99px;flex:none;padding:1px 6px;font-size:9px;font-weight:700}.kt .badge-vehicle{background:var(--navy);color:#fff}.kt .entry.night .badge-vehicle{background:#ffffff2e}.kt .badge-contract{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.kt .shortage-line{background:var(--danger);color:#fff;border-radius:8px;align-items:center;gap:6px;margin-top:5px;padding:5px 10px;font-size:12px;font-weight:800;display:flex;box-shadow:0 2px 6px -1px #d92d2080}.kt .leave-row{text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;border-radius:11px;align-items:center;gap:8px;width:100%;margin:0;padding:9px 13px;font-size:13px;font-weight:700;display:flex}.kt .leave-row.static{cursor:default}.kt .leave-row .dot{background:var(--c);border-radius:50%;flex:none;width:8px;height:8px}.kt .status-dot{border-radius:50%;flex:none;align-self:center;width:7px;height:7px;margin-left:auto}.kt .status-dot.done{background:var(--accent)}.kt .status-dot.pending{background:var(--border)}.kt .empty{text-align:center;color:var(--text-faint);padding:40px 20px;font-size:12.5px}.kt .memo-head{padding:14px 16px 2px}.kt .memo-head .t{color:var(--text-muted);font-size:13px;font-weight:700}.kt .memo-list{flex-direction:column;gap:10px;padding:10px 16px 20px;display:flex}.kt .memo-card{background:var(--surface);border:1px solid var(--border);text-align:left;cursor:pointer;border-radius:13px;width:100%;padding:12px 13px;display:block}.kt .memo-card .site{color:var(--text);font-size:13.5px;font-weight:700}.kt .memo-card .note{color:var(--text-muted);white-space:pre-line;margin-top:4px;font-size:11.5px;line-height:1.6}.kt .memo-card .meta{color:var(--text-faint);margin-top:8px;font-size:10px}.kt .add-memo{border:1.5px dashed var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:13px;padding:12px;font-size:12.5px;font-weight:700}.kt .bottomnav{border-top:1px solid var(--border);background:var(--surface);padding-bottom:env(safe-area-inset-bottom,0px);flex:none;display:flex}.kt .bottomnav button{color:var(--text-faint);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:9px 4px 8px;font-size:10px;font-weight:700;display:flex}.kt .bottomnav button svg{width:20px;height:20px}.kt .bottomnav button.active{color:var(--brand-accent-text)}@media (prefers-color-scheme:dark){.kt .bottomnav button.active{color:var(--accent)}}.kt .sheet-overlay{opacity:0;pointer-events:none;z-index:5;background:#0a0e1480;transition:opacity .2s;position:absolute;inset:0}.kt .sheet-overlay.show{opacity:1;pointer-events:auto}.kt .sheet{background:var(--surface);border-radius:20px 20px 0 0;flex-direction:column;max-height:88%;transition:transform .25s cubic-bezier(.2,.8,.3,1);display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -14px 34px -14px #00000059}.kt .sheet-overlay.show .sheet{transform:translateY(0)}.kt .sheet-handle{background:var(--border);border-radius:99px;flex:none;width:36px;height:4px;margin:10px auto 4px}.kt .sheet-scroll{padding:6px 20px calc(22px + env(safe-area-inset-bottom,0px));overflow-y:auto}.kt .close-x{background:var(--surface-2);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;font-size:14px;position:absolute;top:12px;right:14px}.kt .sheet-head{padding:8px 36px 4px 0}.kt .sheet-head .site{font-size:17px;font-weight:700}.kt .sheet-head .time{color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:3px;font-size:12px}.kt .sheet-section{margin-top:16px}.kt .sheet-section .h{color:var(--text-muted);margin-bottom:8px;font-size:11px;font-weight:700}.kt .member-list{flex-wrap:wrap;gap:8px;display:flex}.kt .member-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:99px;align-items:center;gap:6px;padding:4px 10px 4px 4px;font-size:12px;font-weight:600;display:flex}.kt .member-pill .c{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:9.5px;font-weight:700;display:flex}.kt .member-pill.leader{background:var(--accent);border-color:var(--accent);color:var(--brand-accent-ink)}.kt .member-pill.leader .c{background:color-mix(in srgb, var(--brand-accent-text) 25%, transparent);color:var(--brand-accent-ink)}.kt .leader-tag{background:color-mix(in srgb, var(--brand-accent-text) 14%, transparent);color:var(--brand-accent-text);border-radius:99px;margin-left:2px;padding:1px 6px;font-size:10px;font-weight:800}.kt .spec-box{background:var(--surface-2);border:1px solid var(--border);color:var(--text);white-space:pre-line;border-radius:12px;padding:12px 13px;font-size:12.5px;line-height:1.8}.kt .link-card{background:var(--surface-2);border:1px solid var(--border);color:inherit;border-radius:12px;gap:10px;padding:9px;text-decoration:none;display:flex}.kt .link-card .thumb{background:#dce9d5;border-radius:9px;flex:none;width:60px;height:60px;overflow:hidden}.kt .link-card .thumb svg{width:100%;height:100%;display:block}.kt .link-card .info{flex-direction:column;justify-content:center;gap:2px;min-width:0;display:flex}.kt .link-card .ttl{font-size:12.5px;font-weight:700}.kt .link-card .desc{color:var(--text-muted);font-size:10.5px;line-height:1.4}.kt .link-card .url{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.kt .file-list{flex-direction:column;gap:6px;display:flex}.kt .file-row{background:var(--surface-2);border:1px solid var(--border);color:inherit;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;text-decoration:none;display:flex}.kt .file-row .ic{background:color-mix(in srgb, #ff3b30 16%, var(--surface));color:#ff3b30;border-radius:7px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:8.5px;font-weight:800;display:flex;overflow:hidden}.kt .file-row .ic img{object-fit:cover;width:100%;height:100%;display:block}.kt .file-row .nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.kt .file-row .sz{color:var(--text-faint);flex:none;font-size:10px}.kt .add-line{border:1.5px dashed var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:10px;width:100%;margin-top:6px;padding:9px;font-size:11.5px;font-weight:700}.kt .add-line:disabled{opacity:.6;cursor:default}.kt .history-list{flex-direction:column;display:flex}.kt .history-row{border-bottom:1px solid var(--border);flex-direction:column;gap:3px;padding:9px 2px;display:flex}.kt .history-row:last-child{border-bottom:none}.kt .history-top{align-items:center;gap:8px;width:100%;display:flex}.kt .history-row .hd{color:var(--text-muted);font-variant-numeric:tabular-nums;flex:none;width:72px;font-size:11px}.kt .history-row .hn{flex:1;font-size:12.5px;font-weight:600}.kt .history-status{border-radius:99px;flex:none;padding:2px 8px;font-size:10px;font-weight:700}.kt .history-note{color:var(--text-muted);white-space:pre-line;padding-left:80px;font-size:11px;line-height:1.5}.kt .history-empty{color:var(--text-faint);padding:4px 2px;font-size:11.5px}.kt .history-foot{align-items:center;gap:8px;margin-top:2px;padding-left:80px;display:flex}.kt .history-edited{color:var(--text-faint);font-size:10.5px}.kt .history-actions{gap:6px;margin-left:auto;display:flex}.kt .history-btn{color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:7px;padding:4px 10px;font-size:11px;font-weight:700;line-height:1.4}.kt .history-btn.danger{color:var(--danger)}.kt .history-btn:disabled{opacity:.5}.kt .compose-editing{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);border-radius:9px;margin:-8px 0 16px;padding:8px 10px;font-size:11px}.kt .sheet-actions{flex-direction:column;gap:9px;margin-top:18px;display:flex}.kt .act-btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:13px 14px;font-size:14px;font-weight:700;display:flex}.kt .act-btn:disabled{opacity:.6;cursor:default}.kt .act-btn.primary{background:var(--navy);color:#fff}@media (prefers-color-scheme:dark){.kt .act-btn.primary{background:#2a4a80}}.kt .act-btn.reporter{color:#fff;background:#2f6fed}.kt .act-btn.accent{background:var(--accent);color:var(--brand-accent-ink)}.kt .act-btn.accent.done,.kt .act-btn.primary.done,.kt .act-btn.plain{background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.kt .act-btn.plain{color:var(--text)}.kt .act-btn.danger{background:var(--surface-2);color:#c0392b;border:1px solid var(--border)}.kt .compose-head{align-items:center;gap:10px;padding:8px 0 2px;display:flex}.kt .compose-back{color:var(--navy);cursor:pointer;background:0 0;border:none;padding:4px 2px;font-size:13px;font-weight:700}@media (prefers-color-scheme:dark){.kt .compose-back{color:var(--accent)}}.kt .compose-title{font-size:15px;font-weight:700}.kt .compose-site{color:var(--text-muted);margin:2px 0 16px;font-size:12px}.kt .compose-label{color:var(--text-muted);margin-bottom:6px;font-size:11px;font-weight:700;display:block}.kt .mt{margin-top:14px}.kt .compose-textarea{border:1px solid var(--border);background:var(--surface-2);resize:vertical;border-radius:12px;width:100%;min-height:150px;padding:12px;font-size:16px;line-height:1.7}.kt .compose-textarea.short{min-height:90px}.kt .compose-textarea:focus,.kt .new-input:focus{outline:2px solid var(--accent);outline-offset:1px}.kt .new-input{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;width:100%;min-height:44px;padding:10px 12px;font-size:16px}.kt .new-input:disabled{opacity:.5}.kt .new-row2{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.kt .form-toggle-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin-top:6px;padding:12px 2px;font-size:12.5px;font-weight:600;display:flex}.kt .switch{flex:none;width:40px;height:24px;display:inline-block;position:relative}.kt .switch input{opacity:0;width:0;height:0;position:absolute}.kt .switch-track{cursor:pointer;background:var(--border);border-radius:99px;transition:all .2s;position:absolute;inset:0}.kt .switch-track:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.kt .switch input:checked+.switch-track{background:var(--accent)}.kt .switch input:checked+.switch-track:before{transform:translate(16px)}.kt .switch input:focus-visible+.switch-track{outline:2px solid var(--accent);outline-offset:2px}.kt .tag-picker{flex-wrap:wrap;gap:9px;display:flex}.kt .tag-swatch{cursor:pointer;background:var(--c);border:none;border-radius:50%;width:30px;height:30px;padding:0;transition:transform .12s;position:relative}.kt .tag-swatch.selected{box-shadow:0 0 0 2px var(--surface), 0 0 0 4.5px var(--accent);transform:scale(1.12)}.kt .tag-swatch.selected:after{content:"✓";color:#fff;text-shadow:0 0 3px #0000008c;justify-content:center;align-items:center;font-size:16px;font-weight:900;display:flex;position:absolute;inset:0}.kt .tag-picker{padding:4px 2px}.kt .leave-kinds{flex-wrap:wrap;gap:8px;padding:4px 2px;display:flex}.kt .leave-kind{border:1.5px solid var(--border);background:var(--surface);height:36px;color:var(--text);cursor:pointer;border-radius:18px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.kt .leave-kind .dot{background:var(--c);border-radius:50%;width:10px;height:10px}.kt .leave-kind.selected{border-color:var(--c);background:color-mix(in srgb, var(--c) 16%, var(--surface));box-shadow:0 0 0 1.5px var(--c)}.kt .tag-name{color:var(--text);margin-top:6px;font-size:12px;font-weight:700}.kt .staff-picker{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.kt .staff-chip{background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:99px;align-items:center;gap:4px;min-width:0;min-height:32px;padding:4px 8px 4px 4px;font-size:10.5px;font-weight:600;display:flex}.kt .staff-chip .c{background:var(--navy);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;font-weight:700;display:flex}.kt .staff-chip .nm{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.kt .staff-chip.selected{background:var(--navy);border-color:var(--navy);color:#fff}.kt .staff-chip.selected .c{background:#ffffff40}.kt .vehicle-picker{flex-wrap:wrap;gap:8px;display:flex}.kt .vehicle-chip{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:99px;min-height:32px;padding:6px 13px;font-size:12.5px;font-weight:700}.kt .vehicle-chip.selected{background:var(--navy);border-color:var(--navy);color:#fff}.kt .stepper{align-items:center;gap:10px;display:flex}.kt .stepper-btn{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:14px;font-weight:700;line-height:1;display:flex}.kt .stepper-val{text-align:center;font-variant-numeric:tabular-nums;min-width:18px;font-size:13px;font-weight:700}.kt .form-hint{color:var(--text-muted);margin-top:6px;font-size:11px;line-height:1.6}.kt .form-hint.warn{color:var(--danger)}.kt .label-topbar{justify-content:space-between;align-items:center;padding:10px 2px 6px;display:flex}.kt .label-topbar .x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px}.kt .label-topbar .ttl{font-size:15px;font-weight:700}.kt .label-topbar .save{color:var(--navy);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:14px;font-weight:700}@media (prefers-color-scheme:dark){.kt .label-topbar .save{color:var(--accent)}}.kt .label-list{flex-direction:column;padding:4px 0 16px;display:flex}.kt .label-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 2px;display:flex}.kt .label-dot{border:2px dashed var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.kt .label-dot .inner{background:var(--c);border-radius:50%;width:13px;height:13px}.kt .label-input{background:0 0;border:none;flex:1;min-width:0;padding:4px 0;font-size:16px}.kt .label-input:focus{outline:none}.kt .label-grip{width:28px;height:36px;color:var(--text-muted);cursor:grab;touch-action:none;background:0 0;border:none;flex:none;justify-content:center;align-items:center;display:flex}.kt .label-grip svg{width:18px;height:18px}.kt .label-grip:disabled{opacity:.3}.kt .label-move{border:1px solid var(--border);background:var(--surface-2);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border-radius:8px;flex:none;font-size:12px}.kt .label-move:disabled{opacity:.35;cursor:default}.kt .label-note{color:var(--text-muted);padding:0 2px 8px;font-size:11px;line-height:1.6}.kt .confirm-overlay{z-index:12;background:#0a0e1466;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.kt .confirm-card{background:var(--surface);width:100%;max-width:280px;box-shadow:var(--shadow);text-align:center;border-radius:16px;padding:18px 18px 14px}.kt .confirm-card .msg{color:var(--text-muted);margin-bottom:14px;font-size:12.5px;line-height:1.6}.kt .confirm-card .msg b{color:var(--text);margin-bottom:3px;font-size:14.5px;font-weight:700;display:block}.kt .confirm-actions{flex-direction:column;gap:8px;display:flex}.kt .confirm-actions button{cursor:pointer;border:none;border-radius:10px;padding:11px;font-size:13.5px;font-weight:700}.kt .confirm-actions .btn-copy{background:var(--navy);color:#fff}.kt .confirm-actions .btn-move{background:var(--accent);color:var(--brand-accent-ink)}.kt .confirm-actions .btn-delete{color:#fff;background:#ff3b30}.kt .confirm-actions .btn-cancel{background:var(--surface-2);color:var(--text-muted)}.kt .toast{background:var(--navy);color:#fff;opacity:0;pointer-events:none;z-index:20;text-align:center;max-width:calc(100% - 32px);box-shadow:var(--shadow);border-radius:99px;padding:10px 16px;font-size:12px;font-weight:600;transition:all .2s;position:absolute;bottom:86px;left:50%;transform:translate(-50%)translateY(10px)}.kt .toast.show{opacity:1;transform:translate(-50%)translateY(0)}.kt .toast.error{background:#c0392b}.kt .icon-btn{position:relative}.kt .icon-btn .bell-count{color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--brand-dark);background:#ff3b30;border-radius:99px;padding:0 4px;font-size:9.5px;font-weight:800;line-height:16px;position:absolute;top:-5px;right:-6px}.kt .icon-btn.ringing svg{transform-origin:50% 10%;animation:2.4s ease-in-out infinite kt-ring}@keyframes kt-ring{0%,80%,to{transform:rotate(0)}84%{transform:rotate(14deg)}88%{transform:rotate(-12deg)}92%{transform:rotate(8deg)}96%{transform:rotate(-4deg)}}@media (prefers-reduced-motion:reduce){.kt .icon-btn.ringing svg{animation:none}}.kt .alert-filter{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;gap:6px;margin-top:12px;padding:3px;display:flex}.kt .alert-filter button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:7px 4px;font-size:12px;font-weight:700}.kt .alert-filter button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #0000001f}.kt .alert-list{flex-direction:column;gap:6px;display:flex}.kt .alert-row{text-align:left;background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-left:3px solid #ff3b30;border-radius:11px;align-items:center;gap:10px;width:100%;padding:9px 11px;display:flex}.kt .alert-main{flex:1;min-width:0}.kt .alert-title{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:700;overflow:hidden}.kt .alert-sub{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.kt .alert-tags{flex-direction:column;flex:none;align-items:flex-end;gap:3px;display:flex}.kt .alert-tag{background:color-mix(in srgb, #ff3b30 16%, var(--surface));color:var(--danger);white-space:nowrap;border-radius:99px;padding:2px 7px;font-size:9.5px;font-weight:800}.kt a.me{color:#fff;box-shadow:0 0 0 1.5px var(--accent);text-decoration:none}.kt .alert-row.soon{border-left-color:#ffa000}.kt .alert-tag.over{color:#fff;background:#ff3b30}.kt .alert-group-note{color:var(--text-muted);margin:-4px 0 8px;font-size:11px}.kt .login{text-align:center;background:radial-gradient(520px 300px at 50% 0%, rgba(var(--brand-accent-rgb), .2), transparent 60%), linear-gradient(180deg, var(--brand-dark), var(--brand-dark-2));color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:22px;padding:32px 28px;display:flex}.kt .login .mark{background:var(--brand-accent);width:76px;height:76px;color:var(--brand-mark-ink);letter-spacing:-1px;border-radius:20px;justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex;box-shadow:0 12px 28px -10px #00000080}.kt .login h1{margin:0;font-size:20px;font-weight:700}.kt .login p{color:#ffffffb8;max-width:280px;margin:0;font-size:13px;line-height:1.7}.kt .login-msg{text-align:left;background:#ffffff1f;border-radius:12px;max-width:300px;padding:10px 14px;font-size:12.5px;line-height:1.7}.kt .login-msg.warn{background:#ff3b3040}.kt .line-btn{color:#fff;cursor:pointer;background:#06c755;border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;max-width:280px;margin-top:6px;padding:14px 18px;font-size:15px;font-weight:700;text-decoration:none;display:flex;box-shadow:0 10px 22px -8px #06c7558c}.kt .line-btn.disabled{opacity:.5;pointer-events:none}.kt .line-btn svg{flex:none;width:20px;height:20px}.kt .login .hint{color:#ffffff80;font-size:11px}.kt button.me{color:#fff;cursor:pointer;border:none;padding:0}.kt .account-links{flex-direction:column;gap:9px;margin-top:16px;display:flex}.kt .account-links form{margin:0}.kt .copy-add-row{gap:8px;display:flex}.kt .copy-add-row .new-input{flex:1}.kt .act-btn.copy-add{flex:none;width:auto;padding:0 18px}.kt .copy-dates{flex-wrap:wrap;gap:6px;display:flex}.kt .copy-date{background:var(--surface-2);border:1px solid var(--border);border-radius:99px;align-items:center;gap:4px;padding:4px 4px 4px 11px;font-size:12px;font-weight:600;display:inline-flex}.kt .copy-date button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;width:24px;height:24px}.kt .swipe-pane{flex-direction:column;flex:1;min-height:0;display:flex}.kt .view:not(.month) .swipe-pane{flex:none}.kt .swipe-pane.slide-next{animation:.22s ease-out kt-slide-next}.kt .swipe-pane.slide-prev{animation:.22s ease-out kt-slide-prev}@keyframes kt-slide-next{0%{opacity:.4;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes kt-slide-prev{0%{opacity:.4;transform:translate(-28px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.kt .swipe-pane.slide-next,.kt .swipe-pane.slide-prev{animation:none}}.kt .drag-edge{z-index:7;pointer-events:none;justify-content:center;align-items:center;width:36px;transition:background .15s;display:flex;position:absolute;top:0;bottom:64px}.kt .drag-edge.left{background:linear-gradient(90deg,#16294b2e,#0000);left:0}.kt .drag-edge.right{background:linear-gradient(270deg,#16294b2e,#0000);right:0}.kt .drag-edge span{writing-mode:vertical-rl;color:var(--brand-dark);background:#ffffffe6;border-radius:99px;padding:8px 3px;font-size:11px;font-weight:800;box-shadow:0 2px 8px #00000026}.kt .drag-edge.active.left{background:linear-gradient(90deg,#8fcb3a8c,#0000)}.kt .drag-edge.active.right{background:linear-gradient(270deg,#8fcb3a8c,#0000)}.kt .sheet,.kt .sheet-scroll{overflow-x:hidden}.kt .sheet-scroll>*{max-width:100%}.kt .staff-picker{grid-template-columns:repeat(5,minmax(0,1fr))}.kt .new-row2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.kt .new-input{min-width:0;max-width:100%}.kt input[type=date].new-input,.kt input[type=time].new-input,.kt input[type=month].new-input{appearance:none;display:block}.kt .sheet.tall{height:94%;max-height:94%}.kt .search-head{flex:none;justify-content:space-between;align-items:center;padding:2px 12px 8px;display:flex}.kt .search-back{cursor:pointer;width:32px;height:32px;color:var(--text);background:0 0;border:none;font-size:22px}.kt .search-title{font-size:15px;font-weight:700}.kt .search-box{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;flex:none;align-items:center;gap:8px;margin:0 14px 8px;padding:0 10px;display:flex}.kt .search-box svg{width:18px;height:18px;color:var(--text-muted);flex:none}.kt .search-box input{background:0 0;border:none;outline:none;flex:1;min-width:0;padding:11px 0;font-size:16px}.kt .search-box input::-webkit-search-cancel-button{display:none}.kt .search-clear{background:var(--text-faint);color:#fff;cursor:pointer;border:none;border-radius:50%;flex:none;width:20px;height:20px;font-size:10px}.kt .search-results{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));flex:1;overflow:hidden auto}.kt .search-date{border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;padding:12px 16px 6px;font-size:13px;font-weight:800;display:flex}.kt .search-date.today{color:var(--leader)}.kt .search-date .count{color:var(--text-faint);font-size:11px;font-weight:600}.kt .search-hit{text-align:left;cursor:pointer;background:0 0;border:none;gap:10px;width:100%;padding:6px 16px 10px;display:flex}.kt .search-hit .bar{background:var(--c);border-radius:3px;flex:none;width:4px}.kt .search-hit .body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.kt .search-hit .t{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:700;overflow:hidden}.kt .search-hit .m{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.kt .topbar-actions{gap:10px}.kt .icon-btn,.kt .me{width:40px;height:40px}.kt .icon-btn svg{width:20px;height:20px}.kt .me{font-size:15px}@media (max-width:430px){.kt .topbar-actions.with-invoice{gap:6px}.kt .topbar-actions.with-invoice .icon-btn,.kt .topbar-actions.with-invoice .me{width:34px;height:34px}.kt .topbar-actions.with-invoice .icon-btn svg{width:18px;height:18px}}.kt .icon-btn .bell-count{min-width:18px;height:18px;font-size:10.5px;line-height:18px;top:-4px;right:-5px}.kt .brand .name{white-space:nowrap}@media (max-width:370px){.kt .brand .name{display:none}}.kt .month-nav .label{white-space:nowrap;color:#fff;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:6px;width:auto;min-width:0;height:auto;padding:6px 12px;font-family:inherit;font-size:17px;font-weight:700;display:inline-flex}.kt .month-nav .label:active{background:#ffffff1f}.kt .month-nav .caret{opacity:.7;font-size:11px}.kt .wheels{grid-template-columns:1fr 1fr;gap:8px;height:200px;margin:8px 0 4px;display:grid;position:relative}.kt .wheel-band{background:var(--surface-2);border:1px solid var(--border);pointer-events:none;border-radius:10px;height:40px;position:absolute;top:80px;left:0;right:0}.kt .wheel{scroll-snap-type:y mandatory;overscroll-behavior:contain;padding:80px 0;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.kt .wheel::-webkit-scrollbar{width:0}.kt .wheel-item{width:100%;height:40px;color:var(--text-muted);scroll-snap-align:center;cursor:pointer;background:0 0;border:none;font-size:18px;font-weight:600;line-height:40px;display:block}.kt .wheel-item.selected{color:var(--text);font-size:20px;font-weight:800}.kt .memo-card{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.kt .memo-hint{color:var(--text-faint);padding:0 16px;font-size:11px}.kt .day-cell.shortage,.kt .day-cell.shortage.today{border-color:var(--danger);box-shadow:0 0 0 1.5px var(--danger) inset}.kt .day-cell .num .shortage-mark{color:var(--danger);margin-left:2px;font-size:10px;font-weight:800}.kt .edit-x{background:var(--navy);color:#fff;cursor:pointer;z-index:1;border:none;border-radius:99px;align-items:center;gap:5px;height:32px;padding:0 12px 0 10px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;top:10px;right:14px}@media (prefers-color-scheme:dark){.kt .edit-x{background:#2a4a80}}.kt .edit-x svg{width:15px;height:15px}.kt .close-x{width:32px;height:32px;top:10px}.kt .edit-x+.sheet-head{padding-right:88px}.kt .entry-row{gap:8px;min-width:0;margin-top:3px;font-size:12px;line-height:1.5;display:flex}.kt .entry-key{width:30px;color:var(--text-faint);flex:none;padding-top:1px;font-size:10.5px;font-weight:700}.kt .entry-val{min-width:0;color:var(--text);word-break:break-all;flex:1}.kt .entry .entry-val.staffline{white-space:normal;color:var(--text);margin-top:0;font-size:12px;overflow:visible}.kt .entry-count{color:var(--text-muted);white-space:nowrap;margin-left:0}.kt .entry-count.short{color:var(--danger);font-weight:800}.kt .entry-spec{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.kt .entry.night .entry-key{color:#ffffff8c}.kt .entry.night .entry-val,.kt .entry.night .entry-val.staffline{color:#fff}.kt .entry.night .entry-spec{color:#ffffffbf}.kt .entry.night .entry-count{color:#ffffffb3}.kt .entry.night .entry-count.short{color:#ff8a80}.kt .month-nav{gap:8px}.kt .month-nav .filter-pill{color:#fff;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#ffffff14;border:1px solid #ffffff47;border-radius:99px;align-items:center;gap:5px;width:auto;max-width:45%;height:auto;padding:6px 11px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex;overflow:hidden}.kt .month-nav .filter-pill.active{background:var(--accent);border-color:var(--accent);color:var(--brand-mark-ink)}.kt .filter-pill .caret{opacity:.7;font-size:10px}.kt .filter-quick{gap:8px;margin-top:12px;display:flex}.kt .filter-choice{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:12px;flex:1;padding:12px 8px;font-size:14px;font-weight:700}.kt .filter-choice.selected{background:var(--navy);border-color:var(--navy);color:#fff}.kt .brand.cal-switch{color:inherit;cursor:pointer;text-align:left;background:0 0;border:none;flex:1;min-width:0;padding:4px 6px 4px 0;font-family:inherit}.kt .brand.cal-switch .name{color:#fff;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.kt .brand.cal-switch .caret{opacity:.7;flex:none;font-size:10px}.kt .brand.cal-switch .logo{color:var(--brand-mark-ink);flex:none}@media (max-width:370px){.kt .brand.cal-switch .name{max-width:110px;display:block}}.kt .cal-icon{background:var(--c);color:#fff;text-shadow:0 1px 2px #00000040;border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:800;display:flex}.kt .cal-list{flex-direction:column;margin-top:10px;display:flex}.kt .cal-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;display:flex}.kt .cal-row.current .cal-name{color:var(--leader)}.kt .cal-main{text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:12px;min-width:0;padding:12px 2px;display:flex}.kt .cal-text{flex-direction:column;gap:5px;min-width:0;display:flex}.kt .cal-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:15px;font-weight:800;display:flex;overflow:hidden}.kt .cal-now{background:var(--accent);color:var(--brand-accent-ink);border-radius:99px;flex:none;padding:1px 7px;font-size:10px;font-weight:800}.kt .cal-members{flex-wrap:wrap;align-items:center;gap:3px;display:flex}.kt .cal-member{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:9.5px;font-weight:700;display:flex}.kt .cal-more{color:var(--text-muted);margin-left:2px;font-size:11px;font-weight:700}.kt .cal-edit{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:99px;flex:none;padding:6px 12px;font-size:12px;font-weight:700}.kt .alert-cal{color:var(--leader);margin-top:1px;font-size:10.5px;font-weight:700}.kt .bottomnav .nav-icon{display:flex;position:relative}.kt .bottomnav .nav-count{color:#fff;text-align:center;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--surface);background:#ff3b30;border-radius:99px;padding:0 4px;font-size:10px;font-weight:800;line-height:17px;position:absolute;top:-5px;right:-11px}.kt .memo-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.kt .memo-left{color:#fff;background:#ff3b30;border-radius:99px;flex:none;padding:3px 10px;font-size:12px;font-weight:800}.kt .notify-box{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin:12px 0 4px;padding:12px}.kt .cross-bar.cont-right{border-top-right-radius:0;border-bottom-right-radius:0}.kt .cross-bar.cont-left{border-top-left-radius:0;border-bottom-left-radius:0}.kt .spec-tap{text-align:left;cursor:pointer;width:100%;font-family:inherit;display:block}.kt .spec-pen{color:var(--text-faint);margin-top:6px;font-size:11px;font-weight:700;display:block}.kt .spec-edit{resize:vertical;line-height:1.6}.kt .spec-actions{gap:8px;margin-top:8px;display:flex}.kt .spec-actions .act-btn{flex:1}.kt .repeat-day{border:1px solid var(--border);background:var(--surface-2);min-width:36px;color:var(--text);cursor:pointer;border-radius:10px;flex:1;padding:8px 0;font-size:14px;font-weight:700}.kt .repeat-day.on{background:var(--navy);border-color:var(--navy);color:#fff}.kt .repeat-box{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-top:14px;padding:12px}.kt .repeat-title{font-size:13px;font-weight:800}.kt .member-tap{text-align:left;cursor:pointer;background:0 0;border:none;width:100%;padding:0;font-family:inherit;display:block}.kt .alert-days{color:var(--text-muted);margin-left:4px;font-size:10.5px;font-weight:700}.kt .form-fixed-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;gap:10px;padding:2px 14px 10px 20px;display:flex}.kt .form-save-btn{background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:99px;flex:none;height:32px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:700}.kt .form-save-btn:disabled{opacity:.6}.kt .copy-cal{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;padding:8px}.kt .copy-cal-head{justify-content:space-between;align-items:center;margin-bottom:6px;font-size:15px;font-weight:800;display:flex}.kt .copy-cal-head button{background:var(--surface);width:40px;height:36px;color:var(--navy);cursor:pointer;border:none;border-radius:10px;font-size:20px;font-weight:800}.kt .copy-cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.kt .copy-cal-wd{text-align:center;color:var(--text-muted);font-size:11px;font-weight:700}.kt .copy-cal-day{background:var(--surface);height:40px;color:var(--text);cursor:pointer;border:1px solid #0000;border-radius:10px;font-size:15px;font-weight:700}.kt .copy-cal-day.sun{color:#d63b30}.kt .copy-cal-day.sat{color:#2a6fdb}.kt .copy-cal-day.other{opacity:.45}.kt .copy-cal-day.on{background:var(--navy);color:#fff;opacity:1}.kt .copy-cal-day.origin{border-color:var(--navy);cursor:default}.kt .copy-cal-day.blocked{color:#fff;opacity:1;cursor:not-allowed;background:#8e8e93}.kt .staff-chip.on-leave{color:#fff;background:#8e8e93;border-color:#8e8e93}.kt .staff-chip.on-leave.selected{background:var(--navy);border-color:var(--danger);box-shadow:0 0 0 1.5px var(--danger)}.kt .staff-chip .leave-mark{color:#8e8e93;background:#fff;border-radius:4px;margin-left:2px;padding:0 3px;font-size:9.5px;font-weight:800}.kt .leave-flag{color:var(--danger);font-size:.9em;font-weight:800}.kt .staff-chip.busy{border-color:#ffa000}.kt .staff-chip .busy-mark{color:#fff;background:#ffa000;border-radius:4px;margin-left:2px;padding:0 3px;font-size:9.5px;font-weight:800}.kt .staff-chip{position:relative}.kt .staff-chip .leave-mark,.kt .staff-chip .busy-mark{box-shadow:0 0 0 1px var(--surface);border-radius:3px;margin:0;padding:0 2px;font-size:8.5px;line-height:12px;position:absolute;top:-5px;left:14px}.kt .staff-chip .leave-mark{color:#fff;background:#5a5a5f}.kt .feed-list{padding:0 12px 90px}.kt .feed-day{color:#6b7780;margin:12px 2px 6px;font-size:12px;font-weight:800}.kt .feed-row{text-align:left;width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #e3e8e1;border-radius:12px;margin-bottom:6px;padding:10px 12px;display:block}.kt .feed-row.unread{border-color:var(--brand-accent);background:color-mix(in srgb, var(--brand-accent) 8%, #fff)}.kt .feed-title{align-items:center;gap:6px;font-size:13.5px;font-weight:800;display:flex}.kt .feed-dot{background:#ff3b30;border-radius:50%;flex:none;width:8px;height:8px}.kt .feed-body{margin-top:3px;font-size:13px}.kt .feed-meta{color:#8a949b;margin-top:4px;font-size:11.5px}.kt .feed-cal{color:#56616a;background:#eef1ec;border-radius:6px;margin-left:6px;padding:0 6px}.kt .cross-bar.undecided,.kt .entry.night.undecided{background:#8e8e93;border-color:#8e8e93}.kt .update-banner{left:50%;top:calc(env(safe-area-inset-top) + 8px);z-index:90;background:var(--brand-dark);color:#fff;border-radius:99px;max-width:calc(100% - 32px);padding:8px 14px;font-size:12.5px;font-weight:700;position:fixed;transform:translate(-50%);box-shadow:0 4px 14px #0003}.kt .prep-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.kt .prep-count{color:#7a4b00;background:#fff1d6;border-radius:99px;padding:2px 10px;font-size:12.5px;font-weight:800}.kt .prep-count.all{color:#3e8e2f;background:#f2f8ec}.kt .prep-staff{color:var(--text-sub,#56616a);margin-bottom:8px;font-size:12.5px}.kt .prep-card{background:#fff;border:1.5px solid #e3e8e1;border-radius:12px;margin-bottom:8px;padding:10px 12px}.kt .prep-card.overdue{background:#fff5f4;border-color:#d93a2b}.kt .prep-card.soon{background:#fffaf0;border-color:#f0b429}.kt .prep-card.done{background:#f2f8ec;border-color:#cfe3c4}.kt .prep-title{align-items:center;gap:6px;font-size:14px;font-weight:800;display:flex}.kt .prep-check{color:#fff;background:#3e8e2f;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;display:inline-flex}.kt .prep-badge{color:#56616a;white-space:nowrap;background:#eef1ec;border-radius:99px;margin-left:auto;padding:2px 9px;font-size:11.5px;font-weight:800}.kt .prep-badge.overdue{color:#fff;background:#d93a2b}.kt .prep-badge.soon{color:#7a4b00;background:#f0b429}.kt .prep-sub{color:#3a444c;margin-top:4px;font-size:12.5px}.kt .prep-file{color:#22abee;margin-left:6px}.kt .prep-due{margin-top:4px;font-size:12.5px;font-weight:700}.kt .prep-do{color:#fff;background:#1e2b4f;border:none;border-radius:10px;width:100%;height:48px;margin-top:8px;font-size:15px;font-weight:800}.kt .prep-cancel{color:#56616a;background:#fff;border:1px solid #c9d0c6;border-radius:8px;margin-left:auto;padding:4px 10px;font-size:12px;font-weight:700}.kt .prep-overlay{z-index:80;background:#00000059;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.kt .prep-sheet{width:100%;max-width:520px;padding:16px 16px calc(16px + env(safe-area-inset-bottom));background:#fff;border-radius:18px 18px 0 0;max-height:88vh;overflow-y:auto}.kt .prep-sheet-site{color:#6b7780;font-size:12.5px}.kt .prep-sheet-q{margin:4px 0 10px;font-size:17px;font-weight:800}.kt .prep-sheet-h{color:#56616a;margin:12px 0 6px;font-size:12.5px;font-weight:800}.kt .prep-item{border-bottom:1px solid #eef1ec;align-items:center;gap:10px;min-height:48px;font-size:14.5px;display:flex}.kt .prep-item input{flex:none;width:22px;height:22px}.kt .prep-note{color:#7a4b00;background:#fff1d6;border-radius:8px;margin-top:8px;padding:6px 10px;font-size:12.5px}.kt .prep-methods{gap:8px;display:flex}.kt .prep-method,.kt .prep-attach,.kt .prep-btn{color:#1e2b4f;background:#fff;border:1.5px solid #c9d0c6;border-radius:10px;flex:1;height:48px;font-size:15px;font-weight:700}.kt .prep-method.on{color:#fff;background:#1e2b4f;border-color:#1e2b4f}.kt .prep-attach{width:100%}.kt .prep-actions{gap:10px;margin-top:16px;display:flex}.kt .prep-btn.primary{color:#fff;background:#1e2b4f;border-color:#1e2b4f}.kt .prep-banner{color:#fff;text-align:left;width:100%;font:inherit;background:#d93a2b;border:none;border-radius:10px;flex-direction:column;align-items:flex-start;margin-bottom:6px;padding:7px 12px;display:flex}.kt .prep-banner-t{font-size:13px;font-weight:800}.kt .prep-banner-s{opacity:.92;margin-top:1px;font-size:11.5px}.kt .day-cell.prep-over,.kt .day-cell.prep-over.today{border-color:#d93a2b;box-shadow:inset 0 0 0 2px #d93a2b}.kt .prep-mark{color:#56616a;white-space:nowrap;background:#eef1ec;border-radius:6px;flex:none;padding:1px 6px;font-size:10.5px;font-weight:800}.kt .prep-mark.overdue{color:#fff;background:#d93a2b}.kt .prep-mark.soon{color:#7a4b00;background:#f0b429}.kt .alert-tabs{gap:6px;margin-bottom:10px;display:flex}.kt .alert-tabs button{color:#56616a;background:#fff;border:1.5px solid #d6dcd3;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;height:44px;font-size:14px;font-weight:800;display:inline-flex}.kt .alert-tabs button.active{color:#fff;background:#1e2b4f;border-color:#1e2b4f}.kt .alert-tabs .tab-count{color:#fff;background:#d93a2b;border-radius:99px;min-width:20px;height:20px;padding:0 5px;font-size:11.5px;line-height:20px}.kt .prep-row{text-align:left;width:100%;min-height:44px;font:inherit;color:inherit;background:0 0;border:none;border-bottom:1px solid #eef1ec;align-items:center;gap:8px;padding:4px 2px;font-size:13px;display:flex}.kt .prep-row-due{color:#56616a;background:#eef1ec;border-radius:99px;flex:none;padding:2px 8px;font-size:11.5px;font-weight:800}.kt .prep-row-main{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.kt .prep-row-kind{color:#6b7780;flex:none;font-size:11.5px}.kt .prep-contract{color:#2c5aa0;font-size:12px;font-weight:700}.kt .tool-head{justify-content:space-between;align-items:center;display:flex}.kt .tool-edit-link{color:#2c5aa0;cursor:pointer;background:0 0;border:0;padding:0;font-size:11.5px;font-weight:700}.kt .tool-list{white-space:normal;padding:8px 13px}.kt .tool-group+.tool-group{margin-top:6px}.kt .tool-cat{color:var(--text-faint);font-size:10.5px;font-weight:700;line-height:1.6}.kt .tool-items{flex-wrap:wrap;gap:2px 12px;display:flex}.kt .tool-item b{font-variant-numeric:tabular-nums;margin-left:3px;font-weight:800}.kt .tool-search{margin-bottom:4px}.kt .tool-cat-block{border-bottom:1px solid var(--border)}.kt .tool-cat-head{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:10px 2px;font-size:12.5px;font-weight:700;display:flex}.kt .tool-cat-meta{color:var(--text-faint);gap:8px;font-size:11px;display:flex}.kt .tool-cat-meta b{color:var(--navy)}.kt .tool-chips{padding-bottom:10px}.kt .tool-sel-h{color:var(--text-muted);margin-top:12px;font-size:11px;font-weight:700}.kt .tool-sel-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.kt .tool-sel-name{min-width:0;font-size:12.5px;font-weight:600}.kt .tool-extra-tag{color:#8a5a00;background:#ffa00024;border-radius:99px;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700}.kt .tool-extra{align-items:center;gap:8px;margin-top:10px;display:flex}.kt .tool-extra .new-input{flex:1;min-width:0}.kt .tool-extra-add{border:1px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;border-radius:10px;flex:none;height:34px;padding:0 12px;font-size:12.5px;font-weight:700}.kt .tool-extra-add:disabled{opacity:.4;cursor:default}.kt button.tool-tap{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;display:block}.kt .staff-chip.has-star{gap:0;padding:0 6px 0 0}.kt .staff-chip .chip-star,.kt .staff-chip .chip-name{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.kt .staff-chip .chip-star{width:24px;color:var(--text-faint);flex:none;align-self:stretch;font-size:15px;line-height:1}.kt .staff-chip.selected .chip-star,.kt .staff-chip.on-leave .chip-star{color:#fff9}.kt .staff-chip.leader .chip-star{color:#ffc22e}.kt .staff-chip .chip-name{text-align:left;flex:1;align-items:center;min-width:0;min-height:32px;display:flex}.kt .staff-chip.has-star .leave-mark,.kt .staff-chip.has-star .busy-mark{left:12px}.kt .staff-chip.guest{background:#3d5a8a;border-color:#3d5a8a}.kt .lg-add{gap:8px;margin-top:8px;display:flex}.kt .lg-add .new-input{flex:1;min-width:0}.kt .staff-chip.on-ng{color:#8e8e93;background:#ececee;border:1px dashed #c0392b}.kt .staff-chip.on-ng.selected{background:var(--navy);color:#fff}.kt .staff-chip .ng-mark{color:#fff;background:#c0392b;border-radius:4px;padding:0 3px;font-size:9px;font-weight:800;line-height:1.4;position:absolute;top:-5px;left:12px}.kt .ng-bar{color:#791f1f;background:#fcebeb;border-radius:10px;align-items:center;gap:8px;margin:6px 8px 4px;padding:7px 10px;font-size:12px;display:flex}.kt .ng-bar.editing{color:#fff;background:#c0392b}.kt .ng-bar-text{flex:1;min-width:0;line-height:1.5}.kt .ng-bar-sub{opacity:.8;font-size:10.5px;display:block}.kt .ng-bar-btn{color:#a32d2d;cursor:pointer;background:#fff;border:1px solid;border-radius:8px;flex:none;height:32px;padding:0 12px;font-size:12px;font-weight:700}.kt .day-cell.ng-day{background:repeating-linear-gradient(135deg,#c0392b1a 0 6px,#0000 6px 12px)}.kt .day-cell.ng-edit{cursor:pointer}.kt .ng-day-mark{color:#fff;vertical-align:1px;background:#c0392b;border-radius:3px;margin-left:2px;padding:0 2px;font-size:8.5px;font-weight:800}.kt .staff-chip .emp-tag{color:#a32d2d;flex:none;margin-left:auto;font-size:9px;font-weight:800}.kt .staff-chip.selected .emp-tag{color:#ffd0cc}.kt .ng-row-sub{opacity:.75;margin-left:4px;font-size:.85em;font-weight:500}.kt .roster .day-need{margin-left:4px;font-weight:600}.kt .roster .day-need .short{color:var(--danger);font-weight:800}.kt .contents{display:contents}.kt .stage.desktop{padding:0}.kt .shell.desktop{max-width:none;height:100%;box-shadow:none;border-radius:0;font-size:15px}.kt .shell.desktop .topbar{padding-left:24px;padding-right:24px}.kt .shell.desktop .month-nav{justify-content:flex-start;gap:10px}.kt .shell.desktop .month-nav .nav-arrow{width:34px;height:34px;font-size:20px;line-height:1}.kt .shell.desktop .month-nav .label{min-width:150px;font-size:20px}.kt .shell.desktop .month-nav .nav-today,.kt .shell.desktop .month-nav .nav-add{white-space:nowrap;border-radius:99px;width:auto;height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.kt .shell.desktop .month-nav .nav-add{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);margin-left:auto}.kt .desk-body{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.kt .desk-body>.view.month{flex:1;min-width:0}.kt .desk-drawer{background:var(--bg);border-left:1px solid var(--border);visibility:hidden;flex-direction:column;flex:none;width:0;min-height:0;transition:width .22s cubic-bezier(.2,.8,.3,1),visibility 0s linear .22s;display:flex;overflow:hidden}.kt .desk-drawer.open{visibility:visible;width:580px;transition:width .22s cubic-bezier(.2,.8,.3,1),visibility}.kt .desk-drawer>*{flex-shrink:0;width:580px}.kt .desk-drawer .view{flex:1;min-height:0}.kt .side-close{width:34px;flex:none!important;font-size:14px!important}.kt .shell.desktop .month-nav .nav-pane{white-space:nowrap;border-radius:99px;gap:6px;width:auto;height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.kt .shell.desktop .month-nav .nav-pane.active{color:var(--navy);background:#fff}.kt .side-tabs{border-bottom:1px solid var(--border);background:var(--surface);flex:none;gap:4px;padding:10px 12px 8px;display:flex}.kt .side-tabs button{border:1px solid var(--border);background:var(--surface-2);height:34px;color:var(--text-muted);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;font-family:inherit;font-size:13px;font-weight:700;display:flex}.kt .side-tabs button.active{background:var(--navy);border-color:var(--navy);color:#fff}.kt .side-count{background:var(--danger);color:#fff;border-radius:99px;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;line-height:18px}.kt .side-daynav{flex:none;justify-content:space-between;padding:8px 12px 0;display:flex}.kt .side-daynav button{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:99px;height:30px;padding:0 12px;font-family:inherit;font-size:12.5px;font-weight:700}.kt .side-daynav button:hover,.kt .side-tabs button:not(.active):hover{background:var(--surface);color:var(--text)}.kt .shell.desktop .grid-wrap{padding:8px 14px 12px}.kt .shell.desktop .weekdays{padding:5px 3px;font-size:10.5px}.kt .shell.desktop .month-grid{--chip-font:10px;--chip-line:15px;gap:5px}.kt .shell.desktop .day-cell{border-radius:8px;gap:2px;padding:4px 5px}.kt .shell.desktop .day-cell:hover{border-color:var(--text-faint)}.kt .shell.desktop .day-cell .num{margin-bottom:1px;font-size:11px}.kt .shell.desktop .day-cell .chip{border-radius:3px;padding:0 4px}.kt .day-cell.selected{border-color:var(--navy);box-shadow:0 0 0 2px var(--navy) inset}@media (prefers-color-scheme:dark){.kt .day-cell.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}}.kt .shell.desktop .sheet{opacity:0;border-radius:18px;width:min(600px,100vw - 48px);max-height:88vh;transition:transform .2s,opacity .2s;inset:50% auto auto 50%;transform:translate(-50%,-46%);box-shadow:0 24px 60px -20px #00000073}.kt .shell.desktop .sheet-overlay.show .sheet{opacity:1;transform:translate(-50%,-50%)}.kt .shell.desktop .sheet-handle{visibility:hidden;height:0;margin:6px auto 0}.kt .admin-switch{color:#fff;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff59;border-radius:99px;align-items:center;height:34px;margin-right:4px;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.kt .admin-switch:hover{background:#ffffff38}.kt .shell.desktop .topbar,.kt .shell.desktop .desk-drawer,.kt .shell.desktop .sheet{zoom:.8}.kt[data-text=s] .month-grid{--chip-font:8px;--chip-line:11px}.kt[data-text=l] .month-grid{--chip-font:11px;--chip-line:14px}.kt[data-text=xl] .month-grid{--chip-font:13px;--chip-line:16px}.kt[data-text=s] .day-cell .num{font-size:10px}.kt[data-text=l] .day-cell .num{font-size:12px}.kt[data-text=xl] .day-cell .num{font-size:13.5px}.kt[data-text=s] .shell.desktop .month-grid{--chip-font:9px;--chip-line:13px}.kt[data-text=l] .shell.desktop .month-grid{--chip-font:12px;--chip-line:17px}.kt[data-text=xl] .shell.desktop .month-grid{--chip-font:14px;--chip-line:19px}.kt[data-text=s] .view:not(.month)>*,.kt[data-text=s] .sheet-scroll>*,.kt[data-text=s] .confirm-card{zoom:.92}.kt[data-text=l] .view:not(.month)>*,.kt[data-text=l] .sheet-scroll>*,.kt[data-text=l] .confirm-card{zoom:1.15}.kt[data-text=xl] .view:not(.month)>*,.kt[data-text=xl] .sheet-scroll>*,.kt[data-text=xl] .confirm-card{zoom:1.3}.kt .text-size{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin:12px 0 4px;padding:12px}.kt .text-size .lbl{margin-bottom:8px;font-size:13px;font-weight:700}.kt .text-size-btns{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.kt .text-size-btns button{border:1.5px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;flex-direction:column;align-items:center;gap:2px;padding:8px 0 6px;font-size:12px;font-weight:700;display:flex}.kt .text-size-btns button.on{border-color:var(--navy);background:var(--navy);color:#fff}.kt .text-size-btns .sample{line-height:1.1}.kt .text-size-btns .sample.s{font-size:13px}.kt .text-size-btns .sample.m{font-size:16px}.kt .text-size-btns .sample.l{font-size:20px}.kt .text-size-btns .sample.xl{font-size:24px}.kt .text-size-note{color:var(--text-faint);margin-top:6px;font-size:11px}.kt .brand .logo.logo-img,.kt .cal-icon.cal-icon-img,.kt .login .mark.mark-img{object-fit:contain;background:#fff;padding:2px}.kt .login .mark.mark-img{padding:8px}html[data-edition=monitor] .kt{--bg:#f4f5f6;--page-bg:#e8eaed;--surface-2:#f7f8f9;--border:#e3e5e8;--shadow:0 10px 30px -12px #1e222847}@media (prefers-color-scheme:dark){html[data-edition=monitor] .kt{--navy:#17191d;--navy-2:#2f3339;--accent:#a3adb8;--accent-ink:#111316;--bg:#141518;--page-bg:#0d0e10;--surface:#1d1f23;--surface-2:#24272c;--border:#2f3237}}.kt .kt-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite kt-spin}@keyframes kt-spin{to{transform:rotate(360deg)}}
