.kcac-wrap{--kcac-gold:#c9951a;--kcac-ink:#1f1f1f;--kcac-soft:#fff8e7;--kcac-line:#ddd;max-width:900px;margin:0 auto;padding:26px 18px;color:var(--kcac-ink);font-size:16px;line-height:1.8}.kcac-wrap *{box-sizing:border-box}.kcac-hero{padding:22px 0 8px}.kcac-kicker{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#777;margin:0 0 6px}.kcac-hero h2{font-size:30px;line-height:1.35;margin:0 0 14px}.kcac-lead{font-size:18px;margin:0 0 12px}.kcac-safety{padding:13px 15px;border-left:4px solid var(--kcac-gold);background:#fafafa;margin:16px 0}.kcac-window-card{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border:1px solid var(--kcac-line);border-radius:14px;padding:16px;background:#fff}.kcac-window-card div{display:grid;gap:2px}.kcac-window-card span{font-size:13px;color:#666}.kcac-window-card strong{font-size:16px}.kcac-section{margin:24px 0;padding:20px;border:1px solid var(--kcac-line);border-radius:14px;background:#fff}.kcac-section h3{font-size:21px;margin:0 0 8px}.kcac-section-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}

.kcac-axis-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:16px}.kcac-axis-tabs button{min-height:88px;padding:11px;border:1px solid #cfcfcf;border-radius:11px;background:#fff;text-align:left;cursor:pointer;display:grid;align-content:start;gap:3px}.kcac-axis-tabs button strong{font-size:15px}.kcac-axis-tabs button span{font-size:12px;line-height:1.5;color:#666}.kcac-axis-tabs button.is-active{border:2px solid var(--kcac-gold);background:var(--kcac-soft);box-shadow:0 2px 10px rgba(0,0,0,.05)}.kcac-axis-tabs button:disabled{opacity:.65;cursor:wait}

.kcac-calendar-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:16px 0}.kcac-start-button{min-height:48px;padding:11px 18px;border:0;border-radius:9px;background:var(--kcac-ink);color:#fff;font-size:16px;font-weight:800;cursor:pointer}.kcac-start-button:disabled{opacity:.62;cursor:default}.kcac-view-switch{display:flex;flex-wrap:wrap;gap:7px}.kcac-view-switch button{min-height:42px;padding:8px 12px;border:1px solid #bbb;border-radius:8px;background:#fff;font-weight:700;cursor:pointer}.kcac-view-switch button.is-active{background:var(--kcac-ink);color:#fff;border-color:var(--kcac-ink)}.kcac-view-switch button:disabled{opacity:.45;cursor:default}.kcac-runtime-status{margin:14px 0;padding:12px 14px;border-radius:9px;background:#f6f6f6;border:1px solid #e2e2e2;font-weight:700}.kcac-runtime-status.is-running{background:var(--kcac-soft);border-color:#e5cf92}.kcac-runtime-status.is-complete{background:#f6faf7;border-color:#b9d0be}.kcac-runtime-status.is-error{background:#fff5f5;border-color:#d9aaaa}.kcac-progress{height:10px;background:#eee;border-radius:99px;overflow:hidden;margin:10px 0 16px}.kcac-progress-bar{height:100%;width:0;background:var(--kcac-gold);transition:width .2s ease}

.kcac-state-legend{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0 10px}.kcac-state-legend span{display:grid;gap:2px;padding:10px 11px;border:1px solid #ddd;border-radius:9px;background:#fafafa}.kcac-state-legend strong{font-size:15px}.kcac-state-legend small{font-size:12px;line-height:1.5;color:#555}.kcac-state-legend .is-action-focus{border-color:#c9951a;background:#fff8e7}.kcac-state-legend .is-move-checks{border-color:#9f8750;background:#fffaf0}.kcac-state-legend .is-prepare{border-color:#9bb1c2;background:#f6fafc}.kcac-state-legend .is-careful{border-color:#c7a0a0;background:#fff7f7}.kcac-state-legend .is-neutral{border-color:#ccc;background:#f7f7f7}.kcac-chronological-note{font-size:14px;color:#666;margin:8px 0 18px}.kcac-empty{padding:18px;text-align:center;background:#fafafa;border-radius:10px;color:#666}.kcac-result-month{margin:22px 0}.kcac-result-month h4{font-size:20px;margin:0 0 10px;padding-bottom:7px;border-bottom:2px solid #eee}.kcac-day-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kcac-day-card{border:1px solid #ddd;border-left:4px solid #bbb;border-radius:10px;background:#fff;overflow:hidden}.kcac-day-card.is-action-focus{border-left-color:#c9951a;background:#fffdf7}.kcac-day-card.is-move-checks{border-left-color:#9f8750}.kcac-day-card.is-prepare{border-left-color:#829fb2}.kcac-day-card.is-careful{border-left-color:#b98282}.kcac-day-card.is-neutral{border-left-color:#aaa}.kcac-day-summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 14px;min-height:64px;list-style:none}.kcac-day-summary::-webkit-details-marker{display:none}.kcac-day-summary::after{content:'＋';font-size:20px;font-weight:800;color:#777}.kcac-day-card[open] .kcac-day-summary::after{content:'−'}.kcac-day-date{display:grid;gap:1px}.kcac-day-date strong{font-size:15px}.kcac-day-date small{font-size:12px;color:#666}.kcac-day-state{font-size:13px;font-weight:800;white-space:nowrap;padding:5px 8px;border-radius:999px;background:#f1f1f1}.kcac-day-body{padding:0 14px 14px;border-top:1px solid #eee}.kcac-day-body p{margin:10px 0}.kcac-day-headline{font-size:16px;font-weight:800}.kcac-day-reality{padding:10px 12px;background:#f8f8f8;border-radius:8px}.kcac-day-note{font-size:13px;color:#666}

.kcac-drill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.kcac-drill-grid article{padding:14px;border:1px solid #ddd;border-radius:10px;display:grid;gap:4px}.kcac-drill-grid strong{font-size:17px}.kcac-drill-grid span{font-size:14px;color:#555}.kcac-details{margin:24px 0;border:1px solid #ddd;border-radius:12px;background:#fff}.kcac-details summary{cursor:pointer;font-weight:800;font-size:17px;padding:15px 17px;min-height:48px}.kcac-details div{padding:0 17px 16px}.kcac-details summary:focus-visible,.kcac-view-switch button:focus-visible,.kcac-axis-tabs button:focus-visible,.kcac-start-button:focus-visible,.kcac-day-summary:focus-visible{outline:3px solid currentColor;outline-offset:3px}

@media(max-width:800px){.kcac-axis-tabs{grid-template-columns:1fr 1fr}.kcac-axis-tabs button:last-child{grid-column:1/-1}.kcac-state-legend{grid-template-columns:1fr 1fr}.kcac-state-legend span:last-child{grid-column:1/-1}}
@media(max-width:720px){.kcac-wrap{padding:18px 12px}.kcac-hero h2{font-size:26px}.kcac-window-card,.kcac-drill-grid,.kcac-day-grid{grid-template-columns:1fr}.kcac-section-head{display:grid}.kcac-calendar-controls{display:grid}.kcac-view-switch{width:100%}.kcac-view-switch button{flex:1}.kcac-start-button{width:100%}.kcac-section{padding:16px}.kcac-day-summary{align-items:flex-start}}


/* Stage 7 — public calendar usability and operational readiness; no calculation or semantic change */
.kcac-selected-context{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:8px 12px;margin:18px 0;padding:13px 16px;border:1px solid #e1d3a6;border-radius:12px;background:linear-gradient(180deg,#fffdf7,#fff9e9)}
.kcac-selected-context-label{font-size:13px;color:#6d6250;font-weight:700}.kcac-selected-context strong{font-size:17px}.kcac-selected-context>span:nth-of-type(2){font-size:14px;color:#555}.kcac-selected-context small{font-size:13px;color:#555;white-space:nowrap}
.kcac-horizon-control-wrap{display:grid;gap:5px}.kcac-control-label{font-size:13px;font-weight:800;color:#555}.kcac-control-help{font-size:12px;line-height:1.5;color:#666}
.kcac-month-nav{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0 18px;padding:11px 12px;border:1px solid #ddd;border-radius:10px;background:#fafafa}.kcac-month-nav-label{font-size:13px;font-weight:800;color:#555;margin-right:2px}.kcac-month-nav-link{display:inline-flex;align-items:center;min-height:38px;padding:7px 10px;border:1px solid #c7c7c7;border-radius:8px;background:#fff;text-decoration:none;color:inherit;font-size:14px;font-weight:700}.kcac-month-nav-link:hover{border-color:var(--kcac-gold);background:var(--kcac-soft)}.kcac-month-nav-link:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.kcac-result-month{scroll-margin-top:18px}.kcac-result-month:focus{outline:none}.kcac-runtime-status{min-height:50px;display:flex;align-items:center}.kcac-progress-bar{min-width:2px}
@media(max-width:800px){.kcac-selected-context{grid-template-columns:1fr 1fr}.kcac-selected-context>span:nth-of-type(2){grid-column:1/-1}.kcac-selected-context small{white-space:normal}}
@media(max-width:720px){.kcac-selected-context{grid-template-columns:1fr;gap:4px}.kcac-selected-context>span:nth-of-type(2){grid-column:auto}.kcac-month-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.kcac-month-nav-label{position:sticky;left:0;background:#fafafa;padding-right:6px;z-index:1;white-space:nowrap}.kcac-month-nav-link{white-space:nowrap;flex:0 0 auto}.kcac-horizon-control-wrap{width:100%}}

/* Stage 8 — progressive recovery and completion */
.kcac-recovery-help{display:block;margin-top:6px;font-size:14px;line-height:1.7;color:#5b554b}.kcac-runtime-status.is-error{border-color:#c98f8f;background:#fff6f6}.kcac-runtime-status.is-complete{border-color:#bfa96c;background:#fffdf5}
