*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-width:320px;color:var(--color-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--text-body-size);line-height:var(--text-body-line);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0}h1,h2,p{margin:0}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}[tabindex="-1"]:focus{outline:none}.nowrap{white-space:nowrap}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{width:100%;max-width:calc(var(--layout-web-card-max-width) + 2 * var(--layout-gutter));padding:max(var(--space-lg), env(safe-area-inset-top)) max(var(--layout-gutter), env(safe-area-inset-right)) max(var(--space-xxl), env(safe-area-inset-bottom)) max(var(--layout-gutter), env(safe-area-inset-left));margin:0 auto}@media (width>=720px){.page{padding-top:var(--space-xxxl);padding-bottom:48px}}.top{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:48px;display:flex}.logo{align-items:center;gap:var(--space-sm);color:var(--color-accent-text);display:inline-flex}.logo-mark{width:48px;height:auto;color:var(--color-accent)}.logo-word{letter-spacing:-.02em;font-size:1.625rem;font-weight:800;line-height:1}.languages{border-radius:var(--radius-choice);background:var(--color-surface);padding:2px;display:inline-flex}.language{min-width:44px;min-height:44px;padding:0 var(--space-sm);border-radius:calc(var(--radius-choice) - 2px);color:var(--color-muted);font-size:var(--text-label-size);line-height:var(--text-label-line);cursor:pointer;background:0 0;border:0;font-weight:700}.language[aria-pressed=true]{background:var(--color-accent);color:var(--color-on-accent)}.card{gap:var(--layout-tile-gap);margin-top:var(--space-lg);flex-direction:column;display:flex}.demo-label{align-items:center;gap:var(--space-sm);color:var(--color-muted);font-size:var(--text-caption-size);line-height:var(--text-caption-line);align-self:flex-start;display:inline-flex}.demo-dot{border:1.5px solid var(--color-muted);border-radius:50%;width:8px;height:8px}h1{font-size:var(--text-title-size);line-height:var(--text-title-line);font-weight:var(--text-title-weight);letter-spacing:-.015em;margin-bottom:var(--space-xs);overflow-wrap:break-word}.tiles{gap:var(--layout-tile-gap);flex-direction:column;display:flex}.tile{border-radius:var(--radius-tile);background:var(--color-surface);padding:var(--space-lg) var(--space-xl);min-width:0}.label{color:var(--color-muted);font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight)}.value{font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);overflow-wrap:anywhere}.hint,.caption{color:var(--color-muted);font-size:var(--text-caption-size);line-height:var(--text-caption-line)}.photo-tile{gap:var(--space-lg);padding:var(--space-md);grid-template-columns:minmax(0,11fr) minmax(0,12fr);align-items:start;display:grid;container-type:inline-size}.thumb{aspect-ratio:8/5;border-radius:var(--radius-thumbnail);background:radial-gradient(120% 90% at 30% 20%, var(--color-raised), transparent 60%), linear-gradient(160deg, var(--color-raised), var(--color-line));color:var(--color-muted);place-items:center;display:grid}.thumb-icon{opacity:.7;width:40%;max-width:64px;height:auto}.subject{padding-top:var(--space-md);font-size:clamp(1.125rem, 6.4cqi, var(--text-heading-size));line-height:1.25;font-weight:var(--text-heading-weight);overflow-wrap:break-word}.money-row{gap:var(--layout-tile-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));display:grid}.money-tile{gap:var(--space-sm);flex-direction:column;display:flex;container-type:inline-size}@media (width<=520px){.money-tile{padding-left:var(--space-lg);padding-right:var(--space-lg)}}.money{font-size:clamp(1.625rem, 22cqi, var(--text-money-size));line-height:1.1;font-weight:var(--text-money-weight);letter-spacing:-.02em;white-space:nowrap}.money.small{font-size:clamp(1.375rem, 18cqi, var(--text-money-small-size))}.row-tile{align-items:center;gap:var(--space-lg);padding-top:var(--space-md);padding-bottom:var(--space-md);display:flex}.row-icon{background:var(--color-raised);width:48px;height:48px;color:var(--color-ink);border-radius:50%;flex:none;place-items:center;display:grid}.status-tile{gap:var(--space-sm);border-radius:var(--radius-tile);padding:var(--space-lg) var(--space-xl);background:var(--color-surface);flex-direction:column;display:flex}.status-tile.confirmed{background:var(--color-accent-soft)}.status-head{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.status-lights{color:var(--color-accent);flex:none}.status-title{align-items:center;gap:var(--space-sm);color:var(--color-accent-text);font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);display:inline-flex}.status-icon{flex:none}.change-tile{gap:var(--space-md);flex-direction:column;display:flex}.change-row{gap:var(--space-xs);flex-direction:column;display:flex}.change-label{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:700}.change-values{align-items:center;gap:var(--space-sm);font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight);flex-wrap:wrap;display:flex}.old-value{color:var(--color-muted);font-weight:500}.change-arrow{color:var(--color-muted)}.new-value{padding:2px var(--space-sm);border-radius:var(--space-sm);background:var(--color-accent-soft);color:var(--color-accent-text)}.actions,.panel{gap:var(--space-md);margin-top:var(--space-xs);flex-direction:column;display:flex}.panel{border-radius:var(--radius-tile);background:var(--color-surface);padding:var(--space-xl);gap:var(--space-lg)}.panel-title{font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight)}.body{font-size:var(--text-body-size);line-height:var(--text-body-line)}.button{width:100%;min-height:var(--layout-button-height);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-button);text-align:center;cursor:pointer;justify-content:center;align-items:center;font-size:1.0625rem;font-weight:700;line-height:1.3;display:inline-flex}.button.primary{background:var(--color-accent);color:var(--color-on-accent);border:0}.button.secondary{border:1.5px solid var(--color-line);color:var(--color-ink);background:0 0}.button.primary:hover{filter:brightness(1.08)}.button.secondary:hover{background:var(--color-surface)}.panel .button.secondary:hover{background:var(--color-raised)}.consent{color:var(--color-muted);font-size:var(--text-caption-size);line-height:var(--text-caption-line);text-align:center;padding:0 var(--space-sm)}.field{gap:var(--space-sm);flex-direction:column;display:flex}.field label{font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:700}.input{width:100%;min-height:52px;padding:var(--space-md) var(--space-lg);border:1.5px solid var(--color-line);border-radius:var(--radius-input);background:var(--color-raised);font-size:var(--text-value-size);line-height:var(--text-value-line);font-weight:var(--text-value-weight)}.input:focus-visible{border-color:var(--color-accent);outline-offset:1px}.input[aria-invalid=true]{border-color:var(--color-issue)}.code-input{letter-spacing:.3em;max-width:12rem}.error{color:var(--color-issue);font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:var(--text-label-weight)}.footer .terms-link{align-items:center;min-height:44px;display:inline-flex}.footer{align-items:center;gap:var(--space-sm);margin-top:var(--space-xxl);text-align:center;flex-direction:column;display:flex}.text-button{min-height:44px;padding:0 var(--space-md);border-radius:var(--space-sm);color:var(--color-accent-text);font-size:var(--text-label-size);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}@media (width<=360px){.photo-tile{grid-template-columns:1fr}.subject{padding-top:0}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.ecp-panel{justify-items:center;gap:12px;display:grid}.ecp-qr{width:200px;height:200px}.shipment-tile{gap:4px;display:grid}.shipment-tile .track{font-variant-numeric:tabular-nums;letter-spacing:.04em;-webkit-user-select:all;user-select:all;margin:0;font-weight:600}.shipment-tile .text-button{justify-self:start}.tile-hint{margin:-4px 4px 0}.subject-tile{gap:var(--space-xs);display:grid;container-type:inline-size}.subject-tile .subject{padding-top:0}.row-group{gap:var(--space-sm);display:grid}.row-group .tile-hint{margin:0 var(--space-xs)}.row-text{min-width:0}.status-heading{font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight);margin:0}.status-tile.waiting{border:1.5px solid var(--color-line)}.centered{text-align:center}.button:disabled,.text-button:disabled,.chip:disabled{opacity:.55;cursor:default}.button.compact{width:auto;min-height:44px;padding:var(--space-sm) var(--space-xl);font-size:var(--text-label-size);align-self:flex-start}.session-bar{align-items:center;gap:0 var(--space-sm);flex-wrap:wrap;display:flex}.session-bar .caption{flex:100%}.session-bar .text-button{margin-right:var(--space-lg);padding:0}.document-tile,.handover-tile,.outcome-tile{gap:var(--space-md);flex-direction:column;display:flex}.document-head{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.document-head .text-button{padding:0}.document-body{gap:var(--space-sm);max-height:60vh;padding:var(--space-md);border-radius:var(--radius-input);background:var(--color-raised);overscroll-behavior:contain;flex-direction:column;display:flex;overflow-y:auto}.doc-title{font-size:var(--text-value-size);line-height:var(--text-value-line);margin:0;font-weight:700}.doc-heading{margin:var(--space-sm) 0 0;font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:700}.doc-p{font-size:var(--text-label-size);line-height:var(--text-label-line);overflow-wrap:anywhere}.doc-table-wrap{overflow-x:auto}.doc-table{border-collapse:collapse;width:100%;font-size:var(--text-caption-size);line-height:var(--text-caption-line)}.doc-table th,.doc-table td{padding:var(--space-xs) var(--space-sm);border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.doc-table th{color:var(--color-muted);font-weight:600}.handover{gap:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-line);flex-direction:column;display:flex}.file-list{gap:var(--space-md);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.file{gap:var(--space-xs);flex-direction:column;display:flex}.file-name{font-size:var(--text-value-size);line-height:var(--text-value-line);overflow-wrap:anywhere;font-weight:600}.hash{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.inline-icon{vertical-align:-.2em;width:1.1em;height:1.1em;color:var(--color-accent-text)}.ok,.received{color:var(--color-accent-text)}.access-note{padding:var(--space-md);border-radius:var(--radius-input);background:var(--color-raised);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:var(--text-label-size);line-height:var(--text-label-line);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;margin:0}.outcome-choices{gap:var(--space-sm);flex-wrap:wrap;display:flex}.chip{min-height:44px;padding:var(--space-sm) var(--space-lg);border:1.5px solid var(--color-line);border-radius:var(--radius-button);font-size:var(--text-label-size);cursor:pointer;background:0 0;font-weight:600}.chip[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-text)}.photos-tile,.description-tile,.links-tile{gap:var(--space-sm);flex-direction:column;display:flex}.photo-grid{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(88px,1fr));margin:0;padding:0;list-style:none;display:grid}.photo-thumb{aspect-ratio:1;border:1px solid var(--color-line);border-radius:var(--radius-thumbnail);background:var(--color-raised);width:100%;min-height:48px;color:var(--color-muted);cursor:zoom-in;place-items:center;padding:0;display:grid;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:100%}.photo-glyph{width:40%;max-width:40px;height:auto}.description{white-space:pre-wrap;overflow-wrap:anywhere}.link-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.terms-link{padding:var(--space-xs) 0;color:var(--color-accent-text);font-size:var(--text-label-size);line-height:var(--text-label-line);overflow-wrap:anywhere;text-underline-offset:3px;display:inline-block}span.terms-link{color:var(--color-ink)}.photo-viewer{width:min(100vw - 2 * var(--layout-gutter), 720px);max-height:calc(100dvh - 2 * var(--space-lg));border-radius:var(--radius-tile);background:var(--color-surface);color:var(--color-ink);border:0;padding:0}.photo-viewer::backdrop{background:#000000b8}.photo-viewer-body{gap:var(--space-md);padding:var(--space-lg);flex-direction:column;display:flex}.photo-viewer-head{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.photo-large{object-fit:contain;border-radius:var(--radius-input);background:var(--color-raised);width:100%;height:auto;max-height:70dvh;display:block}.doc-new-page{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1.5px dashed var(--color-line)}.doc-figure{gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.doc-image{border-radius:var(--radius-input);background:var(--color-surface);width:100%;max-width:480px;height:auto;display:block}.photo-grid>li{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.photo-marks{flex-direction:column;gap:2px;min-width:0;display:flex}.photo-mark,.photo-mark-line{color:var(--color-muted);font-size:var(--text-caption-size);line-height:var(--text-caption-line);overflow-wrap:anywhere}.photo-mark{color:var(--color-ink);align-items:flex-start;gap:4px;font-weight:600;display:flex}.photo-mark.camera{color:var(--color-accent-text)}.photo-mark-badge{background:var(--color-accent);width:18px;height:18px;color:var(--color-on-accent);border-radius:5px;flex:none;place-items:center;display:inline-grid}.photo-mark-badge svg{stroke-width:2.2px;width:14px;height:14px}.photo-mark-badge.large{border-radius:16px;width:56px;height:56px}.photo-mark-badge.large svg{stroke-width:1.8px;width:36px;height:36px}.photo-marks.compact .photo-mark-line{font-size:calc(var(--text-caption-size) * .92)}.photo-marks-link{align-self:flex-start;align-items:center;min-height:44px;display:inline-flex}.info-hero{gap:var(--space-sm);padding:var(--space-sm) 0;flex-direction:column;display:flex}.info-part{gap:var(--space-sm);flex-direction:column;display:flex}.info-heading{align-items:center;gap:var(--space-sm);font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight);display:flex}.info-list{gap:var(--space-xs);flex-direction:column;margin:0;padding-left:1.2em;display:flex}.info-list li{font-size:var(--text-body-size);line-height:var(--text-body-line)}.faq-list{flex-direction:column;display:flex}.faq-item{border-top:1px solid var(--color-line)}.faq-item:first-child{border-top:0}.faq-item summary{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:48px;padding:var(--space-sm) 0;font-size:var(--text-body-size);line-height:var(--text-body-line);cursor:pointer;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--color-accent-text);flex:none;font-size:1.25rem;font-weight:600}.faq-item[open] summary:after{content:"−"}.faq-answer{padding-bottom:var(--space-sm);font-size:var(--text-body-size);line-height:var(--text-body-line)}.faq-item .terms-link{margin-bottom:var(--space-sm)}.info-switch{align-items:center;display:inline-flex}.public-card{gap:var(--space-xs);flex-direction:column;display:flex}.public-card.placeholder{min-height:12rem}.public-card-person{align-items:center;gap:var(--space-md);display:flex}.public-card-avatar{background:var(--color-accent-soft);width:48px;height:48px;color:var(--color-accent-text);font-size:var(--text-heading-size);border-radius:50%;flex:none;place-items:center;font-weight:700;display:inline-grid}.public-card-avatar.unknown{color:var(--color-muted)}.public-card-who{flex-direction:column;gap:2px;min-width:0;display:flex}.public-card-who h1{font-size:var(--text-heading-size);line-height:var(--text-heading-line);font-weight:var(--text-heading-weight);margin:0}.public-card-who h1.unconfirmed{color:var(--color-muted)}.public-card-verified{min-height:44px;color:var(--color-accent-text);font-size:var(--text-label-size);line-height:var(--text-label-line);text-underline-offset:3px;align-self:flex-start;align-items:center;gap:6px;font-weight:600;text-decoration:underline;display:inline-flex}.verified-badge{flex:none;width:20px;height:20px}.verified-badge.large{width:72px;height:72px}.public-card-rule{height:1px;margin:var(--space-sm) 0;background:var(--color-line)}.public-card-hero{gap:var(--space-xs);flex-direction:column;display:flex}.public-card-number{color:var(--color-accent-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:4.5rem;font-weight:700;line-height:1.08}.public-card-awards{gap:var(--space-sm);margin:var(--space-md) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.public-card-awards li{align-items:center;gap:var(--space-sm);font-size:var(--text-label-size);line-height:var(--text-label-line);font-weight:600;display:flex}.public-card-awards img{flex:none;width:32px;height:32px}.public-card-asof{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px dashed var(--color-line)}.steps-tile,.warranty-tile,.warranty-terms-tile{gap:var(--space-sm);flex-direction:column;display:flex}.steps{margin:0;padding:0;list-style:none}.step{gap:var(--space-sm);padding-bottom:var(--space-md);grid-template-columns:24px 1fr;display:grid;position:relative}.step:not(:last-child):before{content:"";background:var(--color-line);width:2px;position:absolute;top:24px;bottom:0;left:11px}.step-dot{border:2px solid var(--color-line);background:var(--color-surface);width:24px;height:24px;color:var(--color-on-accent);border-radius:50%;place-items:center;display:grid}.step-dot svg{width:16px;height:16px}.step.done .step-dot{border-color:var(--color-accent);background:var(--color-accent)}.step.current .step-dot{border-color:var(--color-accent);box-shadow:inset 0 0 0 4px var(--color-surface), inset 0 0 0 12px var(--color-accent)}.step-body{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.step-title{font-size:var(--text-label-size);line-height:var(--text-label-line);overflow-wrap:anywhere;font-weight:600}.step.upcoming .step-title,.step.skipped .step-title{color:var(--color-muted);font-weight:500}.step-actions,.claim-actions{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.step-form{gap:var(--space-xs);flex-direction:column;display:flex}.textarea{resize:vertical;min-height:72px;font:inherit}.muted{color:var(--color-muted)}.claim{gap:var(--space-sm);padding-top:var(--space-md);border-top:1px solid var(--color-line);flex-direction:column;display:flex}.claim-head{justify-content:space-between;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;display:flex}.claim-state{padding:2px var(--space-sm);border-radius:var(--radius-button);background:var(--color-raised);color:var(--color-muted);font-size:var(--text-caption-size);line-height:var(--text-caption-line);font-weight:600}.claim-state.resolved{background:var(--color-accent-soft);color:var(--color-accent-text)}.claim-lines{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.photo-thumb.static{cursor:default}.outcome-prompt{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-input);background:var(--color-accent-soft);color:var(--color-accent-text)}.receipt-dialog{width:min(100vw - 2 * var(--layout-gutter), 480px)}
