/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}@font-face{font-family:TH Sarabun PSK Local;src:url(/fonts/thsarabun-psk-regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:block}@font-face{font-family:TH Sarabun PSK Local;src:url(/fonts/thsarabun-psk-bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:block}:root{--canvas:#f7faf9;--surface:#fff;--surface-soft:#f3faf7;--surface-deep:#edf7f3;--ink:#17201d;--muted:#66736e;--muted-light:#84908b;--primary:#0f8a6a;--primary-dark:#08735a;--primary-deep:#05634d;--primary-soft:#e7f6f0;--border:#d6e6df;--border-strong:#bdd8ce;--warning:#a6631c;--warning-bg:#fff8ec;--error:#b34242;--shadow:0 22px 60px #163e311a;--shadow-soft:0 8px 24px #17201d12}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{background:radial-gradient(circle at 8% 5%, #0f8a6a0e, transparent 28%), radial-gradient(circle at 94% 92%, #0f8a6a0a, transparent 24%), var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Noto Sans Thai,Leelawadee UI,Tahoma,Arial,sans-serif}button,input,textarea{font:inherit}button,label[for=font-upload],label[for=image-upload]{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,label[for=font-upload]:focus-visible,label[for=image-upload]:focus-visible{outline-offset:3px;outline:3px solid #0f8a6a3d}.page-shell{min-height:100svh;padding:clamp(24px,4vw,48px)}.app-frame{width:min(100%,1352px);margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;display:flex}.topbar-brand{flex:auto;align-items:center;gap:18px;min-width:0;display:flex}.topbar-copy{min-width:0}.shop-logo{object-fit:cover;background:#b9ff69;border:4px solid #fff;border-radius:50%;flex:none;width:92px;height:92px;display:block;box-shadow:0 10px 28px #1e432d29}.shop-name{color:var(--ink);letter-spacing:.02em;margin:0 0 4px;font-size:1rem;font-weight:800;line-height:1.2}.eyebrow{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;margin:0 0 2px;font-size:.76rem;font-weight:700}.topbar h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.15rem,4vw,3.3rem);font-weight:700;line-height:1.05}.subtitle{color:var(--muted);letter-spacing:.025em;margin:10px 0 0;font-size:1rem}.font-status{border:1px solid var(--border-strong);min-height:48px;box-shadow:var(--shadow-soft);color:var(--primary-dark);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd6;border-radius:15px;flex:none;align-items:center;gap:10px;padding:8px 16px 8px 10px;font-size:.92rem;font-weight:700;display:inline-flex}.status-icon{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-family:Arial,sans-serif;font-size:1rem;font-weight:700;display:grid}.font-status--checking .status-icon{animation:1.1s ease-in-out infinite status-pulse}.font-status--missing,.font-status--error{color:var(--warning);border-color:#ead6b9}.font-status--missing .status-icon,.font-status--error .status-icon{background:var(--warning)}.workspace{border:1px solid var(--border-strong);box-shadow:var(--shadow);background:#fffffff0;border-radius:22px;grid-template-columns:minmax(0,1.55fr) minmax(340px,.95fr);gap:0;display:grid;position:relative;overflow:hidden}.font-notice{background:var(--warning-bg);border:1px solid #ead6b9;border-radius:15px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:24px;margin:24px 24px 0;padding:16px 18px;display:flex}.font-notice strong{color:#6f4214;font-size:.95rem}.font-notice p{color:#7b684f;max-width:720px;margin:4px 0 0;font-size:.82rem;line-height:1.55}.font-error{color:var(--error);margin-top:4px;font-size:.8rem;font-weight:600;display:block}.font-upload-button{cursor:pointer;color:#734715;background:#fff;border:1px solid #d8b581;border-radius:11px;flex:none;padding:10px 15px;font-size:.86rem;font-weight:700;transition:background .16s ease-out,transform .16s ease-out}.font-upload-button:hover{background:#fffaf2;transform:translateY(-1px)}.input-side,.result-side{padding:clamp(24px,3vw,40px)}.input-side{min-width:0}.mode-switch{border:1px solid var(--border);background:var(--surface-soft);border-radius:14px;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:22px;padding:5px;display:grid}.mode-switch button{cursor:pointer;min-height:46px;color:var(--muted);background:0 0;border:0;border-radius:10px;font-size:.9rem;font-weight:800;transition:background .16s ease-out,box-shadow .16s ease-out,color .16s ease-out}.mode-switch button:hover:not(.active){background:var(--primary-soft);color:var(--primary-dark)}.mode-switch button.active{color:var(--primary-dark);background:#fff;box-shadow:0 3px 12px #163e311a}.image-workspace{gap:18px;display:grid}.image-upload-row{border:1px solid var(--border-strong);background:linear-gradient(145deg, #fff, var(--surface-soft));border-radius:15px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.image-upload-row h2{margin:0;font-size:1rem}.image-upload-row p{color:var(--muted-light);margin:4px 0 0;font-size:.74rem;line-height:1.5}.image-upload-button{cursor:pointer;background:var(--primary);color:#fff;border-radius:11px;flex:none;padding:11px 17px;font-size:.82rem;font-weight:800;transition:background .16s ease-out,transform .16s ease-out}.image-upload-button:hover{background:var(--primary-dark);transform:translateY(-1px)}.image-error{color:var(--error);margin:-8px 0 0;font-size:.8rem;font-weight:700}.image-shape-control .control-label{margin-bottom:8px;font-size:.8rem}.image-shape-switch{border:1px solid var(--border-strong);border-radius:12px;overflow:hidden}.image-size-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.image-size-grid--single{grid-template-columns:minmax(220px,.5fr)}.image-size-grid label>span{color:var(--muted);margin:0 0 7px 2px;font-size:.78rem;font-weight:700;display:block}.image-size-grid label>div{border:1px solid var(--border-strong);background:#fff;border-radius:11px;grid-template-columns:1fr 48px;display:grid;overflow:hidden}.image-size-grid input{width:100%;min-height:48px;color:var(--ink);border:0;padding:0 14px;font-family:Arial,sans-serif;font-size:1rem;font-weight:700}.image-size-grid small{border-left:1px solid var(--border);background:var(--surface-soft);color:var(--muted);place-items:center;font-size:.74rem;font-weight:700;display:grid}.ratio-toggle{cursor:pointer;width:fit-content;color:var(--muted);align-items:center;gap:9px;font-size:.78rem;font-weight:700;display:inline-flex}.ratio-toggle input{width:18px;height:18px;accent-color:var(--primary)}.image-preview-stage{border:1px solid var(--border-strong);background:linear-gradient(#0f8a6a06 1px,#0000 1px) 0 0/20px 20px,linear-gradient(90deg,#0f8a6a06 1px,#0000 1px) 0 0/20px 20px,linear-gradient(145deg,#f8fcfa,#eff8f4);border-radius:17px;place-items:center;min-height:330px;display:grid;position:relative;overflow:hidden}.image-preview-stage img{object-fit:contain;background:#fff;border:2px dashed #0f8a6ab3;width:min(72%,360px);max-height:260px;display:block}.image-preview-stage--rectangle img{border-radius:8px;padding:14px}.image-preview-stage--circle img{aspect-ratio:1;border-radius:50%;padding:14px}.image-preview-stage--oval img{aspect-ratio:1.55;border-radius:50%;padding:14px}.image-preview-stage>span{border:1px solid var(--border);color:var(--muted);background:#ffffffeb;border-radius:999px;padding:5px 9px;font-family:Arial,sans-serif;font-size:.68rem;font-weight:700;position:absolute;bottom:12px;right:12px}.image-empty{color:var(--muted-light);text-align:center;gap:4px;padding:24px;display:grid}.image-empty strong{color:var(--muted);font-size:.95rem}.image-empty span{font-size:.76rem}.result-side{border-left:1px solid var(--border);background:linear-gradient(150deg,#f8fcfac7,#fffffff5);flex-direction:column;display:flex}.field-group>label{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:.95rem;font-weight:700;display:flex}.field-group>label span{color:var(--muted-light);font-size:.72rem;font-weight:500}.field-group textarea{resize:vertical;border:2px solid var(--primary);width:100%;min-height:112px;max-height:360px;color:var(--ink);background:#fff;border-radius:14px;padding:16px 20px;font-size:clamp(1.35rem,3vw,1.85rem);line-height:1.4;transition:border-color .16s ease-out,box-shadow .16s ease-out;box-shadow:0 4px 14px #0f8a6a14}.field-group textarea::placeholder{color:#a6b0ac}.field-group textarea:hover{border-color:var(--primary-dark)}.field-group textarea:focus{border-color:var(--primary-dark);outline:none;box-shadow:0 0 0 4px #0f8a6a1f}.input-meta{color:var(--muted-light);justify-content:space-between;gap:16px;margin-top:9px;font-size:.78rem;display:flex}.limit-reached{color:var(--primary-dark);font-weight:700}.format-toolbar{border:1px solid var(--border);background:var(--surface-soft);border-radius:15px;grid-template-columns:1.1fr .8fr 1.45fr;gap:10px;margin-top:18px;padding:12px;display:grid}.format-control{min-width:0}.control-label{color:var(--muted);margin:0 0 7px 2px;font-size:.7rem;font-weight:700;display:block}.size-stepper,.alignment-switch{border:1px solid var(--border-strong);background:#fff;border-radius:10px;min-height:42px;display:grid;overflow:hidden}.size-stepper{grid-template-columns:38px minmax(42px,1fr) 28px 38px}.size-stepper button,.alignment-switch button,.bold-toggle{cursor:pointer;color:var(--muted);background:#fff;border:0;font-weight:700;transition:background .16s ease-out,color .16s ease-out}.size-stepper button{border-right:1px solid var(--border);font-family:Arial,sans-serif;font-size:1.15rem}.size-stepper button:last-child{border-right:0;border-left:1px solid var(--border)}.size-stepper button:hover:not(:disabled),.alignment-switch button:hover:not(.active),.bold-toggle:hover:not(.active){background:var(--primary-soft);color:var(--primary-dark)}.size-stepper button:disabled{cursor:not-allowed;color:#bcc7c3}.size-stepper input{min-width:0;color:var(--ink);text-align:right;-moz-appearance:textfield;background:#fff;border:0;font-family:Arial,sans-serif;font-size:.9rem;font-weight:700}.size-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.size-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.size-stepper>span{color:var(--muted-light);place-items:center start;font-size:.72rem;font-weight:600;display:grid}.bold-toggle{border:1px solid var(--border-strong);border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;font-size:.78rem;display:flex}.bold-toggle b{font-family:Georgia,serif;font-size:1rem}.bold-toggle.active,.alignment-switch button.active{background:var(--primary);color:#fff}.alignment-switch{grid-template-columns:repeat(3,1fr)}.alignment-switch button{border-right:1px solid var(--border);font-size:.72rem}.alignment-switch button:last-child{border-right:0}.preview-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin:22px 0 12px;display:flex}.preview-heading h2,.recommendation h2{margin:0;font-size:.98rem;font-weight:700}.preview-heading p,.recommendation-heading p{color:var(--muted-light);margin:3px 0 0;font-size:.75rem}.zoom-badge{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 9px;font-size:.7rem;font-weight:700}.preview-stage{border:1px solid var(--border-strong);background:linear-gradient(#0f8a6a06 1px,#0000 1px) 0 0/20px 20px,linear-gradient(90deg,#0f8a6a06 1px,#0000 1px) 0 0/20px 20px,linear-gradient(145deg,#f8fcfa,#eff8f4);border-radius:17px;place-items:center;min-height:330px;display:grid;position:relative;overflow:hidden}.preview-stage:before,.preview-stage:after{content:"";background:#0f8a6a1c;position:absolute}.preview-stage:before{height:1px;top:50%;left:20px;right:20px}.preview-stage:after{width:1px;top:20px;bottom:20px;left:50%}.preview-ruler{z-index:1;opacity:.48;position:absolute}.preview-ruler--top{border-top:1px solid var(--primary);background:repeating-linear-gradient(90deg, var(--primary) 0 1px, transparent 1px 20px);height:8px;top:12px;left:24px;right:24px}.preview-ruler--left{border-left:1px solid var(--primary);background:repeating-linear-gradient(180deg, var(--primary) 0 1px, transparent 1px 20px);width:8px;top:24px;bottom:24px;left:12px}.axis-label{z-index:2;color:var(--primary-dark);background:#f8fcfae6;border-radius:5px;font-size:.65rem;font-weight:700;position:absolute}.axis-label--x{padding:0 7px;top:5px;left:50%;transform:translate(-50%)}.axis-label--y{writing-mode:vertical-rl;padding:3px 0;top:50%;left:3px;transform:translateY(-50%)}.name-preview{z-index:3;color:#111714;overflow-wrap:anywhere;scrollbar-color:#0f8a6a52 transparent;white-space:pre-wrap;width:calc(100% - 72px);max-height:286px;padding:10px 6px;font-style:normal;font-weight:400;animation:.18s ease-out preview-in;position:relative;overflow:auto}.name-preview--unavailable{color:var(--muted-light);text-align:center!important;font-family:Noto Sans Thai,Leelawadee UI,Tahoma,sans-serif!important;font-size:1rem!important}.actual-preview-row{border:1px solid var(--border);background:#fff;border-radius:11px;align-items:flex-start;gap:14px;min-height:42px;margin-top:10px;padding:7px 12px;display:flex}.actual-preview-row span{color:var(--muted-light);flex:none;padding-top:4px;font-size:.72rem}.actual-preview-row strong{width:100%;min-width:0;max-height:150px;color:var(--ink);overflow-wrap:anywhere;white-space:pre-wrap;font-weight:400;overflow:auto}.metric-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.metric-card{border:1px solid var(--border-strong);text-align:center;background:linear-gradient(145deg,#fff,#f6fbf9);border-radius:15px;place-content:center;min-width:0;min-height:124px;display:grid}.metric-card>span{color:var(--muted);margin-bottom:2px;font-size:.84rem;font-weight:600}.metric-card strong{color:var(--primary-dark);font-variant-numeric:tabular-nums;font-family:Arial Narrow,Arial,sans-serif;font-size:clamp(1.8rem,3.2vw,2.5rem);line-height:1.05}.metric-card small{color:var(--muted);margin-top:4px;font-size:.74rem;font-weight:600}.combined-card{border:1px solid var(--border-strong);background:#fff;border-radius:15px;margin-top:13px;overflow:hidden}.combined-card>p{color:var(--muted-light);text-align:center;margin:15px 18px 0;font-size:.74rem;font-weight:600}.combined-value{color:var(--ink);justify-content:center;align-items:baseline;gap:8px;padding:8px 14px 17px;display:flex}.combined-value strong{color:var(--primary-dark);font-variant-numeric:tabular-nums;font-family:Arial Narrow,Arial,sans-serif;font-size:clamp(1.45rem,2.8vw,2rem)}.combined-value span{color:var(--ink);font-size:1.2rem}.combined-value small{color:var(--muted);font-size:.77rem;font-weight:700}.unit-switch{border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.unit-switch button{cursor:pointer;border:0;border-right:1px solid var(--border);min-height:45px;color:var(--muted);background:#fff;font-size:.8rem;font-weight:700;transition:background .16s ease-out,color .16s ease-out}.unit-switch button:last-child{border-right:0}.unit-switch button:hover:not(.active){background:var(--surface-soft);color:var(--primary-dark)}.unit-switch button.active{background:var(--primary);color:#fff}.recommendation{margin-top:20px}.recommendation-heading{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.recommendation-heading>span{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 9px;font-size:.68rem;font-weight:700}.recommended-frame{border:2px dashed var(--primary);min-height:90px;color:var(--primary-dark);background:linear-gradient(145deg,#f8fdfa,#f0f9f5);border-radius:14px;grid-template-columns:20px 1fr 20px;align-items:center;padding:12px 14px;display:grid}.recommended-frame>div{text-align:center;justify-content:center;align-items:baseline;gap:8px;min-width:0;display:flex}.recommended-frame strong{font-variant-numeric:tabular-nums;font-family:Arial Narrow,Arial,sans-serif;font-size:clamp(1.45rem,2.6vw,1.9rem)}.recommended-frame span{color:var(--ink);font-size:1.1rem}.recommended-frame small{color:var(--muted);font-size:.74rem;font-weight:700}.recommended-frame i{border-top:2px solid var(--primary);border-bottom:2px solid var(--primary);width:16px;height:54px;display:block;position:relative}.recommended-frame i:first-child{border-left:2px solid var(--primary)}.recommended-frame i:last-child{border-right:2px solid var(--primary);justify-self:end}.price-comparison{border:1px solid var(--border-strong);background:#fff;border-radius:15px;margin-top:20px;overflow:hidden}.price-heading{justify-content:space-between;align-items:flex-end;gap:12px;padding:15px 16px 12px;display:flex}.price-heading h2{margin:0;font-size:.98rem;font-weight:700}.price-heading p{color:var(--muted-light);margin:3px 0 0;font-size:.72rem}.price-heading>span{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;flex:none;padding:5px 9px;font-size:.67rem;font-weight:700}.shape-switch{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);display:grid}.shape-switch button{cursor:pointer;border:0;border-right:1px solid var(--border);background:var(--surface-soft);min-height:42px;color:var(--muted);font-size:.74rem;font-weight:700;transition:background .16s ease-out,color .16s ease-out}.shape-switch button:last-child{border-right:0}.shape-switch button:hover:not(.active){background:var(--primary-soft);color:var(--primary-dark)}.shape-switch button.active{background:var(--primary);color:#fff}.price-option-list{gap:11px;padding:12px 12px 0;display:grid}.price-option{border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden}.price-option-heading{border-bottom:1px solid var(--border);background:var(--surface-soft);justify-content:space-between;align-items:baseline;gap:10px;padding:9px 11px;display:flex}.price-option-heading strong{color:var(--ink);font-size:.8rem}.price-option-heading span{color:var(--muted-light);letter-spacing:.015em;font-family:Arial Narrow,Arial,sans-serif;font-size:.66rem}.stamp-body-preview{background:linear-gradient(145deg,#fff,#f3f8fb);border:1px solid #d9e5eb;border-radius:11px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;margin:10px 10px 0;padding:7px;display:grid}.stamp-body-preview img{object-fit:contain;background:#fff;border-radius:8px;width:96px;height:80px;display:block}.stamp-body-preview figcaption{gap:2px;min-width:0;display:grid}.stamp-body-preview figcaption span{color:var(--muted-light);font-size:.65rem;font-weight:600}.stamp-body-preview figcaption strong{color:var(--ink);font-size:.76rem;line-height:1.4}.model-result{border:1px solid var(--border);background:linear-gradient(145deg, #f7fcfa, var(--primary-soft));border-radius:12px;grid-template-columns:1.2fr .8fr;margin:12px 12px 0;display:grid;overflow:hidden}.model-code,.model-price{text-align:center;place-content:center;min-height:86px;padding:10px 14px;display:grid}.model-code{border-right:1px solid var(--border-strong)}.model-code span,.model-price span{color:var(--muted);margin-bottom:2px;font-size:.7rem;font-weight:600}.model-code strong{color:var(--ink);letter-spacing:.025em;font-family:Arial Narrow,Arial,sans-serif;font-size:1.9rem;line-height:1.05}.model-price strong{color:#c92f27;font-variant-numeric:tabular-nums;font-family:Arial Narrow,Arial,sans-serif;font-size:1.9rem;line-height:1.05}.model-price small{color:#c92f27;margin-left:4px;font-family:Noto Sans Thai,Leelawadee UI,Tahoma,sans-serif;font-size:.68rem;font-weight:700}.model-note{color:var(--muted);margin-top:3px;font-size:.64rem;font-weight:700}.model-fit-detail{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:8px 12px 0;font-size:.68rem;display:flex}.model-fit-detail .model-size{color:#007fab;font-weight:700}.model-fit-detail span{text-align:right}.price-placeholder,.no-model{border:1px dashed var(--border-strong);background:var(--surface-soft);min-height:96px;color:var(--muted-light);text-align:center;border-radius:12px;place-content:center;margin:12px 12px 0;font-size:.76rem;display:grid}.price-option .model-result{min-height:0;margin:10px 10px 0}.price-option .model-code,.price-option .model-price{min-height:76px}.price-option .model-fit-detail{margin:7px 10px 10px}.price-option .price-placeholder,.price-option .no-model{min-height:76px;margin:10px}.no-model{background:var(--warning-bg);border-color:#e5cba5;gap:2px}.no-model strong{color:#74491b;font-size:.82rem}.no-model span{color:#8a7255;font-size:.7rem}.price-note{color:var(--muted-light);text-align:center;margin:10px 14px 13px;font-size:.64rem;line-height:1.45}.copy-button{cursor:pointer;background:linear-gradient(135deg, var(--primary), #07936e);color:#fff;border:0;border-radius:13px;justify-content:center;align-items:center;gap:11px;width:100%;min-height:54px;margin-top:16px;font-size:.96rem;font-weight:700;transition:background .16s ease-out,box-shadow .16s ease-out,transform .16s ease-out;display:flex;box-shadow:0 8px 20px #0f8a6a38}.copy-button:hover:not(:disabled){background:linear-gradient(135deg, var(--primary-dark), var(--primary));transform:translateY(-1px);box-shadow:0 10px 24px #0f8a6a47}.copy-button:active:not(:disabled){transform:translateY(0)}.copy-button:disabled{cursor:not-allowed;box-shadow:none;background:#b8c9c3}.copy-button--copied{background:var(--primary-deep)}.copy-icon{border:2px solid;border-radius:4px;width:18px;height:19px;position:relative}.copy-icon:before{z-index:-1;content:"";border:2px solid;border-radius:4px;width:14px;height:15px;position:absolute;top:-6px;left:-7px}.accuracy-note{color:var(--muted-light);text-align:center;margin:12px 0 0;font-size:.68rem;line-height:1.55}.measurement-canvas,.visually-hidden{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}@keyframes status-pulse{0%,to{opacity:.65}50%{opacity:1}}@keyframes preview-in{0%{opacity:.65;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (width<=940px){.workspace{grid-template-columns:1fr}.result-side{border-top:1px solid var(--border);border-left:0}.preview-stage{min-height:300px}}@media (width<=620px){.page-shell{padding:20px 14px}.topbar{align-items:center;gap:10px}.topbar-brand{gap:11px}.shop-logo{border-width:3px;width:64px;height:64px}.shop-name{margin-bottom:2px;font-size:.82rem}.eyebrow{font-size:.68rem}.topbar h1{font-size:2rem}.subtitle{margin-top:6px;font-size:.84rem}.font-status{border-radius:12px;min-height:40px;padding:6px 10px 6px 7px;font-size:.72rem}.status-icon{width:25px;height:25px;font-size:.82rem}.workspace{border-radius:18px}.font-notice{flex-direction:column;align-items:stretch;gap:12px;margin:16px 16px 0}.font-upload-button{text-align:center}.input-side,.result-side{padding:22px 18px}.image-upload-row{flex-direction:column;align-items:stretch}.image-upload-button{text-align:center}.image-size-grid,.image-size-grid--single{grid-template-columns:1fr}.image-preview-stage{min-height:260px}.field-group textarea{min-height:120px;padding:13px 15px;font-size:1.2rem}.input-meta span:first-child{max-width:240px}.preview-stage{min-height:250px}.name-preview{width:calc(100% - 50px);max-height:215px}.actual-preview-row{flex-direction:column;gap:3px}.actual-preview-row strong{max-height:120px}.format-toolbar{grid-template-columns:1fr 1fr}.format-control--alignment{grid-column:1/-1}.metric-card{min-height:112px}.recommended-frame{padding-inline:10px}.recommended-frame strong{font-size:1.42rem}.model-code strong,.model-price strong{font-size:1.65rem}.model-fit-detail{flex-direction:column;align-items:flex-start;gap:2px}.model-fit-detail span{text-align:left}}@media (width<=390px){.font-status>span:last-child{display:none}.font-status{padding-right:7px}.metric-grid{gap:8px}.metric-card strong{font-size:1.65rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
