/* Edition 31: one catalog, one editor, a persistent preview. */
:root{--paper:#f7f5ef;--white:#fffefb;--green:#244a3b;--line:#dedfd5;--muted:#72766e;--ink:#263d32}
[hidden]{display:none!important}button:disabled{cursor:not-allowed}button,a,input,select,summary{outline-offset:4px}input[type=search]{font:inherit;width:100%;padding:11px 12px;border:1px solid #c9cec2;background:var(--white);color:var(--ink);border-radius:5px;margin-top:7px;min-width:0}input,select{border-radius:5px!important}a{color:var(--green)}
.studio-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 max(4vw,24px);gap:16px;border-bottom:1px solid var(--line);background:var(--white)}.studio-brand{display:flex;gap:15px;align-items:center;text-decoration:none;font-size:11px;letter-spacing:2px;font-weight:700}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border:1px solid #8d9b8e;border-radius:50%;font:italic 23px Georgia;letter-spacing:-3px;padding-right:3px}.brand-subtitle{display:block;font-size:11px;letter-spacing:.2px;font-weight:400;margin-top:7px;color:var(--muted)}.header-actions{display:flex;gap:10px}.header-actions button{min-height:40px;padding:10px 18px}.header-actions span{margin-left:15px}
main{max-width:1400px;padding:0 max(4vw,24px)}.workspace-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:34px 0 28px}.workspace-intro h1{font-size:34px;letter-spacing:-.8px;margin:9px 0 0}.workspace-intro>p{font-size:12px;color:var(--muted);padding-bottom:4px}.eyebrow,.step-label{font:600 9px/1.4 Arial;letter-spacing:1.7px;color:#737a6b}.workspace{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:42px;padding:0 0 42px}.preview-column{top:24px}.design-heading{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:0 12px;min-height:64px}.design-heading h2{font-size:26px;margin:5px 0 0}.design-heading #design-notes{display:none}.design-heading .text-button{font-size:12px;color:var(--green);padding:10px 0}.art-stage{position:relative;aspect-ratio:1.1;border:0;background:#e9e8e0;border-radius:12px;margin:14px 0 10px;padding:30px 30px 46px}#art-preview{width:85%;max-width:425px}.stage-label{position:absolute;bottom:17px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:1.8px;color:#757a6e}.size-proof{border-top:0;border-bottom:1px solid var(--line);padding:13px 0!important;margin:0!important}.size-proof summary{font:12px Arial;color:var(--muted)}.size-proof summary:after{font-size:17px}.preview-tip{font-size:11px;color:var(--muted);margin-top:14px}.scale-row{padding:0 0 4px}.scale-row p{max-width:360px}
.editor-shell{background:var(--white);border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:535px;padding:0}.editor-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);padding:0 15px}.editor-tabs button{background:transparent;color:var(--muted);padding:20px 3px 17px;font-size:12px;border-bottom:3px solid transparent;white-space:nowrap}.editor-tabs button[aria-selected=true]{border-bottom-color:var(--green);color:var(--green);font-weight:600}.editor-panel{padding:27px}.panel-heading{margin-bottom:24px}.panel-heading h3{font-size:24px;line-height:1.2;margin:10px 0}.panel-heading .help{max-width:420px}.text-fields{gap:16px;margin-bottom:23px}.text-fields label{font-size:12px}.text-fields input{padding:12px}.editor-panel details{margin-top:0!important;padding:18px 0}.editor-panel summary{font:13px Arial;font-weight:600;line-height:1.4}.editor-panel summary:after{font:19px Arial}.editor-panel details[open] summary{margin-bottom:18px}.editor-panel .help{font-size:11px;line-height:1.55}.editor-panel #art-direction-control{padding:0;border:0;background:none;margin-bottom:20px}.editor-panel #initials-settings{margin-bottom:20px}.reset-action{margin:7px 0 0;color:#88786b}
#text-layout-controls{border:0;border-top:1px solid var(--line);background:transparent;padding:0;margin:0}#text-layout-controls details{padding:18px 0}#text-layout-controls .help{margin-bottom:15px}.text-adjustment{margin-top:14px}.text-adjustment-row{grid-template-columns:minmax(0,1fr) 82px}.text-layout-actions{gap:12px}.text-number input{width:62px}.editor-panel .resource-link{font-size:11px;display:inline-block;margin-top:12px}.status{padding:0 27px;margin:0 0 18px;min-height:0}.status:empty{display:none}
#artwork-library{padding:0;margin:0;border:0;background:transparent}.chosen-art{display:flex;gap:18px;align-items:center;margin:0 0 14px;border:1px solid var(--line);border-radius:9px;padding:15px;background:#f6f6ef}.chosen-art>span{width:88px;height:88px;flex-shrink:0;display:grid;place-items:center;border-radius:5px;background:#fffefb}.chosen-art img{width:80px;height:80px;object-fit:contain}.chosen-art .art-selection-name{font:19px/1.2 Georgia;color:var(--ink);margin:6px 0 0}.chosen-art .small{font-size:11px;margin-top:12px}.art-library-actions{margin:0 0 20px;display:flex;justify-content:space-between;gap:12px}.art-library-actions .text-button{font-size:11px}.art-sliders{margin:0 0 20px}.art-sliders input{margin-top:12px}#art-target-wrap{margin-bottom:15px}.art-request{margin-top:15px!important}#artwork-library>p.help:last-of-type{margin:8px 0 18px}.art-request textarea{max-width:100%;width:100%;font:11px/1.6 Arial;padding:10px;border:1px solid var(--line);background:#fafaf4;color:var(--ink);resize:vertical;margin-top:8px}.art-request label{margin:14px 0}#state-map-controls{padding:12px;background:#f6f6ef;border:0}.state-position-actions .secondary{font-size:11px}
#shop-color-controls{background:transparent;padding:0;margin:0 0 20px;border:0}.core-colors{grid-template-columns:1fr;margin:0;gap:16px}.core-colors label{font-size:12px}.color-grid select{padding:12px 10px;font-size:13px}#shop-color-selection{margin-top:13px;font-size:11px;color:var(--muted);line-height:1.7}#pairing-panel .help{margin-bottom:14px}.accent-colors{margin:18px 0 10px}#pattern-options .color-grid{margin-top:18px}#pattern-options .two-col{margin-top:15px}.editor-panel #pattern-scale{margin-top:20px}.project-actions{margin:0 0 14px}.save-note{margin-bottom:25px}.editor-panel .export-box{border:0;padding:0;background:transparent;margin:0}.export-box h3{font-size:19px;margin-bottom:10px}.export-box .help{margin:12px 0}.export-box>a{font-size:11px}.primary,.secondary{border-radius:5px}.check{font-size:11px}
footer{align-items:start;padding:24px max(4vw,24px);background:var(--white)}footer .resources{border:0;padding:0;margin:0;min-width:205px}footer summary{font:11px Arial}footer .resources a{display:block;font-size:11px;margin:15px 0 0}
/* A single modal is used for both design layouts and illustration browsing. */
#catalog-dialog{width:min(1080px,calc(100vw - 48px));max-height:calc(100dvh - 48px);height:850px;border:0;border-radius:14px;padding:0;background:var(--white);color:var(--ink);box-shadow:0 30px 100px #182d2840;overflow:hidden}#catalog-dialog[open]{display:flex;flex-direction:column}#catalog-dialog::backdrop{background:#1d30295e;backdrop-filter:blur(3px)}.catalog-heading{display:flex;align-items:center;justify-content:space-between;padding:25px 30px 18px;flex-shrink:0}.catalog-heading h2{margin:7px 0 0;font-size:29px}.close-catalog{font:28px Arial;background:#f2f3ec;color:var(--green);border-radius:50%;width:36px;height:36px;flex-shrink:0}.catalog-toolbar{padding:0 30px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.catalog-modes{display:inline-flex;gap:4px;background:#efefe8;padding:4px;border-radius:7px;margin:0 0 18px}.catalog-modes button{padding:10px 18px;border-radius:4px;background:transparent;font-size:12px;color:var(--muted)}.catalog-modes button[aria-selected=true]{background:var(--white);color:var(--green);box-shadow:0 1px 4px #22352c15;font-weight:600}.catalog-filters{display:grid;grid-template-columns:1fr 1.5fr;gap:15px}.catalog-filters:has(#catalog-style-wrap:not([hidden])){grid-template-columns:1fr 1.3fr 1fr}.catalog-results-bar{display:flex;justify-content:space-between;align-items:center;margin-top:13px;font-size:11px;color:var(--muted)}.catalog-results-bar button{padding:5px 0;font-size:11px}.catalog-toolbar>.help{font-size:11px;margin-top:3px}.catalog-results{min-height:140px;overflow:auto;padding:22px 30px 28px;flex:1;overscroll-behavior:contain;scrollbar-gutter:stable}#catalog-dialog .design-grid,#catalog-dialog .art-library-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;border:0;padding:0;max-height:none;overflow:visible;background:transparent}#catalog-dialog .design-tile,#catalog-dialog .art-card{position:relative;padding:15px 12px 12px;border:1px solid #e4e5dc;border-radius:8px;background:#f7f7f1;display:flex;flex-direction:column;align-items:center;justify-content:start;color:var(--ink);min-width:0}#catalog-dialog .design-tile:hover,#catalog-dialog .art-card:hover{border-color:#94a492;background:#f0f1e8}#catalog-dialog .selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}#catalog-dialog .thumb,#catalog-dialog .art-card-preview{height:auto;width:100%;max-width:160px;aspect-ratio:1;margin:0 0 13px;display:grid;place-items:center;background:transparent}#catalog-dialog .art-card-preview img{width:90%;height:90%;object-fit:contain;max-height:155px}#catalog-dialog .tile-title,#catalog-dialog .art-card-name{font:14px/1.25 Georgia;min-height:0;margin:0;text-align:center}#catalog-dialog small{display:block;font:10px/1.4 Arial;color:var(--muted);margin-top:6px}#catalog-dialog #catalog-empty{text-align:center;padding:45px 10px;color:var(--muted)}#catalog-empty h3{color:var(--ink)}#catalog-empty p{margin:15px 0 22px;font-size:12px;line-height:1.6}#catalog-more{display:block;margin:25px auto 0;min-width:150px}.catalog-footer{display:flex;align-items:center;gap:15px;border-top:1px solid var(--line);padding:16px 30px;background:var(--white);flex-shrink:0}.catalog-footer p{margin-right:auto;font-size:11px;color:var(--muted);line-height:1.5}.catalog-footer button{white-space:nowrap}
@media(min-width:1500px){.workspace{gap:65px}#art-preview{max-width:455px}}
@media(max-width:1000px){.workspace{gap:24px;grid-template-columns:minmax(0,1fr) minmax(340px,1fr)}.workspace-intro>p{display:none}.editor-panel{padding:22px}.art-stage{padding:20px 20px 40px}#art-preview{width:96%}.catalog-filters:has(#catalog-style-wrap:not([hidden])){grid-template-columns:1fr 1.3fr 1fr}}
@media(max-width:760px){.studio-header{height:76px;padding:0 18px}.studio-brand{letter-spacing:1.1px;font-size:9px;gap:10px}.brand-subtitle{font-size:10px}.brand-mark{width:34px;height:34px;font-size:19px}.header-actions .secondary{font-size:11px;padding:9px 10px}.header-actions .secondary span{display:none}.header-actions .primary{display:none}main{padding:0 18px}.workspace-intro{padding:25px 0 21px}.workspace-intro h1{font-size:28px}.workspace{grid-template-columns:1fr;gap:24px}.preview-column{position:static}.design-heading h2{font-size:23px}.art-stage{max-width:480px;aspect-ratio:1.35;margin:12px auto 10px;padding:18px 25px 36px}#art-preview{width:min(65vw,280px);max-width:100%}.preview-tip{margin:10px 0}.editor-shell{min-height:0}.editor-tabs{position:sticky;top:0;background:var(--white);z-index:2}.editor-panel{padding:23px}.editor-tabs button{font-size:11px;padding:18px 1px 15px}.panel-heading h3{font-size:23px}.size-proof{max-width:480px;margin:auto!important}.stage-label{bottom:13px;font-size:8px}.catalog-heading{padding:22px 20px 15px}.catalog-heading h2{font-size:25px}.catalog-toolbar{padding:0 20px 14px}.catalog-filters,.catalog-filters:has(#catalog-style-wrap:not([hidden])){grid-template-columns:1fr 1fr;gap:12px}.catalog-filters #catalog-style-wrap{grid-column:1/-1}.catalog-results{padding:18px 20px 24px}#catalog-dialog .design-grid,#catalog-dialog .art-library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.catalog-footer{padding:14px 20px;flex-wrap:wrap}.catalog-footer p{width:100%;flex-basis:100%}.catalog-footer button{flex:1}footer{padding:22px 18px;display:flex;gap:20px}.resources{min-width:160px!important}}
@media(max-width:480px){#catalog-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);height:900px;border-radius:10px}.catalog-heading{padding:19px 16px 15px}.catalog-heading h2{font-size:24px}.catalog-heading .eyebrow{font-size:8px}.catalog-toolbar{padding:0 16px 12px}.catalog-results{padding:16px}.catalog-filters{gap:10px}.catalog-filters select,.catalog-filters input{font-size:12px;padding:10px 7px}.catalog-filters label{font-size:10px}.catalog-modes{width:100%;display:flex;margin-bottom:15px}.catalog-modes button{flex:1;padding:10px 6px}.catalog-toolbar>.help{font-size:10px}.catalog-results-bar{font-size:10px}#catalog-dialog .design-grid,#catalog-dialog .art-library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#catalog-dialog .design-tile,#catalog-dialog .art-card{padding:12px 8px}#catalog-dialog .tile-title,#catalog-dialog .art-card-name{font-size:14px}.catalog-footer{padding:12px 16px;gap:10px}.catalog-footer p{font-size:10px}.chosen-art{gap:12px;padding:12px}.chosen-art>span{width:68px;height:68px}.chosen-art img{width:64px;height:64px}.chosen-art .art-selection-name{font-size:17px}.editor-panel{padding:20px}.panel-heading h3{font-size:22px}.workspace-intro h1{font-size:26px}.art-stage{aspect-ratio:1.22}.preview-tip{font-size:10px}.brand-subtitle{font-size:9px}.brand-mark{display:none}.studio-header .secondary{font-size:10px}.text-adjustment-row{gap:10px}footer{font-size:10px}.project-actions>*{font-size:11px}#state-heart-position{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){button{transition:background-color .15s}.editor-panel{animation:panel-appear .16s ease-out}@keyframes panel-appear{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}}
