:root{font-family:Arial,'Noto Sans KR','Malgun Gothic',sans-serif;color:#17263b;background:#edf0f3;font-size:16px;--navy:#17263b;--lime:#d9f26f;--blue:#255bc7;--border:#dce1e6;--muted:#5d6b7d}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--border);border-radius:7px;min-height:42px;background:white;color:var(--navy);padding:9px 12px;font-size:.875rem;font-weight:600}button:hover{background:#f1f4f7;border-color:#9eacbd}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #739be9;outline-offset:2px}input,select,textarea{min-width:0;width:100%;border:1px solid #c8d0da;border-radius:6px;background:#fff;padding:9px 10px;min-height:42px;color:var(--navy);font-size:1rem}textarea{resize:vertical;line-height:1.5}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--blue)}input[type=color]{height:38px;min-height:38px;padding:3px;cursor:pointer}input[type=number]{padding-right:5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}.skip-link{position:absolute;top:-60px;z-index:100;background:white;padding:12px}.skip-link:focus{top:0}h1,h2,h3,p{margin:0}h1{font-size:1.2rem}h2{font-size:.9375rem}h3{font-size:.9375rem;margin:20px 0 12px}a{color:inherit}small{display:block;font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:9px}.editor-header{display:flex;align-items:center;gap:30px;padding:14px 24px;background:#fff;border-bottom:1px solid var(--border);min-height:80px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none;font-size:1.05rem;font-weight:800;letter-spacing:-.03em}.brand small{font-size:.65rem;letter-spacing:.08em;margin:4px 0 0;font-weight:600}.brand-symbol{display:grid;place-items:center;background:var(--navy);color:var(--lime);width:42px;height:42px;border-radius:10px;font-size:1.8rem}.document-title{margin-right:auto;min-width:0}.document-title input{padding:2px 5px;min-height:30px;border-color:transparent;font-size:1rem;font-weight:600;width:min(26vw,350px)}.document-title input:hover{border-color:var(--border)}.document-title span{display:block;padding-left:5px;font-size:.75rem;color:var(--muted);margin-top:3px}.header-actions{display:flex;gap:8px}.primary{background:var(--navy);border-color:var(--navy);color:#fff}.primary:hover{background:#2c405e;color:white}.editor-layout{display:grid;grid-template-columns:264px minmax(300px,1fr) 264px;min-height:calc(100vh - 81px)}.setup-panel,.inspector{background:#fff;min-width:0}.setup-panel{border-right:1px solid var(--border)}.inspector{border-left:1px solid var(--border)}.panel-title{display:flex;gap:10px;align-items:center;padding:24px 18px 8px}.badge{font-size:.75rem;background:#eef2f7;border-radius:4px;padding:4px 7px;white-space:nowrap}.intro{font-size:.875rem;line-height:1.7;color:var(--muted);padding:0 18px 20px}.panel-section{padding:20px 18px;border-top:1px solid var(--border)}.panel-section h2{margin-bottom:15px}label{display:flex;flex-direction:column;gap:7px;font-size:.875rem;line-height:1.4;margin:12px 0}.add-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.add-tools button{padding:8px 4px;font-size:.875rem}.add-tools b{display:block;font-size:1.35rem;font-weight:500;margin-bottom:5px}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}.field-pair>label{min-width:0;margin:8px 0}.field-pair>button{margin:5px 0}.panel-section summary{font-weight:700;font-size:.9375rem;cursor:pointer;line-height:1.7}.panel-section summary span{float:right;color:var(--muted);font-size:.75rem;font-weight:400}.hint{font-size:.875rem;line-height:1.6;background:#f2f5e7;padding:9px 10px;border-radius:5px;margin:10px 0}.apply-button{width:100%;border-color:var(--navy);background:#f2f5f9}.backgrounds{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.backgrounds label{align-items:center;margin:0}.workspace{padding:0 28px 26px;min-width:0;overflow:hidden;background-image:radial-gradient(#ced6de .7px,transparent .7px);background-size:13px 13px}.workspace-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 0 28px}.history-buttons,.zoom-buttons{display:flex;align-items:center;gap:5px}.history-buttons>button,.zoom-buttons>button{font-size:1.125rem;padding:5px 10px;min-width:37px}.zoom-buttons #zoom-fit{font-size:.875rem}.zoom-buttons output{font-size:.8125rem;min-width:42px;text-align:center}.toolbar-divider{height:20px;width:1px;background:#c4ccd6;margin:0 9px}.guide-toggle{flex-direction:row;align-items:center;margin:0;gap:6px}.spread-info{display:flex;justify-content:space-around;align-items:center;margin-bottom:18px;font-size:.875rem;font-weight:600;gap:8px}.spread-info span:nth-child(2){background:#fff;border:1px solid #d0d7e1;border-radius:20px;padding:6px 12px;font-size:.8125rem}.canvas-scroll{overflow:auto;padding:14px 8px 24px;min-height:300px;overscroll-behavior:contain}.canvas-stage{margin:0 auto;position:relative;min-width:0;transition:width .15s}#cover-canvas{display:block;width:100%;height:auto;background:white;box-shadow:0 8px 25px #17263b24;overflow:hidden;touch-action:none;user-select:none}#cover-canvas [data-element]{cursor:move}#cover-canvas [data-handle]{cursor:nwse-resize}.canvas-footer{display:flex;justify-content:space-between;gap:14px;padding:12px 0;align-items:center;font-size:.75rem;color:#526176;flex-wrap:wrap}.legend{display:flex;gap:14px;flex-wrap:wrap}.legend span{display:flex;gap:5px;align-items:center}.legend i{width:15px;border-top:1px solid #e55164}.legend .safe{border-top:1px dashed #159fc7}.legend .fold{border-top:1px dashed #e39b25}.gesture-help{color:#58687b;font-size:.8125rem;line-height:1.6;text-align:center;padding:14px 0 26px}.check-strip{border:1px solid #d9e0e9;border-radius:8px;background:#ffffffbd;padding:14px 16px;display:flex;gap:15px;align-items:flex-start;line-height:1.6;font-size:.875rem}.check-strip strong{white-space:nowrap}.check-strip p{color:#526176;white-space:pre-line}.check-strip.has-warnings{border-color:#dcb878;background:#fff9ed}.status{margin-top:14px;line-height:1.6;font-size:.875rem;min-height:46px;color:#374b64}.selection-section{border-top:0;min-height:150px}.selection-section>p{font-size:.875rem;line-height:1.7;color:var(--muted)}.bold-control{flex-direction:row;align-items:center;align-self:end;height:42px}.delete-button{width:100%;color:#a53131;background:#fff;margin-top:6px}.layer-heading{display:flex;justify-content:space-between;align-items:baseline}.layer-heading span{font-size:.8125rem;color:var(--muted)}.layer-help{font-size:.75rem;color:var(--muted);margin:-6px 0 12px}.layers{padding:0;margin:0;list-style:none}.layers button{display:flex;gap:9px;text-align:left;width:100%;margin-bottom:5px;border-color:transparent;font-weight:400;align-items:center;min-height:50px;background:#f6f8fa}.layers button[aria-pressed=true]{border-color:#6485bc;background:#e9effc}.layer-icon{width:25px;text-align:center;font-size:1.125rem}.layer-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8125rem}.layer-text small{font-size:.75rem;margin-top:2px}.error{color:#b13333;font-size:.875rem;line-height:1.5;margin:10px 0}dialog{border:0;padding:26px;border-radius:14px;max-width:560px;width:calc(100% - 28px);max-height:90dvh;overflow:auto;box-shadow:0 30px 90px #0004;color:var(--navy)}dialog::backdrop{background:#17263b8c}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}.dialog-heading h2{font-size:1.3rem}.dialog-heading button{font-size:1.5rem;min-width:42px}dialog>p{font-size:1rem;line-height:1.6}.export-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.export-choices button{text-align:left;padding:17px 12px;min-height:100px}.export-choices strong{display:block;font-size:1rem}.export-choices span{display:block;margin-top:9px;color:var(--muted);font-size:.8125rem;line-height:1.5}.export-note{background:#f2f5f9;padding:12px;border-radius:6px;font-size:.875rem}#export-status{font-size:.875rem;margin-top:12px}hr{border:0;border-top:1px solid var(--border);margin:20px 0}
/* Quiet two-column editing surface: tools + contextual panel, full-width canvas. */
:root{font-size:14px;--border:#e3e5e8;--navy:#243441;background:#f1f2f3}
button,input,select{min-height:36px}button{font-weight:500}label{font-size:13px}input,textarea,select{font-size:14px}
.editor-header{height:66px;min-height:66px;padding:10px 22px;gap:24px}.brand-symbol{width:34px;height:34px;border-radius:7px;font-size:25px}.brand small{display:none}.brand{font-size:16px}.document-title input{font-size:14px;max-width:270px}.document-title span{font-size:11px}.header-actions button{padding:8px 16px}.header-actions .primary{background:#263f38;border-color:#263f38}
.editor-layout{display:grid;grid-template-columns:310px minmax(0,1fr);height:calc(100dvh - 66px);min-height:560px}
.setup-panel{position:relative;padding-left:65px;overflow:auto;scrollbar-width:thin;background:#fff}
.panel-tabs{position:fixed;top:66px;bottom:0;left:0;width:65px;display:flex;flex-direction:column;background:#fafafa;border-right:1px solid var(--border);z-index:3;padding:10px 0;gap:4px}
.panel-tabs button{border:0;border-radius:0;background:transparent;width:100%;height:65px;padding:8px 0;font-size:11px;color:#66717a}
.panel-tabs b{display:block;font-weight:500;font-size:24px;margin-bottom:6px;line-height:24px}.panel-tabs button[aria-pressed=true]{background:#e9efeb;color:#214d3c;box-shadow:inset 3px 0 #29583f}.panel-tabs button:hover{background:#eef0f1}
.panel-section{border-top:0;padding:22px 16px}.panel-section h2{font-size:14px;font-weight:600;margin:0 0 20px}.panel-section h3{font-size:13px;font-weight:600}
.section-heading{display:flex;justify-content:space-between;align-items:baseline}.section-heading>span{color:#899198;font-size:12px}
.template-card{display:block;width:100%;padding:0;overflow:hidden;text-align:left;border-radius:5px;border-color:#e1e5e3}.template-card #template-art{display:block;padding:18px 12px;background:#f0f1ed}.template-card svg{width:100%;height:auto;display:block;box-shadow:0 2px 6px #0002}.template-description{display:block;padding:12px}.template-description strong{font-size:14px}.template-description>span{display:block;font-size:12px;color:#87918d;margin-top:5px}.template-description>b{display:block;font-size:12px;font-weight:500;border-top:1px solid #ecefed;margin-top:14px;padding-top:12px;color:#376448}.template-help{color:#87908b;line-height:1.7;font-size:12px;margin-top:15px}
.workspace{display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:0 30px 8px;background:#f0f1f2;max-height:none;position:relative}
.workspace-toolbar{padding:10px 0 8px;flex-shrink:0}.history-buttons>button,.zoom-buttons>button{background:transparent;border-color:transparent;font-size:18px;min-height:32px;padding:4px 8px}.zoom-buttons #zoom-fit{font-size:12px}.guide-toggle{font-size:12px}.toolbar-divider{background:#d8dcdf}
.spread-info{justify-content:center;gap:10px;margin:0 0 6px}.spread-info button{background:transparent;border-color:transparent;font-size:12px;padding:5px 16px;min-height:30px;color:#68737c}.spread-info button:hover{background:white}
.canvas-scroll{flex:1;min-height:200px;display:flex;align-items:center;overflow:auto;padding:14px 14px 22px}.canvas-stage{flex-shrink:0;max-width:none;width:100%;transition:width .15s}.canvas-stage svg{box-shadow:0 3px 18px #00000012!important}
.canvas-footer{padding:7px 0;font-size:11px;gap:8px}.legend{gap:12px}.gesture-help{font-size:11px;padding:3px 0 7px;color:#899198}.check-strip{display:block;padding:0;border:0;background:transparent!important;border-radius:0;font-size:11px}.check-strip summary{cursor:pointer;color:#7b838a;width:max-content}.check-strip p{padding:8px 0}.check-strip.has-warnings summary{color:#a76518}.status{font-size:11px;line-height:1.5;min-height:17px;margin:6px 0 0;color:#78838a}
.selection-label{font-size:11px;color:#8c959c;margin:0 0 10px}.selection-section>h2{margin-bottom:8px}.selection-section>p{font-size:12px}.selection-section form>label:first-child{margin-top:10px}.selection-section textarea{min-height:80px;line-height:1.6;resize:vertical}.selection-section input[type=color]{width:100%;height:32px;min-height:32px}.precise-controls{margin:18px 0;border-top:1px solid var(--border);padding-top:14px}.precise-controls summary{font-size:12px!important;font-weight:400!important}.selection-section .field-pair{gap:8px}.selection-section .field-pair button{font-size:12px;padding:5px}.delete-button{font-size:12px}.selection-section small{font-size:11px}#element-note{display:none}#image-source{font-size:12px;line-height:1.6;margin-top:14px;overflow-wrap:anywhere}
.layer-help{font-size:11px}.layers button{padding:8px;min-height:44px}.layers small{font-size:10px}
.upload-photo{width:100%;border-style:dashed;color:#345b46}.photo-search{display:flex;gap:5px;margin-top:12px}.photo-search input{min-width:0;width:100%;font-size:13px}.photo-search button{padding:6px 9px;flex-shrink:0;font-size:12px}.photo-chips{display:flex;gap:5px;margin-top:10px}.photo-chips button{font-size:11px;min-height:28px;padding:4px 9px;border-radius:20px;background:#f6f7f7;border-color:transparent}
#photo-status{font-size:11px;color:#6a747c;line-height:1.7;margin:14px 0}.photo-results{display:grid;grid-template-columns:1fr 1fr;gap:12px 8px}.photo-results article{min-width:0}.photo-results button{border:0;padding:0;width:100%;height:95px;overflow:hidden;border-radius:4px;background:#eef1ee}.photo-results img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.photo-results button:hover img{transform:scale(1.04)}.photo-results a{display:block;color:#849087;font-size:10px;text-decoration:none;margin-top:5px}.photo-results a:hover{text-decoration:underline}#photo-more{width:100%;margin-top:15px;font-size:12px}.photo-license{font-size:10px;margin-top:20px;border-top:1px solid #ecefed;padding-top:12px}.photo-empty-note{font-size:10px;color:#9aa09d;line-height:1.6;margin-top:8px}
.preview-dialog{max-width:1150px}.preview-dialog #preview-art{background:#eff1f2;padding:24px;margin:20px 0}.preview-dialog svg{width:100%;height:auto;max-height:65vh;display:block}.preview-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.preview-disclaimer{font-size:12px;color:#79838b;margin-top:12px}#preview-checks{white-space:pre-line;font-size:13px}
@media(max-width:1000px){.editor-layout{grid-template-columns:275px minmax(0,1fr)}.setup-panel{padding-left:56px}.panel-tabs{width:56px}.workspace{padding:0 16px 8px}.editor-header{gap:14px;padding:10px 16px}.header-actions button{padding:7px 10px}.document-title input{width:20vw}.brand{font-size:14px}.legend{display:none}}
@media(max-width:680px){.editor-header{height:104px;flex-wrap:wrap;padding:8px 12px;gap:5px 12px}.brand-symbol{width:29px;height:29px;font-size:22px}.document-title{flex:1}.document-title input{width:100%;max-width:none}.document-title span{font-size:10px}.header-actions{display:flex;width:100%;justify-content:flex-end;gap:6px}.header-actions button{min-height:30px;padding:5px 12px;font-size:12px}.editor-layout{height:auto;min-height:0;display:flex;flex-direction:column}.setup-panel{padding:50px 0 0;overflow:visible}.panel-tabs{position:absolute;top:0;left:0;right:0;bottom:auto;width:100%;height:50px;display:grid;grid-template-columns:repeat(6,1fr);padding:0;gap:0;border-bottom:1px solid var(--border)}.panel-tabs button{height:50px;padding:5px 0;font-size:10px}.panel-tabs b{font-size:17px;line-height:18px;margin-bottom:3px}.panel-tabs button[aria-pressed=true]{box-shadow:inset 0 -2px #29583f}.panel-section{max-height:270px;overflow:auto;padding:14px 18px}.panel-section h2{margin-bottom:10px}.template-card{max-width:200px}.template-card #template-art{padding:10px}.template-description{padding:8px}.template-description>b,.template-description>span,.template-help{display:none}.workspace{min-height:440px;height:calc(100dvh - 160px);padding:0 12px 8px}.canvas-scroll{min-height:160px;padding:10px 4px}.workspace-toolbar{padding:8px 0 2px}.spread-info{gap:2px}.canvas-footer{font-size:10px}.gesture-help{display:none}.photo-results{grid-template-columns:repeat(3,1fr)}.photo-results button{height:80px}.panel-section.selection-section{max-height:340px}.preview-dialog #preview-art{padding:5px}.photo-license,.photo-empty-note{font-size:10px}.export-choices{gap:7px}.export-choices button{padding:12px 8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}


.inline-text-editor{position:absolute;left:0;top:0;z-index:5;transform-origin:0 0;display:block;min-height:0;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;outline:0.3px solid #508df5!important;outline-offset:0!important;resize:none;overflow:hidden;line-height:1.4;letter-spacing:normal;box-shadow:0 0 0 0.1px #fff;white-space:pre;tab-size:4}#edit-on-canvas{width:100%;background:#edf3ee;border-color:#d7e3d8;color:#28563d;margin:5px 0 10px}

.font-preview{font-size:20px;line-height:1.65;margin:14px 0 8px;border:1px solid #dce1e6;padding:12px;border-radius:6px;overflow-wrap:anywhere;background:#f7f9fb}.font-status{font-size:14px;line-height:1.55;margin-bottom:7px;color:#465a73}.font-credit{font-size:12px;color:#465a73;text-underline-offset:3px}
.font-preview{font-size:16px;padding:8px}.font-status,.font-credit{font-size:11px}
.library-heading{display:flex;align-items:center;justify-content:space-between}.library-heading h2{margin-bottom:8px}.library-heading>span{font-size:11px;background:#edf2ed;color:#496651;border-radius:20px;padding:3px 8px}.library-intro{font-size:12px;color:#7c8981;line-height:1.6;margin:0 0 18px}#shape-search{font-size:12px;background:#f8faf8;border-color:#e3e9e4;border-radius:8px}.shape-filter{display:flex;gap:5px;margin:14px 0}.shape-filter button{min-height:28px;padding:4px 10px;border:0;border-radius:20px;font-size:11px;color:#7b8880;background:#f4f6f4}.shape-filter button[aria-pressed=true]{background:#2f5542;color:#fff}.shape-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.shape-grid button{min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 5px 10px;background:#f6f8f5;border:1px solid #edf0e9;border-radius:10px;color:#799d84}.shape-grid button:nth-child(4n+2){background:#f7f3ee;color:#b19a78;border-color:#f0eae1}.shape-grid button:nth-child(4n+3){background:#f1f4f8;color:#859eb7;border-color:#e8edf3}.shape-grid button:nth-child(4n){background:#f6f0f1;color:#ba939b;border-color:#eee4e7}.shape-grid button:hover{border-color:#8da692;box-shadow:0 3px 9px #203e2e10;transform:translateY(-1px)}.shape-grid svg{display:block;width:32px;height:32px;overflow:visible}.shape-grid button span{font-size:10px;white-space:nowrap;color:#56645c;letter-spacing:-.4px}#shape-empty{font-size:12px;color:#858f88;padding:25px 0;text-align:center}.stack-hint{font-size:10px;line-height:1.6;color:#839086;margin:8px 0 12px}
.topic-heading{margin:19px 0 11px;display:flex;flex-direction:column;gap:5px}.topic-heading strong{font-size:12px;font-weight:600;color:#445d4c}.topic-heading>span{font-size:10px;color:#95a097}.photo-topics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.photo-topics button{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:500;min-height:35px;border-radius:8px;padding:5px 3px;background:#f5f7f5;border:1px solid #e8eee9;color:#577361}.photo-topics button>span{font-size:17px;line-height:1;color:#87a58e}.photo-topics [data-tone=rose]{background:#fbf2f3;border-color:#f6e8eb;color:#a96e7c}.photo-topics [data-tone=rose]>span{color:#c98e9d}.photo-topics [data-tone=blue]{background:#f0f6fb;border-color:#e5edf6;color:#6183a2}.photo-topics [data-tone=blue]>span{color:#8aabc6}.photo-topics [data-tone=amber]{background:#faf5ec;border-color:#f3ebda;color:#9d8250}.photo-topics [data-tone=amber]>span{color:#bba06b}.photo-topics [data-tone=violet]{background:#f5f2fa;border-color:#ece6f5;color:#917ab0}.photo-topics [data-tone=violet]>span{color:#a48bbf}.photo-topics [data-tone=stone]{background:#f4f5f5;border-color:#e9eceb;color:#768582}.photo-topics button:hover,.photo-topics button[aria-pressed=true]{border-color:#6f9278;box-shadow:inset 0 0 0 1px #6f9278;color:#35573f}.more-topics{margin-top:10px}.more-topics summary{font-size:11px;cursor:pointer;color:#819085;padding:5px 0}.more-topics .photo-topics{margin-top:9px}.photo-license{line-height:1.7}
.photo-review-layout{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:start;margin:20px 0}.photo-review-layout img{width:150px;height:150px;object-fit:cover;border-radius:9px;background:#f1f3f1}.photo-review-layout h3{margin:0;font-size:15px;overflow-wrap:anywhere}.photo-review-layout p{font-size:12px;line-height:1.6;margin:10px 0}.photo-review-layout a{font-size:12px;display:inline-block;margin:4px 12px 4px 0;color:#386749}.rights-note{font-size:12px!important;background:#f6f7f4;padding:12px;border-radius:7px;line-height:1.75!important}.rights-check{flex-direction:row;align-items:flex-start;font-size:12px;margin:18px 0;gap:9px}.rights-check input{flex-shrink:0}.photo-review-actions{display:flex;justify-content:flex-end;gap:8px}.photo-review-actions button{font-size:12px}
@media(max-width:680px){.panel-tabs{grid-template-columns:repeat(7,1fr)}.photo-topics{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-topics button{min-height:34px}.shape-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.photo-review-layout{grid-template-columns:95px 1fr;gap:12px}.photo-review-layout img{width:95px;height:110px}}


/* Theme applies to application chrome only; SVG artwork and inline text retain their own colors. */
:root[data-theme=dark]{color-scheme:dark;color:#e2e5e8;background:#202224;--navy:#e2e5e8;--border:#44484c;--muted:#adb4bb;--blue:#8bb4ee}
[data-theme=dark] .editor-header,[data-theme=dark] .setup-panel,[data-theme=dark] dialog{background:#25282b;color:#e2e5e8}
[data-theme=dark] .panel-tabs{background:#202326}
[data-theme=dark] button,[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea:not(.inline-text-editor){background:#303438;color:#e2e5e8;border-color:#50565b}
[data-theme=dark] button:hover{background:#3d4449;border-color:#9ba9a0}
[data-theme=dark] .panel-tabs button{background:transparent;color:#aab3b9}
[data-theme=dark] .panel-tabs button[aria-pressed=true]{background:#344b40;color:#dcf0df;box-shadow:inset 3px 0 #9abc9d}
[data-theme=dark] .workspace{background:#383838}
/* Neutral surround and double boundary separate white or dark covers from the UI. */
#cover-canvas{outline:1px solid #9a9a9a;outline-offset:3px}
[data-theme=dark] #cover-canvas{background:white;box-shadow:0 0 0 1px #151515,0 10px 28px #0006;outline-color:#a1a1a1}
[data-theme=dark] .preview-dialog #preview-art{background:#383838}
[data-theme=dark] .preview-dialog svg{outline:1px solid #a1a1a1;outline-offset:3px;color-scheme:light}
[data-theme=dark] .brand-symbol{background:#3d5548;color:#dcf783}
[data-theme=dark] .primary,[data-theme=dark] .header-actions .primary{background:#bcd8bd;color:#193522;border-color:#bcd8bd}
[data-theme=dark] .layers button[aria-pressed=true]{background:#344c43;border-color:#a0c3ac}
[data-theme=dark] .hint,[data-theme=dark] .rights-note,[data-theme=dark] .export-note,[data-theme=dark] .font-preview{background:#303733;color:#d7e0d8;border-color:#505b54}
[data-theme=dark] .badge,[data-theme=dark] .library-heading>span{background:#36433a;color:#c2d8c7}
[data-theme=dark] #template-art{background:#383838}
[data-theme=dark] .template-description>b,[data-theme=dark] .upload-photo,[data-theme=dark] #edit-on-canvas,[data-theme=dark] .photo-review-layout a{color:#b5d9bd;background:#303b33;border-color:#516256}
[data-theme=dark] .shape-grid button,[data-theme=dark] .photo-topics button{background:#303a35;border-color:#48554c;color:#a9cab3}
[data-theme=dark] .shape-grid button:nth-child(4n+2),[data-theme=dark] .photo-topics [data-tone=amber]{background:#3c382f;color:#d1bd96}
[data-theme=dark] .shape-grid button:nth-child(4n+3),[data-theme=dark] .photo-topics [data-tone=blue]{background:#303b47;color:#abc5df}
[data-theme=dark] .shape-grid button:nth-child(4n),[data-theme=dark] .photo-topics [data-tone=rose]{background:#41343b;color:#dab5c2}
[data-theme=dark] .photo-topics [data-tone=violet]{background:#3b3447;color:#c6b1e3}
[data-theme=dark] .shape-grid button span,[data-theme=dark] .topic-heading strong{color:#d0d9d3}
[data-theme=dark] .shape-filter button[aria-pressed=true],[data-theme=dark] .photo-topics button[aria-pressed=true]{background:#40594b;color:#e4f2e7;border-color:#a4c6ae}
[data-theme=dark] #shape-search{background:#303438;border-color:#50565b}
[data-theme=dark] .canvas-footer,[data-theme=dark] .gesture-help,[data-theme=dark] .status,[data-theme=dark] .check-strip p,[data-theme=dark] .check-strip summary,[data-theme=dark] .spread-info button,[data-theme=dark] #photo-status,[data-theme=dark] .library-intro,[data-theme=dark] .template-help,[data-theme=dark] .template-description>span,[data-theme=dark] .font-status,[data-theme=dark] .font-credit,[data-theme=dark] .stack-hint,[data-theme=dark] .preview-disclaimer{color:#b8c0c5}
[data-theme=dark] .check-strip.has-warnings summary{color:#edc07b}
[data-theme=dark] .delete-button,[data-theme=dark] .error{color:#f2a6a6}
#cover-canvas,#template-art svg,.inline-text-editor{color-scheme:light}
@media(max-width:680px){.header-actions button{padding:5px 8px}.header-actions{justify-content:space-between}}
/* AI image workspace: dark chrome, full-size comparison, persistent examples. */
.ai-heading{display:flex;align-items:center;gap:8px}.ai-heading>span{font-size:24px;color:#ba94ff}.ai-heading h2{margin:0;font-size:18px}.ai-intro{font-size:14px;line-height:1.7;margin:14px 0 20px;color:var(--muted)}.ai-tools{display:grid;gap:8px}.ai-tools button{text-align:left;padding:12px;min-height:64px;border-radius:8px}.ai-tools strong{display:block;font-size:14px}.ai-tools span{display:block;font-size:12px;margin-top:6px;color:var(--muted)}.ai-connection{font-size:14px;line-height:1.65;margin:18px 0 8px}.ai-recheck{font-size:12px}.ai-example{margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.ai-example-heading{display:flex;align-items:center;justify-content:space-between}.ai-example-heading h3{font-size:14px;margin:0}.ai-example-heading>span,.ai-example-tag{font-size:12px;background:#613d8b;color:#fff;padding:4px 7px;border-radius:4px}.ai-example-pair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.ai-example figure,.ai-comparison figure{min-width:0;margin:0}.ai-example img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:contain}.ai-example figcaption{font-size:12px;margin-top:6px;color:var(--muted)}.ai-example>button{font-size:14px;width:100%;min-height:44px}.ai-example>p{font-size:12px;line-height:1.65;margin-top:10px;color:var(--muted)}.transparency-grid{background-color:#f4f4f4!important;background-image:conic-gradient(#cbd0d4 25%,transparent 0 50%,#cbd0d4 0 75%,transparent 0)!important;background-size:16px 16px}.ai-dialog{width:min(880px,calc(100vw - 24px));max-width:880px}.ai-dialog h2{font-size:22px;line-height:1.5;margin:8px 0}.ai-dialog p,.ai-dialog label{font-size:14px;line-height:1.7}.ai-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.ai-image-frame{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:#f1f3f5}.ai-image-frame img{width:100%;height:100%;object-fit:contain}.ai-image-frame span{padding:14px;color:#48545e;background:#ffffffdc;font-size:14px;max-width:90%;text-align:center;border-radius:6px}.ai-comparison figcaption{font-size:14px;margin-top:8px}.ai-dialog form{display:grid;gap:10px}.ai-dialog input,.ai-dialog select,.ai-dialog textarea{font-size:16px;width:100%;min-height:44px}.ai-dialog textarea{resize:vertical}.ai-dialog button{font-size:14px;min-height:44px}#ai-disclosure{color:var(--muted)}#ai-connection-note{background:#fff1d9;color:#735016;border-radius:6px;padding:10px}#ai-status{min-height:24px;margin:16px 0}.ai-result-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:14px;border-top:1px solid var(--border)}#image-ai-actions{display:grid;gap:8px;margin:16px 0}#image-ai-actions[hidden]{display:none}#image-ai-actions button{min-height:44px;font-size:14px}.ai-example-tag[hidden]{display:none}[data-theme=dark] .ai-image-frame{background-color:#292d31}[data-theme=dark] .ai-tools button{background:#303438;border-color:#4b5158}[data-theme=dark] .ai-tools strong{color:#eee7fa}[data-theme=dark] #ai-connection-note{background:#463b28;color:#f0d8a6}[data-theme=dark] .ai-dialog .primary{background:#cab4f4;color:#211531;border-color:#cab4f4}
@media(min-width:681px){.panel-tabs{overflow-y:auto}.panel-tabs button{flex-shrink:0}}
@media(max-width:680px){.panel-tabs{display:flex;flex-direction:row;overflow-x:auto;overflow-y:hidden}.panel-tabs button{min-width:64px;flex:1 0 64px;font-size:12px;height:50px}.ai-panel{max-height:380px}.ai-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ai-tools button{padding:8px 6px}.ai-tools span{font-size:12px;line-height:1.5}.ai-dialog{padding:16px}.ai-dialog h2{font-size:19px}.ai-comparison{gap:8px}.ai-comparison figcaption{font-size:12px}.ai-result-actions{flex-direction:column}.ai-result-actions button{width:100%}.ai-image-frame span{font-size:12px;padding:8px}}
/* A single materials entry with three searchable collections. */
.asset-kinds{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:4px;margin:16px 0}.asset-kinds button{min-height:44px;font-size:12px;padding:6px 4px;border-radius:8px}.asset-kinds button[aria-pressed=true]{background:#23382e;color:#fff;border-color:#567662}.asset-caption{font-size:12px;line-height:1.5;margin:6px 2px 4px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.asset-rights{margin:12px 0;font-size:12px;line-height:1.7}.asset-rights summary{cursor:pointer;min-height:36px;display:flex;align-items:center}.asset-rights a{color:inherit;text-decoration:underline}.photo-license{display:block;margin-top:14px}.photo-results a{line-height:1.5;overflow-wrap:anywhere}.photo-topics button{min-height:44px}.photo-search input{font-size:16px}.photo-search button{min-height:44px}
html[data-theme=dark] .asset-kinds button[aria-pressed=true]{background:#b9d8bd;color:#172b1c;border-color:#b9d8bd}html[data-theme=dark] .asset-caption,html[data-theme=dark] .asset-rights{color:#c9d4cc}

.shortcuts-dialog{width:min(760px,calc(100vw - 24px));max-width:760px}.shortcuts-dialog>p{font-size:14px;line-height:1.7}.shortcut-list{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}.shortcut-list h3{font-size:15px;margin:20px 0 8px}.shortcut-list dl{margin:0}.shortcut-list dl>div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--border)}.shortcut-list dt,.shortcut-list dd{margin:0;font-size:12px;line-height:1.5}.shortcut-list dd{text-align:right}.shortcut-list kbd{font:inherit;white-space:nowrap;background:#edf1f3;border:1px solid #d3dbe0;border-radius:4px;padding:3px 5px;color:#243441}.single-key-setting{display:flex;align-items:center;gap:10px;margin:22px 0 12px;font-size:13px;min-height:44px}.single-key-setting input{width:18px;flex-shrink:0}.shortcut-note{color:var(--muted)}[data-theme=dark] .shortcut-list kbd{background:#353b40;border-color:#5c656c;color:#edf1f4}@media(max-width:680px){.shortcut-list{grid-template-columns:1fr;gap:0}.shortcuts-dialog{padding:16px}.header-actions{overflow-x:auto;justify-content:flex-start}.header-actions button{flex:0 0 auto;min-height:36px;padding:6px 9px}.editor-header{height:auto;min-height:112px}.shortcut-list dt,.shortcut-list dd{font-size:13px}}

#font-picker{width:min(660px,calc(100vw - 24px));max-height:88dvh;padding:20px;box-sizing:border-box}
.font-picker-header{display:flex;align-items:center;justify-content:space-between;gap:16px}
.font-picker-header h2{margin:0;font-size:20px}
.font-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:60dvh;overflow-y:auto;margin:16px 0;padding:4px;overscroll-behavior:contain}
.font-choice{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px;text-align:left;min-width:0;min-height:142px}
.font-choice[aria-pressed=true]{outline:2px solid #6c9fff;outline-offset:-2px}
.font-choice small{font-size:12px;opacity:.8}
.font-choice-sample{font-size:27px;line-height:1.65;overflow-wrap:anywhere;font-weight:400}
#open-font-picker{width:100%;margin:8px 0}
@media(max-width:520px){.font-picker-list{grid-template-columns:1fr}.font-choice-sample{font-size:28px}}

#cover-canvas.material-drop-target{outline:3px solid #83b5ff;outline-offset:4px} [data-material-drag="true"]{cursor:grab} [data-material-drag="true"]:active{cursor:grabbing}

.card-overview{padding:12px 18px;border-top:1px solid var(--line,#ddd);background:var(--surface,#fff)}.card-overview p{margin:0 0 8px;font-size:12px;line-height:1.5}.card-face-list{display:flex;gap:12px}.card-face-list button{display:grid;gap:5px;padding:7px;border:2px solid transparent;border-radius:8px;background:transparent;color:inherit}.card-face-list button[aria-pressed=true]{border-color:#508df5}.card-face-thumbnail{display:block;width:100px;height:68px;pointer-events:none}.card-face-thumbnail svg{width:100%;height:100%}.card-face-thumbnail svg *{pointer-events:none}
[data-theme=dark] .card-overview{background:#292d31;color:#dce3e8;border-color:#50565b}.card-overview[hidden]{display:none}
.card-orientation-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px}.card-orientation-controls button{min-height:44px;padding:8px 16px;border:1px solid #697b91;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.card-orientation-controls button[aria-pressed=true]{background:#285fc2;color:#fff;border-color:#285fc2}.card-orientation-controls button:disabled{opacity:.5;cursor:default}.card-orientation-controls span{font-size:12px}.card-product-context #product-file-return[hidden]{display:none}
#card-direction-bar{padding:10px 18px 0;border-bottom:1px solid var(--line,#ddd)}#card-direction-bar[hidden]{display:none}
.photo-crop-dialog{width:min(650px,calc(100vw - 24px))}.photo-crop-dialog canvas{display:block;max-width:100%;height:auto;margin:12px auto}.crop-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.photo-crop-dialog button{min-height:44px}.photo-crop-dialog input{width:100%}
