.planner-shell{width:min(1450px,calc(100% - 72px));margin:auto}.planner-page .masthead{height:auto;min-height:95px;gap:22px;flex-wrap:wrap;padding:20px 0}.planner-page .back-link{font-size:14px}.planner-intro{margin:35px 0 24px}.planner-intro h1{font-size:clamp(34px,4vw,52px)}.planner-intro>p:last-child{font-size:15px;line-height:1.7;color:var(--muted)}.planner-controls{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-end;padding:20px;background:var(--white);border:1px solid var(--line);border-radius:16px}.planner-controls label{display:grid;gap:8px;font-size:13px;font-weight:650}.planner-controls :is(input,select,button){font:inherit;min-height:46px;border:1px solid #9bac8c;border-radius:9px;padding:10px 14px;background:#f7f8ee;color:#293c29}.planner-controls input{width:110px}.planner-controls button{cursor:pointer;font-size:14px}.planner-controls .print-button{background:#e8d69e;border-color:#a78b42;font-weight:650;margin-left:auto}.planner-message{font-size:13px;line-height:1.7;color:var(--muted);margin:15px 0}.planner-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.planner-totals>div{padding:19px;border:1px solid var(--line);border-radius:13px;background:var(--white)}.planner-totals span{font-size:12px;display:block;line-height:1.6}.planner-totals strong{font-size:29px;display:block;margin-top:7px}.planner-key{display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:12px;line-height:1.8;margin:20px 0}.planner-key>span{padding:4px 9px;border-radius:5px}.key-holiday{background:#f3ddcf;color:#793c26}.key-weekend{background:#e1e6da;color:#44543d}.planner-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.planner-month{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--white);min-width:0;break-inside:avoid}.planner-month h2{font:600 21px/1.3 Georgia,serif;text-transform:capitalize;margin:0;padding:15px 17px;background:#e5eadb;color:#30432b;display:flex;justify-content:space-between;gap:10px;align-items:center}.planner-month h2 span{font:400 11px/1.5 'Segoe UI',sans-serif}.planner-month table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;text-align:center}.planner-month th{font-weight:650;font-size:11px;padding:10px 1px}.planner-month td{height:34px;border-top:1px solid #dce3d4;padding:2px 1px;position:relative}.planner-month th:first-child{width:10%}.planner-month th:last-child{width:13%}.planner-week{background:#eef1e6;color:#617452}.planner-work{background:#f1f3e9;font-size:11px}.planner-month .is-weekend{background:#e7ebdf;color:#68775a}.planner-month .is-holiday{background:#f7e2d7;color:#813c25;font-weight:750}.planner-month .is-today{box-shadow:inset 0 0 0 2px #987b30}.planner-month td button{font:inherit;color:inherit;background:transparent;border:0;padding:4px 0;width:100%;cursor:pointer}.planner-month sup{font-size:7px;position:absolute;top:3px}.month-total{display:flex;align-items:center;justify-content:space-between;gap:5px;flex-wrap:wrap;font-size:12px;padding:11px 13px;border-top:1px solid var(--line);line-height:1.5}.month-total small{width:100%;font-size:10px;color:var(--muted)}.planner-print-note,.planner-notes p{font-size:13px;line-height:1.8;color:var(--muted);text-wrap:pretty;margin:18px 0;max-width:100ch}.planner-notes{margin:28px 0}.planner-notes h2{font-size:22px}.planner-holiday-details{margin-top:25px;border:1px solid var(--line);border-radius:13px;padding:16px 20px;background:var(--white)}.planner-holiday-details summary{font-weight:650;cursor:pointer;font-size:16px;line-height:1.6}.planner-holiday-details article{display:grid;grid-template-columns:100px 1fr 240px;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.7}.planner-holiday-details p{font-size:12px;line-height:1.8;margin-top:15px}.print-title,.print-footer{display:none}html[data-theme=dark] :is(.planner-controls,.planner-totals>div,.planner-month,.planner-holiday-details){background:#1a2d21;border-color:#4c6246}html[data-theme=dark] .planner-controls :is(input,select,button){background:#203828;color:#e8eddf}html[data-theme=dark] .planner-controls .print-button{background:#e8d69e;color:#302a17}html[data-theme=dark] .planner-month h2{background:#2b4230;color:#e7eddd}html[data-theme=dark] .planner-week,html[data-theme=dark] .planner-work{background:#233a2b;color:#c2d2b6}html[data-theme=dark] .planner-month td{border-color:#3c513b}html[data-theme=dark] .planner-month .is-weekend{background:#344533;color:#b8c5ae}html[data-theme=dark] .planner-month .is-holiday{background:#5b3e30;color:#ffe0cd}
@media(max-width:1150px){.planner-months{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.planner-shell{width:calc(100% - 30px)}.planner-months{grid-template-columns:1fr}.planner-totals{grid-template-columns:1fr 1fr}.planner-totals>div{padding:14px}.planner-totals strong{font-size:25px}.planner-controls{padding:16px;gap:12px}.planner-controls .print-button{margin:0;width:100%}.planner-holiday-details article{grid-template-columns:1fr;gap:5px}.planner-intro{margin-top:25px}.planner-month table{font-size:14px}.planner-month td{height:38px}}
.planner-page .skip-link{position:absolute;top:-100px;left:15px;padding:12px;background:#f3e4b9;color:#253922;z-index:100}.planner-page .skip-link:focus{top:10px}
@page{size:A4 landscape;margin:8mm}
@media print{html,body,.planner-page{background:white!important;color:black!important;font-family:Arial,sans-serif!important;margin:0!important}.planner-shell{width:100%!important;margin:0}.planner-page :is(.masthead,.skip-link,.planner-intro,.planner-controls,.planner-message,.planner-holiday-details,.planner-notes,.planner-print-note){display:none!important}.print-title{display:block;font-weight:700;font-size:14pt;margin:0 0 2mm}.planner-totals{display:flex;gap:6mm;margin:0 0 2mm}.planner-totals>div{padding:0;border:0!important;background:white!important;display:flex;gap:2mm;align-items:baseline}.planner-totals span{font-size:7pt}.planner-totals strong{font-size:10pt;margin:0}.planner-key{gap:3mm;font-size:7pt;margin:0 0 2mm}.planner-key>span{padding:0}.planner-months{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2mm}.planner-month{border:1px solid #89917f!important;border-radius:0;background:white!important;height:36.5mm;overflow:hidden}.planner-month h2{padding:1mm 2mm!important;font-size:10pt!important;line-height:1.2!important;background:#eee!important;color:black!important}.planner-month h2 span{font-size:6pt}.planner-month table{font-size:8pt;line-height:1.1}.planner-month th{font-size:6pt;padding:.7mm 0}.planner-month td{height:3.5mm;padding:0;border-color:#ccc!important;color:black!important}.planner-month td button{padding:0}.planner-month sup{font-size:5pt;top:0}.planner-month :is(.planner-week,.planner-work){background:#f1f1f1!important;color:black!important;font-size:6pt}.planner-month .is-weekend{background:#eee!important;color:black!important}.planner-month .is-holiday{background:#f3d8cd!important;color:black!important;font-weight:bold}.planner-month .is-today{box-shadow:none}.month-total{padding:.5mm 2mm;font-size:6pt;line-height:1.1;border-color:#ccc!important}.month-total small{font-size:5.5pt;width:auto;color:black!important}.print-footer{display:block;font-size:6pt;line-height:1.3;margin:2mm 0 0}.planner-page *{print-color-adjust:exact;-webkit-print-color-adjust:exact}.planner-month a{text-decoration:none}}
