@font-face{font-family:Lufga;src:url('assets/fonts/lufga-regular.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:Lufga;src:url('assets/fonts/lufga-medium.otf') format('opentype');font-weight:500;font-display:swap}
@font-face{font-family:Lufga;src:url('assets/fonts/lufga-semibold.otf') format('opentype');font-weight:600;font-display:swap}
@font-face{font-family:Lufga;src:url('assets/fonts/lufga-bold.otf') format('opentype');font-weight:700 800;font-display:swap}
@font-face{font-family:Lufga;src:url('assets/fonts/lufga-black.otf') format('opentype');font-weight:900;font-display:swap}
:root{--orange:#D97559;--orange-deep:#B85C42;--orange-soft:#F2B39A;--orange-ink:#A8472E;--lilac:#C7A5F3;--lilac-mid:#9B7BC7;--lilac-deep:#6B3FA0;--lilac-soft:#E4D4FA;--ink:#1E1B2E;--beige:#F5EFE8;--white:#FFFCF8;--ink-on-dark:#F3ECFB;--mist:#C8BFE0;--bg:#171421;--glass:rgba(255,252,248,.04);--glass-strong:rgba(255,252,248,.075);--line:rgba(228,212,250,.17);--paper-line:rgba(30,27,46,.16);--paper-muted:#615568;--focus:var(--orange-soft);--font:Lufga,ui-sans-serif,system-ui,sans-serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:10px;--radius:18px;--radius-lg:28px;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.5rem;--shadow:0 26px 60px -34px rgba(0,0,0,.7);--motion:180ms ease;--season-accent:var(--lilac);--season-wash:var(--lilac-soft)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink-on-dark);font-family:var(--font);font-size:var(--text-base);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button{color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button:active:not(:disabled),.button:active{transform:translateY(1px)}button,a,input,select,textarea{transition:background var(--motion),color var(--motion),border-color var(--motion),transform var(--motion)}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:4px}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.2}button svg,.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}button svg{pointer-events:none}.shell{max-width:1480px;padding:0 clamp(20px,4vw,64px);margin:auto;position:relative}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 12%,rgba(155,123,199,.13),transparent 48%),radial-gradient(ellipse at 8% 45%,rgba(217,117,89,.08),transparent 40%);background-color:var(--bg)}.ambient:after{content:'';position:absolute;inset:0;opacity:.18;background-image:radial-gradient(var(--mist) .5px,transparent .5px);background-size:24px 24px;mask-image:linear-gradient(to bottom,#000,transparent 65%)}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:20px;padding:12px 24px;background:var(--beige);color:var(--ink);z-index:100}.skip-link:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px 0;border-bottom:1px solid var(--line)}.brand{text-decoration:none;display:flex;align-items:center;gap:20px}.brand #brand-mark{font-size:32px;font-weight:800;letter-spacing:-2px;line-height:1}.brand-dot{color:var(--orange)}.brand img{width:210px;max-width:210px;height:44px;max-height:44px;object-fit:contain;background:var(--beige);padding:8px 12px;border-radius:8px}.brand-caption{font-size:var(--text-xs);color:var(--mist);max-width:100px;line-height:1.4;border-left:1px solid var(--line);padding-left:20px}.top-nav{display:flex;align-items:center;gap:24px}.nav-link,.text-button{border:0;background:none;min-height:44px;padding:8px 0;font-weight:500;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.nav-link{font-size:var(--text-sm);color:var(--mist);position:relative}.nav-link.active{color:var(--ink-on-dark)}.nav-link.active:after{content:'';position:absolute;height:2px;width:24px;bottom:0;background:var(--orange);left:0}.nav-link:hover,.text-button:hover{color:var(--orange-soft)}.itinerary-link{display:flex;align-items:center;gap:8px;padding:9px 16px;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--glass);font-size:var(--text-sm)}.itinerary-link:hover{background:var(--glass-strong)}.count-pill{border-radius:50%;min-width:23px;height:23px;display:inline-grid;place-items:center;background:var(--lilac);color:var(--ink);font-size:var(--text-xs);font-weight:700}.season-bar{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:24px;padding:24px 0}.small-label,.eyebrow{font-size:var(--text-xs);font-weight:700;letter-spacing:.13em}.small-label{color:var(--mist)}.eyebrow{color:var(--orange-soft);letter-spacing:.19em}.label-line{display:inline-block;width:24px;height:1px;background:var(--line);vertical-align:middle;margin-left:16px}.season-tabs{display:flex;align-items:center;gap:4px;background:var(--glass);border:1px solid var(--line);padding:5px;border-radius:14px}.season-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;min-height:44px;border:none;background:transparent;color:var(--mist);border-radius:10px;font-size:var(--text-sm);font-weight:500}.season-tabs button[aria-selected=true]{background:var(--lilac);color:var(--ink);box-shadow:0 4px 20px rgba(155,123,199,.15)}.season-tabs button:hover:not([aria-selected=true]){background:var(--glass-strong);color:var(--white)}.season-tabs .icon{width:17px;height:17px}.season-location{font-size:var(--text-xs);color:var(--mist)}.tiny-dot{display:inline-block;background:var(--orange);border-radius:50%;width:4px;height:4px;margin:0 6px;vertical-align:middle}.hero{display:grid;grid-template-columns:1fr 1.06fr;align-items:center;gap:64px;padding:48px 0 64px;min-height:580px}.hero-copy{max-width:600px;position:relative;z-index:1}.hero h1{font-size:clamp(3.1rem,1.6rem + 4.3vw,5.6rem);letter-spacing:-.055em;line-height:1.03;font-weight:700;margin:24px 0}.hero h1 span{color:var(--season-accent)}.hero-description{max-width:460px;font-size:var(--text-lg);color:var(--mist);line-height:1.7;margin-bottom:32px}.button{border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:var(--radius-sm);padding:14px 22px;min-height:48px;line-height:1.4;text-decoration:none;font-weight:700;font-size:var(--text-sm)}.button.primary{background:var(--orange-ink);color:var(--white);box-shadow:0 8px 24px rgba(168,71,46,.15)}.button.primary:hover{background:var(--orange-deep);transform:translateY(-2px)}.button.secondary{background:var(--ink);color:var(--white)}.button.secondary:hover{background:var(--lilac-deep)}.button.subtle{background:var(--glass);border-color:var(--line);color:var(--ink-on-dark)}.button.subtle:hover{background:var(--glass-strong)}.hero-note{display:flex;gap:8px;align-items:center;color:var(--mist);font-size:var(--text-xs);margin-top:16px}.mini-star{font-size:22px;color:var(--orange-soft)}.hero-edition{margin-top:40px;display:flex;align-items:center;gap:16px}.hero-edition>span{font-size:32px;font-weight:400;line-height:1;color:var(--lilac);border-right:1px solid var(--line);padding-right:16px}.hero-edition strong{font-size:var(--text-sm);font-weight:500;display:block}.hero-edition small{display:block;color:var(--mist);font-size:var(--text-xs);margin-top:4px}.hero-art{position:relative;min-width:0;padding:12px 4px 24px}.cover-frame{background:var(--beige);padding:12px 12px 0;transform:rotate(2deg);box-shadow:var(--shadow);border-radius:3px;overflow:hidden}.cover-frame>img{width:100%;aspect-ratio:1.18;height:auto;object-fit:cover;object-position:right center;background:var(--lilac-soft)}.cover-frame figcaption{display:flex;justify-content:space-between;gap:16px;padding:16px 4px 20px;color:var(--paper-muted);font-size:11px}.cover-frame figcaption span:first-child{font-weight:700;color:var(--ink);font-size:var(--text-sm)}.paper-tape{position:absolute;background:var(--orange-soft);opacity:.92;width:116px;height:34px;top:0;left:40%;transform:rotate(-5deg);z-index:2;clip-path:polygon(0 0,98% 3%,96% 22%,100% 40%,96% 65%,100% 90%,1% 100%,3% 70%,0 48%,4% 20%)}.season-stamp{position:absolute;right:-20px;top:-12px;border-radius:50%;width:116px;height:116px;background:var(--lilac);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);box-shadow:0 0 0 6px var(--bg);border:1px dashed var(--lilac-deep)}.season-stamp span{font-size:10px;letter-spacing:.04em}.season-stamp strong{font-size:19px;text-align:center;line-height:1.15;font-weight:700;margin:5px 0}.hero-sticker{position:absolute;bottom:-20px;left:-48px;width:160px;height:160px;object-fit:contain;transform:rotate(-11deg);filter:drop-shadow(0 8px 6px rgba(0,0,0,.2))}.chapter-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--line);margin:16px 0 64px}.chapter{display:flex;align-items:center;gap:16px;text-align:left;border:0;background:none;padding:28px 24px 28px 0;min-width:0}.chapter+.chapter{padding-left:24px;border-left:1px solid var(--line)}.chapter-number{color:var(--orange-soft);font-size:var(--text-xs);align-self:flex-start;padding-top:3px}.chapter .small-label{font-size:10px;letter-spacing:.12em;display:block}.chapter strong{display:block;font-size:17px;font-weight:500;line-height:1.4;margin-top:5px}.chapter-caption{display:block;font-size:var(--text-xs);color:var(--mist);margin-top:4px}.chapter>.icon{margin-left:auto;width:28px;height:28px;color:var(--lilac);flex-shrink:0}.chapter:hover{background:var(--glass)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 308px;gap:40px;align-items:start}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-heading h2{font-size:clamp(1.8rem,2.6vw,2.5rem);letter-spacing:-.035em;margin-top:12px}.section-heading .eyebrow{font-size:10px}.section-intro{color:var(--mist);font-size:var(--text-sm);margin:16px 0 24px;max-width:580px}.search-wrap{position:relative;display:flex;align-items:center;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 16px;gap:12px}.search-wrap>svg{color:var(--mist)}.search-wrap input{width:100%;min-height:50px;background:none;border:0;color:var(--ink-on-dark);font-size:var(--text-sm);padding:12px 0}.search-wrap input:focus{outline:none}.search-wrap:focus-within{outline:2px solid var(--focus);outline-offset:3px}.search-wrap kbd{font-family:inherit;color:var(--mist);border:1px solid var(--line);border-radius:4px;padding:0 7px}.filter-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:16px}.category-filters{display:flex;gap:4px;flex-wrap:wrap}.filter{padding:8px 14px;min-height:44px;border-radius:8px;border:1px solid transparent;background:none;color:var(--mist);font-size:var(--text-sm)}.filter.active{background:var(--lilac-soft);color:var(--ink);font-weight:700}.filter:hover:not(.active){background:var(--glass-strong)}.status-filter select{border:1px solid var(--line);border-radius:8px;background:var(--ink);color:var(--mist);font-size:var(--text-xs);padding:11px 28px 11px 12px;min-height:44px}.result-count{font-size:var(--text-xs);color:var(--mist);margin:20px 0 16px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.activity-card{background:var(--beige);color:var(--ink);border-radius:var(--radius);border:2px solid transparent;overflow:hidden;box-shadow:0 20px 40px -30px rgba(0,0,0,.7);--focus:var(--lilac-deep);position:relative}.activity-card.is-selected{border-color:var(--lilac)}.card-art{height:148px;position:relative;overflow:hidden;background:var(--lilac-soft);display:flex;align-items:center;justify-content:center}.activity-card[data-category=cook] .card-art{background:var(--orange-soft)}.activity-card[data-category=experience] .card-art{background:var(--beige)}.card-art:before{content:'';position:absolute;inset:0;opacity:.3;background-image:linear-gradient(var(--white) 1px,transparent 1px),linear-gradient(90deg,var(--white) 1px,transparent 1px);background-size:20px 20px}.card-art img{width:140px;height:140px;object-fit:contain;position:relative;transform:rotate(-5deg);filter:drop-shadow(0 8px 5px rgba(30,27,46,.13))}.card-art .art-icon{width:70px;height:70px;color:var(--lilac-deep)}.card-art .art-icon svg{width:100%;height:100%}.card-label{position:absolute;left:16px;top:16px;display:inline-flex;font-size:10px;letter-spacing:.08em;font-weight:700;line-height:1.4;background:var(--white);padding:7px 10px;border-radius:4px;color:var(--ink);box-shadow:0 3px 8px rgba(30,27,46,.05);transform:rotate(-3deg);max-width:70%}.favorite-button{position:absolute;right:12px;top:12px;background:var(--white)!important;color:var(--ink)!important;box-shadow:0 3px 8px rgba(30,27,46,.08)}.favorite-button[aria-pressed=true]{color:var(--orange-ink)!important}.favorite-button[aria-pressed=true] svg{fill:var(--orange-soft)}.card-content{padding:24px 24px 0}.card-subtitle{font-size:10px;color:var(--lilac-deep);letter-spacing:.09em;text-transform:uppercase;font-weight:700;margin-bottom:8px}.card-title{font-size:var(--text-xl);letter-spacing:-.025em;line-height:1.25}.card-description{font-size:var(--text-sm);color:var(--paper-muted);line-height:1.65;margin-top:12px}.card-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px;color:var(--paper-muted);font-size:var(--text-xs)}.card-meta span{display:inline-flex;align-items:center;gap:5px}.card-meta svg{width:14px;height:14px}.card-meta .budget{display:block;line-height:1.5}.details-button{margin:12px 0 8px;color:var(--lilac-deep);font-size:var(--text-sm);font-weight:700}.details-button:hover{color:var(--orange-ink)}.card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--paper-line);padding:12px 24px;background:rgba(255,252,248,.45)}.check-label{display:inline-flex;align-items:center;gap:9px;min-height:44px;cursor:pointer;font-weight:700;font-size:var(--text-sm)}input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--lilac-deep);cursor:pointer}.done-label{font-size:var(--text-xs);font-weight:400;color:var(--paper-muted)}.is-done .card-title:after{content:' ✓';color:var(--lilac-deep)}.schedule-form{background:var(--white);padding:20px 24px 24px;border-top:1px dashed var(--paper-line)}.schedule-form .form-two{gap:12px}.schedule-form label{font-size:var(--text-xs)}.schedule-form input,.schedule-form select,.schedule-form textarea{font-size:var(--text-base);padding:10px;min-width:0}.schedule-form .button{margin-top:16px;width:100%;font-size:var(--text-xs);padding:12px 10px}.schedule-status{font-size:var(--text-xs);color:var(--lilac-deep);margin-bottom:12px;font-weight:700}.schedule-helper{font-size:11px;color:var(--paper-muted);margin-top:12px;line-height:1.6}.schedule-error{color:var(--orange-ink);font-size:var(--text-xs);margin-top:12px}.imported-label{font-weight:400!important;display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;margin-top:12px!important;font-size:11px!important}.form-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}form label{display:flex;flex-direction:column;gap:8px;font-size:var(--text-sm);font-weight:500;margin-top:16px}input,select,textarea{border:1px solid var(--paper-line);border-radius:8px;background:var(--white);color:var(--ink);padding:12px;min-height:44px;max-width:100%}textarea{resize:vertical;min-height:80px}input::placeholder,textarea::placeholder{color:var(--paper-muted);opacity:.8}.source-note{font-size:var(--text-xs);color:var(--mist);border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.planner{position:static;top:24px;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);padding:24px;backdrop-filter:blur(12px);box-shadow:var(--shadow)}.planner-head .small-label{font-size:9px;letter-spacing:.13em}.planner-head h2{font-size:32px;letter-spacing:-.035em;margin:12px 0 8px}.planner-head h2 span{color:var(--orange-soft)}.planner-head p{color:var(--mist);font-size:var(--text-xs)}.progress-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0 16px}.progress-stats div{display:flex;flex-direction:column}.progress-stats strong{font-size:24px;color:var(--lilac);font-weight:500;text-shadow:0 0 24px rgba(199,165,243,.2)}.progress-stats span{font-size:10px;color:var(--mist)}.mini-chart{display:flex;height:6px;border-radius:5px;overflow:hidden;background:var(--glass-strong);gap:3px;margin-bottom:24px}.mini-chart span{background:var(--lilac);border-radius:4px}.mini-chart span:nth-child(2){background:var(--orange-soft)}.mini-chart span:nth-child(3){background:var(--lilac-mid)}.calendar-widget{padding:16px 0;border-block:1px solid var(--line)}.month-toolbar{display:flex;align-items:center;justify-content:space-between;gap:4px}.month-toolbar h3{font-size:var(--text-sm);font-weight:500;text-transform:capitalize}.icon-button{width:44px;height:44px;padding:10px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:50%;flex-shrink:0}.icon-button:hover{background:var(--glass-strong)}.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.weekdays span{text-align:center;font-size:10px;color:var(--mist);padding:8px 0}.calendar-days>span,.calendar-days>button{display:flex;align-items:center;justify-content:center;min-height:31px;font-size:11px;border-radius:8px;position:relative}.calendar-days .day{background:none;color:var(--mist);border:1px solid transparent}.calendar-days .today{border-color:var(--line);color:var(--white)}.calendar-days button.has-plan{background:var(--lilac);color:var(--ink);font-weight:700;border:none;cursor:pointer;min-height:44px}.calendar-caption{text-align:center;font-size:9px;letter-spacing:.03em;color:var(--mist);margin-top:12px}.planner-list-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:24px 0 12px}.planner-list-heading h3{font-size:var(--text-sm)}.planner-list-heading>span{font-size:10px;color:var(--mist)}.planner-empty{font-size:var(--text-xs);color:var(--mist);line-height:1.7;padding:16px;border:1px dashed var(--line);border-radius:12px}.plan-row{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.plan-index{font-size:10px;color:var(--orange-soft);padding-top:2px;flex-shrink:0}.plan-info{min-width:0;flex:1}.plan-info button{background:none;border:none;font-size:var(--text-xs);font-weight:500;text-align:left;line-height:1.5;padding:0;min-height:44px;color:var(--ink-on-dark)}.plan-info button:hover{color:var(--lilac)}.plan-date{font-size:10px;color:var(--mist);display:block}.plan-date.pending{color:var(--orange-soft)}.plan-status{font-size:9px;color:var(--lilac);display:block;margin-top:3px}.export-all{width:100%;margin-top:24px;font-size:var(--text-xs);padding:14px 8px}.export-help{font-size:10px;color:var(--mist);line-height:1.7;margin-top:12px}.calendar-help{margin-top:16px;font-size:11px;color:var(--mist)}.calendar-help summary{cursor:pointer;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.calendar-help ol{padding-left:18px}.calendar-help li{margin-bottom:8px}.calendar-help p{margin:12px 0}.calendar-help a{color:var(--lilac)}.planner-tools{display:flex;flex-wrap:wrap;gap:0 12px;border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.planner-tools .text-button{font-size:10px;color:var(--mist)}.planner-tools svg{width:14px;height:14px}.storage-note{font-size:9px;line-height:1.7;color:var(--mist);margin-top:8px}.notice{background:rgba(242,179,154,.08);color:var(--orange-soft);font-size:11px;line-height:1.7;padding:12px;border-radius:8px;margin-top:16px;border:1px solid rgba(242,179,154,.2)}.empty-state{text-align:center;background:var(--glass);border:1px dashed var(--line);border-radius:var(--radius);padding:48px 24px}.empty-state>svg{width:40px;height:40px;color:var(--lilac);margin-bottom:16px}.empty-state h3{font-size:var(--text-xl)}.empty-state p{color:var(--mist);font-size:var(--text-sm);margin:12px auto 24px;max-width:400px}.season-closing{text-align:center;padding:80px 0}.connector{width:1px;height:50px;background:linear-gradient(transparent,var(--lilac));margin:0 auto 32px}.season-closing .eyebrow{font-size:10px;margin-bottom:16px}.season-closing>p:not(.eyebrow){font-size:clamp(1.5rem,2.4vw,2rem);font-weight:500;letter-spacing:-.03em;line-height:1.4}.season-closing>p span{color:var(--lilac)}.season-closing .text-button{font-size:var(--text-sm);margin-top:24px;color:var(--mist)}.site-footer{border-top:1px solid var(--line);padding:32px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:var(--text-xs);color:var(--mist)}.site-footer>span{color:var(--ink-on-dark);font-weight:500}.footer-dot{color:var(--orange-soft);margin:0 5px}.site-footer .text-button{font-size:var(--text-xs)}dialog{border:0;border-radius:24px;background:var(--beige);color:var(--ink);width:min(760px,calc(100% - 32px));max-height:90dvh;padding:48px;box-shadow:0 32px 100px rgba(0,0,0,.45);--focus:var(--lilac-deep)}dialog::backdrop{background:rgba(16,12,25,.78);backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:12px;top:12px;z-index:2;background:var(--white)}.dialog-close:hover{background:var(--lilac-soft)}dialog .eyebrow{color:var(--orange-ink);font-size:10px}dialog h2{font-size:clamp(1.75rem,4vw,2.5rem);letter-spacing:-.035em;margin:12px 0 20px}dialog h3{font-size:var(--text-lg);margin:28px 0 12px}dialog p,dialog li{font-size:var(--text-base);color:var(--paper-muted)}dialog p+p{margin-top:12px}.detail-subtitle{font-weight:500;color:var(--lilac-deep)!important}.detail-reason{margin:24px 0;padding:20px;background:var(--lilac-soft);border-radius:12px}.detail-reason strong{font-size:var(--text-sm);display:block;color:var(--lilac-deep);margin-bottom:8px}.detail-reason p{font-size:var(--text-sm);color:var(--ink)}.detail-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-block:1px solid var(--paper-line);padding:24px 0;margin:24px 0}.detail-facts dt{font-size:10px;text-transform:uppercase;color:var(--lilac-deep);letter-spacing:.1em;font-weight:700}.detail-facts dd{font-size:var(--text-sm);line-height:1.6;margin:8px 0 0;color:var(--ink)}.detail-list{padding-left:22px}.detail-list li{margin:12px 0;padding-left:4px}.detail-sources{display:flex;flex-direction:column;gap:10px}.detail-sources a{color:var(--lilac-deep);font-size:var(--text-sm);overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center;gap:8px}.detail-bottom{display:flex;align-items:center;gap:16px;justify-content:space-between;border-top:1px solid var(--paper-line);padding-top:24px;margin-top:24px}.detail-bottom .button{font-size:var(--text-sm)}.detail-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tag{font-size:11px;background:var(--white);border:1px solid var(--paper-line);padding:5px 10px;border-radius:6px}.form-intro{font-size:var(--text-sm)}#idea-form>.button{margin-top:24px}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:16px 24px;border:1px solid var(--lilac-mid);border-radius:12px;background:var(--ink);color:var(--white);box-shadow:var(--shadow);z-index:200;font-size:var(--text-sm);text-align:center}.print-only{display:none}.atelier-heading{text-align:center;padding:72px 0 48px}.atelier-heading .eyebrow{font-size:11px}.atelier-title{font-size:clamp(3rem,5vw,5rem);font-weight:700;line-height:1.04;letter-spacing:-.05em;margin:24px 0}.atelier-title span{color:var(--lilac)}.atelier-heading>p:last-child{max-width:570px;margin:24px auto 0;color:var(--mist)}.atelier-instructions{display:flex;gap:24px;padding:24px 32px;background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);max-width:900px;margin:0 auto 48px}.atelier-instructions>svg{width:32px;height:32px;flex-shrink:0;color:var(--orange-soft)}.atelier-instructions p{font-size:var(--text-sm);color:var(--mist);margin-top:8px}.sticker-sheets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;max-width:1000px;margin:auto}.sticker-sheet{border:1px solid var(--line);border-radius:var(--radius);padding:24px;background:var(--glass)}.sticker-preview{background:var(--beige);border-radius:8px;overflow:hidden;aspect-ratio:210/297;position:relative}.sticker-preview img{width:100%;height:100%;object-fit:contain}.sheet-number{font-size:10px;letter-spacing:.14em;color:var(--orange-soft);display:block;margin-top:24px}.sticker-sheet h2{font-size:24px;margin:12px 0}.sticker-sheet p{color:var(--mist);font-size:var(--text-sm)}.sheet-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.sheet-links .button{font-size:var(--text-xs)}.atelier-footnote{font-size:var(--text-xs);color:var(--mist);max-width:760px;text-align:center;margin:40px auto 64px}.noscript{padding:24px;background:var(--beige);color:var(--ink)}body[data-season=summer]{--season-accent:var(--orange-soft);--season-wash:var(--orange-soft)}body[data-season=autumn]{--season-accent:var(--orange);--season-wash:var(--orange-soft)}body[data-season=winter]{--season-accent:var(--lilac-soft);--season-wash:var(--lilac-soft)}.reveal{animation:reveal .35s ease both}@keyframes reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(min-width:1450px){.content-layout{grid-template-columns:minmax(0,1fr) 328px;gap:48px}.cards{gap:32px}.card-art{height:170px}}
@media(max-width:1180px){.brand-caption,.season-location,.season-bar>.small-label{display:none}.season-bar{justify-content:center}.hero{gap:32px}.season-stamp{right:-8px;width:100px;height:100px}.hero-sticker{left:-28px;width:130px;height:130px}.hero h1{font-size:clamp(3.1rem,5.9vw,4.5rem)}.hero-description{font-size:var(--text-base)}.chapter strong{font-size:15px}.chapter>.icon{width:23px;height:23px}.content-layout{gap:24px;grid-template-columns:minmax(0,1fr) 285px}.planner{padding:20px}.card-content{padding:20px 20px 0}.card-actions{padding-inline:20px;flex-wrap:wrap}.schedule-form{padding:16px 20px 20px}.card-title{font-size:20px}.card-art{height:130px}.card-art img{width:120px;height:120px}.card-description{font-size:13px}.card-meta .budget{font-size:11px}.section-heading .button{padding:12px}.chapter .small-label{font-size:9px}.chapter{gap:12px}}
@media(max-width:950px){.content-layout{grid-template-columns:minmax(0,1fr)}.planner{position:static;max-width:none;margin-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:0 32px}.planner-head,.planner-list-heading,#planner-list,.export-all,.export-help,.calendar-help,.planner-tools,.storage-note,.notice{grid-column:2}.planner-head{grid-row:1}.planner-head h2{margin-top:8px}#planner-progress{grid-row:1;grid-column:1;align-self:end}.calendar-widget{grid-column:1;grid-row:2/7;align-self:start}.calendar-days>span{min-height:40px}.planner-list-heading{margin-top:16px}.chapter strong{font-size:14px}.chapter-caption{font-size:11px}.hero{padding-top:24px;min-height:0}.hero-edition{margin-top:24px}.hero h1{font-size:clamp(3rem,6.4vw,4rem)}.hero .eyebrow{font-size:10px}.card-art{height:170px}.card-art img{width:160px;height:160px}.card-title{font-size:var(--text-xl)}.card-description{font-size:var(--text-sm)}.card-meta .budget{font-size:var(--text-xs)}}
@media(max-width:700px){.site-header{padding:20px 0;align-items:flex-start;gap:12px;flex-wrap:wrap}.brand #brand-mark{font-size:27px}.top-nav{gap:16px;justify-content:space-between;width:100%;margin-top:4px}.nav-link{font-size:12px}.itinerary-link{font-size:11px;padding:7px 10px;margin-left:auto}.itinerary-link svg{width:16px;height:16px}.count-pill{width:21px;height:21px;min-width:21px}.season-bar{padding:20px 0}.season-tabs{width:100%;gap:2px;padding:4px}.season-tabs button{flex:1;padding:9px 7px;font-size:12px;gap:5px}.season-tabs svg{width:15px!important;height:15px!important}.hero{grid-template-columns:1fr;gap:32px;padding:24px 0 40px}.hero h1{font-size:clamp(3.5rem,11vw,5rem);margin-top:16px}.hero-copy{max-width:100%}.hero-description{max-width:100%;font-size:var(--text-base);margin-bottom:24px}.hero .button{min-height:50px}.hero-edition{display:none}.hero-art{margin:12px 20px 0;padding:0 0 24px}.cover-frame>img{aspect-ratio:1.24}.season-stamp{right:-24px;top:-20px;width:100px;height:100px}.hero-sticker{left:-32px;bottom:-8px;width:125px;height:125px}.paper-tape{top:-12px}.cover-frame figcaption{font-size:8px;gap:8px;padding:12px 0 16px}.cover-frame figcaption span:first-child{font-size:11px}.chapter-nav{grid-template-columns:1fr;margin:8px 0 40px}.chapter{padding:20px 8px;gap:16px}.chapter+.chapter{padding-left:8px;border-left:none;border-top:1px solid var(--line)}.chapter .small-label{font-size:9px}.chapter strong{font-size:17px}.chapter-caption{font-size:11px}.chapter>.icon{width:28px;height:28px}.section-heading{align-items:center}.section-heading h2{font-size:28px}.section-heading .eyebrow{font-size:9px}.section-heading .button{font-size:11px;gap:6px;padding:10px}.section-intro{font-size:14px}.filter-row{gap:8px}.filter{font-size:12px;padding:8px 11px}.search-wrap input{font-size:16px}.cards{gap:20px}.card-content{padding:20px 20px 0}.card-actions{padding-inline:20px}.card-title{font-size:22px}.cards{grid-template-columns:1fr}.card-art{height:180px}.card-art img{width:170px;height:170px}.card-label{font-size:11px}.card-description{font-size:16px}.card-subtitle{font-size:11px}.card-meta{font-size:12px}.planner{display:block;padding:24px}.planner-head h2{font-size:32px}.progress-stats span{font-size:12px}.calendar-days>span,.calendar-days>button{min-height:40px;font-size:13px}.calendar-caption{font-size:11px}.plan-info button{font-size:14px}.plan-date,.plan-status{font-size:11px}.planner-list-heading h3{font-size:16px}.planner-list-heading>span{font-size:12px}.export-help,.calendar-help{font-size:12px}.planner-tools .text-button{font-size:12px}.storage-note{font-size:11px}.season-closing{padding:64px 0}.site-footer{flex-direction:column;text-align:center;gap:12px}.site-footer p{font-size:11px}.sticker-sheets{grid-template-columns:1fr;gap:24px}.atelier-heading{padding:40px 0 32px}.atelier-title{font-size:clamp(3rem,12vw,5rem)}.atelier-instructions{padding:20px;gap:16px;margin-bottom:32px}.atelier-instructions>svg{width:24px;height:24px}.sticker-sheet{padding:20px}dialog{padding:32px 24px;max-height:92dvh}.detail-facts{grid-template-columns:1fr}.detail-bottom{flex-direction:column;align-items:stretch}.dialog-actions{flex-direction:column}.form-two{gap:12px}#idea-form .form-two{grid-template-columns:1fr}.schedule-form .form-two{grid-template-columns:1fr 1fr}.detail-sources a{font-size:14px}.toast{bottom:16px;font-size:13px}.hero-note{font-size:11px}.chapter-number{font-size:12px}.section-heading .button svg{width:15px;height:15px}}
@media(max-width:360px){.shell{padding-inline:16px}.season-tabs button{padding-inline:5px;font-size:11px}.season-symbol{display:none}.hero h1{font-size:3.25rem}.top-nav{gap:10px}.itinerary-link{gap:5px;padding-inline:8px}.section-heading{flex-wrap:wrap}.card-content{padding-inline:20px}.filter{padding-inline:10px}.hero-stamp{width:80px;height:80px}.cover-frame figcaption span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media print{@page{size:A4;margin:16mm}body{background:#fff!important;color:#000!important;font-family:Lufga,sans-serif}.shell,.ambient,dialog,.toast,.noscript{display:none!important}.print-only{display:block!important}.print-only h1{font-size:27pt;line-height:1.1;margin-bottom:8mm;color:#1E1B2E}.print-only .print-subtitle{font-size:11pt;margin-bottom:10mm;color:#615568}.print-item{break-inside:avoid;padding:7mm 0;border-top:1px solid #aaa}.print-item h2{font-size:16pt;margin-bottom:3mm}.print-item p,.print-item li{font-size:10pt;line-height:1.55;margin:2mm 0}.print-item ul,.print-item ol{padding-left:5mm}.print-item .print-category{font-size:9pt;letter-spacing:1px;color:#6B3FA0}.print-item a{overflow-wrap:anywhere;color:#000}.print-item .print-notes{border:1px solid #ccc;padding:4mm;margin-top:4mm}.print-footer{margin-top:8mm;font-size:9pt;color:#615568}}
.atelier-downloads{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin:40px 0 0}.atelier-downloads .text-button{font-size:var(--text-sm);color:var(--mist)}
/* Final readability and collage placement pass. */
.search-wrap input::placeholder{color:var(--mist);opacity:1}
.hero-sticker{bottom:84px}
@media(max-width:700px){.hero-sticker{bottom:64px}}
.toast{pointer-events:none}
@media(max-width:700px){.calendar-widget{margin-inline:-22px}.month-toolbar{padding-inline:16px}.toast{top:16px;bottom:auto}}
/* Lalas Diaries: real editorial images and an uncluttered Lufga wordmark. */
.brand #brand-mark{font-family:var(--font);font-size:clamp(1.8rem,2.5vw,2.25rem);font-weight:700;letter-spacing:-.065em;white-space:nowrap;color:var(--ink-on-dark)}
.card-media{margin:0;background:var(--white);overflow:hidden}
.card-media-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:8px 16px;background:var(--white)}
.card-media-label{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--lilac-deep)}
.card-media-toolbar .favorite-button{position:static;box-shadow:none;background:var(--beige)!important}
.card-media-toolbar .favorite-button:hover{background:var(--lilac-soft)!important}
.card-image-stage{height:280px;overflow:hidden;background:var(--beige)}
.card-image-stage img{display:block;width:100%;height:100%;object-fit:cover;transform:none;filter:none}
.media-poster .card-image-stage{height:380px;background:var(--ink);padding:16px}
.media-poster .card-image-stage img{object-fit:contain}
.media-caption{display:flex;flex-direction:column;gap:4px;padding:12px 20px;color:var(--paper-muted);border-bottom:1px solid var(--paper-line);line-height:1.5}
.media-note{font-size:11px}
.media-credit{font-size:10px;overflow-wrap:anywhere;display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.media-credit a{display:inline-flex;align-items:center;gap:6px;min-height:32px;color:var(--lilac-deep);font-weight:500;text-underline-offset:3px;max-width:100%;overflow-wrap:anywhere}
.media-credit .icon{width:12px;height:12px}
.personal-cover{min-height:180px;padding:32px 24px;display:flex;flex-direction:column;justify-content:center;gap:12px;background:var(--lilac-soft)}
.personal-cover>span{font-size:24px;line-height:1.2;font-weight:700;letter-spacing:-.03em;color:var(--ink)}
.personal-cover>small{font-size:var(--text-sm);color:var(--lilac-deep)}
.detail-media{margin:24px 0;border:1px solid var(--paper-line);border-radius:12px}
.detail-media .card-image-stage{height:auto;aspect-ratio:16/10}
.detail-media.media-poster .card-image-stage{height:460px;aspect-ratio:auto;padding:24px}
.detail-media .media-caption{border-bottom:none}
.detail-media .media-credit{font-size:12px}
.detail-media .media-note{font-size:13px}
@media(max-width:700px){.brand #brand-mark{font-size:30px}.card-image-stage{height:250px}.media-poster .card-image-stage{height:350px;padding:16px}.media-credit{font-size:11px}.media-credit a{min-height:44px}.media-caption{padding:12px 20px}.media-note{font-size:12px}.detail-media.media-poster .card-image-stage{height:380px;padding:16px}}

/* Sticker collections use the interface palette; the artwork has its own colors. */
.atelier-summary{font-size:var(--text-sm);color:var(--lilac)!important;letter-spacing:.015em;margin:20px auto 0!important}
.collection-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:24px}
.collection-nav .button{min-width:155px}
.sticker-collections{max-width:1000px;margin:auto}
.sticker-collection{scroll-margin-top:32px}
.sticker-collection+.sticker-collection{margin-top:72px;padding-top:48px;border-top:1px solid var(--line)}
.collection-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;margin-bottom:28px}
.collection-heading .eyebrow{font-size:10px}
.collection-heading h2{font-size:clamp(1.75rem,3vw,2.5rem);letter-spacing:-.035em;margin:12px 0}
.collection-description{font-size:var(--text-sm);color:var(--mist);max-width:600px}
.collection-count{font-size:var(--text-xs);color:var(--lilac);margin-top:14px}
.collection-downloads{display:flex;align-items:flex-end;flex-direction:column;gap:12px;padding-top:24px}
.collection-downloads .button{font-size:var(--text-xs)}
.collection-downloads .text-button{font-size:11px;color:var(--mist)}
.sticker-sheet h3{font-size:24px;margin:12px 0}
@media(max-width:700px){.atelier-summary{font-size:12px}.collection-nav{gap:10px}.collection-nav .button{min-width:0;flex:1;font-size:12px;padding-inline:12px}.collection-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.collection-heading h2{font-size:30px}.collection-description{font-size:14px}.collection-count{font-size:12px}.collection-downloads{align-items:stretch;padding-top:0;gap:8px}.collection-downloads .text-button{justify-content:center;font-size:12px}.sticker-collection+.sticker-collection{margin-top:48px;padding-top:32px}}

.atelier-intro{max-width:570px;margin:24px auto 0;color:var(--mist)}
