.vx-shell{
    width:100%;
    min-width:0;
    color:var(--text);
    --vx-nav-height:68px;
    --vx-step-height:55px;
    --vx-space-1:8px;
    --vx-space-2:12px;
    --vx-space-3:16px;
    --vx-radius:16px;
}
.video-auth-required > :not(.video-auth-gate){display:none!important}
.video-auth-gate{
    width:min(100%,980px);
    min-height:min(680px,calc(100dvh - 150px));
    margin:0 auto;
    padding:clamp(24px,5vw,56px);
    display:grid;
    grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
    align-items:center;
    gap:clamp(24px,5vw,64px);
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
    background:
        radial-gradient(circle at 12% 8%,rgba(0,245,160,.15),transparent 34%),
        linear-gradient(145deg,rgba(13,26,46,.97),rgba(7,13,26,.96));
    box-shadow:0 28px 90px rgba(0,0,0,.32);
}
.video-auth-gate[hidden]{display:none!important}
.video-auth-copy h2{
    max-width:680px;
    margin:16px 0 14px;
    font-size:clamp(38px,5vw,62px);
    line-height:1;
}
.video-auth-copy > p{max-width:620px;color:var(--muted);font-size:16px;line-height:1.65}
.video-auth-actions{display:flex;gap:10px;margin-top:24px}
.video-auth-actions .btn{min-width:150px;min-height:48px;text-decoration:none}
.video-auth-value{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.video-auth-value div{
    min-height:128px;
    padding:18px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    border:1px solid rgba(255,255,255,.11);
    border-radius:16px;
    background:rgba(255,255,255,.045);
}
.video-auth-value strong{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#04111b;
    background:linear-gradient(135deg,var(--green),var(--blue));
}
.video-auth-value span{font-size:14px;font-weight:950;line-height:1.25}
.video-experience-enhanced > .miq-global-nav{position:sticky;top:0;z-index:1000}
.vx-shell :focus-visible,.vx-projects :focus-visible{
    outline:3px solid var(--green);
    outline-offset:3px;
}
.legacy-video-title{font-size:clamp(34px,3.2vw,58px);line-height:1.02;margin-bottom:14px;max-width:820px}
.vx-shell[hidden],.vx-view[hidden]{display:none!important}
.vx-shell-head,.vx-view-head,.vx-workspace-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}
.vx-shell-head{margin-bottom:var(--vx-space-3)}
.vx-shell-head h1{font-size:clamp(30px,4vw,50px);margin-bottom:8px}
.vx-shell-head p,.vx-view-head p,.vx-workspace-head p{margin:0}
.vx-shell-actions,.vx-workspace-actions,.vx-error-actions,.vx-report-actions{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
}
.vx-step-anchor{display:block;width:1px;height:1px;margin-bottom:-1px;pointer-events:none}
.vx-steps{
    position:sticky;
    top:var(--vx-nav-height);
    z-index:30;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:8px;
    margin-bottom:var(--vx-space-3);
    padding:8px;
    border:1px solid var(--border);
    border-radius:var(--vx-radius);
    background:rgba(5,9,20,.92);
    backdrop-filter:blur(16px);
    transition:border-color .18s ease,border-radius .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.vx-steps.is-stuck{
    border-color:rgba(0,245,160,.24);
    border-radius:0 0 var(--vx-radius) var(--vx-radius);
    background:rgba(5,9,20,.98);
    box-shadow:0 14px 30px rgba(0,0,0,.28);
}
.vx-steps > span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:46px;
    padding:7px 10px;
    border-radius:10px;
    color:var(--muted);
    font-size:11px;
    font-weight:950;
}
.vx-steps > span > span{display:grid;gap:2px;min-width:0}
.vx-steps .vx-step-label{display:inline;min-height:0;padding:0;color:inherit;font:inherit}
.vx-step-context{
    display:block;
    overflow:hidden;
    color:inherit;
    font-size:8px;
    font-weight:750;
    line-height:1.2;
    opacity:.7;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.vx-steps b{
    display:grid;
    place-items:center;
    width:23px;
    height:23px;
    border-radius:7px;
    background:rgba(255,255,255,.08);
}
.vx-steps > span.active{color:#06111c;background:linear-gradient(135deg,var(--green),var(--blue))}
.vx-steps > span.complete{color:var(--green);background:rgba(0,245,160,.08)}
.vx-steps > span.complete b{background:rgba(0,245,160,.15)}
.vx-view{
    min-height:min(720px,calc(100dvh - 210px));
    padding:24px;
    border:1px solid var(--border);
    border-radius:20px;
    background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
    box-shadow:0 24px 70px rgba(0,0,0,.25);
}
.vx-eyebrow{
    display:block;
    margin-bottom:7px;
    color:var(--green);
    font-size:10px;
    font-weight:1000;
    text-transform:uppercase;
}
.vx-start{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
    grid-template-areas:"copy upload" "modes upload" "resume resume";
    gap:20px;
    align-content:center;
}
.vx-start-copy{grid-area:copy;align-self:end}
.vx-start-copy h2{font-size:clamp(32px,4.4vw,62px);line-height:1.02;max-width:720px}
.vx-start-copy p{font-size:15px}
.vx-dropzone{
    grid-area:upload;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    min-height:360px;
    padding:34px;
    border:2px dashed rgba(0,245,160,.42);
    border-radius:22px;
    background:linear-gradient(145deg,rgba(0,245,160,.10),rgba(47,124,255,.08));
    text-align:center;
    transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.vx-dropzone:is(:hover,:focus-visible),.vx-dropzone.dragover{
    border-color:var(--green);
    background:linear-gradient(145deg,rgba(0,245,160,.17),rgba(47,124,255,.13));
    outline:none;
}
.vx-dropzone strong{font-size:23px}
.vx-dropzone span{color:var(--muted);font-size:13px}
.vx-dropzone input[type=file]{max-width:520px}
.vx-dropzone #vxUploadInputMount{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
}
.vx-dropzone.has-file{border-style:solid}
.vx-dropzone.has-file strong::before{content:"Video selezionato";display:block;margin-bottom:5px;color:var(--green);font-size:10px;text-transform:uppercase}
.vx-mode-choice{grid-area:modes;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.vx-mode-choice button{
    display:grid;
    gap:5px;
    min-height:94px;
    padding:15px;
    border:1px solid var(--border);
    border-radius:14px;
    background:rgba(5,10,22,.74);
    color:#fff;
    text-align:left;
    cursor:pointer;
}
.vx-mode-choice button.active{border-color:var(--green);background:rgba(0,245,160,.09)}
.vx-mode-choice span{color:var(--muted);font-size:11px;line-height:1.45}
.vx-resume{
    grid-area:resume;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding-top:18px;
    border-top:1px solid var(--border);
}
.vx-resume strong{display:block;font-size:15px}
.vx-setup{max-width:1180px;margin:0 auto}
.vx-setup #videoIntelligenceSetup{
    margin-top:18px;
    padding:16px;
    border-radius:16px;
    background:rgba(5,10,22,.58);
}
.vx-setup #videoIntelligenceSetup .vi-section-head{align-items:center}
.vx-setup #videoIntelligenceSetup .vi-section-head h2{font-size:16px;margin-bottom:3px}
.vx-setup #videoIntelligenceSetup .vi-section-head p{font-size:11px}
.vx-setup #videoIntelligenceSetup .vi-kicker{display:none}
.vx-setup #videoIntelligenceSetup .vi-setup-actions{display:none}
.vx-primary-fields{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:16px 0;
}
.vx-primary-fields .field{min-width:0}
.vx-primary-fields .field label::after{content:""}
.vx-primary-fields .field:has(#videoTitle){grid-column:span 2}
.vx-primary-fields .field:has(#observedTeam){grid-column:span 2}
.vx-advanced{
    margin-top:14px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:16px;
    background:rgba(5,10,22,.58);
}
.vx-advanced summary{cursor:pointer;font-weight:950;color:#fff}
.vx-advanced > p{margin:7px 0 0;font-size:11px}
.vx-advanced .form-grid{margin-top:14px}
.vx-setup-footer{
    position:sticky;
    bottom:max(10px,env(safe-area-inset-bottom));
    z-index:8;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:18px;
    padding:12px;
    border:1px solid rgba(0,245,160,.28);
    border-radius:16px;
    background:rgba(5,9,20,.94);
    backdrop-filter:blur(16px);
}
.vx-setup-footer p{margin:0;font-size:12px}
.vx-processing{display:grid;place-items:center}
.vx-processing-main{width:min(760px,100%);text-align:center}
.vx-processing-main h2{font-size:clamp(28px,4vw,46px)}
.vx-processing-main > p{margin:0 auto}
.vx-processing-flow{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    margin-top:24px;
}
.vx-processing-flow span{
    display:flex;
    align-items:center;
    gap:8px;
    min-height:48px;
    padding:10px 12px;
    border:1px solid var(--border);
    border-radius:12px;
    background:rgba(5,10,22,.58);
    color:var(--muted);
    font-size:11px;
    font-weight:900;
    text-align:left;
}
.vx-processing-flow b{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    flex:none;
    border-radius:8px;
    background:rgba(0,245,160,.12);
    color:var(--green);
}
.vx-processing-flow .active{border-color:rgba(0,245,160,.32);color:#fff}
.vx-progress{height:11px;margin:28px 0 18px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08)}
.vx-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--blue));transition:width .25s ease}
.vx-processing-meta,.vx-report-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.vx-processing-meta div,.vx-report-stats div{padding:13px;border:1px solid var(--border);border-radius:13px;background:rgba(5,10,22,.64);text-align:left}
.vx-processing-meta span,.vx-report-stats span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}
.vx-processing-meta strong,.vx-report-stats strong{display:block;margin-top:5px;font-size:17px}
#vxProcessingActions{display:flex;justify-content:center;gap:10px;margin-top:18px}
.vx-review{padding:14px;min-height:calc(100dvh - var(--vx-nav-height) - var(--vx-step-height) - 40px)}
.vx-workspace-head{
    position:relative;
    z-index:1;
    margin:-14px -14px 10px;
    padding:12px 14px;
    border-bottom:1px solid var(--border);
    border-radius:20px 20px 0 0;
    background:rgba(7,12,24,.72);
}
.vx-workspace-head h2{margin-bottom:3px;font-size:19px}
.vx-workspace-head p{font-size:11px}
.vx-review-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(288px,320px);
    gap:14px;
    min-height:0;
    align-items:start;
}
.vx-player-column,.vx-evidence-column{min-width:0}
.vx-player-column{display:grid;align-content:start;gap:0}
.vx-player-column .video-shell{
    margin-top:0;
    min-height:0;
    aspect-ratio:16/9;
    border-color:rgba(49,178,255,.28);
    border-radius:14px 14px 0 0;
    box-shadow:0 22px 46px rgba(0,0,0,.26);
}
.vx-player-column video{width:100%;max-height:none}
.vx-player-column #tacticalTools{margin-top:0;border-radius:0 0 14px 14px}
.vx-evidence-column{
    max-height:none;
    overflow:visible;
}
.vx-evidence-column .vi-workspace{margin-top:0;padding:10px;border-radius:14px}
.vx-evidence-column .vi-section-head{display:grid;gap:7px;margin-bottom:8px}
.vx-evidence-column .vi-section-head p{font-size:10px;line-height:1.4}
.vx-evidence-column .vi-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:7px}
.vx-evidence-column .vi-stat{padding:7px 5px;text-align:center}
.vx-evidence-column .vi-stat span{font-size:8px}
.vx-evidence-column .vi-stat strong{font-size:14px}
.vx-evidence-column .vi-review-progress{gap:6px;margin-bottom:8px}
.vx-evidence-column .vi-review-tools{margin-bottom:8px}
.vx-evidence-column .vi-review-tools .vi-toolbar{grid-template-columns:1fr 1fr}
.vx-evidence-column .vi-toolbar-actions{grid-column:1/-1}
.vx-evidence-column .vi-review-layout{grid-template-columns:1fr}
.vx-evidence-column .vi-evidence-queue{
    grid-auto-flow:column;
    grid-auto-columns:minmax(150px,72%);
    max-height:none;
    overflow-x:auto;
    overflow-y:hidden;
    padding-bottom:5px;
}
.vx-evidence-column .vi-evidence{padding:10px;border-radius:13px}
.vx-evidence-column .vi-evidence-copy,.vx-evidence-column .vi-evidence-meta,.vx-evidence-column .vi-editors{grid-template-columns:1fr}
.vx-evidence-column .vi-evidence-copy .full{grid-column:auto}
.vx-evidence-column .vi-clip-editor,.vx-evidence-column .vi-frame-editor{grid-template-columns:1fr 1fr}
.vx-evidence-column .vi-clip-editor button,.vx-evidence-column .vi-frame-editor button{min-height:38px}
.vx-evidence-column .vi-review-decisions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.vx-evidence-column .vi-review-decision{min-height:44px;width:100%;font-size:11px}
.vx-review-secondary{display:grid;gap:12px;margin-top:14px}
.vx-review-secondary:empty{display:none}
.vx-review-assets{
    margin-top:12px;
    padding:12px;
    border:1px solid var(--border);
    border-radius:15px;
    background:rgba(5,10,22,.52);
}
.vx-review-assets summary{cursor:pointer;color:#fff;font-size:12px;font-weight:950}
.vx-review-assets[open] summary{margin-bottom:10px}
.vx-review-assets .slide-deck,.vx-review-assets .frames{margin-top:0}
.vx-report-ready{
    position:relative;
    min-height:auto;
    max-width:1120px;
    margin:0 auto;
    border-color:rgba(0,245,160,.34);
    background:linear-gradient(180deg,rgba(0,245,160,.07),rgba(255,255,255,.035) 34%);
}
.vx-report-ready::before{
    content:"";
    position:absolute;
    top:-17px;
    left:50%;
    width:2px;
    height:16px;
    background:rgba(0,245,160,.42);
}
.vx-report-completion{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:18px;
    padding:12px 14px;
    border:1px solid rgba(0,245,160,.30);
    border-radius:14px;
    background:rgba(0,245,160,.08);
}
.vx-report-completion > span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--green);color:#03111c;font-size:18px;font-weight:1000}
.vx-report-completion strong,.vx-report-completion small{display:block}
.vx-report-completion small{margin-top:3px;color:var(--muted);font-size:10px}
.vx-report-stats{margin:18px 0}
.vx-report-ready .report{max-height:min(58dvh,680px);overflow:auto}
.vx-report-actions{margin-top:16px}
.vx-report-actions .btn:first-child{min-width:160px}
.vx-report-actions .btn:nth-child(2){min-width:150px}
.vx-report-document{
    margin-top:16px;
    padding:14px;
    border:1px solid var(--border);
    border-radius:16px;
    background:rgba(5,10,22,.58);
}
.vx-report-document summary{cursor:pointer;color:#fff;font-size:12px;font-weight:950}
.vx-report-document[open] summary{margin-bottom:12px}
.vx-error{display:grid;align-content:center;max-width:900px;margin:0 auto}
.vx-error h2{font-size:clamp(28px,4vw,44px)}
.vx-error-actions{margin-top:20px}
.vx-recovery-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
}
.vx-recovery-summary div{padding:14px;border:1px solid var(--border);border-radius:14px;background:rgba(5,10,22,.64)}
.vx-recovery-summary span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}
.vx-recovery-summary strong{display:block;margin-top:5px;font-size:13px}
.vx-error details{margin-top:22px;padding:14px;border:1px solid var(--border);border-radius:14px}
.vx-error pre{margin-top:10px;white-space:pre-wrap;color:var(--muted)}
.vx-projects{
    width:min(1320px,calc(100% - 34px));
    max-height:calc(100dvh - 34px);
    padding:0;
    border:1px solid var(--border);
    border-radius:22px;
    background:#09101f;
    color:#fff;
    overflow:auto;
}
.vx-projects::backdrop{background:rgba(0,3,10,.78);backdrop-filter:blur(8px)}
.vx-projects > header{
    position:sticky;
    top:0;
    z-index:4;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:18px;
    border-bottom:1px solid var(--border);
    background:rgba(9,16,31,.96);
}
.vx-projects #vxProjectsMount{padding:18px}
.vx-project-summary{
    display:grid;
    grid-template-columns:2fr repeat(3,minmax(100px,1fr));
    gap:8px;
    padding:14px 18px 0;
}
.vx-project-summary div{padding:10px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.04)}
.vx-project-summary span{display:block;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}
.vx-project-summary strong{display:block;margin-top:4px;color:#fff;font-size:12px}
.vx-projects .video-library{margin:0}
.video-experience-enhanced > .wrap > .hero{display:none}
.video-experience-enhanced .vx-shell{display:block}
@media(max-width:1050px){
    .video-auth-gate{grid-template-columns:1fr;min-height:auto}
    .video-auth-value{grid-template-columns:repeat(4,minmax(0,1fr))}
    .video-auth-value div{min-height:110px}
    .vx-start{grid-template-columns:1fr;grid-template-areas:"copy" "upload" "modes" "resume"}
    .vx-dropzone{min-height:260px}
    .vx-primary-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
    .vx-review-grid{grid-template-columns:1fr}
    .vx-evidence-column{max-height:none;overflow:visible}
    .vx-player-column video{max-height:none}
    .vx-workspace-head{margin:-14px -14px 10px}
    .vx-review-assets{margin-bottom:max(12px,env(safe-area-inset-bottom))}
}
@media(max-width:700px){
    .video-auth-gate{
        width:100%;
        padding:22px 16px max(22px,env(safe-area-inset-bottom));
        border-radius:18px;
    }
    .video-auth-copy h2{font-size:36px}
    .video-auth-actions{display:grid}
    .video-auth-actions .btn{width:100%}
    .video-auth-value{grid-template-columns:1fr 1fr}
    .video-auth-value div{min-height:104px;padding:14px}
    .vx-shell,.vx-shell *{min-width:0}
    .vx-shell{width:100%;max-width:100%}
    .vx-shell p,.vx-shell span,.vx-shell strong,.vx-shell button{overflow-wrap:anywhere}
    .vx-shell-head,.vx-view-head,.vx-workspace-head,.vx-resume,.vx-setup-footer{display:grid}
    .vx-shell-actions,.vx-workspace-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
    .vx-shell-actions .btn,.vx-workspace-actions .btn{width:100%;white-space:normal}
    .vx-steps{top:var(--vx-nav-height);grid-template-columns:repeat(5,minmax(58px,1fr));gap:3px;padding:5px;overflow-x:auto;scrollbar-width:none}
    .vx-steps::-webkit-scrollbar{display:none}
    .vx-steps > span{min-width:0;flex-direction:column;overflow:hidden;gap:2px;padding:5px 2px;font-size:9px;line-height:1.05}
    .vx-steps b{width:20px;height:20px;font-size:10px}
    .vx-steps .vx-step-label{white-space:nowrap;overflow:visible}
    .vx-step-context{display:none}
    .vx-view{min-height:calc(100dvh - 154px);padding:15px;border-radius:18px}
    .vx-start-copy h2{font-size:34px}
    .vx-dropzone{width:100%;min-height:230px;padding:22px 14px;box-sizing:border-box}
    .vx-mode-choice,.vx-primary-fields,.vx-processing-flow,.vx-processing-meta,.vx-report-stats,.vx-recovery-summary{grid-template-columns:1fr}
    .vx-project-summary{grid-template-columns:1fr 1fr;padding:10px 10px 0}
    .vx-setup-footer{position:sticky;bottom:max(6px,env(safe-area-inset-bottom))}
    .vx-setup-footer .btn{width:100%}
    .vx-review{padding:9px;padding-bottom:max(18px,env(safe-area-inset-bottom))}
    .vx-workspace-head{margin:-9px -9px 9px;padding:11px 9px}
    .vx-evidence-column .vi-workspace{display:flex;flex-direction:column;overflow:visible}
    .vx-evidence-column .vi-workspace > .vi-section-head{order:0}
    .vx-evidence-column .vi-workspace > .vi-stats{order:1}
    .vx-evidence-column .vi-workspace > .vi-review-progress{order:2}
    .vx-evidence-column .vi-workspace > .vi-review-layout{order:3}
    .vx-evidence-column .vi-workspace > .vi-review-tools{order:4}
    .vx-evidence-column .vi-workspace > .vi-halftime{order:5}
    .vx-evidence-column .vi-card-actions{
        position:sticky;
        bottom:max(6px,env(safe-area-inset-bottom));
        z-index:5;
        padding:8px;
        border:1px solid var(--border);
        border-radius:14px;
        background:rgba(5,9,20,.94);
    }
    .vx-projects{width:100%;max-height:100dvh;border-radius:0}
    .vx-projects #vxProjectsMount{padding:10px}
    .vx-report-actions .btn,.vx-error-actions .btn{flex:1 1 100%;min-height:44px}
    .vx-report-ready{min-height:auto}
    .vx-report-document{padding:11px}
}
@media(prefers-reduced-motion:reduce){
    .vx-dropzone,.vx-progress span,.vx-steps{transition:none}
}
