/* VGG design system. One theme for the authenticated shell, auth and error pages. */
:root{color-scheme:dark;--vgg-bg:#0b1018;--vgg-panel:#121a26;--vgg-raised:#192332;--vgg-border:#263345;--vgg-text:#e8edf5;--vgg-muted:#95a5ba;--vgg-accent:#77d8bc;--vgg-success:#84dfb7;--vgg-warning:#e6c17c;--vgg-error:#f1979d;--vgg-radius:8px;--vgg-control:38px;--vgg-sidebar:224px}
*{box-sizing:border-box}body.vgg-ui{margin:0;background:var(--vgg-bg);color:var(--vgg-text);font:14px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--vgg-accent);text-decoration:none}a:hover{text-decoration:underline}p{margin:0 0 16px}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.025em}h1{font-size:30px;line-height:1.2}h2{font-size:16px}h3{font-size:14px;margin:16px 0 8px}small{font-size:12px;color:var(--vgg-muted)}[hidden]{display:none!important}:focus-visible{outline:2px solid var(--vgg-accent);outline-offset:3px}svg.vgg-icon{display:inline-block;width:19px;height:19px;flex-shrink:0;vertical-align:middle}form{margin:0}button:disabled,input:disabled{opacity:.5;cursor:not-allowed}input[readonly]{color:var(--vgg-muted)}
.vgg-skip{position:fixed;left:12px;top:-80px;z-index:100;background:var(--vgg-accent);color:#0b1018;padding:10px}.vgg-skip:focus{top:12px}
.vgg-sidebar{position:fixed;inset:0 auto 0 0;width:var(--vgg-sidebar);display:flex;flex-direction:column;padding:28px 16px 16px;background:#0f1621;border-right:1px solid var(--vgg-border);z-index:40}.vgg-brand{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:27px;line-height:1;font-weight:800;letter-spacing:-1.5px;color:var(--vgg-text);text-decoration:none!important;padding:0 10px}.vgg-brand-mark{display:grid;place-items:center;width:33px;height:35px;font-size:22px;color:#0b2520;background:var(--vgg-accent);border-radius:6px;letter-spacing:-3px;padding-right:3px}.vgg-brand-caption{display:block;flex-basis:100%;margin-top:3px;font-size:8px;letter-spacing:2.4px;color:var(--vgg-muted);font-weight:600}.vgg-nav-label{margin:34px 12px 10px;color:#687d96;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:650}.vgg-nav-links{display:flex;flex-direction:column;gap:5px}.vgg-nav-links a{display:flex;align-items:center;gap:13px;color:var(--vgg-muted);padding:11px 12px;border-radius:6px;line-height:20px}.vgg-nav-links a:hover{background:#192333;text-decoration:none;color:var(--vgg-text)}.vgg-nav-links a[aria-current]{background:#1b3433;color:var(--vgg-accent);box-shadow:inset 2px 0 var(--vgg-accent)}.vgg-sidebar-bottom{margin-top:auto;padding-top:30px}.vgg-connection-summary{display:flex;flex-direction:column;gap:10px;padding:14px 10px;border-top:1px solid var(--vgg-border)}.vgg-connection-summary>span:first-child{font-size:12px;font-weight:600}.vgg-profile{display:flex;gap:10px;align-items:center;padding:15px 8px;border-top:1px solid var(--vgg-border)}.vgg-avatar{display:grid;place-items:center;width:33px;height:33px;flex-shrink:0;background:var(--vgg-raised);border:1px solid var(--vgg-border);border-radius:50%;font-weight:600}.vgg-profile div{min-width:0}.vgg-profile strong,.vgg-profile small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.vgg-profile small{font-size:10px}.vgg-logout{display:flex;gap:12px;align-items:center;width:100%;padding:10px;background:transparent;border:0;color:var(--vgg-muted);font-size:12px}.vgg-logout:hover{color:var(--vgg-text)}
.vgg-workspace{margin-left:var(--vgg-sidebar);min-height:100vh;display:flex;flex-direction:column}.vgg-topbar{height:57px;border-bottom:1px solid var(--vgg-border);padding:0 30px;display:flex;align-items:center;gap:12px}.vgg-topbar>span{color:var(--vgg-muted);font-size:9px;letter-spacing:1.8px}.vgg-topbar>a{margin-left:auto;font-size:12px;color:var(--vgg-muted);display:flex;align-items:center;gap:8px}.vgg-icon-button{border:1px solid var(--vgg-border);border-radius:6px;background:transparent;color:var(--vgg-text);padding:6px}#nav-toggle{display:none}.vgg-page{padding:32px;max-width:1800px;width:100%;margin:0 auto;flex:1;min-width:0}.vgg-page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;flex-wrap:wrap}.vgg-page-heading p:not(.vgg-eyebrow){margin:10px 0 0;color:var(--vgg-muted);font-size:13px}.vgg-eyebrow{color:var(--vgg-accent);font-size:10px;font-weight:650;letter-spacing:1.8px;margin:0 0 10px}.vgg-footer{display:flex;gap:12px;padding:20px 32px;color:#61748c;font-size:10px;letter-spacing:1px}.vgg-footer span{border-left:1px solid var(--vgg-border);padding-left:12px;letter-spacing:0}
.vgg-card{background:var(--vgg-panel);border:1px solid var(--vgg-border);border-radius:var(--vgg-radius);padding:23px;min-width:0}.vgg-card>p{color:var(--vgg-muted);font-size:13px;margin:15px 0}.vgg-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.vgg-section-heading p{color:var(--vgg-muted);font-size:12px;margin:6px 0 0}.vgg-section-heading>.vgg-icon{color:var(--vgg-muted)}.vgg-caption,.vgg-description{color:var(--vgg-muted);font-size:12px}.vgg-divider{height:1px;background:var(--vgg-border);margin:24px 0}.vgg-count{font-size:11px;color:var(--vgg-muted);font-variant-numeric:tabular-nums;border:1px solid var(--vgg-border);padding:5px 9px;border-radius:5px;white-space:nowrap}
.vgg-metrics{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:18px;margin-bottom:24px}.vgg-metric-label{color:var(--vgg-muted);font-size:12px;display:flex;align-items:center;justify-content:space-between}.vgg-metric-label svg{color:#64778e}.vgg-number{font-size:38px;font-weight:550;letter-spacing:-1.5px;line-height:1.2;margin:15px 0 9px;font-variant-numeric:tabular-nums}.vgg-metrics p{margin:0;font-size:11px;color:#8192a8}.vgg-metric-time{font-size:20px;font-weight:550;margin:25px 0 14px;font-variant-numeric:tabular-nums}.vgg-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px}.vgg-card-footer{border-top:1px solid var(--vgg-border);padding-top:18px;margin-top:20px;display:flex;align-items:center;justify-content:space-between;font-size:12px}.vgg-activity{display:flex;gap:14px;padding:22px 0 42px}.vgg-activity p{color:var(--vgg-muted);font-size:12px;margin:6px 0}.vgg-activity-marker{width:9px;height:9px;border-radius:50%;background:var(--vgg-accent);margin-top:7px;flex-shrink:0}
.vgg-status{display:inline-flex;align-items:center;gap:7px;padding:4px 8px;line-height:18px;border-radius:5px;border:1px solid var(--vgg-border);font-size:10px;font-weight:600;white-space:nowrap;width:fit-content}.vgg-status span{font-size:8px}.vgg-status-success{background:#15352d;color:var(--vgg-success);border-color:#2b5748}.vgg-status-warning{background:#302a1f;color:var(--vgg-warning);border-color:#55472b}.vgg-status-error{background:#36232c;color:var(--vgg-error);border-color:#663a49}.vgg-status-neutral{background:var(--vgg-raised);color:var(--vgg-muted)}
.vgg-button,.vgg-ui input[type=button],.vgg-ui input[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--vgg-control);padding:8px 14px;border:1px solid var(--vgg-accent);background:var(--vgg-accent);color:#112c27;font-size:12px;font-weight:650;border-radius:6px;white-space:nowrap;text-decoration:none;cursor:pointer}.vgg-button:hover{text-decoration:none;filter:brightness(1.08)}.vgg-button-secondary{background:var(--vgg-raised);border-color:#36465b;color:var(--vgg-text)}.vgg-button-danger,.vgg-ui input.vgg-button-danger{background:#35232c;border-color:#613746;color:var(--vgg-error)}.vgg-text-button{border:0;background:none;color:var(--vgg-accent);font-size:13px}.vgg-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.vgg-field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.vgg-field label,.vgg-label{font-size:12px;color:#becbdb;font-weight:500}.vgg-ui input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]),.vgg-ui select,.vgg-ui textarea{min-height:var(--vgg-control);border:1px solid #324157;border-radius:6px;background:#0e1622;color:var(--vgg-text);padding:8px 11px;max-width:100%;width:100%;outline-offset:2px}.vgg-ui input::placeholder{color:#63758c}.vgg-ui input:focus,.vgg-ui select:focus,.vgg-ui textarea:focus{border-color:var(--vgg-accent)}.vgg-ui input[type=checkbox],.vgg-ui input[type=radio],.vgg-ui input[type=range]{accent-color:var(--vgg-accent)}.vgg-check{display:flex;align-items:center;gap:8px;font-size:12px}.vgg-check input{width:15px;height:15px}.vgg-form{max-width:580px}.vgg-form .vgg-field:last-of-type{margin-bottom:24px}.vgg-form-between{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px}.vgg-inline-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.vgg-inline-form .vgg-field{flex:1;min-width:160px;margin:0}.vgg-inline-form{margin:20px 0}.vgg-ui textarea{resize:vertical;min-height:80px}
.vgg-alert,.vgg-notice{padding:14px 16px;border:1px solid #3b574f;border-left:3px solid var(--vgg-accent);border-radius:6px;background:#162922;color:#bfdacd;margin-bottom:20px;font-size:12px}.vgg-notice{border-color:#55462e;border-left-color:var(--vgg-warning);background:#2a251c;color:#e3cd9c}.vgg-alert-error{background:#30202a;border-color:#653b4b;border-left-color:var(--vgg-error);color:#f0b1b8}.vgg-alert ul{padding-left:18px;margin:8px 0 0}.vgg-empty{text-align:center;border:1px dashed var(--vgg-border);border-radius:8px;padding:40px 22px;background:#0f1824}.vgg-empty-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #33465b;background:#182637;border-radius:9px;margin:0 auto 18px;color:var(--vgg-muted)}.vgg-empty h2{font-size:16px;margin-bottom:10px}.vgg-empty p{color:var(--vgg-muted);font-size:12px;max-width:350px;margin:0 auto 22px}.vgg-empty .vgg-button{font-size:11px}.vgg-card .vgg-empty{background:transparent;border:0;padding:38px 16px}.vgg-account-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:24px}.vgg-details{display:grid;grid-template-columns:1fr;gap:5px}.vgg-details dt{color:var(--vgg-muted);font-size:11px;margin-top:14px}.vgg-details dd{margin:0;font-size:13px;overflow-wrap:anywhere}.vgg-danger-zone{border-top:1px solid var(--vgg-border);margin-top:24px;padding-top:20px}.vgg-danger-zone summary{color:var(--vgg-error);cursor:pointer;font-size:12px}.vgg-danger-zone p{margin:16px 0;color:var(--vgg-muted);font-size:12px}
/* Dense inventory: preserve legacy div-table and editable-cell selectors. */
.vgg-toolbar,.vgg-settings-filter{display:flex;align-items:center;gap:15px;margin-bottom:14px}.vgg-search{display:flex;align-items:center;gap:8px;border:1px solid #324157;background:#101925;padding:0 12px;border-radius:6px;min-width:230px;max-width:440px;flex:1;color:var(--vgg-muted)}.vgg-ui .vgg-search input{border:0!important;background:transparent!important;min-width:0;padding-left:0}.vgg-listing-help{display:flex;gap:22px;color:var(--vgg-muted);font-size:10px;margin:0 0 22px;flex-wrap:wrap}.vgg-edit-marker{color:var(--vgg-accent)}#listing{min-width:0}.table_group{border:1px solid var(--vgg-border);border-radius:7px;margin:0 0 22px;overflow-x:auto;background:var(--vgg-panel)}#listing .table{display:table;table-layout:fixed;min-width:1290px;width:100%;border-spacing:0;border-collapse:separate;font-size:11px;font-variant-numeric:tabular-nums}#listing .thead{display:table-header-group}#listing .tbody{display:table-row-group}#listing .tr{display:table-row}#listing .td,#listing .th{display:table-cell;vertical-align:middle;text-align:center;line-height:1.45;padding:9px 7px;border-bottom:1px solid #233044;position:relative;overflow-wrap:anywhere}#listing .th{background:#172131;color:#8195af;font-size:9px;font-weight:650;text-transform:uppercase;letter-spacing:.5px;padding:10px 6px}#listing .table:first-child .th{background:#172333;color:#7993ac;font-size:8px;border-bottom:0;padding-bottom:2px}#listing .table:first-child .td{background:#172333;padding-top:5px;padding-bottom:14px;font-size:12px}#listing .show_name{font-size:13px!important;font-weight:600;color:#e9f1fa;cursor:pointer;text-align:left}#listing .show_datetime{color:var(--vgg-accent)}#listing .show_name:hover{text-decoration:underline}#listing .editable{cursor:text;color:#bcebdc;background:#14252a;border-left:1px solid #263944;border-right:1px solid #263944;text-decoration:underline dotted #547b71;text-underline-offset:4px}#listing .editable:hover,#listing .editable:focus{background:#203c3a}#listing .ad:hover>.td{background-color:#1c2938}#listing .ad:hover>.editable{background-color:#244039}#listing .left{text-align:left}#listing .input{padding:5px!important;min-height:30px!important;min-width:0;font-size:11px}#listing .link{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#listing .price{font-weight:650}#listing .border-error{box-shadow:inset 0 0 0 1px var(--vgg-error)}#listing .border-success{box-shadow:inset 0 0 0 1px var(--vgg-success)}.settings-button-container{cursor:pointer}.settings-button-container-active{background:#244c42}.settings-small-button:before{content:'⚙';font-size:16px;color:var(--vgg-muted)}.listing-settings{width:32px}.number{width:105px}.section{width:110px}.count{width:55px}.url{width:90px}.price_buy,.price_min,.price_max,.price{width:78px}.timing{width:65px}.status{width:100px}.scraped_at,.status_updated_at{width:110px}.vgg-competition-button{background:transparent;color:var(--vgg-accent);border:0;font-size:18px}.vgg-table-scroll{overflow-x:auto}.vgg-data-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.vgg-data-table th{color:var(--vgg-muted);font-size:10px}.vgg-data-table th,.vgg-data-table td{padding:12px;border-bottom:1px solid var(--vgg-border)}
.vgg-modal{position:fixed;inset:0;background:#000a;z-index:80;overflow:auto;padding:30px 16px}.vgg-modal>div{background:var(--vgg-panel);border:1px solid var(--vgg-border);border-radius:8px;max-width:650px;margin:30px auto}.vgg-modal>div>div{padding:16px;border-bottom:1px solid var(--vgg-border)}.vgg-modal>div>div:first-child{display:flex;justify-content:space-between;align-items:center;font-weight:600}.vgg-modal button{border:0;background:transparent;color:var(--vgg-muted);font-size:24px}.vgg-modal p{margin:4px 0;font-size:11px}.vgg-modal>div>div:last-child{max-height:65vh;overflow:auto}.vgg-modal table{border-collapse:collapse;width:100%;font-size:12px}.vgg-modal th{text-align:left;color:var(--vgg-muted);font-size:11px;border-bottom:1px solid var(--vgg-border);padding:8px 12px}.vgg-modal th:nth-child(3){text-align:center}.vgg-modal th:nth-child(4){text-align:right}
/* Settings groups retain all original field aliases, radio IDs and range hooks. */
.vgg-admin-panel{margin-bottom:24px}.vgg-admin-panel summary{display:flex;align-items:center;gap:14px;cursor:pointer;font-weight:600}.vgg-admin-panel summary:before{content:'+';color:var(--vgg-accent)}.vgg-admin-panel[open] summary:before{content:'−'}.vgg-admin-panel[open] summary{margin-bottom:20px}.vgg-settings-filter{background:var(--vgg-panel);border:1px solid var(--vgg-border);padding:16px;border-radius:7px;margin-bottom:20px}.vgg-settings-filter .vgg-field{margin:0;min-width:180px}.vgg-settings-filter .vgg-search{align-self:end;max-width:none}.vgg-setting-group{margin-bottom:18px}.vgg-setting-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,340px);gap:30px;align-items:center;border-top:1px solid var(--vgg-border);padding:18px 0}.vgg-setting-row label{font-size:12px;color:#c9d4e1}.vgg-setting-row:last-child{padding-bottom:0}.vgg-setting-row label small{display:block;font-size:11px;margin-top:5px}.vgg-setting-control{min-width:0}.vgg-segmented{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid #344358;border-radius:6px;overflow:hidden;position:relative}.vgg-segmented input{position:absolute;opacity:0;width:1px;height:1px}.vgg-segmented label{padding:8px 16px;cursor:pointer;text-align:center;background:#131d2a;color:var(--vgg-muted);font-size:11px}.vgg-segmented input:checked+label{background:#24493f;color:var(--vgg-accent)}.vgg-segmented input:focus-visible+label{outline:2px solid var(--vgg-accent);outline-offset:-2px}.vgg-range{display:flex;gap:16px;align-items:center}.vgg-range input{width:100%}.range-counter{background:#1c293b;border:1px solid var(--vgg-border);border-radius:5px;padding:4px 10px;min-width:45px;text-align:center}.vgg-save-bar{position:sticky;bottom:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;background:#172232;border:1px solid #344358;border-radius:7px;box-shadow:0 -8px 20px #0002;margin-top:20px}.vgg-save-bar>span{color:var(--vgg-muted);font-size:11px}
/* Authentication: a restrained product identity, with no framework theme. */
.vgg-auth-shell{min-height:100vh;display:grid;grid-template-columns:44% 56%}.vgg-auth-story{display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:50px 60px;background:#12232a;border-right:1px solid #2d414a}.vgg-auth-story .vgg-brand{padding:0;font-size:32px}.vgg-auth-story h2{font-size:48px;line-height:1.15;letter-spacing:-2px;margin:20px 0}.vgg-auth-story p:not(.vgg-eyebrow){color:#a1b8c4;line-height:1.9;font-size:14px;margin-bottom:35px}.vgg-auth-feature{display:flex;align-items:center;gap:13px;margin:16px 0;color:#c6d8dc;font-size:12px}.vgg-auth-feature svg{color:var(--vgg-accent)}.vgg-auth-story>small{color:#6e8997;font-size:10px;letter-spacing:1px}.vgg-auth-main{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:50px 30px;min-width:0}.vgg-auth-panel{width:100%;max-width:370px}.vgg-auth-panel>h1{font-size:28px}.vgg-auth-panel>.vgg-description{font-size:13px;margin:12px 0 30px}.vgg-auth-form{display:flex;flex-direction:column;gap:0}.vgg-auth-form>.vgg-button{width:100%;margin-top:22px;min-height:42px}.vgg-auth-switch{text-align:center;font-size:12px;color:var(--vgg-muted);margin-top:24px}.vgg-auth-main>footer{font-size:10px;color:#6c8099;margin-top:50px;max-width:340px;text-align:center}.vgg-auth-mobile-brand{display:none}.vgg-error-page{max-width:600px;margin:0 auto;min-height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:30px}.vgg-error-page .vgg-brand{margin-bottom:60px;justify-content:center}.vgg-error-code{font-size:90px;font-weight:600;line-height:1;color:#30465d;letter-spacing:-7px;margin-bottom:28px}.vgg-error-page p{color:var(--vgg-muted);font-size:13px;margin:18px 0 28px;max-width:360px}
@media(min-width:1700px){.vgg-page{padding:40px}.vgg-auth-story{padding:60px 90px}}
@media(max-width:1100px){:root{--vgg-sidebar:200px}.vgg-page{padding:24px}.vgg-dashboard-grid,.vgg-account-grid{grid-template-columns:1fr}.vgg-auth-story{padding:40px}.vgg-auth-story h2{font-size:38px}.vgg-metrics{gap:12px}.vgg-metrics .vgg-card{padding:18px}.vgg-metric-time{font-size:16px}}
@media(max-width:760px){:root{--vgg-sidebar:224px}.vgg-sidebar{transform:translateX(-100%);box-shadow:15px 0 40px #0005}.vgg-nav-open .vgg-sidebar{transform:translateX(0)}.vgg-workspace{margin-left:0}#nav-toggle{display:inline-flex}.vgg-topbar{padding:0 18px}.vgg-topbar>span{font-size:8px}.vgg-topbar>a{font-size:11px}.vgg-page{padding:24px 16px}.vgg-page-heading{gap:14px;margin-bottom:22px}h1{font-size:25px}.vgg-metrics{grid-template-columns:1fr 1fr}.vgg-metrics .vgg-card:last-child{grid-column:1/-1}.vgg-metric-time{margin:14px 0 10px}.vgg-toolbar{flex-wrap:wrap}.vgg-toolbar .vgg-search{max-width:none;flex-basis:100%}.vgg-toolbar .vgg-caption{flex:1}.vgg-setting-row{grid-template-columns:1fr;gap:12px}.vgg-settings-filter{flex-wrap:wrap}.vgg-settings-filter .vgg-field,.vgg-settings-filter .vgg-search{width:100%;flex-basis:100%}.vgg-save-bar{padding:14px;flex-wrap:wrap}.vgg-save-bar .vgg-actions{flex:1;justify-content:end}.vgg-auth-shell{display:block}.vgg-auth-story{display:none}.vgg-auth-main{min-height:100vh;padding:35px 24px}.vgg-auth-mobile-brand{display:block;font-size:30px;font-weight:800;letter-spacing:-1px;margin-bottom:40px}.vgg-auth-panel>h1{font-size:26px}.vgg-card{padding:20px}.vgg-inline-form>button{width:100%}.vgg-footer{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


/* =========================================================
   VGG DESKTOP HOVER SIDEBAR
   ========================================================= */

@media (min-width: 761px) {

    /* Content always reserves only collapsed sidebar */
    .vgg-workspace {
        margin-left: 72px;
    }

    /* ---------- SIDEBAR ---------- */

    .vgg-sidebar {
        width: 72px;
        padding: 28px 10px 16px;
        overflow: hidden;
        white-space: nowrap;

        transition:
            width .22s ease,
            box-shadow .22s ease;

        box-shadow: none;
    }

    .vgg-sidebar:hover,
    .vgg-sidebar:focus-within {
        width: 224px;
        box-shadow: 14px 0 32px rgba(0,0,0,.32);
    }


    /* ---------- LOGO ---------- */

    .vgg-sidebar .vgg-brand {
        width: 204px;
        min-width: 204px;
        height: 66px;

        padding: 0 9px;
        display: flex;
        align-items: flex-start;
        flex-wrap: nowrap;
        gap: 10px;

        overflow: hidden;
        position: relative;
    }

    .vgg-sidebar .vgg-brand-mark {
        width: 33px;
        min-width: 33px;
        height: 35px;
        flex: 0 0 33px;
    }

    /* VGG text */
    .vgg-sidebar .vgg-brand {
        color: transparent;
    }

    .vgg-sidebar:hover .vgg-brand,
    .vgg-sidebar:focus-within .vgg-brand {
        color: var(--vgg-text);
    }

    /* But V inside green square must always remain visible */
    .vgg-sidebar .vgg-brand-mark {
        color: #0b2520;
    }

    .vgg-sidebar .vgg-brand-caption {
        position: absolute;
        left: 9px;
        top: 48px;

        opacity: 0;
        transition: opacity .12s ease;
    }

    .vgg-sidebar:hover .vgg-brand-caption,
    .vgg-sidebar:focus-within .vgg-brand-caption {
        opacity: 1;
        transition-delay: .08s;
    }


    /* ---------- SECTION TITLES ---------- */

    .vgg-sidebar .vgg-nav-label {
        opacity: 0;
        transition: opacity .12s ease;
    }

    .vgg-sidebar:hover .vgg-nav-label,
    .vgg-sidebar:focus-within .vgg-nav-label {
        opacity: 1;
        transition-delay: .08s;
    }


    /* ---------- NAVIGATION ---------- */

    .vgg-sidebar .vgg-nav-links {
        width: 204px;
        min-width: 204px;
    }

    .vgg-sidebar .vgg-nav-links a {
        width: 204px;

        display: flex;
        align-items: center;

        padding-left: 16px;
        padding-right: 12px;

        gap: 13px;

        overflow: hidden;
        white-space: nowrap;
    }

    /* Icons NEVER disappear */
    .vgg-sidebar .vgg-nav-links a svg {
        width: 19px;
        height: 19px;

        min-width: 19px;
        flex: 0 0 19px;

        opacity: 1;
    }

    /* Hide only text by clipping it outside 72px sidebar.
       No font-size:0 hacks. */


    /* ---------- BOTTOM AREA ---------- */

    .vgg-sidebar .vgg-sidebar-bottom {
        width: 204px;
        min-width: 204px;
    }

    /* Viagogo connection info hidden when collapsed */

    .vgg-sidebar .vgg-connection-summary {
        transition: opacity .12s ease;
    }

    .vgg-sidebar:not(:hover):not(:focus-within)
    .vgg-connection-summary {
        opacity: 0;
        pointer-events: none;
    }


    /* ---------- PROFILE ---------- */

    .vgg-sidebar .vgg-profile {
        width: 204px;
        padding-left: 8px;
        overflow: hidden;
    }

    .vgg-sidebar .vgg-profile > div {
        opacity: 0;
        transition: opacity .12s ease;
    }

    .vgg-sidebar:hover .vgg-profile > div,
    .vgg-sidebar:focus-within .vgg-profile > div {
        opacity: 1;
        transition-delay: .08s;
    }


    /* ---------- LOGOUT ---------- */

    .vgg-sidebar .vgg-logout {
        width: 204px;

        display: flex;
        align-items: center;

        padding-left: 10px;
        gap: 12px;

        overflow: hidden;
        white-space: nowrap;
    }

    .vgg-sidebar .vgg-logout svg {
        width: 19px;
        height: 19px;
        min-width: 19px;
        flex: 0 0 19px;
    }
}


/* Mobile keeps original slide-out navigation */
@media (max-width: 760px) {

    .vgg-workspace {
        margin-left: 0;
    }

    .vgg-sidebar {
        width: var(--vgg-sidebar);
        overflow: visible;
        white-space: normal;
    }
}

/* =========================================================
   FINAL COLLAPSED SIDEBAR TEXT MASK
   ========================================================= */

@media (min-width: 761px) {

    /* COLLAPSED: navigation links */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-nav-links a {
        width: 52px !important;
        height: 42px;
        padding: 11px 0 !important;
        gap: 0 !important;

        justify-content: center !important;

        /* move text far outside visible area */
        text-indent: -9999px;

        overflow: hidden !important;
    }

    /* Bring SVG back because it inherits text-indent */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-nav-links a svg {
        text-indent: 0;
        margin: 0 !important;
        flex: 0 0 19px;
        width: 19px;
        height: 19px;
    }


    /* COLLAPSED: logout */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout {
        width: 52px !important;
        padding: 10px 0 !important;
        gap: 0 !important;
        justify-content: center !important;

        text-indent: -9999px;
        overflow: hidden !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout svg {
        text-indent: 0;
        margin: 0 !important;
        flex: 0 0 19px;
        width: 19px;
        height: 19px;
    }


    /* COLLAPSED: logo - hide VGG text completely */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-brand {
        width: 52px !important;
        min-width: 52px !important;
        padding: 0 !important;
        gap: 0 !important;
        overflow: hidden !important;

        text-indent: -9999px;

        justify-content: center;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-brand-mark {
        text-indent: 0;
        margin: 0 !important;
        flex: 0 0 33px;
    }


    /* COLLAPSED: avatar */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-profile {
        width: 52px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        justify-content: center !important;
    }


    /* EXPANDED: restore normal links */
    .vgg-sidebar:hover .vgg-nav-links a,
    .vgg-sidebar:focus-within .vgg-nav-links a {
        width: 204px !important;
        padding: 11px 12px !important;
        gap: 13px !important;
        justify-content: flex-start !important;
        text-indent: 0;
    }

    .vgg-sidebar:hover .vgg-logout,
    .vgg-sidebar:focus-within .vgg-logout {
        width: 204px !important;
        padding: 10px !important;
        gap: 12px !important;
        justify-content: flex-start !important;
        text-indent: 0;
    }

    .vgg-sidebar:hover .vgg-brand,
    .vgg-sidebar:focus-within .vgg-brand {
        width: 204px !important;
        min-width: 204px !important;
        padding: 0 9px !important;
        gap: 10px !important;
        justify-content: flex-start !important;
        text-indent: 0;
    }
}


/* =========================================================
   VGG LISTINGS — READABILITY
   ========================================================= */

/* Основний текст таблиць */
#listing .table {
    font-size: 14px;
}

/* Заголовки колонок */
#listing .th {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .55px;
    padding-top: 11px;
    padding-bottom: 11px;
}

/* Верхні заголовки картки події */
#listing .table:first-child .th {
    font-size: 10px;
    padding-top: 10px;
    padding-bottom: 4px;
}

/* Дані події: номер, дата, місто, стадіон */
#listing .table:first-child .td {
    font-size: 14px;
    padding-top: 7px;
    padding-bottom: 15px;
}

/* Назва події */
#listing .show_name {
    font-size: 15px !important;
    font-weight: 650;
}

/* Номер події */
#listing .show_number {
    font-size: 14px;
}

/* Дата */
#listing .show_datetime {
    font-size: 14px;
    font-weight: 500;
}

/* Місто */
#listing .show_city {
    font-size: 14px;
}

/* Рядки конкретних лістингів */
#listing .ad > .td {
    font-size: 14px;
    padding-top: 11px;
    padding-bottom: 11px;
}

/* Секція */
#listing .ad > .td[id^="a_section_"] {
    font-weight: 500;
}

/* Кількість */
#listing .ad > .td[id^="a_quantity_"] {
    font-size: 14px;
    font-weight: 600;
}

