.lang-switch{display:flex; align-items:center}
.lang-switch select{padding:8px 10px; border-radius:8px; border:1px solid var(--border); background:#fff; font-weight:600; display:none}
.lang-dropdown{position:relative}
.lang-dropdown button{display:flex; align-items:center; gap:8px; padding:8px 12px; border-radius:8px; border:1px solid var(--border); background:#fff; font-weight:600; cursor:pointer; min-width:180px}
.lang-dropdown ul{list-style:none; margin:6px 0 0 0; padding:6px 0; position:absolute; top:100%; left:0; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:0 12px 30px rgba(0,0,0,.12); width:100%; max-height:640px; overflow:auto; display:none; z-index:1200}
.lang-dropdown ul.open{display:block}
.lang-dropdown li{display:flex; align-items:center; gap:8px; padding:8px 12px; cursor:pointer}
.lang-dropdown li:hover{background:rgba(0,0,0,.05)}
.flag-icon{display:inline-block; width:24px; height:16px; background-size:24px 16px; background-repeat:no-repeat; border-radius:2px}
.flag-de{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23000'/%3E%3Crect y='0.666' width='3' height='0.667' fill='%23dd0000'/%3E%3Crect y='1.333' width='3' height='0.667' fill='%23ffce00'/%3E%3C/svg%3E")}
.flag-fr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='1' height='2' fill='%230055a4'/%3E%3Crect x='1' width='1' height='2' fill='%23fff'/%3E%3Crect x='2' width='1' height='2' fill='%23ef4135'/%3E%3C/svg%3E")}
.flag-it{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='1' height='2' fill='%23009246'/%3E%3Crect x='1' width='1' height='2' fill='%23fff'/%3E%3Crect x='2' width='1' height='2' fill='%23ce2b37'/%3E%3C/svg%3E")}
.flag-es{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23aa151b'/%3E%3Crect y='0.5' width='3' height='1' fill='%23f1bf00'/%3E%3C/svg%3E")}
.flag-en{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 40'%3E%3CclipPath id='u'%3E%3Cpath d='M0 0h60v40H0z'/%3E%3C/clipPath%3E%3Cg clip-path='url(%23u)'%3E%3Cpath fill='%2301227d' d='M0 0h60v40H0z'/%3E%3Cpath stroke='%23fff' stroke-width='8' d='M0 0l60 40m0-40L0 40'/%3E%3Cpath stroke='%23c8102e' stroke-width='4' d='M0 0l60 40m0-40L0 40'/%3E%3Cpath fill='%23fff' d='M24 0h12v40H24zM0 14h60v12H0z'/%3E%3Cpath fill='%23c8102e' d='M26 0h8v40h-8zM0 16h60v8H0z'/%3E%3C/g%3E%3C/svg%3E")}
.flag-se{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23006aa7'/%3E%3Crect x='1' width='0.35' height='2' fill='%23fecb00'/%3E%3Crect y='0.8' width='3' height='0.4' fill='%23fecb00'/%3E%3C/svg%3E")}
.flag-pl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%23f5f5f5'/%3E%3Crect y='1' width='3' height='1' fill='%23d4213d'/%3E%3C/svg%3E")}
.flag-nl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 3 2'%3E%3Crect width='3' height='2' fill='%230052b4'/%3E%3Crect y='0.667' width='3' height='0.666' fill='%23fff'/%3E%3Crect y='0' width='3' height='0.667' fill='%23ae1c28'/%3E%3C/svg%3E")}
.flag-zh{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20id%3D%22flag-icons-cn%22%20viewBox%3D%220%200%20640%20480%22%3E%0A%20%20%3Cdefs%3E%0A%20%20%20%20%3Cpath%20id%3D%22cn-a%22%20fill%3D%22%23ff0%22%20d%3D%22M-.6.8%200-1%20.6.8-1-.3h2z%22%2F%3E%0A%20%20%3C%2Fdefs%3E%0A%20%20%3Cpath%20fill%3D%22%23ee1c25%22%20d%3D%22M0%200h640v480H0z%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23cn-a%22%20width%3D%2230%22%20height%3D%2220%22%20transform%3D%22matrix%2871.9991%200%200%2072%20120%20120%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23cn-a%22%20width%3D%2230%22%20height%3D%2220%22%20transform%3D%22matrix%28-12.33562%20-20.5871%2020.58684%20-12.33577%20240.3%2048%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23cn-a%22%20width%3D%2230%22%20height%3D%2220%22%20transform%3D%22matrix%28-3.38573%20-23.75998%2023.75968%20-3.38578%20288%2095.8%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23cn-a%22%20width%3D%2230%22%20height%3D%2220%22%20transform%3D%22matrix%286.5991%20-23.0749%2023.0746%206.59919%20288%20168%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23cn-a%22%20width%3D%2230%22%20height%3D%2220%22%20transform%3D%22matrix%2814.9991%20-18.73557%2018.73533%2014.99929%20240%20216%29%22%2F%3E%0A%3C%2Fsvg%3E")}
.flag-yue{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20id%3D%22flag-icons-hk%22%20viewBox%3D%220%200%20640%20480%22%3E%0A%20%20%3Cpath%20fill%3D%22%23EC1B2E%22%20d%3D%22M0%200h640v480H0%22%2F%3E%0A%20%20%3Cpath%20id%3D%22hk-a%22%20fill%3D%22%23fff%22%20d%3D%22M346.3%20103.1C267%2098%20230.6%20201.9%20305.6%20240.3c-26-22.4-20.6-55.3-10.1-72.4l1.9%201.1c-13.8%2023.5-11.2%2052.7%2011.1%2071-12.7-12.3-9.5-39%2012.1-48.9s23.6-39.3%2016.4-49.1q-14.7-25.6%209.3-38.9M307.9%20164l-4.7%207.4-1.8-8.6-8.6-2.3%207.8-4.3-.6-8.9%206.5%206.1%208.3-3.3-3.7%208.1%205.6%206.8z%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23hk-a%22%20transform%3D%22rotate%2872%20312.5%20243.5%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23hk-a%22%20transform%3D%22rotate%28144%20312.5%20243.5%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23hk-a%22%20transform%3D%22rotate%28216%20312.5%20243.5%29%22%2F%3E%0A%20%20%3Cuse%20xlink%3Ahref%3D%22%23hk-a%22%20transform%3D%22rotate%28288%20312.5%20243.5%29%22%2F%3E%0A%3C%2Fsvg%3E")}
.rmb-note{color:var(--muted); margin-top:-6px}
.rmb-note:empty{display:none}
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0}

.testimonial-videos{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:20px}
.testimonial-video{background:#fff; border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
.testimonial-video video{display:block; width:100%; aspect-ratio:9/16; max-height:560px; background:#0e1420; object-fit:contain}
.testimonial-copy{padding:16px 18px}
.testimonial-copy h3{margin:0 0 6px; font-size:20px; line-height:1.25}
.testimonial-copy p{margin:0; color:var(--muted)}
.gallery-section{border-top:1px solid var(--border)}
.gallery-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px}
.gallery-card{display:flex; flex-direction:column; width:100%; padding:0; border:1px solid var(--border); border-radius:8px; background:#fff; box-shadow:var(--shadow); overflow:hidden; cursor:pointer; text-align:left; color:var(--text); transition:transform .2s ease}
.gallery-card:hover{transform:translateY(-2px)}
.gallery-card:focus-visible{outline:3px solid rgba(47,107,255,.28); outline-offset:2px}
.gallery-card-media{display:flex; align-items:center; justify-content:center; aspect-ratio:1/1; background:linear-gradient(180deg,#fbfcff 0%,#f3f6fb 100%); padding:18px}
.gallery-card-media img{display:block; width:100%; height:100%; object-fit:contain}
.gallery-card-copy{padding:16px 18px}
.gallery-card-title{margin:0; font-size:20px; line-height:1.25}
.gallery-card-brand{margin:6px 0 0; color:var(--muted); font-weight:700}
.gallery-card-meta{display:flex; flex-wrap:wrap; gap:8px; margin-top:12px}
.gallery-chip{display:inline-flex; align-items:center; padding:6px 10px; border-radius:999px; background:#eef3ff; border:1px solid #d9e4ff; color:#0b3fd6; font-size:13px; font-weight:800}
.gallery-modal[hidden]{display:none !important}
.gallery-modal{position:fixed; inset:0; z-index:2100; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch; padding:16px}
.gallery-modal-backdrop{position:absolute; inset:0; background:rgba(14,20,32,.72)}
.gallery-modal-dialog{position:relative; display:grid; width:min(1040px,100%); margin:0 auto; background:#fff; border-radius:8px; box-shadow:0 24px 60px rgba(0,0,0,.28); overflow:hidden}
.gallery-modal-close{position:absolute; top:12px; right:12px; width:42px; height:42px; border:1px solid var(--border); border-radius:8px; background:#fff; font-size:28px; line-height:1; color:var(--text); cursor:pointer; z-index:1}
.gallery-modal-layout{display:grid; grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr); min-height:calc(100dvh - 32px)}
.gallery-modal-media{display:flex; align-items:center; justify-content:center; padding:24px; background:#f5f7fb; min-height:0}
.gallery-modal-media img{display:block; width:100%; max-height:72vh; object-fit:contain}
.gallery-modal-copy{padding:28px 24px 24px}
.gallery-modal-title{margin:14px 0 0; font-size:30px; line-height:1.15}
.gallery-modal-intro{margin:8px 0 0; color:var(--muted)}
.gallery-modal-meta{display:grid; gap:14px; margin:22px 0 0}
.gallery-modal-meta div{padding-top:12px; border-top:1px solid var(--border)}
.gallery-modal-meta dt{font-size:13px; color:var(--muted); font-weight:800}
.gallery-modal-meta dd{margin:4px 0 0; font-size:18px; font-weight:700; overflow-wrap:anywhere}
.gallery-modal-actions{margin-top:22px}
body.gallery-modal-open{overflow:hidden}

.submission-card{display:grid; gap:22px}
.submission-head{display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:18px; align-items:start}
.submission-head h3{margin:10px 0 8px; font-size:24px; line-height:1.25}
.submission-summary{background:var(--surface); border:1px solid var(--border); border-radius:8px; padding:16px}
.submission-summary strong{display:block; font-size:14px; color:var(--muted); margin-bottom:8px}
.submission-summary-name{font-size:24px; font-weight:900; line-height:1.2}
.submission-summary-price{font-size:20px; font-weight:800; margin-top:4px}
.submission-form{display:grid; gap:22px}
.submission-fieldset{margin:0; padding:18px; border:1px solid var(--border); border-radius:8px; background:#fff}
.submission-fieldset legend{padding:0 6px; font-weight:800}
.field-help{margin:6px 0 0; font-size:14px; color:var(--muted)}
.submission-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:14px}
.submission-field{display:flex; flex-direction:column; gap:8px}
.submission-field-full{grid-column:1 / -1}
.submission-field label,.check-grid legend,.submission-checkbox{font-weight:700}
.submission-field input,
.submission-field select,
.submission-field textarea{width:100%; padding:12px 14px; border-radius:8px; border:1px solid var(--border); background:#fff; color:var(--text); font:inherit}
.submission-field textarea{min-height:112px; resize:vertical}
.submission-options{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:14px}
.package-option{display:block}
.package-option input{position:absolute; opacity:0; pointer-events:none}
.package-option span{display:block; border:1px solid var(--border); border-radius:8px; padding:14px; background:#fff; box-shadow:var(--shadow); cursor:pointer}
.package-option strong{display:block; font-size:18px; margin-bottom:4px}
.package-option small{display:block; color:var(--muted); font-size:14px}
.package-option input:checked + span{border-color:var(--primary); background:#eef3ff}
.check-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 18px; margin-top:14px}
.submission-checkbox{display:flex; gap:10px; align-items:flex-start; font-weight:600; color:var(--text)}
.submission-checkbox input{margin-top:4px}
.submission-asin-board{margin-top:14px; border:1px solid var(--border); border-radius:8px; overflow:hidden}
.submission-asin-header,
.submission-asin-row{display:grid; grid-template-columns:52px 1.15fr 1fr 1fr; gap:10px; align-items:center}
.submission-asin-header{padding:12px 14px; background:var(--surface); font-weight:800; font-size:14px}
.submission-asin-row{padding:12px 14px; border-top:1px solid var(--border)}
.submission-asin-row input{width:100%; padding:12px 14px; border-radius:8px; border:1px solid var(--border); background:#fff; color:var(--text); font:inherit}
.submission-asin-number{display:flex; align-items:center; justify-content:center; width:38px; min-height:38px; border-radius:8px; background:var(--surface); border:1px solid var(--border); font-weight:800}
.submission-return-fields[hidden]{display:none !important}
.submission-actions{display:flex; gap:12px; flex-wrap:wrap; align-items:center}
.submission-actions .btn{justify-content:center}
.submission-actions .btn[disabled]{opacity:.7; cursor:not-allowed}
.submission-footnote{margin:0; font-size:14px; color:var(--muted)}
.submission-result[hidden]{display:none !important}
.submission-result.status-valid{border-color:#c8f4e7; background:#f5fffb; color:var(--text)}
.submission-result.status-invalid{border-color:#ffd8d8; background:#fff8f8; color:var(--text)}
.honeypot{position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden}

.notice{background:#fff; border:1px solid var(--border); border-radius:8px; padding:12px 14px; box-shadow:var(--shadow)}
.status-valid{color:#10b981; font-weight:800}
.status-invalid{color:#ef4444; font-weight:800}
.verify-result-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 14px; margin-top:12px}
.verify-result-grid div{border-top:1px solid var(--border); padding-top:8px}
.verify-result-grid strong{display:block; font-size:13px; color:var(--muted); line-height:1.35}
.verify-result-grid span{display:block; font-weight:700; overflow-wrap:anywhere}
.verify-result-actions{margin-top:14px}
.cookie-banner{position:fixed; bottom:24px; left:50%; transform:translateX(-50%); background:#0e1420; color:#f9fafb; padding:20px 24px; border-radius:8px; box-shadow:0 18px 40px rgba(15,23,42,0.25); max-width:640px; width:calc(100% - 32px); z-index:2000; border:1px solid rgba(255,255,255,0.12)}
.cookie-banner[hidden]{display:none !important}
.cookie-banner p{margin:0; font-size:15px; line-height:1.5}
.cookie-actions{display:flex; gap:12px; margin-top:16px; flex-wrap:wrap}
.cookie-actions .btn{padding:10px 16px; border-radius:8px; border:1px solid rgba(148,163,184,0.4); background:transparent; color:#f9fafb}
.cookie-actions .btn.primary{background:var(--primary); border-color:transparent; color:#fff}
