:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (width<=1024px){:root{font-size:16px}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--bg:#f4f7f6;--surface:#fff;--ink:#12262a;--inkSoft:#4c6266;--border:#dce6e4;--primary:#0e5259;--primarySoft:#e1eeec;--amber:#c6852b;--amberSoft:#fbf0df;--rose:#a94a46;--roseSoft:#f7e7e5;--green:#2f7d53;--greenSoft:#e4f1e9;--slateSoft:#edf1f0;--violet:#6a4fa0;--violetSoft:#ece7f5;--blue:#5b7fbf;--blueSoft:#e7ecf7}:root[data-theme=dark]{--bg:#0f1a1c;--surface:#172528;--ink:#e8f0ee;--inkSoft:#9cb0ad;--border:#2a3b3f;--primary:#4fb4ba;--primarySoft:#173a3d;--amber:#e3a94f;--amberSoft:#3a2e17;--rose:#e88580;--roseSoft:#3e2323;--green:#63c98f;--greenSoft:#1d3527;--slateSoft:#1f2e31;--violet:#b398e6;--violetSoft:#2c2540;--blue:#86a9ea;--blueSoft:#1e2a40;--text:#9cb0ad;--text-h:#e8f0ee;--code-bg:#1f2e31;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.kf-app h1,.kf-app h2,.kf-app h3,.kf-app h4{color:inherit}.kf-app{color:var(--ink)}:root[data-theme=dark] .kf-btn-primary:hover{background:#3e979c}:root[data-theme=dark] .kf-grid-cell.disabled{background:var(--slateSoft)}body{background:var(--bg);color:var(--ink);margin:0}.kf-app{background:var(--bg);color:var(--ink);min-height:100vh;font-family:ui-sans-serif,-apple-system,sans-serif;display:flex}.kf-card{background:var(--surface);border:1px solid var(--border);border-radius:14px}.kf-nav-item{cursor:pointer;color:var(--inkSoft);white-space:nowrap;border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;font-weight:600;transition:background .15s;display:flex}.kf-nav-item:hover{background:var(--slateSoft)}.kf-nav-item.active{background:var(--primarySoft);color:var(--primary)}.kf-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.kf-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:9px;flex-wrap:nowrap;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;display:inline-flex}.kf-btn-primary{background:var(--primary);color:#fff}.kf-btn-primary:hover{background:#0b4247}.kf-btn-ghost{color:var(--primary);border-color:var(--border);background:0 0}.kf-btn-ghost:hover{background:var(--slateSoft)}.kf-input,.kf-select{border:1px solid var(--border);color:var(--ink);background:var(--surface);box-sizing:border-box;border-radius:8px;width:100%;padding:9px 12px;font-size:13px}.kf-input:focus,.kf-select:focus{outline:2px solid var(--primary);outline-offset:1px}.kf-th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--inkSoft);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:700}.kf-td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px;font-size:13px}.kf-badge{white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-flex}.kf-row-click{cursor:pointer}.kf-row-click:hover{background:var(--slateSoft)}.kf-grid-cell{border:1px solid var(--border);min-height:45px;padding:4px;font-size:11px;transition:all .2s;position:relative}.kf-grid-cell.clickable:hover{background:var(--slateSoft);cursor:pointer}.kf-grid-cell.disabled{background:var(--slateSoft);cursor:not-allowed}.kf-appt-block{background:var(--primarySoft);border-left:3px solid var(--primary);color:var(--primary);cursor:pointer;border-radius:4px;flex-direction:column;justify-content:center;height:100%;padding:6px 8px;font-size:11.5px;font-weight:600;transition:all .15s;display:flex}.kf-appt-block:hover{filter:brightness(.95)}.kf-scroll::-webkit-scrollbar{width:6px;height:6px}.kf-scroll::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:4px}.table-responsive{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.kf-grid-stats{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.kf-grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.kf-grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}@media (width<=900px){.kf-grid-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.kf-app{flex-direction:column}aside{border-bottom:1px solid var(--border);z-index:10;background:var(--bg);overflow-x:auto;border-right:none!important;flex-direction:row!important;width:100%!important;padding:10px!important}.kf-nav-item{padding:8px 12px;font-size:12px}main{padding:16px!important}.kf-grid-stats{grid-template-columns:1fr}.kf-grid-2,.kf-grid-3{grid-template-columns:1fr!important}.kf-card{padding:14px!important}.modal-content{max-width:400px;width:95%!important;padding:16px!important}.top-bar-mobile{flex-direction:column;align-items:flex-start!important;gap:12px!important}}.kf-th-sticky{background:var(--surface);z-index:2;box-shadow:0 1px 0 var(--border);position:sticky;top:0}html,body{overscroll-behavior-y:contain}@keyframes kf-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.kf-spin{animation:1s linear infinite kf-spin}.kf-switch{background:var(--border);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;width:38px;height:22px;transition:background .15s;display:inline-flex;position:relative}.kf-switch.on{background:var(--primary)}.kf-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:left .15s;position:absolute;top:3px;left:3px}.kf-switch.on:after{left:19px}.modal-content{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;box-sizing:border-box;max-height:90vh;overflow-y:auto}@media (width<=768px){.modal-content{max-height:92vh}}.kf-sched-wrap{min-height:320px;max-height:calc(100vh - 250px);overflow:auto;padding:0!important}.kf-sched-wrap table{border-collapse:separate;border-spacing:0}.kf-sched-wrap thead th{z-index:30;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.kf-sched-wrap .kf-sched-time{z-index:20;background:var(--slateSoft);position:sticky;left:0}.kf-sched-wrap thead th.kf-sched-corner{z-index:40;background:var(--surface);position:sticky;left:0}.kf-sched-name{word-break:break-word;font-size:11px;line-height:1.15;white-space:normal!important;padding:8px 4px!important}.kf-sched-wrap .kf-appt-block,.kf-sched-wrap .kf-drag-preview{z-index:10!important}@media (width<=768px){.kf-sched-wrap{max-height:calc(100vh - 210px)}}.kf-grid-2>*,.kf-grid-3>*,.kf-grid-stats>*{min-width:0}input[type=date].kf-input,input[type=time].kf-input{min-width:0;max-width:100%}.kf-task-areas{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;gap:14px;display:grid}@media (width<=768px){.kf-task-areas{grid-template-columns:1fr}}.kf-task-area{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;transition:background .15s,outline-color .15s}.kf-task-area.general{background:var(--slateSoft)}.kf-task-area.general.drop{background:var(--primarySoft)}.kf-task-area.drop{outline:2px dashed var(--primary);outline-offset:-2px;background:var(--primarySoft)}.kf-task-area-head{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.kf-task-card[draggable=true]{cursor:grab}.kf-task-card.dragging{opacity:.45}.kf-task-area .kf-task-card{box-shadow:none;border:1px solid var(--border)}.kf-task-move{color:var(--inkSoft);align-items:center;gap:4px;display:inline-flex}.kf-task-move .kf-select{width:auto;max-width:110px;padding:4px 6px;font-size:11.5px}
