:root{--font-body: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", sans-serif;--type-caption: .8125rem;--type-label: .875rem;--type-body: 1rem;--type-title: 1.375rem;--ink: #202322;--muted: #5e6561;--page: #fafaf9;--surface: #fff;--input: #fff;--line: #d8dcda;--green: #254a36;--soft-green: #edf3ee;--danger: #a22939;--ease-out: cubic-bezier(.23, 1, .32, 1);font:400 100%/1.5 var(--font-body);color:var(--ink);background:var(--page);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}:root[data-theme=dark]{color-scheme:dark;--ink: #f1f3f1;--muted: #b0b7b2;--page: #171819;--surface: #202323;--input: #202323;--line: #444b46;--green: #b8ddc6;--soft-green: #293c30;--danger: #ffabb9}*{box-sizing:border-box}body{margin:0;scrollbar-color:var(--muted) var(--page)}::selection{background:#c3dfcd;color:#163220}button,input,textarea,select{font:inherit;color:inherit}button,a,summary{touch-action:manipulation}button,summary{cursor:pointer;user-select:none;-webkit-user-select:none}button{transition:transform .16s var(--ease-out),background-color .16s ease}button:not(:disabled):active{transform:scale(.97)}button:disabled{opacity:.5;cursor:not-allowed}button svg,a svg{flex-shrink:0}input,textarea,select{min-width:0;caret-color:var(--green)}a{color:inherit;text-underline-offset:.2em}:focus-visible{outline:2px solid var(--green);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance;overflow-wrap:anywhere}p{text-wrap:pretty}h2{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em;font-weight:650}h3{font-size:1rem;font-weight:600;line-height:1.4}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;inset-inline-start:1rem;top:-6rem;padding:1rem;background:var(--surface);z-index:100}.skip-link:focus{top:1rem}.site-header,.page,.site-footer{width:min(100% - 3rem,70rem);margin-inline:auto}.site-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;min-height:4.5rem;padding-block:calc(.75rem + env(safe-area-inset-top,0px)) .75rem;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:.625rem;text-decoration:none;font-size:1rem;font-weight:700;letter-spacing:-.025em}.brand img{flex-shrink:0}.brand-subtitle{color:var(--muted);font-weight:450}.header-actions{display:flex;flex-wrap:wrap;min-width:0;align-items:center;gap:1.5rem;font-size:var(--type-label)}.header-actions a{text-decoration:none;padding-block:.75rem}#theme-control{display:inline-flex;width:2.75rem;height:2.75rem}.icon-button{width:2.75rem;height:2.75rem;border:0;padding:.5rem;background:transparent;display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;flex-shrink:0}.intro{padding:2.25rem 0 1.5rem}.intro h1{font-size:clamp(1.875rem,3.2vw,2.75rem);line-height:1.12;font-weight:650;letter-spacing:-.035em;margin-bottom:.75rem}.intro-promise{font-size:1rem;font-weight:550;margin-bottom:.375rem}.intro-description{color:var(--muted);font-size:var(--type-label)}.tool-mount{scroll-margin-top:1rem}.tool-loading{display:flex;justify-content:center;align-items:center;color:var(--muted);padding-block:1.5rem}.with-js,.js .without-js{display:none}.js .with-js{display:block}.js .tool-loading{min-height:54rem}@media(max-width:1100px)and (min-width:761px){.js .tool-loading{min-height:56.5rem}}.studio-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.tool-hint{font-size:var(--type-caption);color:var(--muted)}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:var(--type-label);font-weight:550;min-height:2.75rem;background:none;border:0;padding:.375rem 0;color:var(--green)}.studio-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);column-gap:3rem;row-gap:1.5rem;align-items:start;border-block:1px solid var(--line);padding-block:1.25rem 1.5rem}.formats{grid-column:1 / -1;min-width:0}.format-list{display:flex;flex-wrap:wrap;gap:.25rem}.format-button{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;min-height:2.75rem;padding:.5rem .75rem;background:transparent;border:0;border-radius:.5rem;color:var(--muted);font-size:var(--type-label);white-space:nowrap}.format-button.active{background:var(--soft-green);color:var(--green);font-weight:600}.format-button svg:last-child:not(:first-child){display:none}.editor-card,.preview-card{min-width:0}.step-heading{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.step-heading h2{flex:1;min-width:0;font-size:1.125rem;letter-spacing:-.02em}.editor-description{color:var(--muted);font-size:var(--type-label);max-width:55ch}.preview-card .step-heading{margin-bottom:.75rem}.reset-button{margin-block:-.75rem}.content-fields{display:flex;flex-direction:column;gap:1rem;margin-top:1.25rem}.field{display:flex;flex-direction:column;gap:.5rem;min-width:0}.field label,.color-field>label,.setting-label,.export-settings>label{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;font-size:var(--type-label);font-weight:550;line-height:1.4}.field label>span{font-size:var(--type-caption);color:var(--muted);font-weight:400}.field input:not([type=range]),.field textarea,.field select,.export-settings select{width:100%;min-height:3rem;border:1px solid var(--line);border-radius:.5rem;background:var(--input);padding:.75rem;font-size:1rem;line-height:1.5}.field textarea{resize:vertical;min-height:6rem;max-height:20rem}.field input::placeholder,.field textarea::placeholder{color:var(--muted)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--danger)}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>svg{position:absolute;inset-inline-start:.75rem;color:var(--muted);pointer-events:none}.input-wrap.with-icon input{padding-inline-start:2.375rem}.select-wrap{position:relative}.select-wrap select{appearance:none;padding-inline-end:2.25rem}.select-wrap>svg{position:absolute;inset-inline-end:.75rem;top:1rem;pointer-events:none}.field-hint{font-size:var(--type-caption);line-height:1.5;color:var(--muted)}.customization{margin-top:1.25rem;border-top:1px solid var(--line)}.customization>summary,.advanced>summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3rem;padding-block:.75rem;font-size:var(--type-label);list-style:none}.customization>summary{font-weight:550}summary::-webkit-details-marker{display:none}.customization[open]>summary>svg,.advanced[open]>summary>svg{transform:rotate(180deg)}.customization-fields{padding-block:.5rem}.color-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));gap:.75rem}.color-field{min-width:0}.color-picker{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;min-height:2.75rem;padding:.5rem .75rem;border:1px solid var(--line);border-radius:.5rem;background:var(--input);margin-top:.5rem;color:var(--muted);font-size:var(--type-caption);font-variant-numeric:tabular-nums}.color-picker input[type=color]{border:0;width:1.5rem;height:1.5rem;padding:0;background:transparent;cursor:pointer}.color-picker input::-webkit-color-swatch-wrapper{padding:0}.color-picker input::-webkit-color-swatch{border:0;border-radius:.25rem}.color-picker input::-moz-color-swatch{border:0;border-radius:.25rem}.swatches{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap;margin:.75rem 0 1rem}.swatches button{width:2.75rem;height:2.75rem;border:.5rem solid var(--page);border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;color:#fff}.swatches button.selected{outline:1px solid var(--green);outline-offset:-5px}.swatches>span{font-size:var(--type-caption);color:var(--muted);margin-inline-start:.375rem}.style-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.segmented{display:flex;flex-wrap:wrap;gap:.25rem}.segmented button{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem .75rem;background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:.5rem;font-size:var(--type-label)}.segmented button.selected{background:var(--soft-green);border-color:var(--green);color:var(--green)}.module-icon{width:.5rem;height:.5rem;border:1px solid currentColor}.module-icon.rounded{border-radius:.2rem}.logo-upload{border:1px dashed var(--line);border-radius:.5rem;margin-bottom:.5rem}.logo-upload>button{display:flex;align-items:center;gap:.75rem;border:0;background:transparent;width:100%;padding:.75rem;text-align:left}.logo-upload>button>span:nth-child(2){flex:1;min-width:0}.logo-upload strong{display:block;font-size:var(--type-label);font-weight:550}.logo-upload small{display:block;font-size:var(--type-caption);color:var(--muted);line-height:1.5;margin-top:.25rem}.upload-icon{display:inline-flex;color:var(--green)}.logo-upload.has-logo{display:flex;align-items:center;gap:.75rem;padding:.75rem}.logo-upload.has-logo>img{width:2.5rem;height:2.5rem;object-fit:contain;background:#fff}.logo-upload.has-logo>span{flex:1;min-width:0}.logo-upload.has-logo>button{width:2.75rem;padding:.5rem}.advanced>summary{color:var(--muted)}.advanced-fields{display:flex;flex-direction:column;gap:1rem;padding-block:.5rem}.field input[type=range]{width:100%;accent-color:var(--green);min-height:2.75rem}.preview-stage{display:flex;align-items:center;justify-content:center;min-height:16rem;padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:.75rem}.qr-paper{width:min(100%,14rem);aspect-ratio:1;background:#fff}.qr-preview{display:block;width:100%;height:100%}.empty-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;text-align:center;color:#5e6561;padding:1rem;height:100%;font-size:var(--type-label)}.empty-preview small{font-size:var(--type-caption)}.preview-status{text-align:center;padding:.75rem 0}.preview-status>span{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--type-label);font-weight:500;color:var(--green)}.preview-status>small{display:block;font-size:var(--type-caption);color:var(--muted);margin-top:.25rem}.error-message{color:var(--danger);font-size:var(--type-label);line-height:1.5;overflow-wrap:anywhere}.scan-note{font-size:var(--type-caption);color:var(--muted);margin-bottom:.75rem}.export-settings{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin:.75rem 0}.export-settings select{width:auto;max-width:100%;font-size:1rem;padding:.5rem .625rem;min-height:2.75rem}.download-primary,.download-secondary{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.625rem;width:100%;min-height:3rem;padding:.75rem 1rem;border-radius:.5rem;font-size:var(--type-label);font-weight:550}.download-primary{background:#254a36;color:#fff;border:1px solid #254a36}.download-primary>span{flex:1}.download-primary>svg:last-child{margin-inline-start:auto}.download-primary>svg:first-child{margin-inline-end:auto}.download-secondary{border:1px solid var(--line);color:var(--ink);background:var(--surface);margin-top:.5rem}.download-secondary>span{color:var(--muted);font-weight:400;font-size:var(--type-caption);margin-inline-start:auto}.extra-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.extra-actions button{display:flex;align-items:center;gap:.375rem;min-height:2.75rem;padding:.5rem .25rem;border:0;background:transparent;color:var(--muted);font-size:var(--type-label)}.extra-actions>span{display:none}.export-note{font-size:var(--type-caption);color:var(--muted);text-align:center;margin-top:.5rem;line-height:1.6}.privacy-strip{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding-block:.75rem;color:var(--muted);font-size:var(--type-caption)}.privacy-strip p{display:flex;align-items:center;gap:.5rem;flex:1;min-width:min(100%,20rem)}.privacy-strip svg{flex-shrink:0}.privacy-strip .text-button{font-size:var(--type-caption)}.reading-content{margin-top:3.5rem}.reading-content>section{padding-block:2.5rem;border-top:1px solid var(--line)}.reading-content h2{margin-bottom:1rem}.reading-content p{max-width:72ch;color:var(--muted);line-height:1.65}.reading-content p+p{margin-top:.75rem}.guide-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style-position:inside;margin:0;padding:0}.guide-steps li::marker{color:var(--muted);font-variant-numeric:tabular-nums;font-size:var(--type-label)}.guide-steps h3{display:inline}.guide-steps p{font-size:var(--type-label);margin-top:.5rem}.use-cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 3rem;margin:0;overflow-wrap:anywhere}.use-cases dt{font-size:1rem;font-weight:550;margin-bottom:.375rem}.use-cases dt a{text-decoration-color:var(--line)}.use-cases dd{margin:0;font-size:var(--type-label);color:var(--muted);line-height:1.65;max-width:55ch}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;list-style:none;min-height:3.5rem;padding-block:1rem;font-size:1rem;font-weight:500;overflow-wrap:anywhere}.faq summary>span[data-i18n]{min-width:0}.faq summary>span[aria-hidden=true]{font-size:1.25rem;color:var(--muted);flex-shrink:0}.faq details[open] summary>span[aria-hidden=true]{transform:rotate(45deg)}.faq details>p{padding-bottom:1.25rem;font-size:var(--type-label)}.custom-section{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.custom-section h2{font-size:1.125rem;margin-bottom:.375rem}.custom-section p,.custom-section>a{font-size:var(--type-label)}.custom-section>a{overflow-wrap:anywhere}.site-footer{display:flex;justify-content:space-between;gap:.75rem 1.5rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-block:1.5rem calc(1.5rem + env(safe-area-inset-bottom,0px));font-size:var(--type-caption);color:var(--muted)}.footer-status{font-variant-numeric:tabular-nums}.toast:empty{display:none}.toast:not(:empty){position:fixed;bottom:calc(1rem + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:.625rem;background:var(--surface);color:var(--ink);padding:.5rem .75rem;border-radius:.75rem;box-shadow:0 .5rem 2rem #0003;font-size:var(--type-label);width:max-content;max-width:calc(100% - 2rem)}.toast>svg{flex-shrink:0;color:var(--green)}.update-banner{position:fixed;bottom:1rem;inset-inline-end:1rem;z-index:41;background:var(--surface);border:1px solid var(--line);padding:1rem;font-size:var(--type-label);border-radius:.75rem;max-width:calc(100% - 2rem)}.update-banner button{padding:.5rem;border:0;background:none;text-decoration:underline;color:var(--green)}.modal{color:var(--ink);background:var(--surface);border:0;border-radius:1rem;padding:1.5rem;width:min(34rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 1.25rem 5rem #0003}.modal::backdrop{background:#0008}.modal-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.modal-heading h2{font-size:var(--type-title)}.modal-description{font-size:var(--type-label);color:var(--muted);line-height:1.6;margin-bottom:1.5rem}.modal fieldset{padding:0;margin:0;border:0;min-width:0}.batch-selects{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:1rem;margin-bottom:1rem}.batch-result{padding:1rem 0;min-height:3.5rem}.batch-result>span{display:flex;align-items:center;gap:.5rem;font-size:var(--type-label);color:var(--green);font-variant-numeric:tabular-nums}.batch-thumbnails{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:.75rem}.batch-thumbnails>img{width:4rem;height:4rem;background:#fff}.batch-thumbnails>span{font-size:var(--type-label);color:var(--muted)}.batch-print{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;min-height:3rem;margin-top:.5rem;background:none;border:1px solid var(--line);border-radius:.5rem;font-size:var(--type-label)}.modal>.error-message{margin-bottom:1rem}.privacy-content{color:var(--muted);font-size:1rem;line-height:1.65}.privacy-content>svg{color:var(--green);margin:.625rem 0}.privacy-content p{margin-bottom:1rem}@media(hover:hover)and (pointer:fine){.icon-button:hover,.format-button:not(.active):hover{background:var(--soft-green)}.header-actions a:hover,.text-button:hover,.extra-actions button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}.download-primary:not(:disabled):hover{background:#183b28}.download-secondary:not(:disabled):hover,.batch-print:not(:disabled):hover{background:var(--soft-green)}}@media(max-width:850px){.studio-grid{column-gap:1.5rem}.guide-steps{grid-template-columns:1fr;gap:1.25rem}}@media(max-width:760px){.js .tool-loading{min-height:75rem}.site-header,.page,.site-footer{width:min(100% - 2rem,70rem)}.studio-grid{grid-template-columns:minmax(0,1fr);row-gap:1.25rem}.intro{padding-block:1.75rem 1rem}.preview-card{padding-top:1.25rem;border-top:1px solid var(--line)}.format-list{flex-wrap:nowrap;overflow-x:auto;padding:.25rem;scrollbar-width:thin;scroll-padding-inline:.25rem}.format-button{flex-shrink:0}.format-button>svg{display:none}.reading-content{margin-top:2.5rem}.reading-content>section{padding-block:2rem}.use-cases{grid-template-columns:minmax(0,1fr);gap:1.25rem}}@media(max-width:500px){.site-header,.header-actions{gap:.5rem}.source-link,.brand-subtitle{display:none}.header-actions a{font-size:var(--type-caption)}.tool-hint{display:none}.studio-toolbar{justify-content:flex-end;margin-bottom:.25rem}.studio-grid{padding-top:.75rem}.privacy-strip{gap:.25rem}}@media(prefers-reduced-motion:reduce){button{transition:background-color .1s ease}button:not(:disabled):active{transform:none}}@media(prefers-contrast:more){:root{--muted: #303a34;--line: #717b74}:root[data-theme=dark]{--muted: #d7dfd9;--line: #919a93}}#language-control{display:inline-flex;max-width:100%}.language-select{min-height:2.75rem;max-width:100%;padding:.5rem;border:1px solid var(--line);border-radius:.5rem;color:var(--ink);background:var(--input);font-size:1rem}.input-wrap.with-icon,.color-picker span{direction:ltr;unicode-bidi:isolate}[dir=rtl] .lucide-arrow-right{transform:scaleX(-1)}
