.skin-analysis-page{--sa-ground:linear-gradient(135deg, #eef4fb 0%, #f7f9fc 55%, #fdfcfa 100%);--sa-good:#1d7a4c;--sa-fair:#a35b00;--sa-focus:#b4235a;--sa-track:#e7eaf3}.skin-analyser{margin-top:12px}.skin-analyser-title{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:clamp(1.75rem,1.2rem + 2.2vw,3rem);font-weight:800;line-height:1.08}.skin-analyser-title:focus{outline:none}.skin-analyser-title span{color:var(--accent-strong);display:block}.skin-analyser-lede{max-width:56ch;color:var(--ink-body);margin:14px 0 0;font-size:clamp(.9375rem,.88rem + .25vw,1.0625rem);line-height:1.6}.skin-analyser-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.skin-analyser-primary,.skin-analyser-secondary{min-height:48px;font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:4px;gap:10px;padding:12px 22px;font-size:13px;font-weight:700;text-decoration:none}.skin-analyser-primary{border:0}.skin-analyser-primary svg,.skin-analyser-secondary svg{flex:none;width:18px;height:18px}.skin-analyser-secondary{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:8px;justify-content:center;align-items:center;transition:border-color .2s,background-color .2s;display:inline-flex}.skin-analyser-secondary:hover{border-color:var(--ink)}.skin-analyser-secondary:disabled{color:var(--ink-muted);cursor:progress}.skin-analyser-field-error{max-width:56ch;color:var(--ink-body);background:#fdf1f5;border:1px solid #f3c6d6;border-radius:8px;margin:14px 0 0;padding:12px 14px;font-size:14px;line-height:1.5}.skin-analyser-quota{max-width:56ch;color:var(--ink-body);margin:14px 0 0;font-size:14px;line-height:1.55}.skin-analyser-quota.is-empty{margin-top:18px;font-size:15px}.skin-analyser-quota a,.skin-analyser-saved a{color:var(--accent-strong);text-underline-offset:3px;font-weight:600}.skin-analyser-quota-note{color:var(--ink-muted);font-size:13px}.skin-analyser-saved{max-width:60ch;color:var(--ink-body);background:#effaf4;border:1px solid #c4e3d2;border-radius:10px;align-items:flex-start;gap:10px;margin:24px 0 0;padding:12px 16px;font-size:14px;line-height:1.5;display:flex}.skin-analyser-saved svg{width:18px;height:18px;color:var(--sa-good);flex:none;margin-top:1px}.skin-analyser-saved.is-unsaved{background:#fff8e8;border-color:#f0d9a8}.skin-analyser-hero{border-radius:var(--collection-radius);background:var(--sa-ground);grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,80px);padding:clamp(24px,4.5vw,64px);display:grid}.skin-analyser-hero-copy{min-width:0}.skin-analyser-trust{border-top:1px solid var(--line-strong);gap:12px;max-width:54ch;margin:28px 0 0;padding:22px 0 0;list-style:none;display:grid}.skin-analyser-trust li{color:var(--ink-body);grid-template-columns:20px minmax(0,1fr);gap:12px;font-size:14px;line-height:1.5;display:grid}.skin-analyser-trust svg{width:18px;height:18px;color:var(--accent-strong);margin-top:1px}.skin-analyser-visual{min-width:0;display:grid}.skin-analyser-photo{aspect-ratio:1;object-fit:cover;object-position:50% 40%;border-radius:var(--collection-radius);background:#ebe4da;width:100%;height:auto;display:block}.skin-analyser-visual .skin-analyser-sample{justify-self:start;width:min(100%,400px);margin:-30% 0 0 -14%;position:relative}.skin-analyser-sample{border:1px solid var(--line);border-radius:var(--collection-radius);background:var(--surface);margin:0;padding:clamp(20px,2.4vw,32px);box-shadow:0 24px 48px -28px #061d6847}.skin-analyser-sample figcaption{color:var(--accent-strong);background:#e6f0fd;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.skin-analyser-sample-top{border-bottom:1px solid var(--line);align-items:center;gap:20px;margin-top:18px;padding-bottom:18px;display:flex}.skin-analyser-sample-facts{gap:10px;margin:0;display:grid}.skin-analyser-sample-facts div{align-items:baseline;gap:10px;display:flex}.skin-analyser-sample-facts dt{min-width:5.5em;color:var(--ink-muted);font-size:13px}.skin-analyser-sample-facts dd{color:var(--ink);margin:0;font-size:16px;font-weight:700}.skin-analyser-sample-list{gap:11px;margin:18px 0 0;padding:0;list-style:none;display:grid}.skin-analyser-sample-list li{--sa-band:var(--sa-good);grid-template-columns:minmax(7.5em,auto) minmax(0,1fr) 2.2em;align-items:center;gap:14px;display:grid}.skin-analyser-sample-list li[data-band=fair]{--sa-band:var(--sa-fair)}.skin-analyser-sample-list li[data-band=focus]{--sa-band:var(--sa-focus)}.skin-analyser-sample-list .skin-analyser-meter{height:6px;margin:0}.skin-analyser-sample-name{color:var(--ink-body);font-size:14px;font-weight:600}.skin-analyser-sample-score{color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.skin-analyser-sample-note{color:var(--ink-muted);margin:18px 0 0;font-size:13px;line-height:1.5}.skin-analyser-tips-block{margin-top:clamp(32px,4.5vw,56px)}.skin-analyser-examples{grid-template-columns:repeat(3,minmax(0,240px));gap:clamp(12px,2vw,24px);margin:0 0 28px;padding:0;list-style:none;display:grid}.skin-analyser-examples img{aspect-ratio:1;object-fit:cover;border-radius:var(--collection-radius);background:#ebe4da;width:100%;height:auto;display:block}.skin-analyser-examples li[data-good=true] img{outline:2px solid var(--sa-good);outline-offset:3px}.skin-analyser-examples p{color:var(--ink-body);align-items:flex-start;gap:8px;margin:12px 0 0;font-size:14px;font-weight:600;line-height:1.4;display:flex}.skin-analyser-examples svg{width:18px;height:18px;color:var(--sa-focus);flex:none;margin-top:1px}.skin-analyser-examples li[data-good=true] svg{color:var(--sa-good)}.skin-analyser-tips-block h2,.skin-analyser-recommend h2{color:var(--ink);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(1.25rem,1.1rem + .6vw,1.625rem);font-weight:800}.skin-analyser-recommend h2:focus{outline:none}.skin-analyser-tips{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,4vw,64px);margin:0;padding:0;list-style:none;display:grid}.skin-analyser-tips li{border-bottom:1px solid var(--line);color:var(--ink-body);align-items:center;gap:14px;padding:16px 0;font-size:15px;line-height:1.45;display:flex}.skin-analyser-tips svg{width:20px;height:20px;color:var(--accent-strong);flex:none}.skin-analyser-tips.is-compact{border:0;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:18px}.skin-analyser-tips.is-compact li{border:0;padding:0;font-size:14px}.skin-analyser-tips.is-compact svg{width:18px;height:18px}.skin-analyser-split{border-radius:var(--collection-radius);background:var(--sa-ground);grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);padding:clamp(20px,3vw,40px);display:grid}.skin-analyser-split:has(>.skin-analyser-panel:only-child){grid-template-columns:minmax(0,1fr)}.skin-analyser-camera{border-radius:var(--collection-radius);background:var(--sa-ground);text-align:center;justify-items:center;padding:clamp(20px,3vw,40px);display:grid}.skin-analyser-camera .skin-analyser-lede{margin-inline:auto}.skin-analyser-camera .skin-analyser-actions{justify-content:center}.skin-analyser-frame{aspect-ratio:3/4;background:#dfe5ee;border-radius:16px;width:100%;max-width:420px;position:relative;overflow:hidden}.skin-analyser-camera .skin-analyser-frame{max-width:min(420px,100%,52svh);margin-top:20px}.skin-analyser-frame img,.skin-analyser-video{object-fit:cover;width:100%;height:100%;display:block}.skin-analyser-frame .skin-analyser-mask{pointer-events:none;filter:drop-shadow(0 0 1px #fff)drop-shadow(0 0 2px #fff)drop-shadow(0 0 5px #fffc);position:absolute;inset:0}.skin-analyser-frame .skin-analyser-mask.is-points{filter:brightness(0) invert(1) drop-shadow(0 0 1px var(--accent)) drop-shadow(0 0 3px var(--accent)) drop-shadow(0 0 6px var(--accent))}.skin-analyser-frame .skin-analyser-mask.is-heatmap{filter:none;opacity:.6}.skin-analyser-base{transition:filter .25s}.skin-analyser-frame.is-marked .skin-analyser-base{filter:brightness(.55)saturate(.4)}.skin-analyser-view-note{color:var(--ink-body);margin:0;font-size:14px}@media (prefers-reduced-motion:reduce){.skin-analyser-base{transition:none}}.skin-analyser-video{transform:scaleX(-1)}.skin-analyser-guide{pointer-events:none;border:2px dashed #ffffffe6;border-radius:50%;width:66%;height:64%;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #061d6847}.skin-analyser-scan{inset-inline:0;pointer-events:none;background:linear-gradient(#168bff00,#168bff52 85%,#ffffffe6);height:28%;animation:2.2s ease-in-out infinite alternate sa-scan;position:absolute;top:0}@keyframes sa-scan{0%{transform:translateY(-100%)}to{transform:translateY(360%)}}.skin-analyser-panel{min-width:0}.skin-analyser-consent{border:1.5px solid var(--line-strong);background:var(--surface);border-radius:10px;align-items:flex-start;gap:12px;margin-top:22px;padding:14px 16px;display:flex}.skin-analyser-consent.has-error{border-color:var(--sa-focus)}.skin-analyser-consent input{width:22px;height:22px;accent-color:var(--ink);cursor:pointer;flex:none;margin:1px 0 0}.skin-analyser-consent label{color:var(--ink-body);cursor:pointer;font-size:15px;font-weight:500;line-height:1.45}.skin-analyser-privacy{max-width:60ch;color:var(--ink-body);gap:10px;margin:14px 0 0;font-size:14px;line-height:1.55;display:flex}.skin-analyser-privacy svg{width:18px;height:18px;color:var(--sa-good);flex:none;margin-top:1px}.skin-analyser-mock{color:var(--ink-body);background:#fff8e8;border:1px solid #f0d9a8;border-radius:10px;margin:0 0 16px;padding:12px 16px;font-size:14px;line-height:1.5}.skin-analyser-viewer{justify-items:start;gap:12px;display:grid}.skin-analyser-views{flex-wrap:wrap;gap:8px;display:flex}.skin-analyser-views button{border:1px solid var(--line-strong);background:var(--surface);min-height:40px;color:var(--ink-body);font:inherit;cursor:pointer;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.skin-analyser-views button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--cta-ink)}.skin-analyser-summary{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:20px 32px;margin-top:22px;padding:18px 20px;display:flex}.skin-analyser-overall{align-items:center;gap:16px;display:flex}.skin-analyser-overall p{margin:0}.skin-analyser-summary-label{color:var(--ink);font-size:15px;font-weight:700}.skin-analyser-ring{flex:none;place-items:center;width:96px;height:96px;display:grid;position:relative}.skin-analyser-ring svg{width:100%;height:100%;position:absolute;inset:0}.skin-analyser-ring circle{fill:none;stroke-width:8px}.skin-analyser-ring-track{stroke:var(--sa-track)}.skin-analyser-ring-arc{stroke:var(--accent-strong);stroke-linecap:round;transform-origin:50%;transform:rotate(-90deg)}.skin-analyser-ring-score{color:var(--ink);justify-items:center;line-height:1;display:grid}.skin-analyser-ring-score strong{letter-spacing:-.02em;font-size:32px;font-weight:800}.skin-analyser-ring-score span{color:var(--ink-muted);margin-top:3px;font-size:13px;font-weight:500}.skin-analyser-facts{flex-wrap:wrap;gap:16px 32px;margin:0;display:flex}.skin-analyser-facts div{min-width:0}.skin-analyser-facts dt{color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700}.skin-analyser-facts dd{color:var(--ink);margin:4px 0 0;font-size:20px;font-weight:800}.skin-analyser-facts dd span{color:var(--ink-muted);margin-top:2px;font-size:13px;font-weight:500;display:block}.skin-analyser-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0 0;padding:0;list-style:none;display:grid}.skin-analyser-metrics li{--sa-band:var(--sa-good);border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:14px 16px}.skin-analyser-metrics li[data-band=fair]{--sa-band:var(--sa-fair)}.skin-analyser-metrics li[data-band=focus]{--sa-band:var(--sa-focus)}.skin-analyser-metric-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.skin-analyser-metric-name{color:var(--ink);font-size:15px;font-weight:700}.skin-analyser-metric-score{color:var(--ink);font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.skin-analyser-meter{background:var(--sa-track);border-radius:999px;height:7px;margin-top:10px;display:block;overflow:hidden}.skin-analyser-meter span{border-radius:inherit;background:var(--sa-band);height:100%;display:block}.skin-analyser-metric-note{color:var(--ink-muted);margin:8px 0 0;font-size:13px;line-height:1.45}.skin-analyser-band{color:var(--sa-band);font-weight:700}.skin-analyser-disclaimer{max-width:64ch;color:var(--ink-muted);margin:18px 0 0;font-size:13px;line-height:1.55}.skin-analyser-recommend{margin-top:clamp(32px,5vw,56px)}.skin-analyser-group+.skin-analyser-group{margin-top:32px}.skin-analyser-group h3{color:var(--ink-body);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 14px;font-size:17px;font-weight:700;display:flex}.skin-analyser-group h3 span{color:var(--ink-muted);font-size:13px;font-weight:600}.skin-analyser-group .collection-grid{margin:0;padding:0;list-style:none}.skin-analyser-browse{margin-top:28px}@media (min-width:1101px){.skin-analyser-group .collection-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1100px){.skin-analyser-split{grid-template-columns:minmax(0,340px) minmax(0,1fr)}.skin-analyser-metrics{grid-template-columns:minmax(0,1fr)}}@media (max-width:800px){.skin-analyser-hero,.skin-analyser-split{grid-template-columns:minmax(0,1fr)}.skin-analyser-photo{aspect-ratio:4/3;object-position:50% 36%}.skin-analyser-visual .skin-analyser-sample{justify-self:center;width:calc(100% - 32px);max-width:460px;margin:-56px 0 0}.skin-analyser-split>.skin-analyser-frame,.skin-analyser-viewer{justify-self:center;width:100%;max-width:360px}.skin-analyser-viewer .skin-analyser-frame{max-width:none}}@media (max-width:560px){.skin-analyser-tips{grid-template-columns:minmax(0,1fr)}.skin-analyser-examples p{gap:6px;font-size:12px}.skin-analyser-examples svg{width:16px;height:16px}.skin-analyser-sample-list li{grid-template-columns:minmax(6.5em,auto) minmax(0,1fr) 2.2em;gap:10px}.skin-analyser-sample-top{gap:16px}.skin-analyser-actions>*{flex:100%}.skin-analyser-split>.skin-analyser-frame,.skin-analyser-viewer{max-width:280px}.skin-analyser-summary{padding:16px}}@media (prefers-reduced-motion:reduce){.skin-analyser-scan{background:#168bff1f;height:100%;animation:none;top:auto;bottom:0}.skin-analyser-secondary{transition:none}}
