.planning-board{flex-direction:column;gap:12px;min-width:0;display:flex}.planning-board.is-embedded{gap:10px}.planning-week-title{align-items:center;gap:10px;margin:0;font-size:15px;font-weight:750;display:flex}.planning-week-nav,.planning-toolbar,.planning-copy{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.planning-toolbar{justify-content:space-between}.planning-save-status{border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);background:var(--danger-soft);color:var(--danger);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:650;display:flex}.planning-save-status p{flex:220px;margin:0}.planning-save-status .btn{flex:none}.planning-copy select{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:36px;padding:0 10px;font-size:13px;font-weight:650}.planning-unassigned{color:var(--ink-soft);margin:0;font-size:13px}.planning-wrap{background:#fff;border:1px solid #8eaa98;border-radius:12px;min-width:0;overflow-x:auto}table.planning-table{border-collapse:collapse;table-layout:fixed;background:#fff;width:100%;min-width:860px;display:table}table.planning-table thead{display:table-header-group}table.planning-table tbody{display:table-row-group}table.planning-table tr{display:table-row}table.planning-table th,table.planning-table td{vertical-align:top;border:1px solid #8eaa98;width:auto;display:table-cell}table.planning-table thead th{color:#f4fff8;text-align:center;background:#0c8f5a;border-color:#087a4c;padding:8px 8px 9px;font-size:13px;font-weight:750}table.planning-table thead th small{opacity:.9;margin-top:2px;font-size:12px;font-weight:600;display:block}table.planning-table .planning-col-line,table.planning-table .planning-corner{width:100px}table.planning-table .planning-corner{background:#0c8f5a;border-color:#087a4c}table.planning-table tbody th{width:100px;color:var(--accent-deep);text-align:center;vertical-align:middle;background:#c8ebd9;padding:10px 8px;font-size:13px;font-weight:750}table.planning-table td{background:#fff;padding:8px 8px 6px}table.planning-table td.is-closed,table.planning-table td.is-closed .planning-cell{color:var(--ink-faint);background:#e4ebe6}.planning-cell{min-height:84px}.planning-closed-label{text-align:center;margin:10px 0 0;font-weight:750}.planning-shift-head{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.planning-cell-tools{flex:none;align-items:center;gap:4px;display:flex}.planning-mode,.planning-add{height:24px;min-height:24px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:6px;padding:0 4px;font-size:11px;font-weight:650}.planning-mode:hover,.planning-add:hover{border-color:var(--line);background:var(--bg-warm)}.planning-mode{max-width:92px}.planning-add{text-align:center;width:28px;color:var(--accent-deep);cursor:pointer;font-size:16px;line-height:1}.planning-shift+.planning-shift{border-top:1px dashed #8eaa98;margin-top:8px;padding-top:8px}.planning-shift-head strong{letter-spacing:-.02em;font-size:14px;font-weight:750}.planning-times{align-items:center;gap:4px;display:flex}.planning-times input{border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;min-height:24px;padding:0 4px;font-size:12px}.planning-copy-day{color:#f4fff8;cursor:pointer;background:#ffffff24;border:1px solid #fff6;border-radius:999px;margin-top:6px;padding:2px 8px;font-size:11px;font-weight:650;display:inline-block}.planning-copy-day:hover{background:#ffffff3d}.planning-people{flex-wrap:wrap;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.planning-people li{min-width:0;display:flex}.planning-chip{color:#10261c;white-space:nowrap;background:#e7ecea;border-radius:999px;align-items:center;gap:4px;max-width:100%;padding:2px 6px 2px 8px;font-size:12px;font-weight:700;display:inline-flex}.planning-chip .planning-x{opacity:.7;margin-left:0}.planning-chip .planning-x:hover{opacity:1}.planning-chip .planning-warn{margin-left:1px}.planning-empty{color:var(--ink-faint);margin:6px 0 0;font-size:15px;font-weight:700}.planning-people li.is-conflict .planning-chip{box-shadow:inset 0 0 0 1px var(--danger)}.planning-warn{color:var(--danger);font-weight:800}.planning-x,.planning-step{cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px;line-height:1}.planning-shift-foot{justify-content:space-between;align-items:center;gap:4px;margin-top:6px;display:flex}.planning-interim,.planning-interim-read{color:var(--ink-soft);border-radius:8px;align-items:center;gap:2px;margin:0;padding:1px 4px;font-size:11px;display:flex}.planning-interim.is-on,.planning-interim-read.is-on{background:var(--sky-soft);color:#124a96;font-weight:750}.planning-headcount{color:var(--ink-soft);align-items:center;gap:4px;margin:6px 0 0;font-size:13px;font-weight:750;display:flex}.planning-headcount svg{flex:none}.planning-interim-recap{background:#fff;border:1px solid #8eaa98;border-radius:12px;padding:12px 14px 14px}.planning-interim-recap h2{margin:0 0 4px;font-size:14px;font-weight:750}.planning-interim-recap-lead{color:var(--ink-soft);margin:0 0 10px;font-size:12px}.planning-interim-empty{color:var(--ink-faint)}.planning-interim-slots{flex-direction:column;align-items:stretch;gap:6px;display:flex}.planning-interim-slot{background:color-mix(in srgb, var(--accent-soft) 35%, #fff);border-radius:8px;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;padding:5px 6px;line-height:1.2;display:flex}.planning-interim-slot.is-custom{background:color-mix(in srgb, var(--gold-soft) 55%, #fff)}.planning-interim-slot-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);text-align:center;flex:0 0 100%;font-size:10px;font-weight:750}.planning-interim-count{background:var(--accent-deep);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.4rem;height:1.4rem;padding:0 4px;font-size:12px;font-weight:750;display:inline-flex}.planning-interim-hours{color:var(--ink-soft);white-space:nowrap;font-size:12px;font-weight:650}.planning-interim-times{align-items:center;gap:2px;min-width:0;display:inline-flex}.planning-interim-sep{color:var(--ink-faint);padding:0 1px;font-size:11px}.planning-interim-time{border:0;border-bottom:1px solid color-mix(in srgb, var(--ink) 18%, transparent);width:5.6rem;min-height:26px;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:0 2px;font-size:12px;font-weight:650}.planning-interim-time:focus{border-bottom-color:var(--accent);outline:none}.planning-interim-reset{color:var(--ink-faint);font:inherit;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:10px;font-weight:700}.planning-interim-reset:hover{color:var(--accent-deep)}.planning-interim-recap table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.planning-interim-recap th,.planning-interim-recap td{border-bottom:1px solid var(--line);text-align:center;padding:6px 8px}.planning-interim-recap th:first-child,.planning-interim-recap td:first-child{text-align:left;font-weight:750}.planning-interim-recap tbody tr:last-child th,.planning-interim-recap tbody tr:last-child td{border-bottom:0;font-weight:750}.planning-link{color:var(--ink-faint);cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-size:11px;font-weight:650}.planning-cell.is-closed .planning-mode{border-color:var(--line);background:#fff;max-width:100%}.planning-cell>.planning-link{margin-top:6px;display:block}.planning-info-row td{vertical-align:middle;background:#f3f8f5}.planning-info-row p{margin:0;font-size:13px}.planning-info-row textarea{border:1px solid var(--line);resize:vertical;background:#fff;border-radius:8px;width:100%;min-height:44px;padding:8px 10px;font-size:13px;line-height:1.4;display:block}.planning-tv-root,.planning-tv{height:100%;min-height:100dvh;color:var(--ink);background:#f3f7f4}.planning-tv-root{overflow:hidden}.planning-tv{box-sizing:border-box;flex-direction:column;padding:clamp(12px,2vh,24px) clamp(16px,2vw,28px) clamp(14px,2vh,24px);display:flex}.planning-tv-head{flex:none;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:clamp(8px,1.4vh,16px);display:flex}.planning-tv-head p{text-transform:uppercase;letter-spacing:.12em;color:var(--accent-deep);margin:0;font-size:clamp(11px,1.5vh,14px);font-weight:700}.planning-tv-head h1{margin:0;font-size:clamp(22px,3.4vh,40px)}.planning-tv-head .planning-tv-badge{color:inherit;letter-spacing:-.03em;text-transform:none;margin:6px 0 0;font-size:clamp(22px,3.8vh,44px);font-weight:800;line-height:1.1}.planning-tv-head .planning-tv-badge.is-current{color:#0c8f5a}.planning-tv-head .planning-tv-badge.is-next{color:#c63b32}.planning-tv.is-current-week{box-shadow:inset 0 10px #0c8f5a}.planning-tv.is-next-week{box-shadow:inset 0 10px #c63b32}.planning-tv .planning-wrap{border-radius:14px;flex:auto;min-height:0;display:flex}.planning-tv .planning-table{width:100%;min-width:0;height:100%}.planning-tv .planning-table thead th{vertical-align:middle;height:clamp(44px,7vh,72px);font-size:clamp(14px,2.1vh,22px)}.planning-tv .planning-table tbody th{font-size:clamp(14px,2.2vh,22px)}.planning-tv .planning-table tbody tr:not(.planning-info-row){height:46%}.planning-tv .planning-info-row{height:8%}.planning-tv .planning-table td{vertical-align:top;height:1px;padding:clamp(10px,1.6vh,18px) clamp(8px,1vw,14px);font-size:clamp(16px,2.2vh,24px)}.planning-tv-cell{flex-direction:column;justify-content:space-evenly;gap:clamp(8px,1.6vh,20px);height:100%;min-height:100%;display:flex}.planning-tv td.is-closed .planning-tv-cell{justify-content:center;align-items:center}.planning-tv .planning-closed-label{margin:0;font-size:clamp(18px,2.6vh,30px)}.planning-tv .planning-shift+.planning-shift{margin-top:0}.planning-tv .planning-people li,.planning-tv .planning-shift-head strong,.planning-tv .planning-shift strong{font-size:clamp(16px,2.3vh,24px)}.planning-tv .planning-chip{padding:6px 12px;font-size:clamp(15px,2vh,22px)}.planning-tv .planning-headcount{font-size:clamp(16px,2.2vh,24px)}.planning-tv .planning-info-row p{font-size:clamp(14px,2vh,20px)}.planning-tv-denied{place-items:center;font-size:22px;display:grid}
