.discovery-lab { scroll-margin-top: 100px; }
.discovery-lab h2 em,.discovery-lab h3 em { font-family:'Playfair Display',serif; font-weight:400; }
.discovery-lab h2 em { margin-left:.08em; }
.discovery-tabs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:30px 0 22px; }
.discovery-tabs button { text-align:left; padding:20px 16px; border:1px solid var(--line); border-radius:14px; background:transparent; color:var(--blue); cursor:pointer; font-size:.92rem; font-weight:700; min-height:96px; }
.discovery-tabs small { display:block; font-size:.63rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:12px; font-weight:500; }
.discovery-tabs button[aria-pressed=true] { background:var(--blue); border-color:var(--blue); color:var(--paper); }
.discovery-tabs button:hover { border-color:var(--orange); }
.experience-panel { background:var(--cream); border-radius:24px; padding:clamp(20px,3vw,42px); }
.experience-panel[hidden] { display:none; }
.experience-intro { display:flex; gap:36px; justify-content:space-between; align-items:center; margin-bottom:30px; }
.experience-intro>p { max-width:400px; color:var(--muted); line-height:1.7; font-size:.95rem; }
.discovery-lab h3 { color:var(--blue-deep); font-size:clamp(1.6rem,2.6vw,2.6rem); letter-spacing:-.035em; line-height:1.2; margin:0 0 16px; }
.discovery-lab h4 { color:var(--blue); font-size:1.18rem; margin:0 0 14px; }
.discovery-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.discovery-card { min-width:0; border:1px solid var(--line); border-radius:16px; background:var(--paper); overflow:hidden; display:flex; flex-direction:column; }
.discovery-card-art { height:150px; background:#c6dcd5; position:relative; overflow:hidden; }
.discovery-card-art img { width:100%; height:100%; object-fit:contain; object-position:center; }
.discovery-card-art>span { position:absolute; bottom:12px; left:14px; border-radius:30px; padding:5px 10px; font-size:.65rem; background:var(--paper); color:var(--blue); }
.discovery-card-art.discovery-card-art--detail { height:auto; background:#e5deca; }
.discovery-card-art--detail img { height:auto; aspect-ratio:480/150; object-fit:contain; }
.discovery-card-art--detail>span { position:static; display:table; margin:8px 14px; }
.discovery-card .discovery-references { display:flex; flex-wrap:wrap; gap:8px 14px; margin-top:auto; }
.discovery-references .discovery-source { margin:0; }
.discovery-card-body { padding:22px; display:flex; flex-direction:column; flex:1; }
.discovery-card .eyebrow { font-size:.61rem; letter-spacing:.09em; margin-bottom:12px; }
.discovery-card p { font-size:.9rem; line-height:1.65; margin:0 0 14px; }
.discovery-card .discovery-task { border-left:2px solid var(--orange); padding-left:12px; color:var(--blue); }
.discovery-source { font-size:.73rem; color:var(--muted); margin-top:auto; margin-bottom:18px; }
.experience-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.explore-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 17px; border:1px solid var(--blue); border-radius:30px; background:var(--blue); color:var(--paper); font-size:.82rem; font-weight:600; cursor:pointer; min-height:44px; text-decoration:none; }
.explore-button.secondary { color:var(--blue); background:transparent; }
.explore-button:disabled { opacity:.5; cursor:default; }
.discovery-save { padding:8px; margin-left:auto; background:none; color:var(--blue); border:0; min-width:44px; min-height:44px; cursor:pointer; }
.experience-foot { display:flex; gap:25px; justify-content:space-between; align-items:center; margin-top:26px; }
.experience-foot p { max-width:540px; font-size:.9rem; color:var(--muted); }
.discovery-note { font-size:.75rem; color:var(--muted); line-height:1.65; }
.discovery-lab label { display:flex; flex-direction:column; gap:8px; font-size:.84rem; color:var(--blue-deep); font-weight:600; }
.discovery-lab input:not([type=checkbox]):not([type=range]),.discovery-lab textarea,.discovery-lab select { font:inherit; font-weight:400; width:100%; min-width:0; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--paper); color:var(--ink); }
.discovery-lab input[type=file] { font-size:.75rem!important; }
.discovery-lab [role=status] { min-height:1.5em; font-size:.82rem; color:var(--blue); line-height:1.6; }
.time-layout,.local-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:32px; }
.archive-options { display:flex; gap:12px; overflow-x:auto; padding:4px 3px 14px; margin-bottom:22px; scroll-snap-type:x proximity; }
.archive-option { flex:1 0 145px; min-width:0; max-width:220px; border:2px solid transparent; border-radius:12px; padding:8px; background:#eee8dc; color:var(--blue-deep); text-align:left; cursor:pointer; scroll-snap-align:start; }
.archive-option[aria-pressed=true] { border-color:var(--blue); background:var(--paper); }
.archive-option:focus-visible { outline:3px solid var(--orange); outline-offset:2px; }
.archive-option img { width:100%; height:90px; object-fit:contain; display:block; background:#d9d4c9; border-radius:6px; margin-bottom:9px; }
.archive-option strong,.archive-option span { display:block; font-size:.75rem; line-height:1.5; }
.archive-option span { color:var(--muted); font-size:.7rem; }
.archive-title { margin:0 0 12px; font-size:1rem; }
.time-frame { aspect-ratio:1280/811; background:#d9d4c9; position:relative; overflow:hidden; border-radius:14px; }
.time-frame img { width:100%; height:100%; object-fit:contain; position:absolute; inset:0; }
.time-frame [data-time-new] { clip-path:inset(0 0 0 var(--compare,50%)); background:#d9d4c9; }
.time-label { position:absolute; left:12px; top:12px; padding:5px 10px; background:var(--paper); color:var(--blue); border-radius:20px; font-size:.7rem; }
.time-label-new { left:auto; right:12px; top:auto; bottom:12px; }
.time-divider { position:absolute; left:var(--compare,50%); height:100%; top:0; border-left:3px solid var(--paper); pointer-events:none; }
.compare-control { margin-top:16px; }
.compare-control input { width:100%; accent-color:var(--blue); min-height:32px; }
.time-tools { display:flex; flex-direction:column; gap:18px; }
.time-tools p,.collection-form>p,.challenge-copy>p { font-size:.9rem; line-height:1.65; margin:0; }
.time-tools summary,.discovery-test summary { cursor:pointer; font-weight:600; }
.time-tools details p { margin:14px 0; }
.walk-filters { display:flex; gap:20px; margin-bottom:24px; }
.walk-filters label { flex:1; max-width:300px; }
.walk-feature { display:flex; align-items:center; gap:28px; padding:28px; margin:0 0 28px; border-radius:14px; background:#f2e9df; border-left:4px solid #833f50; }
.walk-feature>div { flex:1; }.walk-feature h4 { margin:0 0 12px; font-size:1.5rem; line-height:1.3; }.walk-feature p { margin:0 0 12px; }.walk-feature .explore-button { flex-shrink:0; }
.walk-results { font-size:.82rem; color:var(--muted); margin-bottom:20px; }
.route-sketch { color:#173f76; background:#e3ece5; }.route-sketch[data-theme=istorie] { color:#833f50; background:#f0e6dc; }
.route-sketch svg { width:100%; height:100%; }.route-sketch circle { fill:currentColor; }.route-sketch text { fill:white; font-size:12px; font-weight:700; }
.walk-details { margin:4px 0 20px; border-top:1px solid var(--line); padding-top:12px; font-size:.85rem; }
.walk-details summary { cursor:pointer; color:var(--blue); font-weight:700; padding:8px 0; }
.walk-details section { border-left:2px solid #c3b5a5; padding:0 0 0 14px; margin:20px 0; }.walk-details h5 { font-size:.96rem; line-height:1.4; margin:0 0 8px; }.walk-details .walk-event-date { font-weight:700; color:#833f50; }
.route-access-warning { padding:12px; border-radius:8px; color:#6a3b19; background:#fff2d8; font-size:.8rem; line-height:1.6; }
@media(max-width:850px) { .walk-feature { flex-direction:column; align-items:flex-start; padding:20px; }.walk-filters label { min-width:0; } }
.walk-stops { padding-left:18px; font-size:.8rem; line-height:1.9; margin:0 0 20px; color:var(--muted); }
.collection-form { display:flex; flex-direction:column; gap:18px; }
.collection-choices { display:flex; flex-wrap:wrap; gap:8px; }
.collection-choices label { display:flex; flex-direction:row; align-items:center; font-size:.75rem; border:1px solid var(--line); background:var(--paper); border-radius:30px; padding:8px 11px; }
.collection-choices input { accent-color:var(--blue); }
.collection-order { padding-left:22px; font-size:.85rem; margin:0; }
.collection-order li { padding:6px 0; }
.collection-order button { margin-left:6px; border:1px solid var(--line); background:var(--paper); border-radius:8px; min-width:36px; min-height:36px; cursor:pointer; }
.collection-preview { padding:25px; background:var(--paper); border:1px solid var(--line); border-radius:16px; margin-bottom:24px; overflow-wrap:anywhere; }
.collection-preview p { line-height:1.65; font-size:.9rem; white-space:pre-wrap; }
.collection-preview ol { padding-left:20px; line-height:2; font-size:.9rem; }
.collection-saved-row { display:flex; gap:10px; align-items:center; border-bottom:1px solid var(--line); padding:10px 0; }
.collection-saved-row>button:first-child { flex:1; text-align:left; border:0; background:none; color:var(--blue); padding:10px; cursor:pointer; }
.challenge-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:clamp(24px,5vw,70px); align-items:center; }
.challenge-poster { background:var(--blue); color:var(--paper); min-height:470px; padding:36px; border-radius:100px 16px 16px 16px; display:flex; flex-direction:column; justify-content:space-between; position:relative; overflow:hidden; }
.challenge-poster .eyebrow { color:#b9d7cf; margin-left:20px; }
.challenge-number { font-family:'Playfair Display',serif; font-style:italic; font-size:9rem; color:var(--yellow); line-height:1; }
.challenge-poster h3 { color:var(--paper); font-size:clamp(2rem,4vw,3.8rem); position:relative; }
.challenge-stamp { border-top:1px solid #ffffff50; padding-top:18px; font-size:.7rem; text-transform:uppercase; letter-spacing:.14em; }
.challenge-copy ol { padding-left:20px; line-height:1.8; font-size:.88rem; }
.challenge-copy .experience-actions { margin-top:24px; }
.discovery-test { margin-top:22px; color:var(--muted); font-size:.8rem; line-height:1.7; }
.discovery-test label { flex-direction:row; align-items:center; }
.map-custom-note { font-size:.8rem; line-height:1.6; padding:12px; color:var(--blue); background:var(--cream); border-radius:10px; }
.discovery-upload-context,.discovery-gallery-context { padding:12px 16px; border-left:3px solid var(--orange); background:var(--cream); font-size:.88rem; margin:12px 0; }
.discovery-upload-context button,.discovery-gallery-context button { margin-left:12px; background:none; border:0; text-decoration:underline; cursor:pointer; }
@media(max-width:1000px) { .discovery-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }.discovery-cards { gap:12px; }.discovery-card-body { padding:16px; }.time-layout,.local-layout { grid-template-columns:1fr; } }
@media(max-width:650px) { .discovery-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }.discovery-tabs button { min-height:84px; padding:14px 12px; font-size:.8rem; }.discovery-tabs button:last-child { grid-column:1/-1; min-height:auto; }.discovery-tabs small { font-size:.57rem; margin-bottom:7px; }.experience-intro,.experience-foot { display:block; }.experience-intro>p { margin:16px 0 0; }.discovery-cards,.challenge-layout { grid-template-columns:1fr; }.discovery-card-art { height:170px; }.experience-panel { padding:20px 16px; }.walk-filters { flex-direction:column; gap:12px; }.walk-filters label { max-width:none; }.challenge-poster { min-height:370px; padding:28px; }.challenge-number { font-size:6rem; }.time-label { font-size:.58rem; }.experience-actions { gap:7px; } }
@media(prefers-reduced-motion:reduce) { .discovery-lab * { scroll-behavior:auto; } }
