.planner .month-strip{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-2);margin-bottom:var(--space-9);padding-bottom:var(--space-6);border-bottom:1px solid var(--hairline)}.planner .strip-cell{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3) 0;text-decoration:none;border-radius:var(--radius-sm);border-top:2px solid transparent}.planner a.strip-cell:hover{background:var(--surface-2)}.planner a.strip-cell:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.planner .strip-cell.is-current{border-top-color:var(--accent)}.planner .strip-label{font-size:var(--text-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink)}.planner .strip-cell.is-empty .strip-label{color:var(--ink-2);opacity:.5}.planner .strip-count{font-size:var(--text-sm);color:var(--accent);font-weight:var(--weight-medium);min-height:1em}.planner .planner-empty{color:var(--ink-2);padding:var(--space-9) 0}.planner .break-row{border-bottom:1px solid var(--hairline);scroll-margin-top:var(--space-9)}.planner .break-row>summary{list-style:none;cursor:pointer;padding:var(--space-6) var(--space-2)}.planner .break-row>summary::-webkit-details-marker{display:none}.planner .break-row>summary:hover{background:var(--surface-2)}.planner .break-row>summary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.planner .row-summary{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:var(--space-6);align-items:baseline}.planner .row-date{font-size:var(--text-base);color:var(--ink-2);white-space:nowrap}.planner .row-main{display:flex;align-items:baseline;gap:var(--space-4);flex-wrap:wrap;min-width:0}.planner .row-title{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--ink)}.planner .row-days{font-size:var(--text-sm);color:var(--ink-2);white-space:nowrap}.planner .row-badge{font-size:var(--text-sm);white-space:nowrap;justify-self:end}.planner .badge-leave{padding:2px 10px;border-radius:var(--radius-full);background:var(--range-bg);color:var(--accent-muted);font-weight:var(--weight-medium)}.planner .badge-free{color:var(--ink-2)}.planner .row-body{padding:0 var(--space-2) var(--space-8)}.planner .row-note{margin:var(--space-5) 0 0;font-size:var(--text-base);color:var(--ink-2)}.planner .row-tentative{color:var(--status-pending)}.planner .row-link{display:inline-block;margin-top:var(--space-5);font-size:var(--text-base);color:var(--accent);text-decoration:none}.planner .row-link:hover{color:var(--accent-muted);text-decoration:underline}.planner .row-link:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.planner .break-row.is-next{border:1px solid var(--control-border);border-radius:var(--radius-lg);background:var(--surface-3);margin-bottom:var(--space-9)}.planner .break-row.is-next>summary{padding:var(--space-8)}.planner .break-row.is-next>summary:hover{background:transparent}.planner .break-row.is-next .row-body{padding:0 var(--space-8) var(--space-8)}.planner .break-row.is-next .row-title{font-size:var(--text-xl)}.planner .row-eyebrow{display:block;margin-bottom:var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--accent)}.planner .day-strip{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.planner .day-chip{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:56px;padding:var(--space-4) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--hairline);background:var(--bg)}.planner .chip-dow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-2)}.planner .chip-num{font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--ink);white-space:nowrap}.planner .chip-kind{font-size:var(--text-xs);color:var(--ink-2)}.planner .day-chip.is-weekend{background:var(--surface-2)}.planner .day-chip.is-holiday{background:var(--holiday-bg);border-color:var(--holiday-bg)}.planner .day-chip.is-holiday .chip-dow,.planner .day-chip.is-holiday .chip-num,.planner .day-chip.is-holiday .chip-kind{color:var(--holiday-text)}.planner .day-chip.is-leave{background:var(--range-bg);border-color:var(--accent)}.planner .day-chip.is-leave .chip-dow,.planner .day-chip.is-leave .chip-kind{color:var(--accent-muted)}.planner .day-chip.is-leave .chip-kind:after{content:" ★"}.planner .past-breaks{margin-top:var(--space-10)}.planner .past-breaks>summary{list-style:none;cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--ink-2);padding:var(--space-5) var(--space-2);border-bottom:1px solid var(--hairline)}.planner .past-breaks>summary::-webkit-details-marker{display:none}.planner .past-breaks>summary:hover{color:var(--ink)}.planner .past-breaks>summary:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}.planner .past-count{color:var(--accent)}.planner .break-row.is-past .row-title{color:var(--ink-2)}@media(max-width:768px){.planner .month-strip{gap:0}.planner .row-summary{grid-template-columns:minmax(0,1fr) auto;row-gap:var(--space-2)}.planner .row-date{grid-column:1;grid-row:2;font-size:var(--text-sm)}.planner .row-main{grid-column:1;grid-row:1}.planner .row-badge{grid-column:2;grid-row:1 / span 2;align-self:center}.planner .break-row.is-next>summary{padding:var(--space-6)}.planner .break-row.is-next .row-body{padding:0 var(--space-6) var(--space-6)}.planner .day-chip{min-width:44px}}