/* Поточна ціна */
#listing .ad > .td[id^="a_price_"]:not([id^="a_price_buy_"]):not([id^="a_price_min_"]):not([id^="a_price_max_"]):not([id^="a_price_updated_"]) {
    font-size: 15px;
    font-weight: 650;
    color: #eef5fb;
}

/* Редаговані ціни */
#listing .editable {
    font-size: 14px;
}

/* Поле під час редагування */
#listing .input {
    font-size: 14px;
    min-height: 34px !important;
}

/* Статус та дати */
#listing .ad > .td[id^="a_status_"],
#listing .ad > .td[id^="a_scraped_at_"],
#listing .ad > .td[id^="a_price_updated_at_"] {
    font-size: 13px;
}


/* =========================================================
   LISTINGS — KEEP TEXT ON ONE LINE
   ========================================================= */

/* Верхня інформація про подію */
#listing .table:first-child .th,
#listing .table:first-child .td {
    white-space: nowrap;
}

/* Назва події — один рядок */
#listing .show_name {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Основні заголовки */
#listing .table:nth-child(2) .th {
    white-space: nowrap;
}

/* Дані лістинга */
#listing .ad > .td {
    white-space: nowrap;
}

/* Даємо таблиці трохи більше свободи */
#listing .table {
    min-width: 1420px;
}

