:root{--bg: #f4f0e8;--panel: #fffaf0;--panel-strong: #ffffff;--text: #3d3427;--muted: #796d5e;--heading: #17120d;--border: #ded1bd;--brand: #f7c948;--brand-strong: #d49a13;--brand-dark: #070707;--danger: #b42318;--danger-bg: #fff1f0;--shadow: 0 20px 60px rgba(45, 32, 14, .14);--radius: 18px;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif: Georgia, "Times New Roman", serif;color:var(--text);background:var(--bg);color-scheme:light;font:16px/1.5 var(--sans);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--bg: #11100e;--panel: #1d1a16;--panel-strong: #252017;--text: #ede3d2;--muted: #b6a997;--heading: #fff8eb;--border: #3b3327;--brand: #ffd45a;--brand-strong: #f4b92d;--danger: #ffb4ab;--danger-bg: #3a1714;--shadow: 0 20px 70px rgba(0, 0, 0, .42);color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}code,pre{border-radius:10px;background:color-mix(in srgb,var(--brand) 16%,transparent);color:var(--heading);font-family:Cascadia Code,SFMono-Regular,Consolas,monospace}code{padding:.15rem .35rem}pre{overflow-x:auto;padding:1rem}#root{min-height:100vh}.setup-screen{display:grid;gap:1rem;margin:10vh auto;max-width:720px;padding:2rem}.app-shell{min-height:100vh}.app-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,3vw,2rem);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-block,.topbar-actions,.card-actions,.page-tools,.footer-brand,.footer-contact span,.image-actions,.primary-button,.secondary-button,.ghost-button,.upload-button{display:flex;align-items:center}.brand-block{gap:1rem}.brand-block h1{color:var(--heading);font-size:clamp(1.35rem,2vw,1.85rem);letter-spacing:-.04em}.topbar-actions{gap:.75rem}.eyebrow{color:var(--brand-strong);font-size:.76rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.primary-button,.secondary-button,.ghost-button,.upload-button,.card-actions button,.image-actions button{gap:.5rem;border:1px solid transparent;border-radius:999px;font-weight:800;transition:transform .16s ease,border-color .16s ease,background .16s ease}.primary-button:hover,.secondary-button:hover,.ghost-button:hover,.upload-button:hover,.card-actions button:hover,.image-actions button:hover{transform:translateY(-1px)}.primary-button{justify-content:center;padding:.85rem 1.2rem;background:var(--brand-dark);color:var(--brand)}.secondary-button,.ghost-button,.card-actions button,.upload-button{justify-content:center;padding:.72rem 1rem;border-color:var(--border);background:var(--panel-strong);color:var(--heading)}.danger-button{color:var(--danger)!important;background:var(--danger-bg)!important}.status-pill{border:1px solid var(--border);border-radius:999px;padding:.45rem .75rem;color:var(--brand-strong);font-size:.8rem;font-weight:800}.dashboard{display:grid;gap:1.25rem;width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:1.5rem 0 4rem}.panel,.saved-section,.empty-card,.flyer-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow)}.section-heading h2{color:var(--heading);font-size:clamp(2rem,4vw,3.25rem);line-height:.95;letter-spacing:-.065em}.saved-section{display:grid;gap:1rem;padding:clamp(1.25rem,3vw,1.75rem)}.section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center}.section-heading span{color:var(--muted);font-weight:800}.section-heading-actions{display:flex;align-items:center;gap:.85rem}.flyer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1rem}.flyer-card{overflow:hidden;box-shadow:none}.card-main{display:grid;gap:.8rem;width:100%;min-height:230px;padding:1.2rem;border:0;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 28%,transparent),transparent 48%),var(--panel-strong);color:inherit;text-align:left}.card-main h3{color:var(--heading);font-size:1.45rem;line-height:1.05}.card-main p{color:var(--muted)}.card-label{display:inline-flex;width:fit-content;min-height:2.15rem;align-items:center;justify-content:center;border-radius:999px;padding:0 1rem;background:var(--brand-dark);color:var(--brand);font-size:.72rem;font-weight:900;letter-spacing:.12em;line-height:1}.card-main dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:auto 0 0}.card-main dt{color:var(--muted);font-size:.72rem;font-weight:800;text-transform:uppercase}.card-main dd{margin:0;color:var(--heading);font-weight:900}.card-actions{justify-content:space-between;gap:.5rem;padding:.75rem;border-top:1px solid var(--border)}.card-actions button{flex:1;font-size:.85rem}.empty-card,.loading-panel{padding:2rem;color:var(--muted)}.editor-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:1.5rem;align-items:start;width:min(1440px,calc(100% - 2rem));margin:0 auto;padding:1.5rem 0 4rem}.editor-sidebar{position:sticky;top:5.5rem;display:grid;gap:1rem}.panel{display:grid;gap:1rem;padding:1rem;box-shadow:none}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.panel label{display:grid;gap:.35rem;color:var(--heading);font-weight:800}.panel input{width:100%;border:1px solid var(--border);border-radius:12px;padding:.8rem .9rem;background:var(--panel-strong);color:var(--heading)}.autosave-status{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;padding:.28rem .62rem;background:color-mix(in srgb,var(--panel-strong) 82%,transparent);color:var(--muted);font-size:.72rem;font-weight:800;line-height:1;white-space:nowrap}.autosave-status.saving{color:var(--brand-strong)}.autosave-status.error{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));background:var(--danger-bg);color:var(--danger)}.action-stack button{width:100%}.page-stack{display:grid;gap:1.5rem;justify-items:center}.flyer-page{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,8.5in);height:11in;padding:.44in .5in .36in;overflow:hidden;background:#fff;color:#15100c;box-shadow:0 18px 60px #00000038}.flyer-header{display:grid;grid-template-columns:1fr 112px;min-height:1.15in;border:4px solid #050505;background:#f8ca3c}.flyer-heading{display:grid;align-content:center;padding:.18in .28in;background:#050505}.flyer-heading p{color:#f8ca3c;font-family:var(--serif);font-size:.48in;font-weight:900;line-height:.9;letter-spacing:.035em}.flyer-heading span{color:#f8ca3c;font-family:var(--serif);font-size:.17in;font-weight:800}.logo-mark{display:grid;place-items:center;align-content:center;justify-self:end;width:.92in;height:.92in;margin:.1in;border:3px solid #050505;border-radius:12px;background:radial-gradient(circle at 50% 34%,#ffffff 0 28%,transparent 29%),linear-gradient(#050505 0 45%,#f8ca3c 46% 100%);color:#050505;text-transform:uppercase}.logo-mark strong{margin-top:.1in;font-size:.13in;letter-spacing:-.02em}.logo-mark span{align-self:end;margin-bottom:.06in;color:#050505;font-size:.07in;font-weight:900}.drop-zone{position:relative;display:grid;min-height:0;margin:.22in 0;border:2px dashed transparent;border-radius:14px;transition:border-color .16s ease,background .16s ease}.drop-zone.is-empty,.drop-zone.is-dragging{border-color:#d59d16;background:#fff8e2}.drop-placeholder{display:grid;place-items:center;align-content:center;gap:.12in;min-height:5.8in;padding:.3in;text-align:center}.drop-placeholder h2{font-family:var(--serif);font-size:.32in}.drop-placeholder p{color:#6b5c43}.upload-button{position:relative;width:fit-content}.upload-button.compact{padding:.5rem .75rem;font-size:.78rem}.upload-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.image-layout{display:grid;gap:.12in;min-height:0}.image-count-1{grid-template-columns:1fr}.image-count-2,.image-count-3,.image-count-4{grid-template-columns:repeat(2,1fr)}.image-count-3 .image-tile:first-child{grid-column:span 2}.image-count-5,.image-count-6{grid-template-columns:repeat(3,1fr)}.image-tile{position:relative;min-height:0;margin:0;overflow:hidden;border:2px solid #111111;background:#ede6d7}.image-tile img{width:100%;height:100%;object-fit:cover}.image-actions{position:absolute;top:.08in;right:.08in;gap:.25rem;padding:.25rem;border-radius:999px;background:#000000b8}.image-actions button{width:1.65rem;height:1.65rem;justify-content:center;padding:0;border-color:#ffffff3d;background:#ffffff1a;color:#fff}.uploading-overlay{position:absolute;inset:0;display:grid;place-items:center;border-radius:14px;background:#ffffffc7;color:#111;font-weight:900}.page-tools{position:absolute;right:.5in;bottom:1.22in;gap:.5rem;color:var(--muted);font-size:.8rem;font-weight:800}.flyer-footer{align-self:end;border:3px solid #050505;font-family:var(--serif)}.footer-contact{display:grid;gap:.05in;padding:.09in .12in;background:#050505;color:#f8ca3c;font-size:.13in;font-style:italic;font-weight:800}.footer-contact span{flex-wrap:wrap;justify-content:center;gap:.12in}.footer-contact em{justify-self:center;font-size:.12in}.footer-brand{justify-content:space-between;gap:.12in;padding:.12in;background:#f8ca3c;color:#050505;font-size:.11in;font-weight:900}.footer-brand strong{display:grid;justify-items:center;line-height:1.05;text-align:center}.footer-brand small{font-size:.1in}@media(max-width:980px){.editor-layout{grid-template-columns:1fr}.section-heading{align-items:start;flex-direction:column}.section-heading-actions{width:100%;justify-content:space-between}.editor-sidebar{position:static}.flyer-page{transform-origin:top center}}@media print{@page{size:letter;margin:0}:root,body,#root,.app-shell,.editor-layout,.page-stack{background:#fff!important}.no-print,.app-topbar,.editor-sidebar{display:none!important}.editor-layout,.page-stack{display:block;width:auto;margin:0;padding:0}.flyer-page{width:8.5in;height:11in;margin:0;box-shadow:none;break-after:page;page-break-after:always}.flyer-page:last-child{break-after:auto;page-break-after:auto}}
