@import "https://cdn.jsdelivr.net/gh/toss/tossface/dist/tossface.css";:root{--color-text-strong:#191f28;--color-text-default:#333d4b;--color-text-subtle:#4e5968;--color-text-hint:#8b95a1;--color-text-disabled:#b0b8c1;--color-text-inverse:#fff;--color-bg:#fff;--color-bg-canvas:#f2f4f6;--color-danger:#f04452;--color-success:#03b26c;--color-warning:#fe9800;--brand-primary:#191f28;--font-size-display:28px;--font-weight-display:700;--font-size-title:20px;--font-weight-title:700;--font-size-subtitle:15px;--font-weight-subtitle:600;--font-size-body:17px;--font-weight-body:400;--font-size-body-small:15px;--font-weight-body-small:400;--font-size-caption:13px;--font-weight-caption:400;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--dim:#0006}*,:before,:after{box-sizing:border-box}body{word-break:keep-all;overflow-wrap:break-word;letter-spacing:0;color:var(--color-text-default);background:var(--color-bg);margin:0;font-family:Tossface,-apple-system,system-ui,Malgun Gothic,sans-serif}.tf{font-family:Tossface,sans-serif;font-style:normal}.canvas{min-height:100dvh}.text-hint{color:var(--color-text-hint)}.text-inverse{color:var(--color-text-inverse)}.bg-canvas{background:var(--color-bg-canvas)}:root{--brand-primary:#245c46;--brand-deep:#1e4939;--brand-soft:#e9f0e9;--paper:#fafaf6;--surface:#f0f1e9;--border:#e1e4dc;--ink:#25372d;--muted:#627064;--color-danger:#a53636;--accent:#e5edba;--radius:20px;--radius-small:12px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--ink);background:var(--paper);word-break:keep-all;overflow-wrap:break-word;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Malgun Gothic,sans-serif}button,input,textarea,select{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--brand-primary);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:var(--font-size-display);letter-spacing:-1.1px;font-weight:700;line-height:1.4}h2{font-size:var(--font-size-title);letter-spacing:-.5px;font-weight:700;line-height:1.5}p{line-height:1.65}strong{font-weight:600}img,svg{max-width:100%}input,textarea{min-width:0}::placeholder{color:var(--muted);opacity:1}.app-shell{background:var(--paper);max-width:480px;min-height:100dvh;margin:0 auto}.page{padding:calc(var(--space-6) + var(--safe-top)) var(--space-5) calc(var(--space-6) + max(34px, var(--safe-bottom)));min-height:100dvh}.page.with-tabs,.page.form-page,.page.detail-page{padding-bottom:calc(120px + max(34px, var(--safe-bottom)))}.eyebrow{color:var(--brand-primary);font-size:var(--font-size-caption);letter-spacing:.3px;margin-bottom:var(--space-3);font-weight:600}.description{color:var(--muted);font-size:var(--font-size-body-small);margin-top:var(--space-2);line-height:1.65}.page-intro{margin-bottom:var(--space-5)}.metadata,small{font-size:var(--font-size-caption);color:var(--muted);line-height:1.5}.brand{font-size:var(--font-size-caption);color:var(--muted);font-weight:600}.primary,.secondary,.danger-button,.text-button{border-radius:var(--radius-small);min-height:52px;font-size:var(--font-size-body-small);justify-content:center;align-items:center;gap:var(--space-2);border:0;padding:14px 20px;font-weight:600;display:inline-flex}.primary{background:var(--brand-primary);color:var(--color-text-inverse)}.primary:hover{background:var(--brand-deep)}.secondary{background:var(--brand-soft);color:var(--brand-primary);border:1px solid var(--border)}.full{width:100%}.compact{white-space:nowrap;padding:12px}.text-button{color:var(--muted);text-underline-offset:4px;margin:var(--space-3) auto 0;background:0 0;text-decoration:underline;display:flex}.danger-button{color:var(--color-danger);border:1px solid var(--border);margin-top:var(--space-3);background:0 0}.icon-button{border-radius:var(--radius-small);background:0 0;border:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.section-heading{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.section-space{margin-top:var(--space-6)}.badge{align-items:center;gap:var(--space-1);background:var(--brand-soft);width:fit-content;color:var(--brand-primary);font-size:var(--font-size-caption);border-radius:8px;padding:5px 9px;font-weight:600;display:inline-flex}.badge.muted{color:var(--muted);background:var(--surface)}.welcome{padding-top:calc(36px + var(--safe-top))}.welcome h1{font-size:30px}.welcome .description{margin-top:var(--space-3)}.welcome-visual{height:250px;margin:var(--space-4) calc(-1 * var(--space-2));place-items:center;display:grid;position:relative;overflow:hidden}.orbit{background:var(--surface);border-radius:50%;width:265px;height:205px;position:absolute;transform:rotate(-18deg)}.orbit-two{border:1px solid var(--border);background:0 0;width:300px;height:240px}.welcome-visual .hero-art{width:310px;position:relative;transform:rotate(-12deg)}.shoe-art{width:100%;height:auto;display:block}.visual-tag{z-index:1;background:var(--accent);font-size:var(--font-size-caption);color:var(--brand-deep);border-radius:30px;align-items:center;gap:6px;padding:9px 13px;display:flex;position:absolute;top:17px;right:12px;transform:rotate(7deg)}.measurement-line{border-top:1px solid var(--muted);text-align:center;width:75%;padding-top:8px;position:absolute;bottom:8px}.measurement-line span{font-size:var(--font-size-caption);color:var(--muted);background:var(--paper);padding:0 8px}.welcome-bottom h2{font-size:var(--font-size-body)}.welcome-bottom .description{margin-top:4px;margin-bottom:var(--space-4)}.start-option{border:1px solid var(--border);border-radius:var(--radius);background:var(--color-bg);width:100%;margin-top:var(--space-3);text-align:left;align-items:center;gap:14px;padding:20px 16px;display:flex}.start-option strong,.start-option small{display:block}.start-option strong{font-size:var(--font-size-body-small)}.start-option small{margin-top:5px}.start-option.featured{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--color-text-inverse)}.start-option.featured small{color:#dce9df}.option-icon{flex:0 0 44px;place-items:center;height:44px;display:grid}.preview-note{text-align:center;font-size:var(--font-size-caption);color:var(--muted);margin-top:var(--space-5)}.search-field{border-radius:var(--radius-small);background:var(--surface);border:1px solid var(--border);align-items:center;gap:10px;height:56px;padding:0 12px 0 16px;display:flex}.search-field input{width:100%;font-size:var(--font-size-body-small);min-height:44px;color:var(--ink);background:0 0;border:0;outline:none}.search-field:focus-within{outline:2px solid var(--brand-primary)}.reference-summary{border:1px solid var(--border);background:var(--brand-soft);border-radius:var(--radius-small);text-align:left;width:100%;margin:var(--space-4) 0 var(--space-6);align-items:center;gap:12px;padding:16px;display:flex}.reference-summary>span:nth-child(2){flex:1}.reference-summary strong,.reference-summary .metadata{display:block}.reference-summary strong{font-size:var(--font-size-body-small);margin-top:3px}.reference-icon{color:var(--brand-primary)}.catalog-section{margin-top:var(--space-6)}.brand-filters{scrollbar-width:none;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.chip{white-space:nowrap;border:1px solid var(--border);background:var(--color-bg);min-height:44px;font-size:var(--font-size-body-small);border-radius:24px;padding:10px 16px}.chip.selected{color:var(--color-text-inverse);background:var(--ink);border-color:var(--ink)}.result-count{font-size:var(--font-size-caption);color:var(--muted);margin:var(--space-4) 0 var(--space-3)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px;display:grid}.product-card{border:1px solid var(--border);border-radius:var(--radius-small);background:var(--color-bg);text-align:left;min-width:0;padding:0;overflow:hidden}.product-art{background:var(--surface);align-items:center;min-height:132px;padding:12px 0 20px;display:grid;position:relative}.category{font-size:var(--font-size-caption);color:var(--muted);position:absolute;bottom:9px;left:12px}.product-info{gap:5px;padding:13px 12px 16px;display:grid}.product-info strong{font-size:var(--font-size-body-small);min-height:23px}.soft-note{gap:var(--space-3);background:var(--surface);padding:var(--space-4);border-radius:var(--radius-small);margin-top:var(--space-6);display:flex}.soft-note svg{color:var(--muted);flex-shrink:0;margin-top:4px}.soft-note p{font-size:var(--font-size-body-small);color:var(--muted)}.tab-bar{background:var(--paper);border-top:1px solid var(--border);width:min(100%,480px);padding:8px 20px max(34px, var(--safe-bottom));z-index:5;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab-bar button{min-height:58px;color:var(--muted);font-size:var(--font-size-caption);background:0 0;border:0;border-radius:12px;align-content:center;justify-items:center;gap:4px;display:grid}.tab-bar button[aria-current]{color:var(--brand-primary);background:var(--brand-soft);font-weight:600}.empty-state{text-align:center;padding:36px 8px}.empty-state h2{font-size:var(--font-size-body);margin:16px 0 8px}.empty-state p{font-size:var(--font-size-body-small);color:var(--muted);margin-bottom:20px}.empty-icon,.round-icon{background:var(--brand-soft);width:64px;height:64px;color:var(--brand-primary);border-radius:50%;place-items:center;margin:auto;display:grid}.detail-art{border-radius:var(--radius);background:var(--surface);place-items:center;margin:24px 0 32px;padding:16px;display:grid}.detail-art .shoe-art{max-height:230px}.detail-art img{object-fit:contain;border-radius:12px;width:100%;max-height:280px}.detail-art .metadata{text-align:center}.recommendation-empty{border:1px solid var(--border);border-radius:var(--radius);text-align:center;background:var(--color-bg);padding:24px 18px}.recommendation-empty h2{font-size:var(--font-size-body);margin:16px 0 8px}.recommendation-empty p{font-size:var(--font-size-body-small);color:var(--muted);margin-bottom:24px}.stat-placeholder{border-top:1px solid var(--border);font-size:var(--font-size-body-small);justify-content:space-between;gap:8px;padding:13px 0;display:flex}.stat-placeholder strong{color:var(--muted)}.bottom-action{width:min(100%,480px);padding:14px 24px max(34px, var(--safe-bottom));background:var(--paper);border-top:1px solid var(--border);z-index:5;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.record-row{border:0;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:18px 0;display:flex}.record-row .description{display:block}.closet-summary{align-items:center;gap:20px;padding-bottom:28px;display:flex}.closet-summary>div{gap:8px;display:grid}.closet-summary>div span{font-size:var(--font-size-caption);color:var(--muted)}.closet-summary>div strong{font-size:var(--font-size-title)}.closet-summary button{margin-left:auto}.closet-list{gap:16px;margin-top:24px;display:grid}.closet-card{border:1px solid var(--border);background:var(--color-bg);border-radius:var(--radius);text-align:left;align-items:center;gap:12px;width:100%;padding:16px 12px;display:flex}.closet-art{background:var(--surface);border-radius:12px;flex:0 0 100px;overflow:hidden}.closet-art img{object-fit:cover;width:100%;height:100px;display:block}.closet-info{min-width:0;font-size:var(--font-size-body-small);gap:6px;display:grid}.fit-tags{color:var(--muted);font-size:var(--font-size-caption);flex-wrap:wrap;gap:4px;display:flex}.record-title{justify-content:space-between;align-items:center;display:flex}.fit-grid{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.fit-grid>div{border-radius:var(--radius-small);background:var(--brand-soft);gap:8px;padding:20px 16px;display:grid}.fit-grid span{font-size:var(--font-size-caption);color:var(--muted)}.fit-grid strong{font-size:var(--font-size-body-small)}.note-card{background:var(--surface);border-radius:var(--radius);margin:24px 0;padding:24px}.note-card h2{font-size:var(--font-size-body);margin-bottom:8px}.note-card p{font-size:var(--font-size-body-small);color:var(--muted);white-space:pre-wrap;margin-bottom:12px}.note-card .badge{margin-bottom:12px}.selected-shoe{background:var(--surface);border-radius:var(--radius);align-items:center;gap:16px;margin-bottom:28px;padding:12px;display:flex}.selected-shoe .shoe-art{flex-shrink:0;width:100px}.selected-shoe>div{gap:5px;display:grid}.field{font-size:var(--font-size-body-small);flex-direction:column;gap:10px;margin:24px 0;font-weight:600;display:flex}.field input,.field textarea{border:1px solid var(--border);border-radius:var(--radius-small);background:var(--color-bg);width:100%;color:var(--ink);min-height:52px;padding:15px;font-size:16px;font-weight:400}.field textarea{resize:vertical}.unit-input{align-items:center;display:flex;position:relative}.unit-input input{padding-right:44px}.unit-input>span{color:var(--muted);font-weight:400;position:absolute;right:15px}fieldset{border:0;min-width:0;margin:28px 0;padding:0}legend{font-size:var(--font-size-body-small);margin-bottom:12px;padding:0;font-weight:600}.segmented{gap:8px;display:flex}.segment{text-align:center;border:1px solid var(--border);background:var(--color-bg);min-height:48px;font-size:var(--font-size-body-small);cursor:pointer;border-radius:10px;flex:1;place-items:center;padding:12px 4px;display:grid;position:relative}.segment input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.segment:focus-within{outline:2px solid var(--brand-primary);outline-offset:2px}.segment.chosen{color:var(--brand-primary);border-color:var(--brand-primary);background:var(--brand-soft);font-weight:600}.check-row{min-height:56px;font-size:var(--font-size-body-small);cursor:pointer;align-items:center;gap:12px;padding:12px 0;display:flex}.check-row input{width:22px;height:22px;accent-color:var(--brand-primary);flex-shrink:0}.check-row small{margin-top:4px;display:block}.form-divider{background:var(--border);height:1px;margin:28px 0}.photo-field{margin-bottom:24px}.photo-picker{border:1px dashed var(--muted);border-radius:var(--radius-small);min-height:74px;font-size:var(--font-size-body-small);color:var(--muted);cursor:pointer;justify-content:center;align-items:center;gap:10px;margin-bottom:8px;display:flex;position:relative;overflow:hidden}.photo-picker input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.photo-picker:focus-within{outline:2px solid var(--brand-primary)}.photo-preview{margin-bottom:12px;position:relative}.photo-preview img{object-fit:contain;background:var(--surface);border-radius:12px;width:100%;max-height:240px;display:block}.photo-preview button{background:var(--color-bg);position:absolute;top:8px;right:8px}.measurement-inputs{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.measurement-inputs .field:last-child{grid-column:1/-1}.measurement-inputs .field{margin:12px 0 0}.measurement-help{background:var(--brand-soft);border-radius:var(--radius-small);padding:8px 16px}.measurement-help summary{cursor:pointer;min-height:44px;font-size:var(--font-size-body-small);align-items:center;gap:10px;font-weight:600;display:flex}.measurement-help p{font-size:var(--font-size-body-small);color:var(--muted);margin:12px 0}.foot-illustration{background:var(--brand-soft);border-radius:var(--radius);color:var(--brand-primary);justify-content:center;gap:16px;padding:32px 0 64px;display:flex;position:relative}.foot-illustration>svg:first-child{transform:scaleX(-1)rotate(-10deg)}.foot-illustration>svg:nth-child(2){transform:rotate(-10deg)}.foot-illustration span{font-size:var(--font-size-caption);position:absolute;bottom:22px}.measurement-table{margin-top:24px}.measurement-table>div{border-bottom:1px solid var(--border);font-size:var(--font-size-body-small);grid-template-columns:1fr 1fr 1fr;gap:8px;padding:18px 0;display:grid}.measurement-table strong{text-align:right}.measurement-table .measurement-header{color:var(--muted);font-size:var(--font-size-caption)}.measurement-source{color:var(--muted);font-size:var(--font-size-body-small);align-items:center;gap:10px;margin:20px 0 28px;display:flex}.measurement-source small{display:block}.toast{left:50%;bottom:calc(115px + max(34px, var(--safe-bottom)));z-index:10;background:var(--ink);width:min(100% - 32px,432px);color:var(--color-text-inverse);border-radius:var(--radius-small);font-size:var(--font-size-body-small);align-items:center;gap:8px;padding:12px 8px 12px 18px;line-height:1.6;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 4px 20px #25372d20}.toast>span{flex:1}.toast button{color:var(--color-text-inverse);flex-shrink:0}@media (width>=600px){body{background:#e9ece6}.app-shell{border-inline:1px solid var(--border)}}@media (width<=359px){.page{padding-left:16px;padding-right:16px}.closet-summary{gap:12px}.closet-art{flex-basis:80px}.start-option{gap:8px;padding:16px 10px}}@media (prefers-reduced-motion:no-preference){button{transition:background-color .15s}}.product-list{gap:12px;display:grid}.product-row{border:1px solid var(--border);border-radius:var(--radius-small);background:var(--color-bg);text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:18px;display:flex}.product-row .product-info{gap:7px;min-width:0;padding:0}.product-row .product-info strong{font-size:var(--font-size-body)}.product-row>.badge{flex-shrink:0;align-self:flex-start}.product-variant{font-size:var(--font-size-body-small);color:var(--muted)}.catalog-disclaimer{font-size:var(--font-size-caption);color:var(--muted);margin-top:14px}.welcome-type-list{z-index:1;flex-direction:column;align-items:center;gap:8px;display:flex}.welcome-type-list span{background:var(--paper);border:1px solid var(--border);font-size:var(--font-size-body);color:var(--brand-deep);border-radius:12px;padding:9px 30px}.welcome-type-list span:first-child{transform:rotate(-6deg)}.welcome-type-list span:last-child{transform:rotate(5deg)}.fit-tags{font-size:var(--font-size-body-small);gap:8px}.catalog-brand-label{gap:8px;margin-top:16px;font-size:15px;display:grid}.catalog-brand-label select{border:1px solid var(--border);background:var(--color-bg);width:100%;min-width:0;min-height:48px;color:var(--color-text-default);font:inherit;border-radius:12px;padding:12px}.catalog-source{min-height:44px;color:var(--brand-primary);overflow-wrap:anywhere;align-items:center;margin-top:12px;text-decoration:underline;display:flex}.product-info strong{overflow-wrap:anywhere}.product-card{border:1px solid var(--border);border-radius:var(--radius-small);background:var(--color-bg);min-width:0;overflow:hidden}.product-card>.product-row{border:0}.review-gallery{min-width:0;overflow:hidden}.review-photo-track{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.review-photo-track img{object-fit:contain;scroll-snap-align:start;background:var(--color-bg-canvas);flex:0 0 100%;width:100%;min-width:0;height:240px}.gallery-controls{justify-content:space-between;align-items:center;gap:4px;padding:4px 8px;display:flex}.gallery-controls button{background:var(--color-bg);min-width:44px;min-height:44px;color:var(--brand-primary)}.gallery-controls .metadata{text-align:center}