/* Назва події отримує більше місця */
#listing .table:first-child .show_name {
    min-width: 280px;
}

/* Статус трохи ширший */
#listing .status {
    width: 130px;
}

/* Дата парсингу / зміни */
#listing .scraped_at,
#listing .status_updated_at {
    width: 125px;
}


/* =========================================================
   EVENT NAME — FULL TEXT, NO ELLIPSIS
   ========================================================= */

#listing .show_name,
#listing .table:first-child .show_name {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;

    min-width: 360px !important;
    width: 360px !important;
    max-width: none !important;
}

/* Allow event header to use available horizontal space */
#listing .table:first-child {
    min-width: 1500px !important;
}


/* =========================================================
   EVENT HEADER — COLUMN WIDTHS
   More room for event name
   ========================================================= */

/* Header */
#listing .table_group > .table:first-child .thead .tr > .th:nth-child(1) {
    width: 10% !important;
    flex: 0 0 10% !important;
}

#listing .table_group > .table:first-child .thead .tr > .th:nth-child(2) {
    width: 30% !important;
    flex: 0 0 30% !important;
}

#listing .table_group > .table:first-child .thead .tr > .th:nth-child(3) {
    width: 13% !important;
    flex: 0 0 13% !important;
}

#listing .table_group > .table:first-child .thead .tr > .th:nth-child(4) {
    width: 16% !important;
    flex: 0 0 16% !important;
}

