*{box-sizing:border-box}
:root{
    --ink:#f6fbfb;
    --muted:rgba(246,251,251,.68);
    --dark:#071b20;
    --panel:#102e35;
    --accent:#24b1aa;
    --line:rgba(255,255,255,.13);
    --paper:#f7faf9;
    --paper-ink:#173940;
}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--dark)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)}
button,a{font:inherit}
.discovery{position:relative;width:100%;height:100dvh;background:var(--dark);overflow:hidden}

.discovery-topbar{
    position:fixed;z-index:30;top:0;left:0;right:0;
    min-height:68px;padding:max(10px,env(safe-area-inset-top)) 16px 10px;
    display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;
    background:linear-gradient(to bottom,rgba(3,17,21,.78),rgba(3,17,21,0));
    pointer-events:none
}
.discovery-topbar>*{pointer-events:auto}
.discovery-close{
    width:42px;height:42px;border:1px solid rgba(255,255,255,.15);border-radius:50%;
    background:rgba(5,26,31,.62);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    color:#fff;font-size:1.6rem;line-height:1;cursor:pointer
}
.discovery-context{min-width:0}
.discovery-context span{display:block;color:rgba(255,255,255,.58);font-size:.56rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.discovery-context strong{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.76rem}
.discovery-counter{
    min-width:44px;padding:7px 9px;border-radius:999px;background:rgba(5,26,31,.62);
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font-size:.65rem;font-weight:900;text-align:center
}

.discovery-feed{
    width:100%;height:100dvh;overflow-y:auto;overscroll-behavior-y:contain;
    scroll-snap-type:y mandatory;scroll-behavior:smooth;scrollbar-width:none
}
.discovery-feed::-webkit-scrollbar{display:none}
.discovery-work{
    position:relative;width:100%;height:100dvh;min-height:100dvh;
    display:grid;grid-template-rows:minmax(0,1fr) auto;
    scroll-snap-align:start;scroll-snap-stop:always;background:var(--dark)
}

/* X AXIS */
.discovery-work__media{position:relative;min-height:0;overflow:hidden;background:#173239;touch-action:pan-y;cursor:grab;outline:none}
.discovery-work__media.is-pointer-down,.discovery-work__media.is-dragging-x{cursor:grabbing}
.discovery-work__media:focus-visible{box-shadow:inset 0 0 0 2px rgba(255,255,255,.42)}
.discovery-xtrack{height:100%;display:flex;transition:transform .36s cubic-bezier(.2,.75,.25,1);will-change:transform}
.discovery-xslide{
    position:relative;isolation:isolate;flex:0 0 100%;height:100%;margin:0;
    display:grid;place-items:center;overflow:hidden;background:#10282f
}
.discovery-xslide::before{
    content:"";position:absolute;z-index:-2;inset:-7%;
    background-image:var(--slide-image);background-size:cover;background-position:center;
    filter:blur(26px) saturate(112%);transform:scale(1.08);opacity:.52
}
.discovery-xslide::after{
    content:"";position:absolute;z-index:-1;inset:0;
    background:rgba(3,19,24,.24)
}
.discovery-xslide img{
    position:relative;z-index:1;display:block;max-width:100%;max-height:100%;
    width:auto;height:auto;object-fit:contain;object-position:center;
    user-select:none;-webkit-user-drag:none
}
.discovery-work__placeholder{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.25);font-weight:950;letter-spacing:.1em}

.discovery-work__toprow{
    position:absolute;z-index:7;left:14px;right:14px;top:84px;
    display:flex;justify-content:space-between;align-items:center;gap:10px;pointer-events:none
}
.discovery-top-badge,.discovery-photo-count{
    padding:7px 9px;border-radius:999px;background:rgba(4,26,31,.7);
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:.61rem;font-weight:900;color:#fff
}
.discovery-top-badge{background:rgba(255,255,255,.88);color:#796017}

.discovery-xcounter{
    position:absolute;z-index:7;right:14px;bottom:16px;display:flex;gap:4px;align-items:baseline;
    padding:6px 8px;border-radius:999px;background:rgba(4,26,31,.62);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    color:rgba(255,255,255,.66);font-size:.58rem
}
.discovery-xcounter strong{color:#fff;font-size:.72rem}

/* gesture teaching animation */
.discovery-xhint{
    position:absolute;z-index:8;left:50%;bottom:72px;transform:translateX(-50%);
    width:82px;height:16px;pointer-events:none;opacity:.86
}
.discovery-xhint__line{
    position:absolute;left:0;right:0;top:7px;height:1px;border-radius:999px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent)
}
.discovery-xhint__dot{
    position:absolute;top:4px;left:4px;width:7px;height:7px;border-radius:50%;
    background:#fff;box-shadow:0 0 12px rgba(255,255,255,.6);
    animation:teachX 1.7s ease-in-out 3 alternate
}
@keyframes teachX{
    from{transform:translateX(0)}
    to{transform:translateX(67px)}
}
.discovery-xhint.is-done{opacity:0;transition:opacity .5s ease}

/* visual vocabulary blur */
.discovery-vocabulary{
    position:absolute;z-index:6;left:14px;bottom:14px;max-width:min(72%,420px);
    padding:10px 12px;border:1px solid rgba(255,255,255,.34);border-radius:14px;
    background:rgba(246,250,249,.56);
    backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);
    color:#173940;box-shadow:0 10px 38px rgba(0,0,0,.18)
}
.discovery-vocabulary strong{display:block;font-size:.88rem}
.discovery-vocabulary span{display:flex;gap:5px;flex-wrap:wrap;margin-top:3px;font-size:.66rem}
.discovery-vocabulary b{font-weight:760}.discovery-vocabulary i{font-style:normal}

.discovery-work__info{
    position:relative;z-index:4;padding:22px 16px calc(16px + env(safe-area-inset-bottom));
    background:linear-gradient(180deg,#102e35,#0b252b);border-top:1px solid var(--line)
}
.discovery-sheet-peek{
    position:absolute;left:50%;top:3px;transform:translateX(-50%);
    width:72px;height:20px;padding:0;border:0;background:transparent;color:rgba(255,255,255,.66);cursor:ns-resize
}
.discovery-sheet-peek span{
    position:absolute;left:16px;right:16px;top:4px;height:3px;border-radius:999px;background:rgba(255,255,255,.38)
}
.discovery-sheet-peek i{
    position:absolute;left:50%;top:4px;transform:translate(-50%,-50%);
    font-style:normal;font-size:.55rem;opacity:.7
}
.discovery-work__heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.discovery-project{display:block;color:var(--accent);font-size:.58rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.discovery-work__heading h2{margin:5px 0 0;font-size:clamp(1.25rem,5vw,1.9rem);line-height:1.05;letter-spacing:-.035em}
.discovery-location{flex:none;color:var(--muted);font-size:.64rem;text-align:right}

.discovery-interactions{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.discovery-kpis{display:flex;align-items:center;gap:18px;margin-bottom:11px}
.discovery-kpi{display:flex;align-items:baseline;gap:5px}
.discovery-kpi b{font-size:.78rem;color:#fff}
.discovery-kpi small{font-size:.56rem;color:var(--muted)}
.discovery-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.discovery-action{
    min-width:0;min-height:50px;padding:7px 5px;border:1px solid rgba(255,255,255,.10);
    border-radius:13px;background:rgba(255,255,255,.055);color:#fff;cursor:pointer;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    transition:background .18s ease,border-color .18s ease,transform .18s ease,opacity .18s ease
}
.discovery-action:hover{background:rgba(255,255,255,.10)}
.discovery-action:active{transform:scale(.97)}
.discovery-action.is-active{background:rgba(36,177,170,.16);border-color:rgba(36,177,170,.42)}
.discovery-action:disabled{opacity:.42;cursor:not-allowed;transform:none}
.discovery-action__icon{font-size:1.08rem;line-height:1;font-weight:900}
.discovery-action__label{
    max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    font-size:.54rem;font-weight:850
}
.discovery-action[data-action-like].is-active .discovery-action__icon{font-size:0}
.discovery-action[data-action-like].is-active .discovery-action__icon::before{content:"♥";font-size:1.05rem}
.discovery-action[data-action-save].is-active .discovery-action__icon{font-size:0}
.discovery-action[data-action-save].is-active .discovery-action__icon::before{content:"▰";font-size:.95rem}
.discovery-action.is-loading{opacity:.58;pointer-events:none}
.discovery-interaction-toast{
    position:fixed;z-index:80;left:50%;bottom:max(24px,calc(14px + env(safe-area-inset-bottom)));
    transform:translate(-50%,18px);opacity:0;pointer-events:none;
    max-width:min(420px,calc(100% - 28px));padding:10px 13px;border-radius:12px;
    background:rgba(245,250,249,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    color:#173940;box-shadow:0 16px 50px rgba(0,0,0,.25);font-size:.68rem;font-weight:780;
    transition:opacity .2s ease,transform .2s ease
}
.discovery-interaction-toast.is-visible{opacity:1;transform:translate(-50%,0)}

.discovery-work__footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.discovery-decorator span{display:block;color:var(--muted);font-size:.59rem}
.discovery-decorator strong{display:block;margin-top:2px;font-size:.72rem}
.discovery-profile-link{
    display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 14px;border-radius:12px;
    background:#fff;color:#123840;text-decoration:none;font-size:.7rem;font-weight:950
}

.discovery-feedback{
    position:fixed;z-index:60;left:50%;top:92px;transform:translateX(-50%);
    width:min(520px,calc(100% - 28px));padding:13px 15px;border-radius:14px;
    background:#fff0f0;color:#9c313b;box-shadow:0 18px 60px rgba(0,0,0,.28);font-size:.75rem
}
.discovery-loader{
    position:fixed;z-index:18;left:50%;bottom:18px;transform:translateX(-50%);
    padding:8px 12px;border-radius:999px;background:rgba(4,26,31,.76);
    backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
    color:#fff;font-size:.65rem;font-weight:850
}

/* BOTTOM SHEET */
.discovery-sheet{position:fixed;z-index:50;inset:0;pointer-events:none}
.discovery-sheet.is-open{pointer-events:auto}
.discovery-sheet__backdrop{
    position:absolute;inset:0;border:0;background:rgba(2,17,21,.54);
    opacity:0;transition:opacity .28s ease
}
.discovery-sheet.is-open .discovery-sheet__backdrop{opacity:1}
.discovery-sheet__panel{
    position:absolute;left:0;right:0;bottom:0;max-height:min(84dvh,840px);overflow:auto;
    padding:7px 18px calc(22px + env(safe-area-inset-bottom));
    border-radius:26px 26px 0 0;background:var(--paper);color:var(--paper-ink);
    box-shadow:0 -28px 90px rgba(0,0,0,.28);
    transform:translateY(103%);transition:transform .34s cubic-bezier(.2,.75,.25,1)
}
.discovery-sheet.is-open .discovery-sheet__panel{transform:translateY(0)}
.discovery-sheet__grab{
    position:sticky;z-index:3;top:0;display:block;width:78px;height:24px;margin:0 auto 5px;
    padding:0;border:0;background:var(--paper);color:#6d8287;cursor:ns-resize
}
.discovery-sheet__grab span{
    position:absolute;left:17px;right:17px;top:5px;height:4px;border-radius:999px;background:#c8d4d2
}
.discovery-sheet__grab i{
    position:absolute;left:50%;top:7px;transform:translate(-50%,-50%);
    font-style:normal;font-size:.6rem
}
.discovery-sheet__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.sheet-eyebrow{display:block;color:#0b8b86;font-size:.56rem;font-weight:950;letter-spacing:.13em}
.discovery-sheet__head h2{margin:5px 0 0;font-size:clamp(1.7rem,7vw,2.6rem);line-height:.96;letter-spacing:-.045em}
.discovery-sheet__close{width:38px;height:38px;border:0;border-radius:50%;background:#e9f0ef;color:#173940;font-size:1.35rem;cursor:pointer}
.discovery-sheet__core{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}
.discovery-sheet__core>div{padding:11px;border:1px solid rgba(21,57,65,.1);border-radius:13px;background:#fff}
.discovery-sheet__core span{display:block;color:#778a8e;font-size:.56rem}
.discovery-sheet__core strong{display:block;margin-top:4px;font-size:.72rem}
.discovery-sheet__chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.discovery-sheet__chips span{padding:7px 9px;border-radius:999px;background:#e8f3f1;color:#245b5b;font-size:.61rem;font-weight:850}
.discovery-sheet__technical{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:16px}
.discovery-sheet__technical>div{padding:10px 11px;border-top:1px solid rgba(21,57,65,.11)}
.discovery-sheet__technical span{display:block;color:#7a8c90;font-size:.56rem}
.discovery-sheet__technical strong{display:block;margin-top:3px;font-size:.72rem}
.discovery-sheet__project{margin-top:22px;padding-top:18px;border-top:1px solid rgba(21,57,65,.12)}
.discovery-sheet__project h3{margin:6px 0 0;font-size:1.15rem}
.discovery-sheet__project p{margin:8px 0 0;color:#687f84;font-size:.72rem;line-height:1.55}
.discovery-sheet__decorator{
    display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:11px;
    margin-top:20px;padding:13px;border:1px solid rgba(21,57,65,.1);border-radius:15px;background:#fff
}
.discovery-sheet__decorator-logo{
    position:relative;width:46px;height:46px;display:grid;place-items:center;overflow:hidden;border-radius:14px;background:#e8f1ef
}
.discovery-sheet__decorator-logo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.discovery-sheet__decorator-logo span{font-weight:950;color:#0b8b86}
.discovery-sheet__decorator-copy{min-width:0}
.discovery-sheet__decorator-copy span,.discovery-sheet__decorator-copy small{display:block;color:#7b8d91;font-size:.57rem}
.discovery-sheet__decorator-copy strong{display:block;margin:3px 0;font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.discovery-sheet__profile{padding:8px 10px;border-radius:10px;background:#edf3f2;color:#173940;text-decoration:none;font-size:.62rem;font-weight:900}
.discovery-sheet__cta{
    display:flex;align-items:center;justify-content:space-between;margin-top:12px;min-height:50px;padding:0 15px;
    border-radius:13px;background:#123e46;color:#fff;text-decoration:none;font-size:.74rem;font-weight:950
}

[hidden]{display:none!important}

@media(min-width:800px){
    .discovery-work{grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);grid-template-rows:1fr}
    .discovery-work__info{display:flex;flex-direction:column;justify-content:flex-end;padding:32px}
    .discovery-work__toprow{top:84px}
    .discovery-vocabulary{left:24px;bottom:24px}
    .discovery-sheet__panel{
        left:auto;top:0;width:min(520px,44vw);max-height:none;height:100dvh;border-radius:0;
        padding-top:max(18px,env(safe-area-inset-top));transform:translateX(103%)
    }
    .discovery-sheet.is-open .discovery-sheet__panel{transform:translateX(0)}
}
@media(max-width:600px){
    .discovery-actions{gap:5px}
    .discovery-action{min-height:47px;padding:6px 4px}

    .discovery-sheet__core{grid-template-columns:1fr 1fr}
    .discovery-sheet__core>div:last-child{grid-column:1/-1}
    .discovery-sheet__technical{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){
    .discovery-feed{scroll-behavior:auto}
    .discovery-xtrack,.discovery-sheet__panel,.discovery-sheet__backdrop{transition:none}
    .discovery-xhint__dot{animation:none}
}


/* Image Fit — preserva sempre la foto intera.
   Il backdrop sfocato riempie lo spazio senza ritagliare il soggetto. */
@media(max-width:760px){
    .discovery-xslide img{
        max-width:100%;
        max-height:100%;
    }
}
@media(min-width:761px){
    .discovery-xslide img{
        max-width:100%;
        max-height:100%;
    }
}

/* ============================================================
   DecorUP Discovery Emotional V4
   Obiettivo: 80% immagine, 20% interfaccia.
   ============================================================ */
:root{
    --dv4-bg:#f4f6f8;
    --dv4-surface:rgba(255,255,255,.94);
    --dv4-surface-strong:#fff;
    --dv4-text:#102a43;
    --dv4-muted:#6b7b8c;
    --dv4-line:rgba(16,42,67,.10);
    --dv4-accent:#0b6df6;
    --dv4-accent-soft:rgba(11,109,246,.10);
    --dv4-shadow:0 12px 34px rgba(9,30,66,.12);
}
html[data-theme="dark"]{
    --dv4-bg:#0c1726;
    --dv4-surface:rgba(16,29,47,.91);
    --dv4-surface-strong:#142238;
    --dv4-text:#f5f8fc;
    --dv4-muted:#a9b7c8;
    --dv4-line:rgba(255,255,255,.10);
    --dv4-accent:#5ea0ff;
    --dv4-accent-soft:rgba(94,160,255,.14);
    --dv4-shadow:0 14px 36px rgba(0,0,0,.28);
}
@media (prefers-color-scheme:dark){
    html:not([data-theme]){
        --dv4-bg:#0c1726;
        --dv4-surface:rgba(16,29,47,.91);
        --dv4-surface-strong:#142238;
        --dv4-text:#f5f8fc;
        --dv4-muted:#a9b7c8;
        --dv4-line:rgba(255,255,255,.10);
        --dv4-accent:#5ea0ff;
        --dv4-accent-soft:rgba(94,160,255,.14);
        --dv4-shadow:0 14px 36px rgba(0,0,0,.28);
    }
}

html,body{background:var(--dv4-bg)}
body{color:var(--dv4-text)}
.discovery{background:var(--dv4-bg)}

/* Topbar quasi invisibile: solo chiudi e contatore. */
.discovery-topbar{
    grid-template-columns:44px 1fr auto;
    background:linear-gradient(to bottom,rgba(7,17,29,.55),rgba(7,17,29,0));
}
.discovery-context{opacity:.68}
.discovery-context span{font-size:.52rem}
.discovery-context strong{font-size:.68rem}
.discovery-close,.discovery-counter{
    background:rgba(7,22,31,.52);
    border-color:rgba(255,255,255,.16);
    color:#fff;
}

.discovery-work.discovery-work--emotional{
    grid-template-rows:minmax(0,1fr) auto;
    background:var(--dv4-bg);
}
.discovery-work--emotional .discovery-work__media{
    background:#13242f;
    min-height:0;
}
.discovery-work--emotional .discovery-xslide::after{
    background:linear-gradient(to bottom,rgba(3,14,20,.08) 45%,rgba(3,14,20,.30) 100%);
}
.discovery-work--emotional .discovery-xslide img{
    width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;
}
.discovery-work--emotional .discovery-work__toprow{top:72px}
.discovery-work--emotional .discovery-vocabulary{display:none!important}



/* ============================================================
   DISCOVERY EMOTIONAL CARD — CLEAN / SINGLE SOURCE OF TRUTH
   Nessun clip-path, nessun doppio set di regole, nessun hidden CSS.
   Il JS deve soltanto alternare .is-collapsed / .is-expanded.
   ============================================================ */

.discovery-emotional-card{
    position:absolute;
    z-index:9;
    left:12px;
    bottom:12px;

    width:108px;
    min-height:42px;
    padding:0;

    overflow:hidden;
    border:1px solid rgba(255,255,255,.30);
    border-radius:999px;

    background:rgba(250,252,253,.58);
    color:#102a43;

    box-shadow:0 8px 22px rgba(0,0,0,.13);

    backdrop-filter:blur(8px) saturate(115%);
    -webkit-backdrop-filter:blur(8px) saturate(115%);

    transition:
        width .30s cubic-bezier(.22,.75,.25,1),
        padding .30s cubic-bezier(.22,.75,.25,1),
        border-radius .30s cubic-bezier(.22,.75,.25,1),
        background .24s ease,
        box-shadow .24s ease;
}

html[data-theme="dark"] .discovery-emotional-card{
    color:#f7f9fc;
    border-color:rgba(255,255,255,.15);
    background:rgba(10,25,37,.58);
}

@media(prefers-color-scheme:dark){
    html:not([data-theme]) .discovery-emotional-card{
        color:#f7f9fc;
        border-color:rgba(255,255,255,.15);
        background:rgba(10,25,37,.58);
    }
}

/* Stato chiuso */
.discovery-emotional-card.is-collapsed{
    width:108px;
    min-width:108px;
    padding:0;
    border-radius:999px;
}

/* Stato aperto */
.discovery-emotional-card.is-expanded{
    width:calc(100% - 24px);
    padding:13px;
    border-radius:18px;

    background:rgba(250,252,253,.78);
    box-shadow:0 12px 30px rgba(0,0,0,.16);

    backdrop-filter:blur(18px) saturate(120%);
    -webkit-backdrop-filter:blur(18px) saturate(120%);
}

html[data-theme="dark"] .discovery-emotional-card.is-expanded{
    background:rgba(12,24,39,.72);
}

@media(prefers-color-scheme:dark){
    html:not([data-theme]) .discovery-emotional-card.is-expanded{
        background:rgba(12,24,39,.72);
    }
}

/* Pulsante Dettagli: sovrapposto, non modifica mai la geometria interna. */
.discovery-emotional-card__collapsed{
    position:absolute;
    z-index:4;
    left:0;
    bottom:0;

    width:108px;
    height:42px;
    min-width:108px;
    min-height:42px;

    padding:0 14px;
    border:0;
    background:transparent;
    color:inherit;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;

    font-size:.78rem;
    font-weight:900;
    cursor:pointer;

    opacity:1;
    visibility:visible;
    pointer-events:auto;

    transition:
        opacity .14s ease,
        visibility 0s linear 0s;
}

.discovery-emotional-card__collapsed i{
    font-style:normal;
    font-size:.78rem;
    opacity:.72;
}

.discovery-emotional-card.is-expanded .discovery-emotional-card__collapsed{
    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transition:
        opacity .12s ease,
        visibility 0s linear .12s;
}

/* Contenuto aperto: resta sempre nel DOM.
   L'altezza è controllata da max-height, quindi niente doppio reflow. */
.discovery-emotional-card__expanded{
    position:relative;

    max-height:0;
    overflow:hidden;

    opacity:0;
    visibility:hidden;
    pointer-events:none;

    transform:translateY(6px);

    transition:
        max-height .30s cubic-bezier(.22,.75,.25,1),
        opacity .14s ease,
        transform .20s ease,
        visibility 0s linear .30s;
}

.discovery-emotional-card.is-expanded .discovery-emotional-card__expanded{
    max-height:240px;

    opacity:1;
    visibility:visible;
    pointer-events:auto;

    transform:translateY(0);

    transition:
        max-height .30s cubic-bezier(.22,.75,.25,1),
        opacity .16s ease .07s,
        transform .22s ease .05s,
        visibility 0s linear 0s;
}

/* Contenuto della card */
.discovery-emotional-card__main strong{
    display:block;
    font-size:1.22rem;
    line-height:1.06;
    font-weight:900;
    letter-spacing:-.025em;
}

.discovery-emotional-card__main>span{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin-top:5px;
    font-size:.78rem;
    font-weight:750;
    opacity:.78;
}

.discovery-emotional-card__main i{
    font-style:normal;
    opacity:.45;
}

.discovery-emotional-card__meta{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:14px;

    margin-top:11px;
    padding-top:10px;

    border-top:1px solid rgba(16,42,67,.10);
}

html[data-theme="dark"] .discovery-emotional-card__meta{
    border-color:rgba(255,255,255,.10);
}

.discovery-emotional-card__meta small{
    display:block;
    font-size:.62rem;
    opacity:.58;
}

.discovery-emotional-card__meta strong{
    display:block;
    margin-top:2px;
    font-size:.76rem;
}

.discovery-emotional-card__meta>span{
    font-size:.68rem;
    opacity:.62;
    text-align:right;
}

.discovery-emotional-card__close{
    position:absolute;
    z-index:5;
    top:0;
    right:0;

    width:30px;
    height:30px;

    border:1px solid rgba(16,42,67,.15);
    border-radius:50%;

    background:rgba(255,255,255,.72);
    color:inherit;

    display:grid;
    place-items:center;

    font-size:1.1rem;
    line-height:1;
    cursor:pointer;
}

html[data-theme="dark"] .discovery-emotional-card__close{
    background:rgba(15,31,48,.82);
    border-color:rgba(255,255,255,.14);
}

@media(prefers-color-scheme:dark){
    html:not([data-theme]) .discovery-emotional-card__close{
        background:rgba(15,31,48,.82);
        border-color:rgba(255,255,255,.14);
    }
}

.discovery-emotional-card__links{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    align-items:center;
    gap:8px;
    margin-top:10px;
}

.discovery-emotional-card__profile{
    min-height:38px;
    padding:0 11px;

    border:1px solid rgba(16,42,67,.12);
    border-radius:11px;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;

    color:inherit;
    text-decoration:none;
    font-size:.69rem;
    font-weight:900;

    background:rgba(255,255,255,.40);
}

html[data-theme="dark"] .discovery-emotional-card__profile{
    border-color:rgba(255,255,255,.10);
    background:rgba(255,255,255,.06);
}

.discovery-emotional-card__details{
    width:100%;
    min-height:38px;
    margin-top:0;
    padding:0 12px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    border:0;
    border-radius:11px;

    background:rgba(255,255,255,.66);
    color:inherit;

    font-size:.72rem;
    font-weight:900;
    cursor:pointer;
}

html[data-theme="dark"] .discovery-emotional-card__details{
    background:rgba(255,255,255,.08);
}

.discovery-emotional-card__details span{
    font-size:.9rem;
}


/* Area inferiore ridotta al minimo. */
.discovery-work__info.discovery-work__info--emotional{
    padding:10px 12px max(12px,env(safe-area-inset-bottom));
    background:var(--dv4-bg);color:var(--dv4-text);border-top:0;
}
.discovery-actions.discovery-actions--emotional{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px
}
.discovery-actions--emotional .discovery-action{
    min-height:62px;padding:8px 4px 7px;
    border:1px solid var(--dv4-line);border-radius:15px;
    background:var(--dv4-surface-strong);color:var(--dv4-text);
    box-shadow:0 4px 14px rgba(9,30,66,.05);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
}
.discovery-actions--emotional .discovery-action__icon{width:23px;height:23px;display:grid;place-items:center}
.discovery-actions--emotional .discovery-action__icon svg{
    width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.discovery-actions--emotional .discovery-action__label{font-size:.72rem;font-weight:850;line-height:1}
.discovery-actions--emotional .discovery-action small{font-size:.58rem;color:var(--dv4-muted);line-height:1}
.discovery-actions--emotional .discovery-action.is-active{
    background:var(--dv4-accent-soft);border-color:rgba(11,109,246,.30);color:var(--dv4-accent)
}
.discovery-actions--emotional .discovery-action.is-active .discovery-action__icon{font-size:0}
.discovery-actions--emotional .discovery-action[data-action-like].is-active .discovery-action__icon::before,
.discovery-actions--emotional .discovery-action[data-action-save].is-active .discovery-action__icon::before{display:none}
.discovery-actions--emotional .discovery-action--contact{border-color:rgba(11,109,246,.22)}

.discovery-profile-strip{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin-top:9px;padding-top:9px;border-top:1px solid var(--dv4-line)
}
.discovery-profile-strip>div{min-width:0}
.discovery-profile-strip span{display:block;color:var(--dv4-muted);font-size:.58rem}
.discovery-profile-strip strong{
    display:block;margin-top:2px;font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
.discovery-profile-strip .discovery-profile-link{
    flex:0 0 auto;min-height:34px;padding:0 12px;border-radius:10px;
    display:inline-flex;align-items:center;gap:7px;background:var(--dv4-text);color:var(--dv4-bg);
    text-decoration:none;font-size:.68rem;font-weight:900
}

/* Bottom sheet coerente col tema. */
.discovery-sheet__panel{background:var(--dv4-surface-strong);color:var(--dv4-text)}
.discovery-sheet__core>div,.discovery-sheet__technical>div,.discovery-sheet__decorator{
    background:var(--dv4-surface);border-color:var(--dv4-line);color:var(--dv4-text)
}
.discovery-sheet__decorator-copy span,.discovery-sheet__decorator-copy small{color:var(--dv4-muted)}
.discovery-sheet__profile{background:var(--dv4-bg);color:var(--dv4-text)}



@media(max-width:600px){
    .discovery-work--emotional .discovery-work__media{min-height:0}

    .discovery-emotional-card{
        left:10px;
        bottom:10px;
    }

    .discovery-emotional-card.is-expanded{
        width:calc(100% - 20px);
    }

    .discovery-emotional-card__links{
        grid-template-columns:1fr 1.35fr;
    }

    .discovery-actions.discovery-actions--emotional{gap:6px}
    .discovery-actions--emotional .discovery-action{min-height:60px;border-radius:13px}
    .discovery-actions--emotional .discovery-action__label{font-size:.69rem}
}

@media(min-width:800px){
    .discovery-work.discovery-work--emotional{
        grid-template-columns:minmax(0,1fr) 360px;
        grid-template-rows:1fr;
    }

    .discovery-work__info.discovery-work__info--emotional{
        padding:32px 22px;
        display:flex;
        flex-direction:column;
        justify-content:flex-end;
    }

    .discovery-emotional-card{
        left:24px;
        bottom:24px;
    }

    .discovery-emotional-card.is-expanded{
        width:min(460px,calc(100% - 48px));
        max-width:460px;
    }

    .discovery-actions.discovery-actions--emotional{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}


:root{
    --dv5-petrol:#2f6f7a;
    --dv5-action-border:rgba(47,111,122,.52);
    --dv5-action-border-active:rgba(47,111,122,.88);
}
html[data-theme="dark"]{
    --dv5-petrol:#65aeb8;
    --dv5-action-border:rgba(101,174,184,.50);
    --dv5-action-border-active:rgba(101,174,184,.88);
}
@media(prefers-color-scheme:dark){
    html:not([data-theme]){
        --dv5-petrol:#65aeb8;
        --dv5-action-border:rgba(101,174,184,.50);
        --dv5-action-border-active:rgba(101,174,184,.88);
    }
}



/* Il profilo non occupa più una riga separata sotto le azioni. */
.discovery-profile-strip{display:none!important}

.discovery-work__info.discovery-work__info--emotional{
    padding-bottom:max(8px,env(safe-area-inset-bottom));
}

/* Tutti i tab hanno la stessa gerarchia e lo stesso bordo petrolio. */
.discovery-actions--emotional .discovery-action,
.discovery-actions--emotional .discovery-action--contact{
    border-color:var(--dv5-action-border);
}

.discovery-actions--emotional .discovery-action:hover,
.discovery-actions--emotional .discovery-action:focus-visible{
    border-color:var(--dv5-action-border-active);
    outline:none;
}

.discovery-actions--emotional .discovery-action.is-active{
    border-color:var(--dv5-action-border-active);
    color:var(--dv5-petrol);
}

/* Micro tutorial gesture: mano bianca direttamente sulla fotografia. */
.discovery-gesture-hint{
    position:absolute;
    z-index:8;
    left:50%;
    top:48%;

    width:116px;
    min-height:96px;

    transform:translate(-50%,-50%);

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;

    pointer-events:none;

    color:#fff;
    text-shadow:0 2px 10px rgba(0,0,0,.72);
    filter:drop-shadow(0 4px 10px rgba(0,0,0,.28));
}

.discovery-gesture-hint[hidden]{display:none!important}

.discovery-gesture-hint__hand{
    width:46px;
    height:46px;

    fill:rgba(255,255,255,.94);
    stroke:rgba(5,22,31,.30);
    stroke-width:.65;
    stroke-linejoin:round;
}

.discovery-gesture-hint span{
    padding:4px 8px;

    border-radius:999px;
    background:rgba(4,22,31,.32);

    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);

    font-size:.62rem;
    font-weight:850;
    letter-spacing:.01em;
    white-space:nowrap;
}

.discovery-gesture-hint--x .discovery-gesture-hint__hand{
    animation:du-hand-x 1.05s ease-in-out infinite alternate;
}

.discovery-gesture-hint--y .discovery-gesture-hint__hand{
    animation:du-hand-y 1.05s ease-in-out infinite alternate;
}

.discovery-gesture-hint.is-leaving{
    opacity:0;
    transition:opacity .28s ease;
}

@keyframes du-hand-x{
    from{transform:translateX(-30px) rotate(-8deg)}
    to{transform:translateX(30px) rotate(8deg)}
}

@keyframes du-hand-y{
    from{transform:translateY(-27px) rotate(-5deg)}
    to{transform:translateY(27px) rotate(5deg)}
}

/* Il vecchio micro-indicatore lineare non serve più. */
.discovery-xhint__line,
.discovery-xhint__dot{
    display:none!important;
}



/* =========================================================
   DISCOVERY V5 — DESKTOP
   ========================================================= */
@media(min-width:800px){

    .discovery-work{
        width:100%!important;
        height:100dvh!important;
        min-height:100dvh!important;

        display:grid!important;
        grid-template-columns:minmax(0,1fr) 360px!important;
        grid-template-rows:1fr!important;
    }

    .discovery-work__media{
        position:relative!important;

        width:100%!important;
        height:100dvh!important;
        min-height:0!important;

        overflow:hidden!important;
    }

    .discovery-xtrack{
        width:100%!important;
        height:100%!important;
    }

    .discovery-xslide{
        height:100%!important;
        min-height:0!important;
    }

    .discovery-xslide img{
        width:auto!important;
        height:auto!important;

        max-width:100%!important;
        max-height:100%!important;

        object-fit:contain!important;
        object-position:center!important;
    }

    .discovery-work__info{
        position:relative!important;

        width:360px!important;
        height:100dvh!important;

        padding:32px 22px!important;

        display:flex!important;
        flex-direction:column!important;
        justify-content:flex-end!important;

        overflow-y:auto!important;
    }

    .discovery-actions{
        width:100%!important;

        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:10px!important;
    }

    .discovery-action{
        min-height:72px!important;
    }

    .discovery-gesture-hint{
        display:none!important;
    }
}

@media(prefers-reduced-motion:reduce){
    .discovery-feed{scroll-behavior:auto}

    .discovery-xtrack,
    .discovery-sheet__panel,
    .discovery-sheet__backdrop,
    .discovery-emotional-card,
    .discovery-emotional-card__collapsed,
    .discovery-emotional-card__expanded{
        transition:none!important;
    }

    .discovery-gesture-hint__hand{
        animation:none!important;
    }
}
