@font-face{font-family:Inter;src:url('/assets/fonts/Inter-Regular.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--yellow:#fdb913;--green:#006a44;--red:#c1272d;--bg:#f4f6f4;--surface:#fff;--surface2:#f8faf8;--ink:#20322a;--muted:#59685f;--border:#dce4de;--accent:#e8f3ed;--shadow:0 2px 6px #173b2210;color-scheme:light;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.55;background:var(--bg);color:var(--ink)}
:root[data-theme=dark]{--bg:#111a17;--surface:#19251f;--surface2:#203027;--ink:#eef5f0;--muted:#b0c3b6;--border:#3b5143;--accent:#254a36;--green:#65d5a2;--red:#ff969a;color-scheme:dark}
*{box-sizing:border-box}body{margin:0}a{color:var(--green);text-underline-offset:3px}button,input,select,textarea{font:inherit}button,.button{cursor:pointer;border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:.55rem .8rem;color:var(--ink);min-height:40px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}button:hover,.button:hover{background:var(--accent);border-color:var(--green)}button[aria-pressed=true],.primary{background:var(--green);color:var(--surface);border-color:var(--green)}[data-theme=dark] .primary,[data-theme=dark] button[aria-pressed=true]{color:#102318}button:disabled{opacity:.55;cursor:not-allowed}input,select,textarea{max-width:100%;min-height:42px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--ink);padding:.6rem}input[type=checkbox]{min-height:22px;width:18px;accent-color:var(--green)}textarea{width:100%;resize:vertical}label{display:grid;gap:.3rem;color:var(--muted);font-weight:500;font-size:.9rem}label.check{display:flex;align-items:center;gap:.55rem;min-height:38px}h1,h2,h3,p{margin-top:0}h1{font-size:2.25rem;letter-spacing:-.05em;line-height:1.2}h2{font-size:1.22rem;letter-spacing:-.025em}h3{font-size:1.05rem}p:last-child{margin-bottom:0}small,.muted{color:var(--muted)}:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.skip{position:absolute;left:1rem;top:-100px;z-index:20;background:var(--surface);padding:1rem}.skip:focus{top:1rem}.site-header{min-height:86px;background:var(--surface);border-top:3px solid var(--green);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:2rem;padding:1rem 2.2rem}.brand{display:flex;gap:.7rem;align-items:center;color:var(--ink);text-decoration:none;font-weight:750;font-size:1.35rem;white-space:nowrap;line-height:1.2}.brand small{display:block;font-weight:500;font-size:.53rem;letter-spacing:.18em;margin-top:.4rem}.brand-number{color:var(--green)}.brand-symbol{height:40px;width:36px;display:grid;place-content:center;font-size:19px;border:2px solid var(--green);border-top:7px solid var(--green);border-radius:5px;position:relative}.brand-symbol span{font-size:7px;color:var(--red)}.site-header nav{display:flex;gap:1.5rem;margin:auto;flex-wrap:wrap}.site-header nav a{font-size:.9rem;text-decoration:none;color:var(--muted);font-weight:600}.site-header nav a:hover{color:var(--green)}#theme{min-width:40px;font-size:20px}.dashboard-main{max-width:1800px;margin:auto;padding:1.6rem 2rem 2rem}.page-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem}.page-line h1{font-size:1.55rem;margin-bottom:.2rem}.eyebrow{color:var(--green);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700}.dashboard{display:grid;grid-template-columns:minmax(205px,20fr) minmax(0,55fr) minmax(260px,25fr);gap:1.25rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:11px;box-shadow:var(--shadow);padding:1.25rem;margin-bottom:1rem}.panel:last-child{margin-bottom:0}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.8rem}.panel-title h2{font-size:.95rem;margin:0}.clock-card{border-top:3px solid var(--green)}#clock{font-size:clamp(1.8rem,2.7vw,3rem);font-weight:650;letter-spacing:-.06em;font-variant-numeric:tabular-nums;line-height:1.3;margin:.5rem 0}.clock-date{font-size:.9rem;color:var(--muted)}.settings-small{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.75rem;border-top:1px solid var(--border);padding-top:.6rem}.settings-small label{font-size:.75rem}#weather-temp{font-size:2.3rem;letter-spacing:-.05em;font-weight:650}.weather-top{display:flex;justify-content:space-between;align-items:center}.weather-top select{max-width:125px;font-size:.8rem}.weather-description{font-size:.85rem}.weather-credit{font-size:.7rem;margin-top:.7rem}.holiday-list{list-style:none;padding:0;margin:0}.holiday-list li{display:flex;gap:.7rem;padding:.8rem 0;border-top:1px solid var(--border);font-size:.82rem}.holiday-date{min-width:42px;color:var(--red);font-weight:650}.holiday-list small{display:block}.filter-list{display:grid;gap:.2rem}.filter-list label{font-size:.83rem}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--green);flex-shrink:0}.cat1{background:#336cb2}.cat2{background:#8b62ad}.cat3{background:#c1272d}.cat4{background:#af741c}.cat5{background:#9a436c}.cat6{background:#65786a}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1rem}.stat{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.7rem 1rem;display:flex;align-items:center;gap:.75rem}.stat b{font-size:1.55rem;color:var(--green);letter-spacing:-.04em}.stat span{font-size:.75rem;color:var(--muted)}.calendar-panel{padding:0;overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;padding:1.2rem 1.25rem .8rem}.calendar-toolbar h2{font-size:1.5rem;margin:0;text-transform:capitalize}.toolbar-group{display:flex;align-items:center;gap:.35rem}.calendar-nav button{padding:.4rem .7rem}.calendar-options{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:0 1.25rem 1rem;flex-wrap:wrap}.segmented{display:flex;gap:.2rem;border-radius:7px;background:var(--surface2);padding:3px}.segmented button{font-size:.77rem;border-color:transparent;padding:.3rem .55rem;min-height:34px;background:transparent}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--green);box-shadow:var(--shadow);border-color:var(--border)}#search{width:190px;min-height:36px;font-size:.8rem}table{border-collapse:collapse;width:100%}th{text-align:left;font-size:.8rem;color:var(--muted);font-weight:600}td,th{padding:.65rem;border-bottom:1px solid var(--border)}.month-table{table-layout:fixed}.month-table thead th{text-align:center;background:var(--surface2);font-size:.78rem;padding:.65rem .1rem;border-top:1px solid var(--border)}.month-table th.week-number{width:24px;font-size:.6rem}.month-table tbody td{padding:0;border-right:1px solid var(--border);vertical-align:top;height:104px}.month-table tbody th{font-size:.6rem;padding:7px 2px;text-align:center;vertical-align:top;color:var(--muted);background:var(--surface2)}.day-cell{border:0;border-radius:0;width:100%;height:100%;min-height:103px;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;gap:4px;padding:7px 5px;background:transparent;position:relative;overflow:hidden;text-align:left}.day-cell:hover{background:var(--accent)}.day-cell[aria-pressed=true]{background:var(--accent);color:var(--ink);box-shadow:inset 0 0 0 2px var(--green)}.day-number{font-size:.9rem;min-width:25px;min-height:25px;display:grid;place-items:center;border-radius:50%;font-weight:600}.today .day-number{background:var(--green);color:var(--surface)}.other-month{opacity:.38}.weekend .day-number{color:var(--muted)}.holiday .day-number{color:var(--red)}.holiday-label{color:var(--red);font-size:.58rem;line-height:1.3;font-weight:550;overflow-wrap:anywhere}.event-chip{display:block;width:100%;background:var(--accent);border-left:2px solid var(--green);font-size:.63rem;line-height:1.3;padding:2px 3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-legend{display:flex;gap:1rem;padding:.7rem 1.2rem;font-size:.72rem;color:var(--muted)}.calendar-links{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}.calendar-links a{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;text-decoration:none}.calendar-links small{display:block}.detail-head{display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--border);padding-bottom:1rem;margin-bottom:1rem}.date-big{font-size:3rem;line-height:1;color:var(--green);letter-spacing:-.06em}.detail-head h2{font-size:1.05rem;margin:0}.detail-head small{font-size:.77rem}.empty-state{padding:1rem 0;color:var(--muted);font-size:.82rem}.agenda-entry{border-left:3px solid var(--green);background:var(--surface2);padding:.65rem;margin-bottom:.5rem;display:flex;align-items:center;justify-content:space-between;gap:.4rem}.agenda-entry button{padding:.2rem .4rem;min-height:32px;font-size:.75rem}.agenda-entry strong{display:block;font-size:.85rem}.agenda-entry small{font-size:.72rem}.full-width{width:100%}.note-label{margin:.8rem 0 .4rem}.task-entry{display:flex;align-items:center;gap:.4rem;padding:.5rem 0;border-bottom:1px solid var(--border);font-size:.8rem}.task-entry label{font-size:.8rem;flex:1;color:var(--ink);overflow-wrap:anywhere}.task-entry button{font-size:.7rem;min-height:30px;padding:.2rem .3rem}.task-entry.done label{text-decoration:line-through;color:var(--muted)}#task-form{display:flex;gap:.3rem;margin-top:.7rem}#task-title{width:100%;min-width:0;font-size:.8rem}#task-filter{font-size:.75rem;width:100%;margin-bottom:.4rem}.mini-calendar .month-table th,.mini-calendar .month-table td{border:0;padding:0;height:auto;background:none}.mini-calendar .month-table .day-cell{padding:0;min-height:30px;align-items:center;justify-content:center;font-size:.73rem}.mini-calendar .month-table .day-number{font-size:.72rem;min-width:24px;min-height:24px}.mini-calendar .month-table th.week-number,.mini-calendar .month-table tbody th{display:none}.mini-calendar .day-cell[aria-pressed=true]{border-radius:50%;box-shadow:none;background:var(--green);color:var(--surface)}.mini-calendar .day-cell[aria-pressed=true] .day-number{color:inherit}.mini-calendar .panel-title{font-size:.8rem}.mini-calendar .toolbar-group button{min-height:28px;padding:.1rem .5rem}.right-column details>summary{display:none}.right-column details[open]>summary{display:none}dialog{max-width:560px;width:calc(100% - 2rem);background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:14px;padding:1.5rem;box-shadow:0 20px 90px #0003}dialog::backdrop{background:#0d241d88;backdrop-filter:blur(3px)}dialog form{display:grid;gap:.9rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap;margin-top:.5rem}.danger{color:var(--red)}.notice{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);max-width:min(90vw,650px);background:var(--ink);color:var(--surface);border-radius:8px;box-shadow:0 4px 20px #0003;padding:1rem 1.5rem;z-index:100;font-size:.9rem}.content-main{max-width:1220px;margin:0 auto;padding:1.7rem 2rem 3rem}.breadcrumbs{display:flex;gap:.7rem;font-size:.78rem;align-items:center;flex-wrap:wrap;margin-bottom:2rem;color:var(--muted)}.page-intro{max-width:750px;font-size:1.05rem;color:var(--muted);margin-bottom:2rem}.page-heading{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1.5rem}.page-heading h1{margin-bottom:.65rem}.badge{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:5px;background:var(--accent);color:var(--green);font-size:.73rem;font-weight:650}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0}.resource-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:1.3rem;text-decoration:none;color:var(--ink)}.resource-card h2{margin-bottom:.6rem}.resource-card small{display:block}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.8rem;margin:2rem 0}.design-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;scroll-margin-top:1rem}.preview-link{display:flex;align-items:center;justify-content:center;background:#e9ede8;padding:1.5rem;height:340px}.preview-link img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 4px 15px #18271d25}.design-info{padding:1.2rem}.design-info h2{font-size:1.1rem;display:flex;gap:.7rem;align-items:center}.design-number{font-size:.75rem;color:var(--muted);font-variant-numeric:tabular-nums}.design-actions{display:flex;gap:.4rem;flex-wrap:wrap}.design-actions a{font-size:.8rem}.table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:8px;background:var(--surface);margin:1.5rem 0}.data-table td{font-size:.85rem}.data-table th{background:var(--surface2);white-space:nowrap}.data-table tfoot{font-weight:650;background:var(--accent)}.source-note{font-size:.8rem;color:var(--muted);border-left:3px solid var(--yellow);padding:.8rem 1rem;background:var(--surface);margin:1rem 0}.year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.year-month{background:var(--surface);padding:1rem;border:1px solid var(--border);border-radius:8px}.year-month h2{font-size:1rem}.static-month{table-layout:fixed}.static-month td,.static-month th{text-align:center;font-size:.75rem;padding:.4rem .15rem}.static-month th:first-child{width:24px;font-size:.6rem}.static-month .holiday{color:var(--red);font-weight:700}.static-month td a{color:inherit;text-decoration:none}.month-overview{max-width:780px;margin:2rem 0}.month-overview .static-month td{height:48px;font-size:1rem}.adjacent{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:2rem 0}.site-footer{border-top:1px solid var(--border);padding:2rem;background:var(--surface);color:var(--muted);font-size:.8rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.site-footer p{margin:.4rem 0 0}.site-footer>p{grid-column:1/-1;font-size:.72rem}.tool-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.5rem;align-items:start}.tool-controls{display:grid;gap:.85rem}.tool-preview{background:white;color:#20322a;min-width:0;padding:1.5rem;border:1px solid var(--border);border-radius:8px;overflow:auto}.tool-preview svg{display:block;width:100%;height:auto}.calculator{max-width:700px}.calculator form{display:grid;gap:1rem}.result{margin:1rem 0;padding:1.25rem;background:var(--accent);border-left:4px solid var(--green)}.list-view{padding:1rem}.list-view h3{margin:1rem 0 .5rem}.list-view .date-link{padding:1rem;display:block;border-bottom:1px solid var(--border);text-decoration:none}.search-results{padding:1rem;background:var(--surface2);border-bottom:1px solid var(--border)}.search-results button{display:block;margin-bottom:.4rem;width:100%;justify-content:flex-start}.large-text{font-size:17px}.high-contrast{--muted:var(--ink);--border:var(--ink)}[hidden]{display:none!important}
@media(min-width:1600px){.month-table tbody td{height:120px}.day-cell{min-height:119px}.holiday-label{font-size:.65rem}.event-chip{font-size:.7rem}}
@media(max-width:1250px){.site-header{gap:1rem;padding:1rem 1.3rem}.site-header nav{gap:.8rem}.dashboard-main{padding:1.2rem}.dashboard{grid-template-columns:220px minmax(0,1fr)}.right-column{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.left-column{grid-row:1/3}.right-column .panel{margin:0}.center-column{grid-column:2;grid-row:1}.right-column .detail-panel{grid-column:1/-1}.right-column details{display:contents}.calendar-toolbar h2{font-size:1.35rem}.holiday-label{font-size:.58rem}.resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.site-header{flex-wrap:wrap;gap:.7rem}.site-header nav{order:3;width:100%;margin:0;overflow-x:auto;flex-wrap:nowrap;gap:1.1rem;padding:.4rem 0 .15rem}.site-header nav a{white-space:nowrap;font-size:.8rem}#theme{margin-left:auto}.dashboard{grid-template-columns:1fr;gap:1rem}.center-column{grid-row:1;grid-column:1}.left-column{grid-row:3;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.left-column .panel{margin:0}.right-column{grid-row:2;grid-column:1;display:block}.right-column .panel{margin-bottom:1rem}.right-column details{display:block}.right-column details>summary,.right-column details[open]>summary{display:block;font-size:1rem;font-weight:650;cursor:pointer;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);margin-bottom:.8rem;list-style:revert}.mini-calendar{display:none}.content-main{padding:1.2rem}.year-grid{grid-template-columns:repeat(2,1fr)}.tool-layout{grid-template-columns:1fr}.tool-controls{grid-template-columns:1fr 1fr}.tool-controls .form-actions{grid-column:1/-1}.site-footer{grid-template-columns:1fr}.site-footer>p{grid-column:1}.preview-link{height:290px}.gallery{gap:1rem}.page-line small{font-size:.7rem}.page-line .button{font-size:.75rem}.calendar-panel .month-table tbody td{height:88px}.calendar-panel .day-cell{min-height:87px}}
@media(max-width:520px){:root{font-size:14px}.site-header{padding:.8rem 1rem}.brand{font-size:1.2rem}.brand-symbol{width:31px;height:35px}.dashboard-main{padding:1rem .65rem}.page-line{padding:0 .3rem;align-items:start}.page-line h1{font-size:1.3rem}.page-line p{font-size:.75rem;max-width:220px}.page-line .button{max-width:110px;text-align:center;padding:.4rem}.stats{gap:.4rem}.stat{padding:.55rem;gap:.4rem}.stat b{font-size:1.25rem}.stat span{font-size:.65rem}.calendar-toolbar{padding:.8rem .65rem;gap:.5rem}.calendar-toolbar h2{font-size:1.15rem}.calendar-options{padding:0 .55rem .7rem;gap:.5rem}.segmented{width:100%;justify-content:space-between}.segmented button{font-size:.75rem;flex:1;padding:.3rem .1rem}#search{width:100%}.calendar-nav button{min-height:40px;padding:.35rem .6rem}.month-table th.week-number{width:19px}.calendar-panel .month-table tbody td{height:76px}.calendar-panel .day-cell{min-height:75px;padding:4px 2px;gap:2px}.day-number{font-size:.82rem;min-width:24px;min-height:24px}.holiday-label{font-size:.48rem;line-height:1.2}.event-chip{font-size:.5rem;padding:1px}.calendar-legend{gap:.6rem;font-size:.65rem;padding:.6rem}.calendar-links{gap:.5rem}.calendar-links a{padding:.8rem;font-size:.85rem}.calendar-links small{font-size:.65rem}.left-column{grid-template-columns:1fr 1fr;gap:.7rem}.left-column .panel{padding:.9rem}.left-column .filter-panel{grid-column:1/-1}.filter-list{grid-template-columns:1fr 1fr}#clock{font-size:1.9rem}.weather-top{align-items:start;flex-direction:column;gap:.4rem}.weather-top select{max-width:100%;width:100%}.holiday-list li{font-size:.7rem}.left-column .holidays-panel{grid-column:1/-1}.gallery,.resource-grid,.year-grid{grid-template-columns:1fr}.preview-link{height:360px}.page-heading{display:block}h1{font-size:1.9rem}.page-intro{font-size:.95rem}.form-row{gap:.5rem}.form-row input{min-width:0;width:100%}.tool-controls{grid-template-columns:1fr}.tool-preview{padding:.5rem}.data-table td,.data-table th{font-size:.75rem;padding:.65rem .5rem}.notice{width:90%;font-size:.8rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.site-header,.site-footer,.left-column,.right-column,.page-line,.stats,.calendar-options,.calendar-nav,.calendar-links,.breadcrumbs,.design-actions,.tool-controls,.notice,.skip{display:none!important}:root{color-scheme:light;--surface:white;--ink:black;--muted:#333;--border:#aaa;--green:#006a44;--red:#9b1c22;--accent:#e8f3ed}body{background:white}.dashboard-main,.content-main{padding:0;max-width:none}.dashboard{display:block}.panel{box-shadow:none;border-radius:0}.calendar-panel .month-table tbody td{height:110px}.calendar-panel .day-cell{min-height:109px}.year-grid{grid-template-columns:repeat(3,1fr)}.tool-layout{display:block}.tool-preview{border:0;padding:0;overflow:visible}.gallery{display:none}a{color:inherit;text-decoration:none}@page{size:A4 landscape;margin:12mm}}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.year-jump{display:flex;align-items:center;gap:.35rem;font-size:.75rem}.year-jump input{width:80px;min-height:36px;padding:.3rem}.utility-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0}.utility-actions button{font-size:.75rem}.month-facts{margin-top:1rem}.quick-links{font-size:.8rem;margin-top:1rem}.year-app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding:1rem}.year-app-grid .mini-calendar{display:block;padding:.5rem;border:1px solid var(--border);border-radius:5px}.year-app-grid h3{font-size:.8rem}.right-column .detail-head .toolbar-group{margin-left:auto}.right-column .detail-head button{padding:.3rem;min-width:28px}.month-facts ul{padding-left:1.2rem}.month-facts li{font-size:.85rem;margin:.5rem 0}@media(min-width:1251px) and (max-width:1400px){.dashboard{grid-template-columns:minmax(195px,20fr) minmax(0,55fr) minmax(255px,25fr)}.dashboard-main{padding:1.2rem}.site-header nav{gap:.8rem}.calendar-toolbar h2{font-size:1.25rem}.panel{padding:1rem}.calendar-panel{padding:0}.right-column .detail-head{gap:.5rem}.date-big{font-size:2.5rem}}@media(max-width:520px){.year-app-grid{grid-template-columns:repeat(2,1fr);padding:.5rem}.year-app-grid .day-cell{min-height:25px}.year-jump{display:none}}
/* Monthly collection: navigation rail, dominant artwork, precise download panel. */
.content-main:has(.print-layout){max-width:1700px;padding:1.2rem 1.5rem 3rem}.print-layout{display:grid;grid-template-columns:195px minmax(0,1fr) 290px;gap:1.5rem;align-items:start}.month-sidebar{grid-column:1;grid-row:1/5;position:sticky;top:1rem;padding:1rem}.month-sidebar h2{font-size:1rem}.month-sidebar nav{display:grid;gap:.15rem;margin:1rem 0}.month-sidebar a{display:block;padding:.5rem .4rem;text-decoration:none;font-size:.85rem}.month-sidebar a[aria-current=page]{background:var(--accent);border-right:3px solid var(--green);font-weight:700;border-radius:4px}.month-sidebar hr{border:0;border-top:1px solid var(--border)}.month-heading{grid-column:2/4}.month-heading .page-heading{margin-bottom:.7rem}.month-heading .page-intro{margin-bottom:.8rem;font-size:.95rem}.month-heading h1{font-size:2.1rem}.month-stats{display:flex;gap:.6rem;flex-wrap:wrap}.month-stats .badge{padding:.6rem .8rem;background:var(--surface);border:1px solid var(--border);color:var(--ink);font-weight:500}.large-preview{grid-column:2;padding:1rem;text-align:center}.large-preview .panel-title{text-align:left}.large-preview a{display:block;background:#edf0ec;padding:1rem}.large-preview img{display:block;max-width:100%;width:auto;height:490px;object-fit:contain;margin:auto;box-shadow:0 3px 12px #172d2220}.download-panel{grid-column:3;display:grid;gap:.8rem;padding:1.2rem}.download-panel h2{font-size:1rem;margin:0}.download-panel p,.download-panel small{font-size:.8rem}.monthly-collection{grid-column:2/4;min-width:0}.compact-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;margin-top:1rem}.compact-gallery .preview-link{height:145px;padding:.6rem}.compact-gallery .design-info{padding:.6rem}.compact-gallery .design-info h2{font-size:.8rem;line-height:1.3;min-height:32px;gap:.4rem;margin-bottom:.4rem}.compact-gallery .design-info p{font-size:.7rem;line-height:1.4;min-height:54px;color:var(--muted)}.compact-gallery .design-actions{gap:.25rem}.compact-gallery .design-actions a{font-size:.64rem;min-height:32px;padding:.25rem .35rem}.design-filters{justify-content:flex-start;flex-wrap:wrap;width:fit-content}.design-filters button{min-height:38px}.header-search{position:relative;min-width:180px;max-width:240px;flex:1}.header-search input{width:100%;font-size:.8rem;min-height:38px}.header-search-results{position:absolute;right:0;top:100%;min-width:300px;max-width:90vw;padding:.5rem;border:1px solid var(--border);border-radius:7px;background:var(--surface);z-index:40;box-shadow:0 8px 30px #0002}.header-search-results a{display:block;padding:.5rem;font-size:.8rem}.header-search-results small{display:block;padding:.5rem}@media(max-width:1400px){.print-layout{grid-template-columns:170px minmax(0,1fr) 245px;gap:1rem}.compact-gallery{grid-template-columns:repeat(4,1fr)}.site-header{gap:1rem}.header-search{max-width:190px;min-width:140px}.site-header nav{gap:.9rem}.month-heading h1{font-size:1.9rem}}
@media(max-width:1100px){.print-layout{grid-template-columns:minmax(0,1fr) 260px}.month-sidebar{display:none}.month-heading{grid-column:1/3}.large-preview{grid-column:1}.download-panel{grid-column:2}.monthly-collection{grid-column:1/3}.header-search{max-width:180px}.site-header nav{gap:.7rem}.site-header .brand{font-size:1.2rem}.compact-gallery{grid-template-columns:repeat(4,1fr)}}
@media(max-width:850px){.header-search{margin-left:auto;max-width:230px}.site-header nav{justify-content:space-between}.print-layout{gap:1rem}.compact-gallery{grid-template-columns:repeat(3,1fr)}.large-preview img{height:400px}.month-heading h1{font-size:1.8rem}.month-heading .page-heading{display:block}.month-heading .toolbar-group{margin-bottom:.8rem}}
@media(max-width:600px){.content-main:has(.print-layout){padding:1rem .8rem}.print-layout{display:flex;flex-direction:column}.month-heading,.large-preview,.download-panel,.monthly-collection{width:100%}.large-preview{margin-bottom:0}.download-panel{grid-template-columns:1fr 1fr}.download-panel h2,.download-panel label,.download-panel p,.download-panel small{grid-column:1/-1}.download-panel #selected-print{grid-column:1/-1}.compact-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.compact-gallery .preview-link{height:150px}.compact-gallery .design-actions a{font-size:.7rem;min-height:40px}.design-filters{gap:.2rem}.design-filters button{font-size:.7rem;padding:.4rem .5rem;flex:none}.month-stats{gap:.4rem}.month-stats .badge{padding:.5rem;font-size:.7rem}.header-search{display:none}.large-preview img{height:390px}.month-heading h1{font-size:1.7rem}.large-preview a{padding:.5rem}.large-preview .panel-title{font-size:.7rem;align-items:start}.large-preview .panel-title h2{font-size:.9rem}}
@media print{.month-sidebar,.download-panel,.monthly-collection,.month-heading,.header-search{display:none!important}.print-layout{display:block}.large-preview img{height:90vh;box-shadow:none}.large-preview{border:0}.large-preview .panel-title{display:none}.large-preview a{padding:0;background:white}}
.flag-mark{display:block;width:25px;height:20px;border-radius:4px;background:linear-gradient(to bottom,var(--yellow) 0 33.33%,#006A44 33.33% 66.66%,#C1272D 66.66%);flex-shrink:0}.brand small{display:none}.brand{font-size:1.6rem;letter-spacing:-.05em}.site-header{min-height:68px;padding:.8rem 1.3rem}.page-line{margin-bottom:.8rem}.dashboard-main>.page-line{height:0;overflow:hidden;margin:0}.dashboard-main>.page-line h1{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.dashboard-main{padding:1rem}.panel{border-radius:8px;box-shadow:none}.clock-card{padding:1rem}.clock-card .settings-small{border:0;padding-top:0;margin-top:.4rem}.clock-card .settings-small label{min-height:22px}.holiday-select{border:0;padding:0;min-height:0;background:none;text-align:left;font-size:inherit;color:var(--ink);display:block;justify-content:start;line-height:1.45}.holiday-select:hover{background:none;text-decoration:underline}.holiday-list li{padding:.65rem 0}.holiday-list li:first-child{border-top:0}.stats{grid-template-columns:repeat(4,1fr)}.stat{padding:.7rem;gap:.6rem}.stat b{font-size:1.5rem}.stat span{font-size:.7rem}.calendar-toolbar{padding:1rem 1rem .6rem}.calendar-options{padding:0 1rem .8rem}.right-column .detail-head{gap:.7rem}.clock-card #clock{margin:.25rem 0}.clock-card #clock-date{font-weight:650;color:var(--ink)}
@media(max-width:850px){.left-column{display:contents}.clock-card{grid-row:1;display:grid;grid-template-columns:1fr auto;margin:0}.clock-card #clock{grid-column:2;grid-row:1/4;font-size:2.1rem;align-self:center}.clock-card #clock-zone{font-size:.72rem}.clock-card .settings-small{display:none}.center-column{grid-row:2}.right-column{grid-row:3}.left-column .weather-panel{grid-row:4}.left-column .holidays-panel{grid-row:5}.left-column .filter-panel{grid-row:6}.mini-calendar{display:none}.dashboard{gap:.8rem}.stats{gap:.4rem}.stat{padding:.6rem;gap:.4rem}.stat b{font-size:1.3rem}.stat span{font-size:.65rem}.site-header{min-height:60px}.month-table tbody td{height:96px}.day-cell{min-height:95px}}
@media(max-width:520px){.brand{font-size:1.3rem}.stats{grid-template-columns:repeat(4,1fr)}.stat{flex-direction:column;align-items:start;gap:.1rem;padding:.5rem}.stat span{font-size:.6rem}.stat b{font-size:1.15rem}.clock-card{padding:.75rem 1rem}.clock-card .eyebrow{font-size:.65rem}.clock-card #clock{font-size:1.85rem}.calendar-toolbar h2{font-size:1.1rem}.right-column details>summary{min-height:44px}.left-column .filter-panel .filter-list{grid-template-columns:1fr 1fr}.left-column .weather-panel{padding:1rem}.weather-top{flex-direction:row}.left-column .weather-panel .weather-top select{width:auto}.day-cell .holiday-label{font-size:.5rem;line-height:1.3}.calendar-panel .month-table tbody td{height:83px}.calendar-panel .day-cell{min-height:82px}}
#nav-toggle{display:none}@media(max-width:600px){#nav-toggle{display:inline-flex;margin-left:auto;order:2;min-width:40px}#theme{margin-left:0;order:3}.site-header nav{display:none;order:4;white-space:normal}.site-header nav.nav-open{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:.3rem}.site-header nav a{padding:.6rem;min-height:44px}.day-cell .holiday-label{font-size:0}.day-cell .holiday-label:after{content:'◆';font-size:10px}}@media(min-width:761px) and (max-width:850px){.dashboard{grid-template-columns:185px minmax(0,1fr)}.left-column{display:block;grid-column:1;grid-row:1/3}.clock-card{display:block}.clock-card #clock{font-size:1.9rem}.center-column{grid-column:2;grid-row:1}.right-column{grid-column:2;grid-row:2}.left-column .panel{margin-bottom:1rem}.mini-calendar{display:block}.right-column details{display:contents}}
.other-month{opacity:1;background:var(--surface2)}.other-month .day-number{color:var(--muted)}.content-main:has(.print-layout)>.breadcrumbs{margin-bottom:1rem}.large-preview img{height:390px}.compact-gallery .preview-link{height:120px}.compact-gallery .design-info p{min-height:0;font-size:.65rem;line-height:1.4;margin-bottom:.5rem}.compact-gallery .design-actions a:last-child{display:none}@media(max-width:600px){.large-preview img{height:370px}.compact-gallery .preview-link{height:145px}.compact-gallery .design-info p{font-size:.72rem}.compact-gallery .design-actions a:last-child{display:inline-flex}.compact-gallery .design-actions a{min-height:40px}}
:root{--bg:#f3f6f8;--ink:#172b25;--muted:#52655c;--border:#e0e7e4;--surface2:#f7f9f8;--radius:8px;--space:8px}.resource-shell{display:grid;grid-template-columns:minmax(0,1fr) 275px;gap:1.5rem;align-items:start}.content-main:has(.resource-shell){max-width:1580px}.resource-content{min-width:0}.resource-aside{position:sticky;top:1rem}.resource-aside .panel{margin-bottom:1rem}.resource-aside .download-panel{display:grid;gap:.8rem}.resource-aside .toolbar-group{display:grid;gap:.8rem}.resource-aside .calculator{padding:1.2rem}.resource-content>.calculator{max-width:none}.resource-content .annual-sheet{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.annual-sheet .year-month{border-radius:3px;padding:.6rem}.annual-sheet .year-month h2{font-size:.9rem;margin-bottom:.5rem}.annual-sheet .static-month td,.annual-sheet .static-month th{font-size:.65rem;padding:.35rem .1rem}.resource-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1rem 0}.resource-stats>div{border:1px solid var(--border);background:var(--surface);border-radius:7px;padding:.85rem 1rem}.resource-stats strong{font-size:1.7rem;display:block;color:var(--green);letter-spacing:-.04em}.resource-stats span{font-size:.75rem;color:var(--muted)}.quality-list{padding-left:1.2rem;font-size:.8rem}.quality-list li{margin:.5rem 0}.resource-aside .result{font-size:.85rem}.resource-aside h2{font-size:1.05rem}.resource-aside p{font-size:.85rem}.quick-countdowns{display:grid;gap:.5rem}#print-art{margin:1rem 0}#print-art summary{cursor:pointer;min-height:44px;padding:.6rem;background:var(--surface);border:1px solid var(--border);border-radius:7px}.resource-content .large-preview a{background:#edf1f2}.resource-content .compact-gallery .preview-link{height:110px}.resource-content .compact-gallery .design-info h2{font-size:.75rem}.resource-content .compact-gallery .design-actions{flex-wrap:wrap}.resource-content .compact-gallery .design-actions a{font-size:.6rem}.resource-content .compact-gallery{grid-template-columns:repeat(5,minmax(0,1fr))}.resource-content>.page-heading h1{font-size:2rem}.resource-content .page-intro{font-size:.95rem}.resource-content .large-preview img{height:390px}
@media(max-width:1100px){.resource-shell{grid-template-columns:minmax(0,1fr) 235px;gap:1rem}.resource-content .annual-sheet{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-content .compact-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.resource-shell{display:flex;flex-direction:column}.resource-aside{position:static;width:100%;order:-1}.resource-aside:has(#design-picker){order:0}.resource-content{width:100%}.resource-aside .panel:not(:first-child){display:none}.resource-content .annual-sheet{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-content .compact-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-stats{gap:.4rem}.resource-stats>div{padding:.6rem}.resource-stats strong{font-size:1.3rem}.resource-stats span{font-size:.65rem}.resource-content .large-preview img{height:330px}.resource-content .compact-gallery .design-actions a{font-size:.72rem;min-height:40px}}@media print{.resource-aside{display:none}.resource-shell{display:block}.resource-content .annual-sheet{grid-template-columns:repeat(4,minmax(0,1fr))}.resource-stats{display:none}}
.download-panel label,.download-panel p,.download-panel small{min-width:0}.download-panel select{width:100%;min-width:0}.download-panel .badge{width:fit-content;max-width:100%;white-space:normal}.selected-design{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}.resource-aside .full-width{white-space:normal;text-align:center}.resource-aside .toolbar-group label{min-width:0}.resource-aside .toolbar-group select{width:100%;min-width:0}
.tool-layout:has(.builder-aside){grid-template-columns:210px minmax(0,1fr) 260px;gap:1.25rem}.content-main:has(.builder-aside){max-width:1600px}.builder-aside{position:sticky;top:1rem;display:grid;gap:.85rem}.builder-aside h2{font-size:1rem;margin:0}.builder-aside p{font-size:.8rem}.builder-aside .form-actions{display:grid;margin:0}.tool-layout:has(.builder-aside) .tool-controls{gap:.7rem;padding:1rem}.tool-layout:has(.builder-aside) .tool-controls label{font-size:.8rem}.tool-layout:has(.builder-aside) .tool-controls p{font-size:.72rem}.calculator-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1rem}.calculator-results>div{display:grid;gap:.25rem;text-align:center;padding:.8rem;border:1px solid var(--border);background:var(--surface);border-radius:6px}.calculator-results strong{font-size:2rem;color:var(--green)}.calculator-results span{font-size:.8rem;color:var(--muted)}@media(max-width:1150px){.tool-layout:has(.builder-aside){grid-template-columns:220px minmax(0,1fr)}.builder-aside{grid-column:2;position:static}}@media(max-width:760px){.tool-layout:has(.builder-aside){display:flex;flex-direction:column}.tool-layout:has(.builder-aside)>*{width:100%}.builder-aside{position:static}.tool-layout:has(.builder-aside) .tool-preview{order:-1}.calculator-results{gap:.4rem}.calculator-results strong{font-size:1.5rem}.calculator-results span{font-size:.7rem}}@media print{.builder-aside{display:none}.tool-layout:has(.builder-aside){display:block}}
:focus-visible{outline:3px solid var(--green);outline-offset:3px;box-shadow:0 0 0 5px var(--yellow)}
/* Reserve the application's final geometry before its data module loads. */
.dashboard-main{min-height:950px}#clock-date,#clock-weekday{min-height:1.55em}#stats{min-height:56px}#calendar{min-height:600px}#calendar>.month-table{height:600px}#calendar>.month-table tbody td{height:auto;position:relative}#calendar>.month-table .day-cell{position:absolute;inset:0;height:100%;min-height:0}#upcoming-holidays{min-height:230px}#weather-content{min-height:100px}.clock-card{min-height:174px}#day-agenda{min-height:90px}#mini{min-height:180px}.detail-head{min-height:75px}#selected-number{min-width:48px}#selected-title{min-height:1.55em}
@media(max-width:850px){.clock-card{min-height:80px}#calendar{min-height:530px}#calendar>.month-table{height:530px}#stats{min-height:65px}}@media(max-width:600px){#calendar{min-height:430px}#calendar>.month-table{height:430px}#stats{min-height:70px}#calendar>.month-table .day-cell{min-height:0}.clock-card{min-height:78px}}
.calendar-toolbar h2{text-transform:none}
.calendar-options .segmented{flex-wrap:wrap}.calendar-options .segmented button{flex:1 1 auto}
.agenda-entry>div{min-width:0}.agenda-entry strong,.agenda-entry p{overflow-wrap:anywhere}.agenda-entry small{display:block}