#listing .table_group > .table:first-child .thead .tr > .th:nth-child(5) {
    width: 21% !important;
    flex: 0 0 21% !important;
}

#listing .table_group > .table:first-child .thead .tr > .th:nth-child(6) {
    width: 10% !important;
    flex: 0 0 10% !important;
}


/* Data row — same proportions */
#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(1) {
    width: 10% !important;
    flex: 0 0 10% !important;
}

#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(2) {
    width: 30% !important;
    flex: 0 0 30% !important;
}

#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(3) {
    width: 13% !important;
    flex: 0 0 13% !important;
}

#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(4) {
    width: 16% !important;
    flex: 0 0 16% !important;
}

#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(5) {
    width: 21% !important;
    flex: 0 0 21% !important;
}

#listing .table_group > .table:first-child .tbody .tr > .td:nth-child(6) {
    width: 10% !important;
    flex: 0 0 10% !important;
}


/* Full event name */
#listing .show_name {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    min-width: 0 !important;
    max-width: none !important;
}

/* =========================================================
   EVENT COLUMN — CENTER HEADER + EVENT NAME
   ========================================================= */

/* Заголовок другої колонки "Мероприятие / Подія" */
.show > .table:first-child .thead .tr > .th:nth-child(2) {
    text-align: center !important;
    justify-content: center !important;
}

