.ski-decision{color:var(--ink)}.ski-controls{flex-wrap:wrap;align-items:start;gap:.8rem 1.25rem;margin-bottom:1.5rem;display:flex}.ski-segments{background:var(--surface-2);border-radius:var(--radius-pill);flex-wrap:wrap;padding:.25rem;display:inline-flex}.ski-segments button{border-radius:var(--radius-pill);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:.55rem 1rem;font-weight:700}.ski-segments button[aria-pressed=true]{background:var(--surface);color:var(--snow)}.ski-segments--lens button[aria-pressed=true]{color:var(--brand-text)}.ski-decision :is(button,a,summary,input):focus-visible{outline:3px solid var(--brand);outline-offset:4px}.ski-picker{max-width:100%;margin-left:auto}.ski-picker summary,.ski-detail summary,.ski-brief summary{cursor:pointer;min-height:44px;color:var(--brand-text);padding:.6rem 0;font-weight:700}.ski-picker__body{background:var(--surface);border-radius:var(--radius);padding:1rem}.ski-picker fieldset{border:0;flex-wrap:wrap;gap:.3rem 1rem;margin:0;padding:.6rem 0;display:flex}.ski-picker legend{color:var(--muted);padding:.2rem 0;font-size:.85rem;font-weight:700}.ski-picker label{cursor:pointer;align-items:center;gap:.55rem;min-height:44px;display:flex}.ski-picker input{width:1.2rem;height:1.2rem;accent-color:var(--brand)}.ski-text-button{color:var(--brand-text);font:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;min-height:44px;padding:.5rem .2rem;font-weight:700;text-decoration:underline}.ski-text-button:disabled{color:var(--muted);cursor:not-allowed}.ski-empty{background:var(--surface);border-radius:var(--radius-lg);margin-bottom:1.5rem;padding:clamp(1.25rem,4vw,2.5rem)}.ski-empty h2{font-size:var(--fs-h3);color:var(--snow);margin:0 0 .8rem}.ski-empty p{max-width:58ch;margin:0 0 1.2rem}.ski-notice{color:var(--brand-text);background:var(--surface-2);border-radius:var(--radius-sm);max-width:none;padding:1rem}.ski-results__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem;margin-bottom:1rem;display:flex}.ski-results__head h2{font-size:var(--fs-h3);margin:0}.ski-results__head>span{color:var(--muted);font-size:.85rem}.ski-candidates{flex-direction:column;gap:.65rem;display:flex}.ski-candidate{background:var(--surface);border-radius:var(--radius);padding:1.2rem 1.4rem}.ski-candidate__summary{justify-content:space-between;align-items:center;gap:1rem;display:flex}.ski-candidate__copy{min-width:0}.ski-candidate h3{font-size:var(--fs-h3);align-items:baseline;gap:.75rem;margin:0 0 .4rem;display:flex}.ski-candidate h3 a{color:var(--snow);text-decoration:none}.ski-candidate p{max-width:66ch;margin:.25rem 0}.ski-rank{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.78rem}.ski-score{text-align:right;flex-direction:column;flex-shrink:0;min-width:5rem;display:flex}.ski-score strong{color:var(--brand-text);font-variant-numeric:tabular-nums;font-size:2rem;line-height:1.2}.ski-score span{color:var(--muted);font-size:.75rem}.ski-actions{flex-wrap:wrap;align-items:center;gap:.25rem 1.2rem;display:flex}.ski-actions a{min-height:44px;color:var(--brand-text);align-items:center;font-weight:700;display:inline-flex}.ski-meta{color:var(--muted);font-size:.82rem}.ski-detail .trip-cards{display:block}.ski-detail .trip-card{background:var(--surface-1);box-shadow:none;border:0;margin-top:.4rem}.ski-detail .trip-card__head{display:none}.ski-detail .trip-score__bar{background:var(--surface-3)}.ski-detail .trip-card__links a,.ski-detail .trip-aspects__btn{align-items:center;min-height:44px;display:inline-flex}.ski-detail .trip-cond,.ski-detail .trip-aspect{font-size:.9rem}.ski-detail .trip-trio span,.ski-detail .trip-trio i,.ski-detail .trip-risk{font-size:.8rem}.ski-show-all{margin:.4rem auto;display:block}.ski-brief{background:var(--surface-1);border-radius:var(--radius);margin:1rem 0;padding:.65rem 1.2rem}.ski-brief p{max-width:76ch}.ski-decision .trip-safety{color:var(--muted);margin-top:1.5rem;font-size:.82rem}@media (width<=600px){.ski-controls{gap:.6rem}.ski-picker{flex-basis:100%;margin-left:0}.ski-segments button{padding-inline:.8rem}.ski-candidate{padding:1rem}.ski-candidate__summary{align-items:start;gap:.5rem}.ski-candidate h3{gap:.4rem}.ski-score{min-width:3.8rem}.ski-score strong{font-size:1.65rem}.ski-detail .trip-trio{grid-template-columns:1fr}}
