@font-face{font-family:ToyotaDisplay;src:url(/assets/SweiSpringCJKtc-Bold-B0rSQczU.ttf) format("truetype")}@font-face{font-family:ToyotaText;src:url(/assets/NotoSansCJKtc-Regular-4ma3zS5W.otf) format("opentype")}@font-face{font-family:ToyotaNumber;src:url(/assets/NotoSansCJKtc-Black-DBw_Clz3.otf) format("opentype")}:root{color-scheme:dark;--red: #d81419;--gold: #c8a36a;--paper: #f8f0df;--ink: #261d15}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;font-family:ToyotaText,Noto Sans TC,sans-serif;background:#100d0a}button{font:inherit}#scene{position:fixed;inset:0;width:100%;height:100%;cursor:grab}#scene:active{cursor:grabbing}.entry{position:fixed;inset:0;z-index:20;overflow:hidden;display:grid;place-items:center;background:#120d0b;transition:opacity .55s ease,visibility .55s ease}.entry:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0906058a,#09060529 34%,#0906057a),#0705056b;pointer-events:none}.entry.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.entry-photo{position:absolute;left:50%;top:50%;width:min(100vw,56.25vh);height:min(100vh,calc(100vw * 16 / 9));max-width:none;object-fit:cover;pointer-events:none;filter:blur(9px) brightness(.42) saturate(.78);transform:translate(-50%,-50%) scale(1.04)}.entry-stage{position:relative;z-index:1;width:min(100vw,56.25vh);height:min(100vh,calc(100vw * 16 / 9));max-width:548px;max-height:974px;overflow:hidden}.entry-guide{position:absolute;left:50%;object-fit:contain;pointer-events:none;transform:translate(-50%)}.entry-guide{top:8.2%;width:87%;filter:drop-shadow(0 6px 18px rgba(0,0,0,.5))}.asset-button{position:absolute;border:0;padding:0;background:transparent;cursor:pointer;transition:transform .18s ease,filter .18s ease}.asset-button:hover{transform:translateY(-2px);filter:brightness(1.08)}.asset-button img{display:block;width:100%}.asset-button.start{left:50%;bottom:10.6%;width:48%;max-width:264px;min-width:230px;transform:translate(-50%)}.asset-button.start:hover{transform:translate(-50%) translateY(-2px)}.showroom-zone{position:fixed;inset:0;z-index:9;display:grid;place-items:center;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;background:linear-gradient(180deg,#fffffff5 0 68%,#d7d7d7fa 68% 100%);transition:opacity .25s ease,visibility .25s ease}#app.showroom-active .showroom-zone{opacity:1;visibility:visible;pointer-events:auto}#app.showroom-active .hud,#app.showroom-active .floor-map,#app.showroom-active .hint,#app.showroom-active .walk-controls{opacity:0;visibility:hidden;pointer-events:none}.showroom-stage{position:relative;width:min(100vw,56.25vh);height:min(100vh,calc(100vw * 16 / 9));max-width:548px;max-height:974px;overflow:hidden}.showroom-logo,.showroom-title,.showroom-photo,.showroom-hint,.showroom-360{position:absolute;left:50%;transform:translate(-50%)}.showroom-logo{top:2%;width:100%;height:auto;object-fit:contain}.showroom-title{top:10.6%;width:96%;height:auto;object-fit:contain;filter:drop-shadow(0 8px 14px rgba(80,50,18,.18))}.showroom-photo{top:31%;width:92%;height:auto;object-fit:contain;box-shadow:0 12px 30px #28190c2e}.showroom-hint,.showroom-360{border:0;padding:0;background:transparent;cursor:pointer}.showroom-hint img,.showroom-360 img{display:block;width:100%}.showroom-hint-altis{top:65.7%;left:26%;width:39%;z-index:2}.showroom-hint-cross{top:65.7%;left:74%;width:43%;z-index:2}.showroom-360{top:67.2%;width:58%;max-width:260px;z-index:1;filter:drop-shadow(0 18px 28px rgba(111,0,0,.24));transition:transform .16s ease,filter .16s ease}.showroom-360:hover{transform:translate(-50%) translateY(-2px);filter:drop-shadow(0 20px 32px rgba(111,0,0,.3)) brightness(1.04)}.hud{position:fixed;top:18px;left:50%;z-index:10;display:flex;align-items:center;gap:18px;width:min(94vw,980px);padding:12px 14px 12px 18px;border:1px solid rgba(217,184,119,.44);border-radius:8px;background:#100c09b8;box-shadow:0 22px 80px #0000005c;transform:translate(-50%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{font-family:ToyotaDisplay,serif;font-size:18px;letter-spacing:0;color:var(--paper);white-space:nowrap}.hud nav{display:flex;gap:8px;margin-left:auto}.hud button,.floor-map button,.panel-actions button,.viewer-buttons button{min-height:38px;border:1px solid rgba(255,238,199,.28);border-radius:6px;padding:0 14px;color:var(--paper);background:#ffffff14;cursor:pointer;transition:background .16s ease,border-color .16s ease,transform .16s ease}.hud button:hover,.floor-map button:hover,.panel-actions button:hover,.viewer-buttons button:hover{border-color:#ffeec7b8;background:#ffffff29;transform:translateY(-1px)}.floor-map{position:fixed;right:20px;bottom:22px;z-index:8;display:none;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border:1px solid rgba(217,184,119,.34);border-radius:8px;background:#100c09ad;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hint{position:fixed;left:20px;bottom:26px;z-index:8;max-width:280px;padding:10px 12px;border-left:3px solid var(--red);color:#fff1d6;background:#120d0aad;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.walk-controls{position:fixed;left:50%;bottom:92px;z-index:8;display:flex;gap:10px;transform:translate(-50%)}.walk-controls button{min-width:94px;min-height:40px;border:1px solid rgba(255,238,199,.34);border-radius:6px;color:var(--paper);background:#75211ac7;box-shadow:0 12px 32px #00000047;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer}.walk-controls button:hover{border-color:#ffeec7c7;background:#a7221be0}.panel,.viewer,.photo{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:22px;background:#0907059e;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.icon-close{display:none}.panel.is-open,.viewer.is-open,.photo.is-open{opacity:1;visibility:visible;pointer-events:auto}.panel{padding:0;background:#0c0a09c2}.intro-phone{position:relative;width:min(100vw,calc(100vh * 1293 / 2089));aspect-ratio:1293 / 2089;max-height:100vh;overflow:hidden;box-shadow:0 34px 90px #0000008f}.intro-base,.intro-car,.intro-badge,.intro-share img,.intro-ai img,.intro-360 img,.intro-prev img,.intro-next img,.intro-back img{display:block;width:100%}.intro-base,.intro-car,.intro-badge,.intro-badge-generation,.intro-ai-generated,.intro-ai,.intro-360,.intro-prev,.intro-next,.intro-back,.intro-copybox,.intro-year-label,.intro-year,.intro-date{position:absolute}.intro-base{inset:0;height:100%;object-fit:cover;z-index:0}.intro-phone.is-special.is-altis:before{content:"";position:absolute;left:9.5%;top:23.2%;z-index:1;width:82%;aspect-ratio:1;background:url("/Asset%20(PNG%20%20%20Sequence)/%E6%89%8B%E6%A9%9F%E4%BB%8B%E9%9D%A2_Cross/@%E8%BB%8A%E6%AC%BE%E4%BB%8B%E7%B4%B9/60%E9%80%B1%E5%B9%B4%E8%83%8C%E6%99%AF%E7%89%B9%E6%95%88@2x.png") center / contain no-repeat;opacity:.9;pointer-events:none}.intro-year-label{display:none}.intro-year{top:13.2%;left:7.2%;color:#86613b;font-family:ToyotaNumber,ToyotaText,sans-serif;font-size:clamp(36px,9.3vw,74px);font-weight:900;line-height:.95;letter-spacing:0;font-variant-numeric:tabular-nums}.intro-date{top:18.2%;left:7.8%;color:#86613b;font-weight:800;font-size:clamp(14px,3.2vw,25px)}.intro-car{top:14.4%;left:18%;width:64%;max-height:22%;object-fit:contain;filter:drop-shadow(0 16px 16px rgba(0,0,0,.18));z-index:2}.intro-ai-generated{display:none;left:50%;top:38.2%;z-index:3;width:74%;transform:translate(-50%);color:#8a643d;font-family:ToyotaText,sans-serif;font-size:clamp(7px,1.55vw,12px);font-weight:900;line-height:1;text-align:center;letter-spacing:0;text-shadow:0 1px 3px rgba(255,255,255,.72);pointer-events:none}.intro-phone.is-history .intro-ai-generated{display:block}.intro-share,.intro-ai,.intro-360,.intro-prev,.intro-next,.intro-back{border:0;padding:0;background:transparent;cursor:pointer}.intro-share{display:none}.intro-ai{top:30.9%;right:7.2%;width:20.8%;z-index:4}.intro-360{top:34.9%;right:7.2%;width:20.8%;z-index:4}.intro-badge{top:37.1%;left:15.2%;width:70.2%;z-index:2}.intro-badge-generation{top:40.95%;left:50%;width:62%;transform:translate(-50%);z-index:3;color:#fffdf7;font-family:ToyotaText,sans-serif;font-size:clamp(12px,2.9vw,21px);font-weight:900;line-height:1.1;text-align:center;text-shadow:0 2px 5px rgba(61,37,18,.7);pointer-events:none}.intro-copybox{top:43.9%;left:8.8%;width:82.4%;height:37.1%;z-index:1;padding:7% 7% 5.5%;overflow:auto;color:#94642e;border:3px solid #d5bd82;background:#fffffff5;scrollbar-color:#d6c49f transparent}.intro-copybox h2{margin:0 0 1rem;color:#b28548;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(18px,4.5vw,34px);line-height:1.35;text-align:center;letter-spacing:0}.intro-copybox .panel-kicker{margin:0 0 1rem;color:#c3a053;font-size:clamp(14px,3.6vw,24px);font-weight:800}.intro-copybox .panel-kicker:empty{display:none}.intro-copybox .intro-body{margin:0;color:#9b672f;font-size:clamp(13px,3.25vw,23px);font-weight:700;line-height:1.72}.intro-copybox p{margin:0 0 .86rem}.intro-copybox p:last-child{margin-bottom:0}.detail-section{margin:0 0 1.05rem}.detail-section h3{margin:0 0 .52rem;color:#b28548;font-size:clamp(14px,3.5vw,24px);line-height:1.25}.intro-copybox ol{margin:0 0 1.05rem;padding:0;list-style:none}.intro-copybox li{margin:0 0 .34rem;color:#9b672f;font-size:clamp(13px,3.25vw,23px);font-weight:700;line-height:1.64}.intro-copybox strong{display:block;margin:1.1rem 0 .65rem;color:#b28548;font-size:clamp(18px,4.6vw,34px);line-height:1.25}.intro-phone.is-history .intro-car{top:var(--detail-car-top, .8%);left:var(--detail-car-left, 8.5%);width:var(--detail-car-width, 84%);max-height:none}.intro-phone.is-history .intro-share{top:21.4%}.intro-phone.is-history .intro-ai{top:30.2%}.intro-phone.is-history .intro-360{top:37.2%}.intro-phone.is-history .intro-badge{top:40.3%}.intro-phone.is-history .intro-badge-generation{top:44.55%}.intro-phone.is-history .intro-copybox{top:46.2%;height:34.7%;padding-top:8.6%}.intro-phone.is-history .intro-copybox h2{display:none}.intro-phone.is-history.is-cross .intro-badge-generation{top:44.85%;font-size:clamp(10px,2.2vw,16px)}.intro-phone.is-history.is-cross .intro-copybox h2{font-size:clamp(16px,3.75vw,28px);line-height:1.28}.intro-phone.is-special .intro-car{top:16.8%;left:-7.5%;width:117%;max-height:none;height:auto}.intro-phone.is-special.is-cross .intro-car{top:16.6%;left:-9.5%;width:121%}.intro-phone.is-special .intro-date{top:20.3%}.intro-phone.is-special .intro-share{top:17.4%}.intro-phone.is-special .intro-ai{top:28.6%;width:20.8%}.intro-phone.is-special .intro-360{top:36.4%}.intro-phone.is-special .intro-badge{top:41.45%;left:12%;width:76.5%}.intro-phone.is-special .intro-badge-generation{display:none}.intro-phone.is-special .intro-copybox{top:47%;height:32.1%}.intro-prev{left:8.1%;bottom:5.6%;width:13%}.intro-next{right:8.1%;bottom:5.6%;width:13%}.intro-back{left:50%;bottom:4.7%;width:49.2%;transform:translate(-50%)}.panel-actions .primary,.camera-button{border-color:#ffffff47;color:#fff;background:linear-gradient(180deg,#e82123,#b90910);box-shadow:0 10px 24px #c8000047}.viewer .phone,.photo-phone{position:relative;width:min(100vw,calc(100vh * 1441 / 2561));width:min(100vw,calc(100dvh * 1441 / 2561));aspect-ratio:1441 / 2561;max-height:100vh;max-height:100dvh;overflow:hidden;border:0;border-radius:0;background:#eee7dd;box-shadow:0 34px 90px #0000007a}.phone-bg,.phone-header,.phone-title,.car-frame{position:absolute;object-fit:contain;-webkit-user-select:none;user-select:none}.phone-bg{inset:0;width:100%;height:100%;object-fit:cover}.phone-header{top:0;left:0;width:100%}.phone-title{top:9.6%;left:50%;width:72%;transform:translate(-50%);cursor:pointer}.car-frame{top:39%;left:50%;width:138%;transform:translate(-50%);cursor:ew-resize;filter:drop-shadow(0 16px 18px rgba(0,0,0,.18))}.viewer[data-series=cross] .car-frame{top:38%;width:145%}.viewer[data-series=altis] .car-frame{top:39.3%;width:134%}.viewer-buttons{position:absolute;top:42.5%;left:0;right:0;display:flex;justify-content:space-between;padding:0 3.1%}.viewer-buttons button{width:9.3%;aspect-ratio:246 / 240;height:auto;padding:0;border:0;background:transparent;cursor:pointer}.viewer-buttons img,.viewer-share img,.viewer-ai img,.viewer-back img{display:block;width:100%}.viewer-share,.viewer-ai,.viewer-back{position:absolute;border:0;padding:0;background:transparent;cursor:pointer}.viewer-share{display:none}.viewer-ai{left:50%;top:74.2%;width:56%;transform:translate(-50%)}.viewer-back{left:50%;top:84.8%;width:42%;transform:translate(-50%)}.photo-phone{background:#f3ead6}.photo-frame,.photo-result-bg,.photo-consent-panel{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-frame{z-index:1;pointer-events:none}.photo-step{position:absolute;inset:0;z-index:2;display:none}.photo-phone[data-step=start] [data-photo-step=start],.photo-phone[data-step=consent] [data-photo-step=consent],.photo-phone[data-step=capture] [data-photo-step=capture],.photo-phone[data-step=gender] [data-photo-step=gender],.photo-phone[data-step=result] [data-photo-step=result]{display:block}.photo-phone.is-upload-review .photo-capture-actions{display:none}.photo-phone.is-upload-review .photo-upload-actions{display:flex}.photo-phone.is-upload-review .photo-upload-preview{opacity:1}.photo-phone.is-upload-review .photo-capture-hint{display:none}.photo-phone[data-step=capture] .photo-step{z-index:auto}.photo-phone[data-step=capture] .photo-step-back,.photo-phone[data-step=capture] .photo-capture-actions,.photo-phone[data-step=capture] .photo-upload-actions,.photo-phone[data-step=capture] .photo-error{z-index:8}.photo-rule,.photo-sample,.photo-start-button,.photo-back-button,.photo-consent-copy,.photo-error,.photo-agree,.photo-confirm,.photo-step-back,.photo-capture-back,.photo-camera-preview,.photo-upload-preview,.photo-file-input,.photo-capture-hint,.photo-capture-actions,.photo-upload-actions,.photo-gender-panel,.photo-result-card,.photo-result-caption,.photo-share-button,.photo-site-button,.photo-result-back{position:absolute}.photo-step button{border:0;padding:0;background:transparent;cursor:pointer}.photo-step button img,.photo-rule,.photo-sample,.photo-result-card{display:block;width:100%}.photo-rule{left:50%;top:16.2%;width:77%;transform:translate(-50%)}.photo-sample{left:9.8%;top:35.8%;width:80.4%}.photo-start-button{left:50%;top:76.4%;width:45.4%;z-index:5;transform:translate(-50%);filter:drop-shadow(0 8px 8px rgba(102,34,12,.2))}.photo-back-button{left:50%;top:86%;width:29%;z-index:5;transform:translate(-50%)}.photo-phone[data-ai-theme=altis1966] .photo-rule{top:15.4%}.photo-phone[data-ai-theme=altis1966] .photo-sample{top:34.4%;left:12.4%;width:75.2%}.photo-phone[data-ai-theme=altis1966] .photo-start-button{top:70%}.photo-phone[data-ai-theme=altis1966] .photo-back-button{top:78.4%}.photo-consent-panel{inset:17.5% 5.4% auto;width:89.2%;height:73.2%;object-fit:fill;pointer-events:none}.photo-consent-copy{left:10.9%;top:27.6%;width:78.6%;height:46.9%;z-index:4;overflow-x:hidden;overflow-y:auto;padding-right:1.8%;color:#6e5540;font-size:clamp(12px,3vw,21px);font-weight:700;line-height:1.86;text-align:left;overscroll-behavior:contain;pointer-events:auto;scrollbar-width:none;touch-action:pan-y;-webkit-overflow-scrolling:touch}.photo-consent-copy::-webkit-scrollbar{display:none}.photo-consent-copy p{margin:0 0 .95em}.photo-consent-copy p:first-child{color:#6e5540}.photo-consent-copy p:first-child:first-line{color:#6e5540}.photo-agree{left:17%;top:76.7%;z-index:5;width:67%}.photo-agree.is-checked:before{content:"";position:absolute;left:-2%;top:-7%;width:12%;aspect-ratio:112 / 88;background:url("/Asset%20(PNG%20%20%20Sequence)/%E6%89%8B%E6%A9%9F%E4%BB%8B%E9%9D%A2_Cross/@%E6%BF%BE%E9%8F%A1%E7%9B%B8%E6%A1%86/2-%E5%8B%BE@2x.png") center / contain no-repeat}.photo-confirm{left:50%;top:84.1%;z-index:5;width:24.7%;transform:translate(-50%)}.photo-capture{background:#e5ded2}.photo-capture:before{content:"";position:absolute;inset:0;background:var(--photo-preview, url("/Asset%20(PNG%20%20%20Sequence)/%E6%89%8B%E6%A9%9F%E4%BB%8B%E9%9D%A2_Cross/@%E6%BF%BE%E9%8F%A1%E7%9B%B8%E6%A1%86/1-frame@2x.png")) center / cover no-repeat;filter:saturate(.95)}.photo-phone[data-step=capture]>.photo-frame{z-index:2;opacity:.98}.photo-camera-preview,.photo-upload-preview{inset:0;z-index:0;width:100%;height:100%;object-fit:cover;background:#d8d1c5}.photo-phone.is-selfie-camera .photo-camera-preview{transform:scaleX(-1)}.photo-upload-preview{opacity:0}.photo-file-input{width:1px;height:1px;opacity:0;pointer-events:none}.photo-step-back{left:4.2%;top:4.2%;z-index:3;display:grid;place-items:center;width:11.5%;aspect-ratio:1;border:2px solid rgba(255,255,255,.65)!important;border-radius:50%;background:#402d1e85!important;box-shadow:0 8px 22px #0000002e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.photo-step-back svg{width:58%;height:58%;fill:none;stroke:#fff;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.photo-capture-hint{left:8.3%;top:61.6%;z-index:2;width:83.4%}.photo-capture-actions{left:16.4%;right:16.4%;top:76.3%;z-index:8;display:grid;grid-template-columns:1fr 1.34fr 1fr;align-items:center;gap:11%}.photo-capture-actions button{width:100%}.photo-capture-actions button:nth-child(2){transform:scale(1.22)}.photo-upload-actions{left:17%;right:17%;top:77.4%;z-index:8;display:none;justify-content:center;gap:8%}.photo-error{left:9%;right:9%;top:68.8%;display:none;padding:10px 12px;border:2px solid rgba(208,0,0,.85);border-radius:8px;color:#c60000;background:#ffffffeb;font-size:clamp(13px,3.4vw,22px);font-weight:800;line-height:1.45;text-align:center;box-shadow:0 8px 20px #50140a2e}.photo-error.is-visible{display:block}.photo-phone.is-validating .photo-upload-actions button,.photo-phone.is-generating .photo-upload-actions button{opacity:.55;pointer-events:none}.photo-phone.is-validating .photo-upload-actions,.photo-phone.is-validating .photo-step-back{pointer-events:none}.photo-phone.is-validating .photo-capture-actions,.photo-phone.is-validating .photo-upload-actions,.photo-phone.is-validating .photo-step-back{opacity:0}.photo-gender:before{content:"";position:absolute;inset:0;background:var(--photo-user-preview, var(--photo-preview)) center / cover no-repeat;filter:brightness(.24) saturate(.88)}.photo-gender:after{content:"";position:absolute;inset:0;background:#00000057}.photo-gender-back{z-index:6}.photo-gender-panel{left:11.8%;right:11.8%;top:32.8%;z-index:7;display:flex;flex-direction:column;align-items:center;height:39.6%;padding:13.9% 7% 5.4%;border:3px solid transparent;color:#9a6725;background:linear-gradient(#d5bf8f,#d5bf8f) 0 6% / 100% 7.8% no-repeat padding-box,linear-gradient(#fffffffa,#fffffffa) padding-box,linear-gradient(110deg,#b38c4c,#efe1bd 22%,#c8a86c 48%,#f8edd1 70%,#a67b36) border-box;box-shadow:0 12px 18px #0000003d}.photo-gender-title{position:absolute;top:-3.8%;left:50%;width:82%;height:15%;display:grid;place-items:center;transform:translate(-50%);color:#9a6725;background:url("/Asset%20(PNG%20%20%20Sequence)/%E6%89%8B%E6%A9%9F%E4%BB%8B%E9%9D%A2_Cross/@%E6%BF%BE%E9%8F%A1%E7%9B%B8%E6%A1%86/text-frame@2x.png") center / 100% 100% no-repeat;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(12px,3.1vw,22px);font-weight:900;line-height:1.05;text-align:center;white-space:nowrap;padding:0 7% 1.2% 9%}.photo-gender-option{position:relative;width:64%;height:13.8%;justify-self:center;min-height:0;border:2px solid #9a6725!important;border-radius:999px;color:#9a6725;background:#fff!important;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(16px,4.2vw,30px);font-weight:900;line-height:1}.photo-gender-option+.photo-gender-option{margin-top:5.4%}.photo-gender-option.is-selected{color:#fff;background:#9f6c27!important}.photo-gender-confirm{position:relative;justify-self:center;width:34%;height:13.6%;min-height:0;margin-top:9.2%;border-radius:8px;color:#fff;background:#d30905!important;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(14px,3.45vw,25px);font-weight:900;line-height:1;box-shadow:0 4px 7px #60180c52}.photo-phone.is-generating .photo-capture-actions,.photo-phone.is-generating .photo-upload-actions,.photo-phone.is-generating .photo-step-back,.photo-phone.is-generating .photo-gender-panel{opacity:0;pointer-events:none}.photo-phone.is-generating:after{content:"";position:absolute;inset:0;z-index:30;display:block;background:var(--photo-loading, url("/Asset%20(PNG%20%20%20Sequence)/%E6%89%8B%E6%A9%9F%E4%BB%8B%E9%9D%A2_Cross/@%E6%BF%BE%E9%8F%A1%E7%9B%B8%E6%A1%86/4-loading@2x.png")) center / cover no-repeat}.photo-phone.is-validating:after{content:"圖片驗證中";position:absolute;inset:0;z-index:27;display:grid;place-items:center;padding-top:26%;color:#fff;background:#120e0ca3;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(22px,6vw,42px);font-weight:900;letter-spacing:0;text-shadow:0 3px 12px rgba(0,0,0,.45)}.photo-phone.is-validating:before{content:"";position:absolute;left:50%;top:44%;z-index:28;width:clamp(34px,9vw,58px);aspect-ratio:1;border:5px solid rgba(255,255,255,.74);border-top-color:#d00000;border-radius:999px;box-shadow:0 6px 18px #46140a40;transform:translate(-50%);animation:photoValidationSpin .8s linear infinite}.photo-validation-modal{position:absolute;inset:0;z-index:40;display:none;align-items:center;justify-content:center;padding:12%;background:#080605c7}.photo-validation-modal.is-visible{display:flex}.photo-validation-dialog{width:min(86%,480px);padding:clamp(20px,6vw,36px) clamp(20px,6vw,40px);border:3px solid #d4bb7a;border-radius:10px;background:#fffcf4fa;text-align:center;box-shadow:0 16px 40px #280f084d}.photo-validation-title{color:#9c6b2f;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(22px,5.8vw,34px);font-weight:900;line-height:1.15}.photo-validation-modal .photo-validation-confirm{min-width:42%;margin-top:clamp(16px,4.8vw,28px);padding:.42em 1.3em;border:2px solid #9b1b13;border-radius:8px;color:#f7e3ae!important;background:#92140f!important;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(18px,5vw,30px);font-weight:900;line-height:1.1;box-shadow:0 4px 10px #500f0a40}@keyframes generatingPulse{0%{opacity:.78}to{opacity:1}}@keyframes photoValidationSpin{to{transform:translate(-50%) rotate(360deg)}}.photo-upload-actions button{width:42%;min-height:58px;border:3px solid #d00000;border-radius:12px;color:#d00000;background:#fff;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(18px,4.8vw,36px);font-weight:800;box-shadow:0 8px 16px #501e0a29}.photo-confirm-upload{color:#f7e3ae!important;background:#d00000!important}.photo-result-bg{z-index:0}.photo-result-card{left:19.3%;top:6.6%;z-index:1;width:61.4%;aspect-ratio:1441 / 2561;object-fit:cover;box-shadow:0 0 0 4px #d1ba83}.photo-result-caption{left:0;right:0;top:68.5%;z-index:2;color:#d4bf8e;font-family:ToyotaDisplay,ToyotaText,sans-serif;font-size:clamp(18px,4.6vw,34px);font-weight:800;text-align:center;text-shadow:0 0 12px rgba(255,230,180,.25)}.photo-share-button{left:9.4%;top:74.2%;z-index:2;width:37%}.photo-site-button{right:9.4%;top:74.2%;z-index:2;width:37%}.photo-result-back{left:50%;top:85%;z-index:2;width:34%;transform:translate(-50%)}[hidden]{display:none!important}@media(max-width:760px){.panel,.viewer,.photo{padding:0}.viewer .phone,.photo-phone{width:min(100vw,calc(100dvh * 1441 / 2561));height:min(100dvh,calc(100vw * 2561 / 1441));max-width:100vw;max-height:100dvh}.intro-phone{width:min(100vw,calc(100dvh * 1293 / 2089));height:min(100dvh,calc(100vw * 2089 / 1293));max-width:100vw;max-height:100dvh}.entry-stage,.showroom-stage{width:min(100vw,56.25dvh);height:min(100dvh,calc(100vw * 16 / 9));max-width:100vw;max-height:100dvh}.hud{top:10px;display:block;padding:10px}.brand{margin-bottom:8px;text-align:center}.hud nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.hud button{min-height:34px;padding:0 6px;font-size:12px}.hint{left:12px;right:12px;bottom:74px;max-width:none;font-size:13px}.walk-controls{bottom:126px}.entry-photo{width:min(100vw,56.25vh)}.asset-button.start{width:48%;top:80.4%;bottom:auto}}@media(min-width:761px){.intro-phone.is-special .intro-year{font-size:clamp(24px,4vw,44px)}.intro-phone.is-special .intro-date{top:18.2%;font-size:clamp(10px,1.35vw,14px)}.intro-phone.is-special .intro-badge{top:41.9%;left:25%;width:50%}.intro-phone.is-special .intro-copybox{top:47.6%;height:31.4%;padding-top:4.8%}.intro-phone.is-special .intro-copybox h2{font-size:clamp(13px,1.7vw,20px);line-height:1.24}.intro-phone.is-special .intro-copybox .intro-body{font-size:clamp(10px,1.25vw,15px);line-height:1.52}.intro-phone.is-history .detail-section h3{font-size:clamp(10px,1.35vw,15px)}.intro-phone.is-history .intro-year{font-size:clamp(24px,4vw,44px)}.intro-phone.is-history .intro-date{font-size:clamp(10px,1.35vw,14px)}.intro-phone.is-history .intro-badge{top:41.5%;left:19%;width:62%}.intro-phone.is-history .intro-badge-generation{top:45.15%;font-size:clamp(8px,1.1vw,12px)}.intro-phone.is-history.is-cross .intro-badge-generation{top:45.55%;font-size:clamp(8px,1.05vw,12px)}.intro-phone.is-history .intro-copybox h2{font-size:clamp(12px,1.65vw,18px);line-height:1.28}.intro-phone.is-history .intro-copybox .panel-kicker,.intro-phone.is-history .intro-copybox .intro-body,.intro-phone.is-history .intro-copybox li{font-size:clamp(9px,1.18vw,13px);line-height:1.55}.intro-phone.is-history .intro-copybox strong{font-size:clamp(11px,1.5vw,16px)}}