/* Назва самої події */
.show > .table:first-child .tbody .tr > .show_name {
    text-align: center !important;
    justify-content: center !important;
}













/* =========================================================
   VGG SIDEBAR — CLEAN COLLAPSED BOTTOM ALIGNMENT
   ========================================================= */

@media (min-width: 761px) {

    /*
     * Do NOT change the bottom block's horizontal position.
     * It remains inside the sidebar's normal content box.
     */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-sidebar-bottom {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    /* Account row */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-profile {
        width: 100% !important;
        box-sizing: border-box !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }

    /* Bottom V */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-avatar {
        margin-left: auto !important;
        margin-right: auto !important;
        flex: 0 0 auto !important;
    }

    /* Logout form */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-sidebar-bottom form {
        width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Logout button */
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout {
        width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        padding: 12px 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout svg,
    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout i {
        margin-left: auto !important;
        margin-right: auto !important;
        flex: 0 0 auto !important;
    }
}



/* =========================================================
   COLLAPSED SIDEBAR — BOTTOM FINAL
   Same 52px geometry as navigation buttons
   ========================================================= */

@media (min-width: 761px) {

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-sidebar-bottom {
        width: 52px !important;
        min-width: 52px !important;
        margin: 0 !important;
        padding-top: 30px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-connection-summary {
        display: none !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-profile {
        width: 52px !important;
        margin: 0 !important;
        padding: 15px 0 !important;

        display: flex !important;
        justify-content: center !important;
        align-items: center !important;

        overflow: hidden !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-avatar {
        margin: 0 !important;
        flex: 0 0 33px !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-profile > div {
        display: none !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-sidebar-bottom form {
        width: 52px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout {
        width: 52px !important;
        height: 42px !important;
        margin: 0 !important;
        padding: 10px 0 !important;
        gap: 0 !important;

        display: flex !important;
        justify-content: center !important;
        align-items: center !important;

        text-indent: -9999px;
        overflow: hidden !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-logout svg {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;
        flex: 0 0 19px !important;

        margin: 0 !important;
        text-indent: 0 !important;
    }
}

/* =========================================================
   SIDEBAR BOTTOM — KEEP AT BOTTOM
   Horizontal alignment stays unchanged
   ========================================================= */

@media (min-width: 761px) {

    .vgg-sidebar-bottom {
        margin-top: auto !important;
    }

    .vgg-sidebar:not(:hover):not(:focus-within) .vgg-sidebar-bottom {
        margin-top: auto !important;
        margin-bottom: 0 !important;
    }
}
