@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-normal-B-1hWBU7.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-400-normal-B7YtguxJ.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-400-italic-BLh7T8o8.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-normal-BsRWmXhO.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-500-normal-zIXX3Q-H.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-700-normal-DajfzrDU.woff2)format("woff2"),url(/assets/cormorant-garamond-latin-700-normal-O25Qpphb.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff)format("woff")}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/great-vibes-latin-400-normal-q5-78SH_.woff2)format("woff2"),url(/assets/great-vibes-latin-400-normal-BAZ173uY.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/cinzel-latin-400-normal-DnUIPmzd.woff2)format("woff2"),url(/assets/cinzel-latin-400-normal-C8jUSQqm.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/cinzel-latin-500-normal-B-2dbOfA.woff2)format("woff2"),url(/assets/cinzel-latin-500-normal-DMNTwV-V.woff)format("woff")}@font-face{font-family:Cinzel;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cinzel-latin-600-normal-Dd5YO2UX.woff2)format("woff2"),url(/assets/cinzel-latin-600-normal-CH_LB4su.woff)format("woff")}:root{--bg:#f4f1ea;--panel:#faf7f1;--panel-strong:#fffdf8;--stage:#eae6dd;--ink:#1e1d19;--ink-soft:#454137;--muted:#6d665a;--muted-light:#746c5e;--line:#e3ddd0;--line-strong:#d2c9b8;--accent:#a9844d;--accent-soft:#f1e9da;--success:#3f7657;--danger:#9c3f2c;--font-sans:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--shadow-paper:0 1px 1px #2820140f, 0 18px 35px -18px #28201447, 0 50px 90px -55px #28201461}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{color:#1e1d19;background:#d9c7a7}*{scrollbar-width:thin;scrollbar-color:#ccc3b3 transparent}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-thumb{background:#ccc3b3;border-radius:99px}::-webkit-scrollbar-track{background:0 0}.app{background:var(--bg);flex-direction:column;height:100dvh;display:flex}.app-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf7f1eb;flex:0 0 68px;justify-content:space-between;align-items:center;gap:20px;padding:0 26px;display:flex;position:relative}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{background:var(--ink);color:#f8f1e2;width:37px;height:37px;font-family:var(--font-serif);border-radius:50%;flex:0 0 37px;place-items:center;padding-left:2px;font-size:24px;font-weight:600;line-height:1;display:grid;box-shadow:inset 0 0 0 1px #c9a45c9e,inset 0 0 0 4px #ffffff09}.brand-copy{flex-direction:column;gap:1px;min-width:0;display:flex}.brand-name{font-family:var(--font-serif);letter-spacing:.01em;font-size:26px;font-weight:600;line-height:1}.brand-sub{color:var(--muted-light);letter-spacing:.22em;text-transform:uppercase;font-size:10px;font-weight:600;line-height:1.4}.header-actions{align-items:center;gap:9px;display:flex}.save-status{color:var(--muted-light);letter-spacing:.01em;white-space:nowrap;align-items:center;gap:7px;margin-right:8px;font-size:12.5px;display:inline-flex}.save-dot{background:#7d9b86;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #7d9b861f}.button{height:40px;color:var(--ink-soft);letter-spacing:.005em;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:500;transition:background-color .14s,border-color .14s,color .14s,transform .14s,box-shadow .14s;display:inline-flex}.button:hover{background:#f0ebdf}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button-primary{border-color:var(--ink);background:var(--ink);color:#fbf6eb;box-shadow:0 1px 1px #0000001f}.button-primary:hover{color:#fffaf0;background:#2e2c25;border-color:#2e2c25}.button-ghost{border-color:#0000}.workspace{flex:1;grid-template-columns:396px minmax(0,1fr);grid-template-areas:"editor canvas";min-height:0;display:grid}.editor-panel{border-right:1px solid var(--line);background:var(--panel);flex-direction:column;grid-area:editor;min-height:0;display:flex}.editor-intro{justify-content:space-between;align-items:flex-start;gap:16px;padding:25px 26px 19px;display:flex}.editor-kicker{color:var(--muted-light);letter-spacing:.22em;text-transform:uppercase;margin-bottom:5px;font-size:10.5px;font-weight:600;display:block}.editor-intro h1{font-family:var(--font-serif);letter-spacing:-.005em;margin:0;font-size:30px;font-weight:600;line-height:1}.intro-badge{border:1px solid var(--line-strong);width:33px;height:33px;color:var(--muted);letter-spacing:.06em;border-radius:50%;place-items:center;font-size:10.5px;font-weight:600;display:grid}.editor-scroll{flex:1;padding:0 26px 44px;overflow-y:auto}.panel-section{border-top:1px solid var(--line);padding:21px 0 5px}.section-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-heading h2{font-family:var(--font-serif);letter-spacing:.005em;margin:0;font-size:22px;font-weight:600;line-height:1.1}.section-heading>span{color:var(--muted-light);letter-spacing:.14em;font-size:10px;font-weight:600}.section-description{max-width:290px;color:var(--muted);margin:5px 0 15px;font-size:13.5px;line-height:1.55}.section-body{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;min-width:0;display:flex}.field-label-row{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:7px;padding:0 1px;display:flex}.field-label{color:#71695b;letter-spacing:.12em;text-transform:uppercase;font-size:11.5px;font-weight:600;line-height:1}.field-hint{color:#746c5e;font-variant-numeric:tabular-nums;letter-spacing:.03em;white-space:nowrap;font-size:11px}.field-input{border:1px solid var(--line);background:var(--panel-strong);width:100%;min-width:0;height:42px;color:var(--ink);border-radius:9px;padding:10px 12px;font-size:15px;line-height:1.4;transition:border-color .15s,box-shadow .15s,background-color .15s}.field-input::placeholder{color:#786f61}.field-input:hover{border-color:#d5ccbc}.field-input:focus{background:#fffefb;border-color:#b89a6a;outline:none;box-shadow:0 0 0 3px #b89a6a24}.field-textarea{resize:vertical;height:auto;min-height:66px;line-height:1.55}.field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.signatory{padding:1px 0 4px}.signatory+.signatory{border-top:1px dashed var(--line);padding-top:14px}.signatory-label{color:#836940;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:600;display:inline-block}.toggle-list{flex-direction:column;display:flex}.toggle-row{border-bottom:1px dashed var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:14px 1px;display:flex}.toggle-row:last-child{border-bottom:0}.toggle-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.toggle-label{font-size:14px;font-weight:500}.toggle-description{color:var(--muted);font-size:12.5px;line-height:1.5}.toggle-control{flex:none;position:relative}.toggle-control input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{background:#ddd5c6;border-radius:999px;align-items:center;width:36px;height:21px;padding:2px;transition:background-color .18s;display:flex}.toggle-thumb{background:#fffdf8;border-radius:50%;width:17px;height:17px;transition:transform .18s cubic-bezier(.2,.9,.3,1.2);box-shadow:0 1px 2px #1e1a1238}.toggle-control input:checked+.toggle-track{background:#3c6b53}.toggle-control input:checked+.toggle-track .toggle-thumb{transform:translate(15px)}.toggle-control input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:3px}.tip-card{background:#f4efe4;border:1px solid #e6decd;border-radius:11px;gap:10px;margin-top:17px;padding:13px 14px;display:flex}.tip-card p{color:#71695b;margin:0;font-size:12px;line-height:1.6}.tip-mark{color:var(--accent);flex:none;font-size:12px;line-height:1.5}.slider-stack{flex-direction:column;gap:15px;padding:2px 0 3px;display:flex}.slider-field{flex-direction:column;gap:8px;display:flex}.slider-label-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.slider-value{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:12px;font-weight:600}.slider-input{width:100%;height:18px;accent-color:var(--ink);cursor:pointer;margin:0}.type-reset{border:1px solid var(--line);background:var(--panel-strong);color:var(--muted);cursor:pointer;border-radius:999px;align-self:flex-start;padding:7px 13px;font-size:12px;font-weight:500;transition:border-color .14s,color .14s,background-color .14s}.type-reset:hover:not(:disabled){color:var(--ink);background:#fffdf8;border-color:#c8beab}.type-reset:disabled{opacity:.5;cursor:default}.seal-field{flex-direction:column;gap:9px;display:flex}.seal-dropzone{color:var(--muted);cursor:pointer;text-align:center;background:#f7f2e7;border:1px dashed #cfc5b2;border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:18px 14px;transition:border-color .15s,background-color .15s;display:flex}.seal-dropzone:hover,.seal-dropzone:focus-visible{background:#fbf7ee;border-color:#b89a6a;outline:none}.seal-drop-icon{color:#8a6d3e;background:#efe7d7;border-radius:50%;place-items:center;width:36px;height:36px;margin-bottom:2px;display:grid}.seal-drop-title{color:var(--ink);font-size:14px;font-weight:600}.seal-drop-hint{color:var(--muted-light);font-size:11.5px;line-height:1.4}.seal-preview-row{border:1px solid var(--line);background:var(--panel-strong);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;display:flex}.seal-preview{background:#fffdf8;border:1px solid #d8cfbe;border-radius:50%;flex:0 0 48px;place-items:center;width:48px;height:48px;display:grid;overflow:hidden}.seal-preview img{object-fit:cover;width:100%;height:100%}.seal-preview-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.seal-preview-title{font-size:13px;font-weight:600}.seal-preview-hint{color:var(--muted);font-size:11.5px;line-height:1.4}.seal-actions{flex-direction:column;flex:none;gap:4px;display:flex}.seal-action{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fffdf8;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:5px 9px;font-size:11.5px;font-weight:500;transition:border-color .14s,color .14s,background-color .14s;display:inline-flex}.seal-action:hover{color:var(--ink);border-color:#c8beab}.seal-action--danger:hover{color:#903c29;background:#fbf1ed;border-color:#d9b3a8}.seal-error{color:#903c29;background:#f8ebe6;border:1px solid #ebcfc5;border-radius:8px;margin:0;padding:8px 10px;font-size:12px;line-height:1.45}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.export-modal.crop-modal{width:min(100%,440px)}.crop-stage{background:#f1ebdf;border-radius:12px;flex-direction:column;align-items:center;gap:10px;margin-top:20px;padding:14px;display:flex}.crop-stage .export-error{width:100%;margin:0}.crop-viewport{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#2d2a24;border-radius:10px;flex:none;position:relative;overflow:hidden}.crop-viewport:active{cursor:grabbing}.crop-viewport img{pointer-events:none;max-width:none;position:absolute}.crop-circle{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 9999px #14120e8c,inset 0 0 0 1px #ffffff8c}.crop-loading{color:#ffffffb3;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.crop-zoom{margin-top:16px}.canvas-area{flex-direction:column;grid-area:canvas;min-width:0;min-height:0;display:flex}.stage{background-color:var(--stage);background-image:radial-gradient(circle at 50% 40%,#ffffff9e,#fff0 58%),radial-gradient(circle at 50% 45%,#3f362814 .65px,#0000 .8px);background-size:auto,22px 22px;flex-direction:column;flex:1;min-height:0;padding:18px 32px 12px;display:flex;position:relative;overflow:hidden}.stage:after{content:"";pointer-events:none;background:linear-gradient(#ffffff0f,#78664c0b);position:absolute;inset:0}.stage-toolbar,.paper-wrap,.stage-footer{z-index:1;position:relative}.stage-toolbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;display:flex}.stage-meta{color:#6d665a;align-items:center;gap:10px;display:flex}.meta-pill{color:#6d6455;letter-spacing:.14em;text-transform:uppercase;background:#faf7f1cc;border:1px solid #beb5a4b3;border-radius:6px;padding:5px 9px;font-size:10px;font-weight:600;line-height:1}.meta-text{color:#6d665a;letter-spacing:.04em;font-size:11.5px;font-weight:500}.meta-text--live{align-items:center;gap:7px;display:inline-flex}.meta-separator{background:#c8c0b0;width:1px;height:11px}.live-dot{background:#b9a98c;border-radius:50%;width:5px;height:5px;transition:background-color .3s}.app.is-ready .live-dot{background:#508a66;box-shadow:0 0 0 3px #508a661f}.icon-button{color:#6b6356;cursor:pointer;background:#faf7f1b8;border:1px solid #c4bbabcc;border-radius:7px;place-items:center;width:31px;height:31px;padding:0;transition:background-color .14s,color .14s,border-color .14s;display:grid}.icon-button:hover{color:var(--ink);background:#fdfaf4;border-color:#b9af9d}.paper-wrap{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.certificate-paper{aspect-ratio:1600/1131;width:min(100%,1080px,141.42dvh - 452.544px);box-shadow:var(--shadow-paper);background:#fff;border-radius:2px;animation:.65s cubic-bezier(.22,1,.36,1) both paper-in;overflow:hidden}.certificate-paper>svg{width:100%;height:auto;display:block}.stage-footer{color:#746c5e;letter-spacing:.15em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-top:9px;font-size:10px;font-weight:500;display:flex}@keyframes paper-in{0%{opacity:0;transform:translateY(9px)scale(.994)}to{opacity:1;transform:translateY(0)scale(1)}}.design-bar{border-top:1px solid var(--line);background:#f8f5eef2;flex:none;align-items:flex-end;gap:28px;padding:14px 28px 15px;display:flex}.design-group{min-width:0}.design-group--templates{flex:1}.design-group--palette{flex-direction:column;flex:none;min-width:198px;display:flex}.design-label{color:#6d665a;letter-spacing:.18em;text-transform:uppercase;align-items:baseline;gap:8px;margin-bottom:8px;font-size:10px;font-weight:600;line-height:1;display:flex}.design-label span{color:var(--ink);font-family:var(--font-serif);letter-spacing:0;text-transform:none;font-size:16px;font-weight:600;line-height:1}.template-strip{gap:8px;padding:1px 1px 3px;display:flex;overflow-x:auto}.template-card{cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;flex:0 0 110px;min-width:0;padding:0;display:flex}.template-thumb{aspect-ratio:1600/1131;background:#fff;border:1px solid #dcd3c3;border-radius:4px;width:100%;transition:transform .18s,border-color .18s,box-shadow .18s;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #3228180f}.template-thumb svg{pointer-events:none;width:100%;height:auto;display:block}.template-card:hover .template-thumb{border-color:#bfb5a2;transform:translateY(-2px);box-shadow:0 5px 12px -6px #32281859}.template-card.is-selected .template-thumb{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink), 0 5px 12px -6px #32281859}.template-check{background:var(--ink);color:#fbf6eb;border-radius:50%;place-items:center;width:15px;height:15px;display:grid;position:absolute;top:4px;right:4px;box-shadow:0 1px 3px #00000040}.template-meta{flex-direction:column;min-width:0;margin-top:5px;padding:0 1px;display:flex}.template-name{color:var(--ink-soft);font-size:12px;font-weight:500;line-height:1.3}.template-tagline{color:#746c5e;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-size:10px;line-height:1.4;overflow:hidden}.template-card.is-selected .template-name{color:var(--ink);font-weight:600}.swatch-row{align-items:center;gap:8px;display:flex}.swatch{cursor:pointer;background:#fbf8f2;border:1px solid #d8d0c1;border-radius:50%;flex:0 0 29px;place-items:center;width:29px;height:29px;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;position:relative}.swatch:hover{border-color:#b9af9c;transform:translateY(-1px)}.swatch-core{background:var(--swatch-accent);border-radius:50%;width:13px;height:13px;box-shadow:inset 0 0 0 .5px #00000014}.swatch.is-selected{border-color:var(--ink);box-shadow:0 0 0 2px var(--panel), 0 0 0 3px var(--ink)}.swatch-check{border:1.5px solid var(--panel);background:var(--ink);color:#fbf6eb;border-radius:50%;place-items:center;width:13px;height:13px;display:grid;position:absolute;bottom:-3px;right:-3px}.swatch--custom{background:conic-gradient(#e26d5a,#e6bb5c,#76a46c,#5ca3a6,#6677c6,#b26ba3,#e26d5a);border-color:#d8d0c1;overflow:hidden}.swatch--custom.is-selected{box-shadow:0 0 0 2px var(--panel), 0 0 0 3px var(--ink)}.swatch--custom input[type=color]{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.swatch-custom-icon{width:20px;height:20px;color:var(--ink-soft);pointer-events:none;background:#fffdf8;border-radius:50%;place-items:center;display:grid;box-shadow:0 1px 2px #0000001f}.palette-hex{color:#746c5e;letter-spacing:.12em;margin-top:7px;font-size:10px;font-weight:500}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#18161285;justify-content:center;align-items:center;padding:24px;animation:.18s both fade-in;display:flex;position:fixed;inset:0}.export-modal{background:#faf7f1;border:1px solid #ffffff47;border-radius:17px;outline:none;width:min(100%,620px);max-height:calc(100dvh - 48px);padding:28px;animation:.24s cubic-bezier(.22,1,.36,1) both modal-in;overflow-y:auto;box-shadow:0 0 0 1px #1e19110a,0 40px 100px -30px #0f0c088c}.modal-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.modal-eyebrow{color:#836940;letter-spacing:.22em;text-transform:uppercase;margin-bottom:5px;font-size:10.5px;font-weight:600;display:block}.modal-header h2{font-family:var(--font-serif);letter-spacing:-.01em;margin:0 0 5px;font-size:32px;font-weight:600;line-height:1}.modal-header p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.modal-close{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;flex:0 0 32px;place-items:center;padding:0;transition:background-color .14s,color .14s;display:grid}.modal-close:hover{color:var(--ink);background:#f0ebdf}.format-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:22px;display:grid}.format-card{border:1px solid var(--line);background:var(--panel-strong);cursor:pointer;text-align:left;border-radius:10px;flex-direction:column;gap:3px;min-width:0;padding:13px 11px 11px;transition:border-color .14s,background-color .14s,box-shadow .14s,transform .14s;display:flex;position:relative}.format-card:hover{border-color:#c8beab;transform:translateY(-1px)}.format-card.is-selected{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink);background:#fffefb}.format-label{color:var(--ink);font-family:var(--font-serif);letter-spacing:.02em;font-size:24px;font-weight:600;line-height:1}.format-hint{color:var(--muted-light);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;line-height:1.35;overflow:hidden}.format-check{background:var(--ink);color:#fbf6eb;border-radius:50%;place-items:center;width:14px;height:14px;display:grid;position:absolute;top:6px;right:6px}.export-options{border-top:1px solid var(--line);flex-direction:column;gap:14px;margin-top:20px;padding-top:18px;display:flex}.select-field{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:14px;font-size:11.5px;font-weight:500;display:grid}.select-field select{border:1px solid var(--line);background-color:var(--panel-strong);width:100%;height:42px;color:var(--ink);letter-spacing:0;text-transform:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%237d7669' stroke-width='1.4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border-radius:8px;outline:none;padding:0 34px 0 12px;font-size:15px;transition:border-color .14s}.select-field select:focus{border-color:#b89a6a;box-shadow:0 0 0 3px #b89a6a21}.range-field{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:8px;font-size:11.5px;font-weight:500;display:flex}.range-field>span{justify-content:space-between;align-items:baseline;display:flex}.range-field strong{color:var(--ink);letter-spacing:.04em;font-size:11.5px;font-weight:600}.range-field input[type=range]{width:100%;height:18px;accent-color:var(--ink);cursor:pointer}.export-detail{color:#71695b;background:#f3eee3;border-radius:8px;align-items:center;gap:12px;padding:9px 12px;font-size:12px;line-height:1.4;display:flex}.export-detail-label{color:#746c5e;letter-spacing:.14em;text-transform:uppercase;font-size:10px;font-weight:600}.filename-field{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:14px;font-size:11.5px;font-weight:500;display:flex}.filename-control{border:1px solid var(--line);background:var(--panel-strong);border-radius:8px;flex:0 350px;align-items:center;min-width:0;transition:border-color .14s,box-shadow .14s;display:flex;overflow:hidden}.filename-control:focus-within{border-color:#b89a6a;box-shadow:0 0 0 3px #b89a6a21}.filename-control input{letter-spacing:0;text-transform:none;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:10px 12px;font-size:15px}.filename-control>span{border-left:1px solid var(--line);color:#746c5e;letter-spacing:0;text-transform:none;align-self:stretch;align-items:center;padding:0 10px;font-size:12px;display:flex}.export-error{color:#903c29;background:#f8ebe6;border:1px solid #ebcfc5;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:12px;line-height:1.5}.modal-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:22px;padding-top:18px;display:flex}.privacy-note{max-width:230px;color:var(--muted-light);margin:0;font-size:11.5px;line-height:1.55}.modal-actions{align-items:center;gap:7px;display:flex}.button-download{min-width:172px;height:40px;padding:0 18px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.focus-overlay{z-index:55;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12110ef2;justify-content:center;align-items:center;padding:22px;animation:.2s both fade-in;display:flex;position:fixed;inset:0}.focus-dialog{flex-direction:column;align-items:center;gap:12px;width:100%;max-width:1360px;display:flex}.focus-topbar{color:#ffffff94;letter-spacing:.2em;text-transform:uppercase;justify-content:space-between;align-items:center;width:100%;font-size:10.5px;font-weight:500;display:flex}.focus-close{color:#ffffffbf;cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;transition:background-color .14s,color .14s;display:grid}.focus-close:hover{color:#fff;background:#ffffff17}.focus-stage{justify-content:center;width:100%;display:flex}.focus-paper{aspect-ratio:1600/1131;background:#fff;border-radius:2px;width:min(92vw,1300px,141.42dvh - 183.846px);overflow:hidden;box-shadow:0 30px 90px -20px #0009}.focus-paper>svg{width:100%;height:auto;display:block}.focus-hint{color:#ffffff6b;letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px}.toast{z-index:80;color:#fbf6eb;letter-spacing:.01em;background:#1d1c18f5;border-radius:999px;align-items:center;gap:9px;padding:9px 17px 9px 10px;font-size:13px;animation:.26s cubic-bezier(.22,1,.36,1) both toast-in;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 14px 35px -12px #00000080}.toast-icon{background:var(--success);color:#f5fbf7;border-radius:50%;place-items:center;width:19px;height:19px;display:grid}.toast--info .toast-icon{background:#7b6b4e}.toast-action{color:#f3d9a4;letter-spacing:.04em;cursor:pointer;background:#ffffff12;border:1px solid #ffffff38;border-radius:999px;margin-left:4px;padding:4px 9px;font-size:12px;font-weight:600;transition:background-color .14s,border-color .14s,color .14s}.toast-action:hover{color:#fff3d6;background:#ffffff24;border-color:#ffffff61}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (width<=1280px){.workspace{grid-template-columns:356px minmax(0,1fr)}.editor-intro,.editor-scroll{padding-left:22px;padding-right:22px}.stage{padding-left:24px;padding-right:24px}.design-bar{gap:20px;padding-left:22px;padding-right:22px}.template-card{flex-basis:102px}.template-tagline{display:none}}@media (width<=1120px){.workspace{grid-template-columns:338px minmax(0,1fr)}.save-status{display:none}.design-group--palette{min-width:178px}}@media (width<=980px){body{overflow:auto}.app{height:auto;min-height:100dvh}.app-header{position:sticky;top:0}.workspace{flex-direction:column;display:flex}.canvas-area{order:1}.editor-panel{border-top:1px solid var(--line);border-right:0;order:2;overflow:visible}.editor-intro,.editor-scroll{width:100%;max-width:780px;margin-left:auto;margin-right:auto}.editor-scroll{padding-bottom:54px;overflow:visible}.stage{min-height:0;padding:16px 20px 14px}.certificate-paper{width:min(100%,820px)}.stage-footer{display:none}.design-bar{flex-direction:column;align-items:stretch;gap:14px;padding:14px 20px 18px}.template-strip{gap:9px}.template-card{flex:0 0 112px}.template-tagline{display:block}.design-group--palette{min-width:0}.palette-hex{display:none}}@media (width<=700px){.field-input,.field-input::placeholder,.select-field select,.filename-control input{font-size:16px}.app-header{flex-basis:61px;padding:0 16px}.brand-mark{flex-basis:34px;width:34px;height:34px;font-size:22px}.brand-name{font-size:23px}.brand-sub{font-size:9.5px}.header-actions{gap:4px}.header-actions .button{padding:0 10px}.header-actions .button-ghost span,.header-actions .button-primary span{display:none}.header-actions .button-primary{width:40px;padding:0}.editor-intro{padding:21px 18px 16px}.editor-intro h1{font-size:27px}.editor-scroll{padding:0 18px 44px}.stage{padding:14px 14px 18px}.meta-text,.meta-separator{display:none}.stage-toolbar{margin-bottom:9px}.design-bar{padding:13px 14px 18px}.template-card{flex-basis:104px}.template-tagline{display:none}}@media (width<=560px){.field-row{grid-template-columns:minmax(0,1fr)}.brand-sub{display:none}.export-modal{border-radius:14px;max-height:calc(100dvh - 24px);padding:22px 18px}.modal-backdrop{padding:12px}.modal-header h2{font-size:29px}.format-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.format-card{padding:11px 10px 9px}.select-field{grid-template-columns:1fr;gap:7px}.filename-field{flex-direction:column;align-items:stretch;gap:7px}.filename-control{flex-basis:auto}.modal-footer{flex-direction:column;align-items:stretch}.privacy-note{max-width:none}.modal-actions{justify-content:flex-end}.button-download{flex:1;min-width:0}.toast{text-align:center;justify-content:center;bottom:16px;left:16px;right:16px;transform:none}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
