.repair-page{color:#211b20;background:#f4ede5}.repair-ai-label{font:500 13px/1.7 var(--sans);color:#967562;margin:0 0 12px}.repair-page .repair-retry{text-underline-offset:5px;margin-top:22px;text-decoration:underline}.repair-page button:disabled{cursor:wait;opacity:.55}.repair-main{max-width:1120px;min-height:calc(100svh - 216px);margin:0 auto;padding:36px 28px 100px}.repair-steps{font:500 14px var(--sans);color:#8b807b;justify-content:center;gap:34px;margin:0 0 20px;padding:0;list-style:none;display:flex}.repair-steps li{align-items:center;gap:9px;display:flex}.repair-steps li>span{border:1px solid #d2c5bc;border-radius:50%;place-items:center;width:25px;height:25px;font-size:11px;display:grid}.repair-steps .active{color:#a3513c}.repair-steps .active>span{color:#fff;background:#a3513c;border-color:#a3513c}.reception-intro{text-align:center;max-width:650px;margin:0 auto;position:relative}.reception-heart{justify-content:center;align-items:center;height:220px;display:flex;position:relative}.reception-heart img{object-fit:contain;z-index:1;filter:drop-shadow(0 9px 12px #973e2520);width:235px;height:235px;animation:5s ease-in-out infinite yarn-float;position:relative}.heart-shadow{filter:blur(10px);background:#9d543824;border-radius:50%;width:110px;height:12px;animation:5s ease-in-out infinite yarn-shadow;position:absolute;bottom:5px}.reception-eyebrow{font:600 12px/1.5 var(--sans);letter-spacing:.17em;color:#a65b44;margin:18px 0 15px}.reception-intro h1{font:700 clamp(2rem,4vw,3.4rem)/1.3 var(--serif);letter-spacing:-.055em;color:#352630;word-break:keep-all;margin:0}.reception-intro h1>span,.reception-description>span{display:block}.reception-description{font:400 16px/1.9 var(--serif);color:#7a6963;word-break:keep-all;margin:19px 0 30px}.repair-form{text-align:left;max-width:580px;margin:0 auto}.repair-label-row{font:500 14px var(--sans);color:#544841;justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.repair-label-row>span{color:#88766d;font-size:12px}.repair-form textarea{field-sizing:fixed;color:#352630;width:100%;font:400 16px/1.8 var(--sans);resize:vertical;background:#fffbf6;border:1px solid #d6c7bb;border-radius:14px;outline:none;min-height:148px;padding:20px 22px;display:block;box-shadow:0 7px 24px #50312104}.repair-form textarea::placeholder{color:#9c8c83}.repair-form textarea:focus-visible{border-color:#a6533e;box-shadow:0 0 0 3px #b55d4224}.repair-form textarea[aria-invalid=true]{border-color:#b84339}.repair-page .repair-submit{color:#fffaf4;width:100%;height:54px;font:600 16px var(--sans);cursor:pointer;background:#a2513c;border:1px solid #a2513c;border-radius:12px;justify-content:center;align-items:center;gap:12px;margin-top:16px;padding:12px 20px;transition:background .2s,transform .2s;display:flex}.repair-page .repair-submit:hover{background:#863e2e;transform:translateY(-1px)}.repair-privacy{font:400 13px/1.7 var(--sans);color:#88766d;text-align:center;margin:16px 0 0}.repair-error{font:400 14px/1.6 var(--sans);color:#a6342d;margin:10px 0 0}.is-connecting{min-height:620px;padding-top:70px}.is-connecting .reception-heart img{animation:1.6s ease-in-out infinite yarn-connect}.thread-progress{justify-content:center;gap:9px;margin-top:32px;display:flex}.thread-progress span{background:#b25742;border-radius:50%;width:7px;height:7px;animation:1.1s infinite thread-pulse}.thread-progress span:nth-child(2){animation-delay:.15s}.thread-progress span:nth-child(3){animation-delay:.3s}.repair-result{padding-top:26px;animation:.6s both repair-reveal}.repair-result-top{border-bottom:1px solid #d8cbc1;justify-content:space-between;align-items:center;gap:15px;margin-bottom:42px;padding-bottom:20px;display:flex}.repair-result-top>span{font:500 14px var(--sans);color:#8d543f;align-items:center;gap:8px;display:flex}.repair-page .repair-back{color:#6c5b52;cursor:pointer;font:500 14px var(--sans);background:0 0;border-radius:0;align-items:center;gap:8px;height:auto;padding:8px 0;display:flex}.repair-page .repair-back:hover{color:#a3513c}.repair-result-layout{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(28px,5vw,64px);display:grid}.repair-portrait{animation:.55s both repair-reveal;position:sticky;top:120px}.repair-portrait>img{aspect-ratio:4/5;object-fit:cover;background:#e9ddd0;border-radius:48% 48% 14px 14px;width:100%;display:block}.repair-portrait>p{text-align:center;font:500 12px var(--sans);letter-spacing:.19em;color:#978175;margin:17px 0 0}.repair-letter{animation:.5s both repair-reveal}.repair-letter .reception-eyebrow{letter-spacing:.06em;margin:6px 0 14px;font-size:14px}.repair-letter h1{font:700 clamp(2.1rem,4vw,3.4rem)/1.3 var(--serif);letter-spacing:-.05em;color:#352630;word-break:keep-all;outline:none;margin:0 0 24px}.repair-submitted{border-left:2px solid var(--artisan-accent);background:#ede3d9;border-radius:0 8px 8px 0;margin-bottom:27px;padding:15px 19px}.repair-submitted>span{font:500 12px var(--sans);color:#977e70}.repair-submitted>p{font:400 15px/1.8 var(--sans);color:#6f5f55;white-space:pre-wrap;overflow-wrap:anywhere;max-height:145px;margin:7px 0 0;overflow:auto}.repair-letter blockquote{font:400 clamp(1.15rem,1.8vw,1.5rem)/1.95 var(--serif);letter-spacing:-.02em;color:#4c3a34;word-break:keep-all;margin:0 0 32px}.repair-song{color:#fff5ec;background:#2a202d;border-radius:14px;padding:25px 27px}.repair-song>p{font:500 13px var(--sans);color:#d5b0a1;align-items:center;gap:8px;margin:0 0 13px;display:flex}.repair-song>h2{font:700 clamp(1.3rem,2vw,1.7rem)/1.5 var(--serif);letter-spacing:-.04em;margin:0 0 20px}.repair-song>a{font:600 14px var(--sans);color:#352630;background:#f1be9d;border-radius:8px;align-items:center;gap:24px;padding:12px 17px;text-decoration:none;transition:background .2s;display:inline-flex}.repair-song>a:hover{background:#f7d6ba}.repair-song>small{font:400 12px/1.7 var(--sans);color:#bdacb9;margin-top:14px;display:block}.repair-other{border-top:1px solid #d8cbc1;margin-top:48px;padding-top:27px}.repair-other>h2{font:500 16px/1.5 var(--sans);color:#5d443b;align-items:center;gap:9px;margin:0 0 8px;display:flex}.repair-other>p{font:400 14px/1.8 var(--sans);color:#867267;margin:0 0 18px}.repair-other>div{flex-wrap:wrap;gap:10px;display:flex}.repair-page .repair-artisan-choice{color:#6a564b;height:48px;font:500 14px var(--sans);cursor:pointer;white-space:nowrap;background:#faf5ef;border:1px solid #d9c9bc;border-radius:999px;align-items:center;gap:9px;padding:5px 13px 5px 6px;display:flex}.repair-artisan-choice>img{object-fit:cover;border-radius:50%;width:34px;height:34px;display:block}.repair-page .repair-artisan-choice[aria-pressed=true]{color:#613721;background:#e9d7c8;border-color:#a66c4e}.repair-page .repair-artisan-choice:hover{border-color:#a66c4e}.repair-page :is(button,a):focus-visible{outline-offset:4px;outline:2px solid #bb795b}@keyframes yarn-float{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-13px)rotate(3deg)}}@keyframes yarn-shadow{50%{opacity:.6;transform:scale(.8)}}@keyframes yarn-connect{50%{filter:drop-shadow(0 5px 22px #b7514350);transform:translateY(-15px)scale(1.05)}}@keyframes thread-pulse{50%{opacity:.25;transform:translateY(-4px)}}@keyframes repair-reveal{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.repair-main{padding:27px 20px 70px}.repair-steps{gap:17px;margin-bottom:15px;font-size:12px}.repair-steps li{gap:5px}.repair-steps li>span{width:22px;height:22px;font-size:10px}.reception-heart{height:180px}.reception-heart img{width:190px;height:190px}.reception-eyebrow{margin-top:17px;font-size:10px}.reception-intro h1{font-size:clamp(1.9rem,7.4vw,2.6rem)}.reception-description{margin:15px 0 24px}.repair-label-row{font-size:14px}.repair-form textarea{min-height:145px;padding:16px}.repair-result{padding-top:15px}.repair-result-top{margin-bottom:28px;padding-bottom:15px}.repair-result-layout{grid-template-columns:1fr;gap:26px}.repair-portrait{width:min(270px,76%);margin:0 auto;position:static}.repair-portrait>img{aspect-ratio:4/4.5}.repair-portrait>p{margin-top:12px;font-size:11px}.repair-letter h1{font-size:2.25rem}.repair-letter .reception-eyebrow,.repair-letter h1{text-align:center}.repair-letter blockquote{font-size:19px;line-height:1.9}.repair-song{padding:23px}.repair-other{margin-top:34px}.is-connecting{min-height:560px;padding-top:70px}}@media (prefers-reduced-motion:reduce){.repair-page *,.repair-page :before,.repair-page :after{transition:none!important;animation:none!important}}
