:root{font-family:Microsoft YaHei UI,Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#174f76;background:#effaff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #174f76;--muted: #527991;--deep: #166c9b;--ease: cubic-bezier(.22, 1, .36, 1);--mobile-topbar-height: 52px;--mobile-page-inset: 14px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}body.dialog-open{overflow:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.icons{position:absolute;width:0;height:0;overflow:hidden}:focus-visible{outline:3px solid #279bd2;outline-offset:4px}::selection{background:#c7eafb;color:#174f76}.site{overflow:clip}.eyebrow{display:block;margin-bottom:9px;color:#357ea6;font-size:10px;font-weight:900;letter-spacing:.14em}.button{min-height:47px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 20px;border:0;border-radius:12px;font-size:13px;font-weight:850}.button-primary{background:linear-gradient(135deg,#ace9ffeb,#cde6ffe0);color:#125681;box-shadow:inset 0 1px #fffffff2,inset 0 0 0 1px #ffffffc2,0 8px 22px #51a0cb2b}.button-soft{background:linear-gradient(135deg,#e8f8ffcc,#f0e9ffc7);color:#28648a;box-shadow:inset 0 0 0 1px #fffffff0,0 5px 16px #68a0d31c}.button-primary,.button-soft,.icon-button,.viewer-tabs button,.contact-tabs button,.dialog-foot,.dialog-foot button,.order-fields input,.order-fields select,.order-fields textarea,.order-result,.order-result pre,.toast-message{backdrop-filter:blur(16px) saturate(155%);-webkit-backdrop-filter:blur(16px) saturate(155%)}.site-dialog:has(.order-panel){width:min(860px,calc(100% - 36px))}.site-dialog:has(.contact-panel){width:min(660px,calc(100% - 36px))}.site-dialog{position:fixed;inset:0;width:min(960px,calc(100% - 36px));max-width:none;max-height:min(92dvh,940px);overflow:visible;margin:auto;padding:0;border:0;border-radius:28px;background:transparent;color:var(--ink);box-shadow:0 28px 95px #2b7bab47,0 0 0 1px #ffffff73}.site-dialog::backdrop{background:#549abf4d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.dialog-panel{max-height:min(92dvh,940px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.94);border-radius:28px;background:linear-gradient(145deg,#f7fdffe6,#e3f6ffd4 62%,#f1e7fdd9);backdrop-filter:blur(26px) saturate(165%);-webkit-backdrop-filter:blur(26px) saturate(165%);box-shadow:inset 0 1px #fffffffa,inset 0 -1px #b6daf266}.dialog-head{flex:none;display:flex;justify-content:space-between;align-items:start;gap:20px;padding:25px 30px 14px}.dialog-head h2{margin:0;font-size:29px}.icon-button{width:42px;height:42px;display:grid;place-items:center;flex:none;border:1px solid rgba(255,255,255,.94);border-radius:50%;background:#f5fcffb8;color:var(--deep);box-shadow:0 4px 13px #62aad224,inset 0 1px #fffffff5;transition:transform .2s,background .2s}.icon-button:hover{transform:rotate(90deg);background:#daf2ffe6}.viewer-tabs,.contact-tabs{display:flex;flex:none;gap:7px;overflow-x:auto;padding:5px 30px 15px;scrollbar-width:thin}.viewer-tabs button,.contact-tabs button{min-height:40px;flex:none;padding:0 13px;border:1px solid rgba(255,255,255,.94);border-radius:999px;background:#f8fdffa6;color:#467594;font-size:12px;font-weight:850;box-shadow:inset 0 1px #fffffff5,0 3px 10px #5ea0cf14}.viewer-tabs button[aria-selected=true],.contact-tabs button[aria-selected=true]{border-color:#bee8ffe6;background:#166c9bf0;color:#fff;box-shadow:inset 0 1px #ddf7ff59,0 6px 15px #358dbe30}.viewer-stage{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:20px;background:#d2eefa6e;text-align:center}.viewer-stage img{width:100%;max-width:none;height:auto;display:block;margin:auto;border-radius:8px;box-shadow:0 16px 32px #3f8ab72b}.dialog-foot{flex:none;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 23px;border-top:1px solid rgba(255,255,255,.9);background:#f5fcff9e}.viewer-paging{display:flex;align-items:center;gap:8px}.dialog-foot button{min-height:37px;padding:0 11px;border:1px solid rgba(255,255,255,.95);border-radius:9px;background:#e3f5ffb3;color:var(--deep);font-size:12px;font-weight:850;box-shadow:inset 0 1px #fffffff5,0 3px 10px #58a1d11c}.order-panel{width:min(860px,calc(100vw - 36px))}.order-content{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:22px;overflow:auto;padding:6px 30px 30px}.order-fields label{display:block;margin-top:17px;font-size:13px;font-weight:850}.order-fields label small{color:var(--muted);font-size:11px;font-weight:500}.order-fields input,.order-fields select,.order-fields textarea{width:100%;min-height:46px;display:block;margin-top:8px;padding:10px 13px;border:1px solid rgba(171,215,240,.85);border-radius:10px;outline:none;background:#fafeffbd;color:var(--ink);font-size:16px;box-shadow:inset 0 1px #fffffff2,0 3px 12px #589bc80f}.order-fields textarea{resize:vertical}.order-fields :is(input,select,textarea):focus{border-color:#439dcd;box-shadow:0 0 0 3px #5db4e430,inset 0 1px #fffffff2}.order-submit{width:100%;margin-top:18px}.order-result{display:flex;flex-direction:column;align-items:flex-start;padding:24px;border:1px solid rgba(255,255,255,.94);border-radius:17px;background:linear-gradient(135deg,#d6f2ff99,#f0e5fe7a);box-shadow:inset 0 1px #fffffff5,0 8px 26px #67a3cd1a}.order-result h3{margin:0 0 16px;font-size:23px}.order-result pre{width:100%;flex:1;margin:0 0 18px;padding:18px;border:1px dashed rgba(157,200,231,.9);border-radius:12px;background:#feffffa8;color:#456a87;font:14px/1.8 Microsoft YaHei UI,Microsoft YaHei,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;box-shadow:inset 0 1px #ffffffeb}.order-result button{width:100%}.contact-panel{width:min(660px,calc(100vw - 36px))}.toast-message{position:fixed;z-index:110;left:50%;bottom:32px;transform:translate(-50%);min-width:185px;padding:12px 18px;border-radius:999px;background:linear-gradient(135deg,#f1fbffeb,#e8ecffe6);box-shadow:inset 0 0 0 1px #fffffff5,0 12px 35px #4891bf3d;color:#215f88;font-size:13px;font-weight:850;text-align:center}.toast-enter-active,.toast-leave-active{transition:opacity .2s,transform .2s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,15px)}.viewer-tabs button,.contact-tabs button,.dialog-foot button{min-height:44px}.viewer-image-status{min-height:120px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#376b88;font-size:14px}.viewer-image-status button{min-height:44px;padding:0 20px;background:#fffa;border:1px solid #fff;border-radius:12px;color:#0876a7}.icon-button{width:44px;height:44px}@media(min-width:701px){.viewer-tabs,.viewer-paging,.viewer-panel .dialog-foot{display:none}}@media(max-width:700px){.site-dialog,.site-dialog:has(.order-panel),.site-dialog:has(.contact-panel){position:fixed;inset:auto 0 0;width:100%;max-height:93dvh;margin:0;border-radius:25px 25px 0 0}.dialog-panel{position:relative;max-height:93dvh;border-radius:25px 25px 0 0;border-bottom:0}.dialog-panel:before{content:"";position:absolute;top:8px;left:50%;z-index:1;width:39px;height:4px;border-radius:999px;background:#70b2d8a6;transform:translate(-50%)}.dialog-head{padding:27px 18px 11px}.dialog-head h2{font-size:24px}.viewer-tabs,.contact-tabs{padding:4px 18px 12px}.viewer-stage{padding:12px}.dialog-foot{flex-wrap:wrap;gap:7px;padding:9px 13px calc(11px + env(safe-area-inset-bottom))}.viewer-paging{order:2;width:100%}.viewer-paging button{flex:1}.order-panel,.contact-panel{width:100%}.order-content{display:block;padding:0 18px calc(24px + env(safe-area-inset-bottom))}.order-fields label{margin-top:13px}.order-result{margin-top:18px;padding:18px}.order-result pre{min-height:110px}.toast-message{bottom:calc(83px + env(safe-area-inset-bottom));max-width:calc(100% - 42px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.contact-modal-shortcuts{display:flex;flex:none;gap:10px;padding:10px 30px 18px;border-top:1px solid #ffffffb3}.contact-modal-shortcuts button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-height:44px;padding:5px 8px;border:1px solid #ffffffc9;border-radius:10px;background:#ffffff70;color:var(--deep);font-size:11px}.contact-modal-shortcuts svg,.contact-modal-shortcuts .image-loading-dot{width:15px;height:15px;flex:none}.contact-modal-shortcuts img{width:18px;height:18px;flex:none;object-fit:contain}@media(max-width:700px){.contact-modal-shortcuts{gap:8px;padding:10px 18px calc(16px + env(safe-area-inset-bottom))}.contact-modal-shortcuts button{font-size:10px}}.sheet-drag-hint{display:none}.order-select{display:block;position:relative;margin-top:8px}.order-select select{margin-top:0;appearance:none;-webkit-appearance:none;padding-right:42px}.order-select>svg{position:absolute;right:14px;top:calc(50% - 9px);width:18px;height:18px;transform:rotate(90deg);pointer-events:none}.site-dialog::backdrop{animation:dialog-backdrop-in .2s ease-out;transition:opacity .18s ease-in}.site-dialog.is-closing::backdrop{animation:none;opacity:0}.dialog-panel.dialog-window-enter-active,.dialog-panel.dialog-window-leave-active{transition:opacity .18s ease,transform .2s var(--ease)}.dialog-panel.dialog-window-enter-from{opacity:0;transform:translateY(calc(var(--sheet-drag-y, 0px) + 18px))}.dialog-panel.dialog-window-leave-to{opacity:0;transform:translateY(calc(var(--sheet-drag-y, 0px) + 28px))}.dialog-window-leave-active{pointer-events:none}.dialog-content-enter-active,.dialog-content-leave-active{transition:opacity .14s ease}.dialog-content-enter-from,.dialog-content-leave-to{opacity:0}.gesture-viewer[data-image-state=ready]>img{animation:dialog-image-in .18s ease-out}@keyframes dialog-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-image-in{0%{opacity:0}to{opacity:1}}html[data-effects=paused] :is(.dialog-panel,.dialog-content-enter-active,.dialog-content-leave-active,.gesture-viewer img){animation:none!important;transition:none!important}html[data-effects=paused] .site-dialog::backdrop{animation:none;transition:none}@media(prefers-reduced-motion:reduce){.dialog-panel,.dialog-content-enter-active,.dialog-content-leave-active,.gesture-viewer img,.site-dialog::backdrop{animation:none!important;transition:none!important}}@media(max-width:700px){.dialog-panel{transform:translateY(var(--sheet-drag-y, 0px));transition:transform .2s var(--ease)}.site-dialog.is-sheet-dragging .dialog-panel{transition:none}.dialog-head{touch-action:none;padding-top:26px;padding-bottom:12px}.dialog-head .icon-button,.viewer-tabs,.viewer-panel .dialog-foot{display:none}.dialog-head h2{font-size:21px}.dialog-head .eyebrow{margin-bottom:6px;font-size:9px}.sheet-drag-hint{display:block;margin-top:6px;color:#527991;font-size:10px;line-height:1.5}.viewer-panel .dialog-head>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;flex:1;min-width:0}.viewer-panel .dialog-head .eyebrow{grid-column:1 / -1}.viewer-panel .sheet-drag-hint{margin-top:0;text-align:right;white-space:nowrap}.viewer-panel .viewer-stage{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.site .site-dialog{bottom:var(--sheet-keyboard-inset, 0px)}.site .site-dialog,.site .dialog-panel{max-height:calc(var(--sheet-visible-height, 100vh) * .93);max-height:min(93dvh,calc(var(--sheet-visible-height, 100vh) * .93))}}html :is(.image-load-spinner,.image-loading-dot,.site-boot-ring){position:relative;display:inline-block;flex:none;width:24px;height:24px;border:0;border-radius:0;background:radial-gradient(ellipse at center,#ffffffdf 0 7%,#a5eaf47a 12% 18%,transparent 25%);animation:none;transform:none}:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):before,:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{content:"";position:absolute;left:50%;top:50%;width:100%;height:56%;border:1px solid #179ccc7d;border-radius:50%;box-shadow:inset 0 1px 1px #ffffffed,0 0 8px #9ceafa45;pointer-events:none;animation:harbor-loading-wave 1.9s cubic-bezier(.16,1,.3,1) infinite}:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{animation-delay:-.95s}@keyframes harbor-loading-wave{0%{transform:translate(-50%,-50%) scale(.25);opacity:0}18%{opacity:.8}80%{opacity:.24}to{transform:translate(-50%,-50%) scale(1.18);opacity:0}}.loading-image:not(.is-compact):not(.cart-image) .image-load-spinner{width:48px;height:38px}.site-boot .site-boot-ring{width:64px;height:44px}.loading-image .image-load-status{align-items:center;justify-content:center;text-align:center}.gesture-viewer .viewer-image-status{position:absolute;inset:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.viewer-image-status .image-loading-dot{width:64px;height:44px}.experience-host .water-loading,.experience-host .experience-loading{position:fixed;z-index:81;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin:0;padding:24px;border:0;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;color:var(--ink, #174f76);font-size:13px;text-align:center}.experience-host :is(.water-loading,.experience-loading) .image-load-spinner{width:64px;height:44px}html[data-effects=paused] :is(.image-load-spinner,.image-loading-dot,.site-boot-ring):before,html[data-effects=paused] :is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{animation:none;transform:translate(-50%,-50%) scale(.65);opacity:.65}html[data-effects=paused] :is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{transform:translate(-50%,-50%) scale(1.1);opacity:.35}@media(prefers-reduced-motion:reduce){:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):before,:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{animation:none;transform:translate(-50%,-50%) scale(.65);opacity:.65}:is(.image-load-spinner,.image-loading-dot,.site-boot-ring):after{transform:translate(-50%,-50%) scale(1.1);opacity:.35}}
