:root { color-scheme:light; }
body { margin:0; background:#f1f1ed; }
#kcg-app .kw-shell { min-height:100vh; grid-template-columns:216px minmax(0,1fr); }
#kcg-app .kw-sidebar { position:sticky; top:0; height:100dvh; padding-top:29px; overflow-y:auto; }
#kcg-app .kw-content { max-width:1280px; margin:auto; padding:35px 38px; }
#kcg-app .kw-topbar { padding:18px 38px; }
#kcg-app .kw-main-grid { grid-template-columns:minmax(0,1.7fr) minmax(245px,1fr); }
#kcg-app .kw-top-actions .kw-search input { width:185px; }
#kcg-app .kw-pill-count { font-size:11px; margin-left:auto; color:#aaa99e; }
#kcg-app .kw-save-status { color:#aaa99e; margin-top:5px; font-size:11px; display:flex; align-items:center; gap:5px; }
#kcg-app .kw-save-status::before { content:""; width:5px; height:5px; border-radius:50%; background:#b9ff51; }
#kcg-app .kw-profile { padding-top:20px; }
#kcg-app .kw-nav-bottom { margin-top:22px; }
#kcg-app .kw-task-row { align-items:center; }
#kcg-app .kw-task-title { display:block; width:100%; }
#kcg-app .kw-task-actions { display:flex; align-items:center; gap:4px; }
#kcg-app .kw-task-actions button { padding:7px; border:0; background:transparent; color:#686861; border-radius:4px; }
#kcg-app .kw-task-actions button:hover { background:#f1f1ed; }
#kcg-app .kw-task-row[draggable="true"] { cursor:grab; }
#kcg-app .kw-task-row.dragging { opacity:.45; }
#kcg-app .kw-task-row.drag-over { box-shadow:inset 0 2px #90bf46; }
#kcg-app .kw-empty-state { text-align:center; padding:39px 20px; }
#kcg-app .kw-empty-state h2 { margin:13px 0 10px; }
#kcg-app .kw-empty-state p { max-width:360px; margin:0 auto 19px; }
#kcg-app .kw-empty-state > svg { width:23px; height:23px; color:#77776c; }
#kcg-app .kw-grid-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
#kcg-app .kw-metric { font-size:32px; margin-top:12px; font-weight:500; letter-spacing:-1px; }
#kcg-app .kw-metric-note { font-size:11px; color:#686861; margin-top:7px; }
#kcg-app .kw-grid-two { margin-top:15px; }
#kcg-app .kw-workspace-card { color:#151512; }
#kcg-app .kw-workspace-card:hover { border-color:#abab9f; }
#kcg-app .kw-small-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
#kcg-app .kw-progress { height:4px; background:#ecece4; border-radius:2px; overflow:hidden; margin-top:13px; }
#kcg-app .kw-progress > span { display:block; height:100%; background:#83af38; }
#kcg-app .kw-mode-select { display:flex; gap:6px; flex-wrap:wrap; }
#kcg-app .kw-note-card { display:flex; flex-direction:column; gap:12px; }
#kcg-app .kw-note-card button.kw-task-title { font-family:Georgia,serif; font-size:23px; line-height:1.25; }
#kcg-app .kw-note-excerpt { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; }
#kcg-app .kw-link { display:inline-flex; align-items:center; gap:6px; color:#37541b; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
#kcg-app .kw-stacked { display:grid; gap:15px; }
#kcg-app .kw-planned { font-size:11px; color:#686861; }
#kcg-app .kw-info-strip { padding:12px 16px; font-size:12px; line-height:1.5; background:#e8eddd; color:#40512a; border-radius:6px; margin-bottom:18px; }
#kcg-app .kw-board-card { display:block; width:100%; text-align:left; }
#kcg-app .kw-board-column { min-height:100px; }
#kcg-app .kw-board { grid-template-columns:repeat(4,minmax(0,1fr)); }
#kcg-app .kw-board-label { padding:8px 3px; }
#kcg-app .kw-view-tabs { display:flex; gap:18px; padding:0 0 14px; border-bottom:1px solid #deded7; margin-bottom:20px; flex-wrap:wrap; }
#kcg-app .kw-view-tabs button { border:0; background:transparent; padding:6px 0; color:#686861; font-size:13px; }
#kcg-app .kw-view-tabs button[aria-pressed="true"] { color:#151512; box-shadow:0 2px #83af38; }
#kcg-app .kw-week { display:flex; align-items:center; gap:9px; padding:13px 0; font-size:12px; border-top:1px solid #eeeeea; }
#kcg-app .kw-week strong { font-size:13px; font-weight:500; }
#kcg-app .kw-week span { color:#686861; }
#kcg-app .kw-focus-reasons { margin:12px 0 0; font-size:11px; color:#b5b5ac; }
#kcg-app .kw-focus-reasons span { color:#d7dfc6; }
#kcg-app .kw-focus .kw-empty-state { padding:5px 0; text-align:left; }
#kcg-app .kw-focus .kw-empty-state p { margin:0 0 18px; }
#kcg-app .kw-timer { display:flex; align-items:center; justify-content:space-between; gap:12px; background:#171a12; color:#fff; border-radius:7px; margin-bottom:18px; padding:16px 19px; flex-wrap:wrap; }
#kcg-app .kw-timer small { display:block; color:#b7bdad; font-size:11px; margin-bottom:6px; }
#kcg-app .kw-timer time { font-variant-numeric:tabular-nums; font-size:22px; font-weight:500; }
#kcg-app .kw-inline-date { width:auto; max-width:100%; padding:8px 11px; border:1px solid #deded7; background:#fff; border-radius:5px; font:12px Arial,sans-serif; }
#kcg-app .kw-setup { padding:20px; border:1px solid #d3d3c9; background:#fff; text-align:left; border-radius:8px; margin-top:20px; font-size:13px; line-height:1.7; }
#kcg-app .kw-setup-step { border-top:1px solid #e8e8e1; margin-top:15px; padding-top:15px; }
#kcg-app .kw-setup-step > div { display:flex; justify-content:space-between; align-items:center; gap:8px; }
#kcg-app .kw-setup-status { font-size:10px; color:#855222; background:#f7efdf; border-radius:4px; padding:3px 6px; white-space:nowrap; }
#kcg-app .kw-setup-ready { color:#3c5d1c; background:#eef5e4; }
#kcg-app .kw-setup p { margin:9px 0 0; color:#62625b; font-size:12px; line-height:1.65; }
#kcg-app .kw-setup code { font:12px monospace; background:#f1f1ed; padding:1px 4px; border-radius:3px; }
#kcg-app .kw-setup .kw-setup-footnote { margin:16px 0; }
#kcg-app .kw-device-strip { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
#kcg-app .kw-device-strip .kw-button { font-size:11px; white-space:nowrap; }
#kcg-app .kw-login-shell { min-height:100dvh; display:grid; grid-template-columns:1.15fr 1fr; }
#kcg-app .kw-login-brand { padding:70px; background:#0b0b0a; color:white; display:flex; flex-direction:column; justify-content:space-between; }
#kcg-app .kw-login-brand .kw-brand { padding:0; font-size:64px; }
#kcg-app .kw-login-brand h1 { font-size:clamp(38px,4vw,62px); max-width:520px; margin:50px 0 18px; }
#kcg-app .kw-login-brand p { color:#b2b2a7; max-width:430px; font-size:14px; }
#kcg-app .kw-login-note { font-size:12px; color:#a7b28e; padding-top:40px; }
#kcg-app .kw-login-form { display:flex; align-items:center; justify-content:center; padding:45px; }
#kcg-app .kw-login-card { width:100%; max-width:360px; }
#kcg-app .kw-login-card h2 { font-size:36px; margin:10px 0; }
#kcg-app .kw-login-card p { margin-bottom:26px; }
#kcg-app .kw-loading { min-height:100dvh; display:grid; align-content:center; justify-content:center; gap:24px; text-align:center; }
#kcg-app .kw-button:disabled { opacity:.55; cursor:wait; }
#kcg-app button:focus-visible,#kcg-app a:focus-visible,#kcg-app input:focus-visible,#kcg-app select:focus-visible,#kcg-app textarea:focus-visible { outline:2px solid #75a830; outline-offset:3px; }
#kcg-app .kw-button-quiet { text-align:left; }
#kcg-app .kw-badge-error { color:#923b2e; background:#fae9e4; border-color:#eed4cc; }
#kcg-app .kw-reading { width:100%; accent-color:#85b23b; }
#kcg-app .kw-file-help { font-size:11px; color:#686861; line-height:1.5; margin-top:8px; }
#kcg-app .kw-text-wrap { white-space:pre-wrap; overflow-wrap:anywhere; }
#kw-modal-root { font-family:Arial,Helvetica,sans-serif; color:#151512; }
#kw-modal-root [hidden] { display:none!important; }
.kw-backdrop { position:fixed; inset:0; z-index:50; background:#00000062; display:flex; justify-content:flex-end; }
.kw-modal { background:#fff; width:min(540px,100%); height:100dvh; overflow-y:auto; padding:28px; box-sizing:border-box; box-shadow:-15px 0 80px #00000022; }
.kw-modal * { box-sizing:border-box; }
.kw-modal h2 { font:400 30px/1.15 Georgia,serif; margin:8px 0 0; letter-spacing:-.5px; }
.kw-modal h3 { font-size:14px; font-weight:500; margin:20px 0 12px; }
.kw-modal .kw-eyebrow { font-size:11px; letter-spacing:1px; text-transform:uppercase; color:#686861; }
.kw-modal .kw-sheet-head { display:flex; align-items:flex-start; justify-content:space-between; gap:15px; margin-bottom:25px; }
.kw-modal .kw-icon-button { background:transparent; border:1px solid #deded7; padding:8px; border-radius:5px; color:#151512; }
.kw-modal .kw-field { display:grid; gap:7px; margin-bottom:17px; }
.kw-modal .kw-field label { font-size:12px; color:#686861; }
.kw-modal input,.kw-modal select,.kw-modal textarea { font:14px Arial,sans-serif; color:#151512; width:100%; border:1px solid #deded7; border-radius:5px; padding:11px; background:#fafaf7; }
.kw-modal textarea { resize:vertical; min-height:95px; line-height:1.6; }
.kw-modal .kw-paper-input { min-height:360px; font-size:15px; line-height:1.8; }
.kw-modal .kw-field-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.kw-modal .kw-button { display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:11px 15px; border:1px solid #deded7; border-radius:5px; background:#fff; color:#151512; font:500 12px Arial,sans-serif; }
.kw-modal .kw-button-green { background:#b9ff51; border-color:#b9ff51; }
.kw-modal .kw-button-dark { background:#0b0b0a; border-color:#0b0b0a; color:white; }
.kw-modal .kw-button-danger { color:#a03e2e; }
.kw-modal .kw-sheet-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:20px 0; margin-top:18px; border-top:1px solid #deded7; }
.kw-modal .kw-sheet-footer > div { display:flex; gap:8px; }
.kw-modal .kw-small { font-size:12px; line-height:1.6; color:#686861; margin-top:8px; }
.kw-modal .kw-error { font-size:12px; color:#973a2c; background:#fbede8; padding:12px; border-radius:5px; margin-top:12px; }
.kw-modal .kw-checkbox-field { display:flex; align-items:center; gap:10px; font-size:13px; line-height:1.5; margin:10px 0; }
.kw-modal .kw-checkbox-field input { width:17px; height:17px; accent-color:#78a52f; flex:none; }
.kw-modal .kw-checklist-row { display:flex; align-items:center; gap:9px; margin-bottom:9px; }
.kw-modal .kw-checklist-row input[type="checkbox"] { width:18px; height:18px; accent-color:#78a52f; flex:none; }
.kw-modal .kw-checklist-row input[type="text"] { flex:1; min-width:0; }
.kw-modal .kw-checkbox-grid { display:grid; gap:5px; max-height:220px; overflow:auto; padding:8px 0; }
.kw-modal :focus-visible { outline:2px solid #75a830; outline-offset:2px; }
.kw-modal details { border-top:1px solid #deded7; margin-top:18px; padding-top:15px; font-size:13px; }
.kw-modal summary { margin-bottom:15px; cursor:pointer; }
.kw-modal .kw-inline-note { border-left:2px solid #b9ff51; padding:12px; background:#f5f6f0; font-size:12px; line-height:1.6; margin:16px 0; }
#kw-toast { position:fixed; z-index:80; bottom:24px; left:50%; transform:translateX(-50%); background:#161813; color:#fff; border:1px solid #363e2a; border-radius:7px; padding:13px 18px; font:13px/1.5 Arial,sans-serif; max-width:calc(100vw - 32px); box-shadow:0 8px 40px #00000030; }
#kw-toast[data-error="true"] { background:#662f24; border-color:#813d2d; }
@media(max-width:1050px) { #kcg-app .kw-shell { grid-template-columns:190px minmax(0,1fr); } #kcg-app .kw-main-grid { grid-template-columns:1fr; } #kcg-app .kw-main-grid > .kw-side { display:grid; grid-template-columns:1fr 1fr; gap:16px; } #kcg-app .kw-side > .kw-section-gap { margin-top:0; } #kcg-app .kw-content { padding:28px; } #kcg-app .kw-topbar { padding:16px 28px; } #kcg-app .kw-board { grid-template-columns:1fr 1fr; } }
@media(max-width:800px) { #kcg-app .kw-shell { grid-template-columns:166px minmax(0,1fr); } #kcg-app .kw-content { padding:23px 20px; } #kcg-app .kw-topbar { padding:16px 20px; } #kcg-app .kw-top-actions .kw-search input { width:125px; } #kcg-app .kw-grid-three { grid-template-columns:1fr; } #kcg-app .kw-login-brand { padding:38px; } #kcg-app .kw-login-form { padding:30px; } }
@media(max-width:640px) { #kcg-app .kw-shell { grid-template-columns:1fr; } #kcg-app .kw-sidebar { position:relative; height:auto; overflow:visible; padding:17px 16px 12px; } #kcg-app .kw-nav { grid-template-columns:repeat(4,minmax(0,1fr)); } #kcg-app .kw-nav button { flex-direction:column; gap:5px; padding:10px 2px; font-size:11px; } #kcg-app .kw-nav button svg { width:16px; height:16px; } #kcg-app .kw-pill-count { display:none; } #kcg-app .kw-nav-bottom { display:none; } #kcg-app .kw-top-actions .kw-search input { width:100%; } #kcg-app .kw-content { padding:25px 17px; } #kcg-app .kw-topbar { padding:12px 16px; } #kcg-app .kw-main-grid > .kw-side { grid-template-columns:1fr; } #kcg-app .kw-board { grid-template-columns:1fr; } #kcg-app .kw-timer { flex-wrap:wrap; } #kcg-app .kw-login-shell { grid-template-columns:1fr; } #kcg-app .kw-login-brand { padding:28px; } #kcg-app .kw-login-brand .kw-brand { font-size:40px; } #kcg-app .kw-login-brand h1 { font-size:35px; margin:27px 0 14px; } #kcg-app .kw-login-note { display:none; } #kcg-app .kw-login-form { padding:35px 25px; } #kcg-app .kw-task-actions { gap:1px; }  .kw-modal { padding:24px 20px; } .kw-modal .kw-field-grid { grid-template-columns:1fr; gap:0; } .kw-modal input,.kw-modal select,.kw-modal textarea { font-size:16px; } }
@media(pointer:coarse) { #kcg-app .kw-task-check { width:23px; height:23px; } #kcg-app .kw-task-actions button,.kw-modal button,.kw-modal select { min-height:44px; min-width:34px; } }
@media(prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; } }
#kcg-app h1,#kcg-app h2,#kcg-app h3,#kcg-app .kw-task-title,#kcg-app .kw-business-row strong,#kcg-app .kw-profile b { overflow-wrap:anywhere; }
.kw-modal h2 { overflow-wrap:anywhere; }
#kcg-app .kw-week-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; align-items:stretch; }
#kcg-app .kw-day-card { border:1px solid #deded7; border-radius:7px; background:#e9e9e2; min-width:0; min-height:205px; }
#kcg-app .kw-day-current { border-color:#8fb84b; background:#edf1e5; }
#kcg-app .kw-day-heading { display:flex; align-items:center; justify-content:space-between; gap:6px; padding:13px 11px; border-bottom:1px solid #dcdcce; }
#kcg-app .kw-day-heading span { display:block; color:#686861; font-size:11px; margin-bottom:5px; }
#kcg-app .kw-day-heading strong { font-size:13px; font-weight:500; }
#kcg-app .kw-day-heading button { padding:5px; border-color:transparent; }
#kcg-app .kw-day-tasks { padding:8px; display:grid; gap:8px; }
#kcg-app .kw-day-empty { text-align:center; color:#77776d; font-size:11px; padding:23px 0; }
#kcg-app .kw-planned-card { padding:12px 10px 8px; background:#fff; border:1px solid #deded7; border-radius:5px; cursor:grab; min-width:0; }
#kcg-app .kw-planned-card .kw-task-title { font-size:12px; line-height:1.5; }
#kcg-app .kw-planned-card .kw-task-meta { font-size:11px; margin-top:9px; }
#kcg-app .kw-planned-bottom { display:flex; align-items:center; justify-content:space-between; margin-top:9px; gap:8px; font-size:11px; color:#686861; }
#kcg-app .kw-planned-bottom button { display:grid; place-items:center; background:transparent; border:0; padding:5px; color:#686861; }
#kcg-app .kw-planned-done .kw-task-title { text-decoration:line-through; color:#77776c; }
#kcg-app .kw-day-card.drag-over { outline:2px solid #8caf52; outline-offset:2px; }
#kcg-app .kw-week-range { font-size:13px; font-weight:500; }
.kw-modal .kw-quick-input { min-height:190px; font-size:16px; line-height:1.9; }
.kw-modal .kw-draft-notice { background:#eef3e4; padding:13px; border-radius:5px; margin:0 0 18px; font-size:12px; line-height:1.6; }
.kw-modal .kw-draft-actions { display:flex; gap:8px; margin-top:10px; }
.kw-modal .kw-draft-status { color:#686861; font-size:11px; margin:12px 0; }
.kw-modal .kw-linked-actions { display:grid; gap:8px; margin-top:12px; }
@media(max-width:640px) { #kcg-app .kw-week-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } #kcg-app .kw-day-card { min-height:170px; } #kcg-app .kw-toolbar .kw-small-actions { flex-wrap:wrap; } }
@media(max-width:380px) { #kcg-app .kw-week-grid { grid-template-columns:1fr; } #kcg-app .kw-day-card { min-height:120px; } }
