:root{
--vh-primary:#8734ac;
--vh-primary-light:#f3e8fa;
--vh-secondary:#c360dc;
--vh-tertiary:#E689E6;
--vh-quaternary:#A63FF0;
--vh-pentary:#A85AF1;
--vh-danger:#C4252D;
--vh-danger-light:#d17075;
--vh-success:#1BD13A;
--vh-success-light:#7EE48F;
--vh-warning:#F3B918;
--vh-warning-light:#F7D16B;
--vh-radius:16px;
--vh-radius-full:999px;
    .vh-header .logo {
        margin: 0 14px;
    }
    .vh-header-user {
        margin: 0 14px;
    }
}
*{box-shadow:none !important;}
body{font-family:'Poppins',sans-serif;font-weight:400;background:#fff;color:#2b2b2b;}
img{max-width:100%;}
a{text-decoration:none;color:var(--vh-primary);} a:hover{color:var(--vh-quaternary);}

/* Stepper import multi-step */
.vh-stepper{display:flex;align-items:center;justify-content:space-between;gap:4px;}
.vh-stepper-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:.5;transition:opacity .2s ease;}
.vh-stepper-item.active{opacity:1;}
.vh-stepper-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eee;color:#666;font-weight:700;border:2px solid transparent;}
.vh-stepper-item.active .vh-stepper-dot{background:var(--vh-primary);color:#fff;}
.vh-stepper-label{font-size:.78rem;font-weight:600;}

/* Stepper modale import (settings) */
.vh-stepper .vh-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;opacity:.45;transition:opacity .2s ease;}
.vh-stepper .vh-step.active{opacity:1;}
.vh-stepper .vh-step.done .vh-step-num{background:#e8f5ee;color:var(--vh-success,#198754);}
.vh-step-num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eee;color:#666;font-weight:700;border:2px solid transparent;}
.vh-step.active .vh-step-num{background:var(--vh-primary);color:#fff;}
.vh-step-lbl{font-size:.78rem;font-weight:600;}
.vh-import-cat-scroll{background:#fafafa;}
.vh-import-cat-scroll table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:#888;}
.vh-import-guide{margin:0;padding-left:1.1rem;}
.vh-import-guide li{margin-bottom:.35rem;}
.vh-import-guide{list-style:none;padding-left:0;margin-bottom:0;}
.vh-import-guide li{padding:8px 0;border-bottom:1px solid #f0f0f0;}
.vh-import-guide li:last-child{border-bottom:none;}
.vh-import-guide i{color:var(--vh-primary);}
.vh-import-cat-scroll{max-height:260px;overflow-y:auto;}
.vh-import-required{background:rgba(135,52,172,.05);border:1px solid rgba(135,52,172,.15);border-radius:var(--vh-radius);padding:12px 16px;}
.vh-import-required ul{padding-left:1.1rem;}
.vh-import-error-list{background:rgba(196,37,45,.05);border:1px solid rgba(196,37,45,.2);border-radius:var(--vh-radius);padding:10px 16px 10px 32px;margin-bottom:0;max-height:200px;overflow-y:auto;}
.vh-import-error-list li{margin-bottom:4px;}
code{color:var(--vh-quaternary);}
.h6, h1,h2,h3,h4,h5,h6,.fw-title{font-weight:700;}
.vh-header-wrapper{position:sticky;top:16px;z-index:1030;padding:0 16px;margin-bottom:0;}
.vh-header{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(120deg, rgba(135,52,172,.06), rgba(195,96,220,.10) 60%, rgba(230,137,230,.08));border:1px solid rgba(135,52,172,.15);border-radius:var(--vh-radius-full);padding:10px 24px;backdrop-filter:blur(6px);}
.vh-header .logo img{height:60px;}
.vh-header-nav{display:flex;gap:10px;}
.vh-header-nav .btn{border-radius:var(--vh-radius-full);border:1px solid var(--vh-primary);color:var(--vh-primary);background:transparent;font-weight:600;padding:8px 18px;}
.vh-header-nav .btn:hover,.vh-header-nav .btn.active{background:var(--vh-primary);color:#fff;}
.vh-header-user{display:flex;align-items:center;gap:12px;}
.vh-header-user img.avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--vh-secondary);}
.vh-header-user .btn-dots{border:none;background:transparent;color:var(--vh-primary);font-size:1.2rem;}
.vh-layout{display:flex;gap:0;padding:0 16px;align-items:flex-start;position:relative;margin-top:40px;}
.vh-sidebar-col{flex:0 0 20%;max-width:20%;position:sticky;top:96px;height:calc(100vh - 120px);overflow-y:auto;overflow-x:hidden;padding-right:24px;border-right:1px solid #e9e9e9;transition:flex-basis .28s ease, max-width .28s ease, padding-right .28s ease, opacity .2s ease;scrollbar-width:thin;}
.vh-sidebar-col::-webkit-scrollbar{width:6px;}
.vh-sidebar-col::-webkit-scrollbar-thumb{background:#e0e0e0;border-radius:var(--vh-radius-full);}
.vh-main-col{flex:0 0 80%;max-width:80%;padding-left:24px;margin-bottom:40px;transition:flex-basis .28s ease, max-width .28s ease;}
.vh-layout.vh-sidebar-collapsed .vh-sidebar-col{flex:0 0 0%;max-width:0;padding-right:0;border-right:none;opacity:0;overflow:hidden;}
.vh-layout.vh-sidebar-collapsed .vh-main-col{flex:0 0 100%;max-width:100%;padding-left:16px;}
.vh-sidebar-toggle{position:absolute;top:8px;left:calc(20% - 16px);width:32px;height:32px;border-radius:50%;border:1px solid #e9e9e9;background:#fff;color:var(--vh-primary);display:flex;align-items:center;justify-content:center;z-index:10;transition:left .28s ease, transform .28s ease;}
.vh-sidebar-toggle:hover{border-color:var(--vh-primary);} .vh-layout.vh-sidebar-collapsed .vh-sidebar-toggle{left:0;transform:rotate(180deg);}
@media (max-width:991px){.vh-layout{flex-direction:column;}.vh-sidebar-col,.vh-main-col{flex:0 0 100%;max-width:100%;position:static;height:auto;overflow:visible;border-right:none;padding-left:0;padding-right:0;border-bottom:1px solid #e9e9e9;margin-bottom:16px;padding-bottom:16px;}.vh-sidebar-toggle{display:none;}}
.vh-sidebar{background:transparent;border:none;padding:0 12px 12px 0;}
.vh-sidebar-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.vh-sidebar-heading h6{color:var(--vh-primary);font-weight:700;margin:0;}
.vh-filter-toggle{background:transparent;border:none;color:var(--vh-primary);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;}
.vh-filter-toggle:hover{background:#f0f0f0;}
.vh-filter-toggle.active{background:var(--vh-tertiary);}
.vh-folder-search-wrap{max-height:0;overflow:hidden;transition:max-height .25s ease, margin-bottom .25s ease;margin-bottom:0;}
.vh-folder-search-wrap.vh-open{max-height:60px;margin-bottom:12px;}
.vh-folder-search{width:100%;border:1px solid var(--vh-primary);border-radius:var(--vh-radius-full);padding:8px 16px;font-family:'Poppins',sans-serif;font-size:.85rem;}
.vh-folder-search:focus{outline:none;box-shadow:none;border-color:var(--vh-quaternary);}
.vh-folder-list{list-style:none;padding:0;margin:0;}
.vh-folder-list li a{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--vh-radius);color:#2b2b2b;font-weight:500;margin-bottom:4px;}
.vh-folder-list li a:hover{background:#f0f0f0;color:#2b2b2b;}
.vh-folder-list li a.active{background:var(--vh-tertiary);color:var(--vh-primary);}
.vh-folder-list li a i{color:var(--vh-secondary);} 
.vh-folder-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 8px;border-radius:var(--vh-radius-full);font-size:.7rem;font-weight:700;line-height:1;background:#e9ecef;color:#6c757d;}
.vh-tags-btn{border:1px solid var(--vh-primary);border-radius:var(--vh-radius-full);background:#fff;color:var(--vh-primary);padding:5px 11px;font-size:.75rem;font-weight:600;}
.vh-tags-btn:hover,.vh-tags-btn.active{background:var(--vh-primary);color:#fff;}
.vh-tags-panel{border:1px solid rgba(135,52,172,.18);background:#fff;padding:10px;margin-bottom:12px;}
.vh-tags-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;background:#fff;padding:2px 0 8px;}
.vh-tags-panel-header h6{margin:0;color:var(--vh-primary);font-size:.85rem;font-weight:700;text-transform:lowercase;}
.vh-tags-panel-header p{margin:3px 0 0;color:#777;font-size:.68rem;line-height:1.35;}
.vh-tags-menu-toggle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;color:var(--vh-primary);border-radius:50%;font-size:1rem;}
.vh-tags-menu-toggle:hover{background:#f0f0f0;}
.vh-tags-panel-separator{height:1px;background:rgba(135,52,172,.15);margin:0 0 10px;}
.vh-tags-panel-list{display:flex;flex-wrap:wrap;gap:7px;}
.vh-tag-option{display:inline-flex;align-items:center;border:1px solid;border-radius:var(--vh-radius-full);padding:2px;cursor:pointer;}
.vh-tag-option input{position:absolute;opacity:0;pointer-events:none;}
.vh-tag-pill{display:inline-flex;align-items:center;border-radius:var(--vh-radius-full);padding:4px 10px;color:#fff;font-size:.72rem;font-weight:600;line-height:1.2;}
.vh-tag-option:has(input:checked){outline:2px solid var(--vh-primary);outline-offset:1px;}
.vh-tags-panel-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;}
.vh-tags-confirm,.vh-tags-clear,.vh-tags-select-all{border-radius:var(--vh-radius-full);padding:5px 10px;font-size:.72rem;font-weight:600;}
.vh-tags-select-all{border:1px solid var(--vh-primary);background:transparent;color:var(--vh-primary);}
.vh-tags-select-all:hover{background:var(--vh-primary);color:#fff;}
.vh-tags-confirm{border:1px solid var(--vh-primary);background:var(--vh-primary);color:#fff;}
.vh-tags-clear{border:1px solid #bbb;background:transparent;color:#666;}
.vh-folder-grouped{display:flex;flex-direction:column;gap:10px;}
.vh-tag-group-card{position:relative;background:#fff;border:2px solid;border-radius:var(--vh-radius);padding:30px 8px 7px;}
.vh-tag-group-title{position:absolute;top:7px;right:7px;}
.vh-tag-group-list{list-style:none;padding:0;margin:0;}
.vh-tag-group-list li a{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 7px;border-radius:10px;color:#2b2b2b;font-size:.85rem;font-weight:500;}
.vh-tag-group-list li a:hover{background:#f0f0f0;color:#2b2b2b;}
.vh-tag-select-group .btn-vh-tag-toggle{flex:1;text-align:left;border:1px solid var(--vh-primary);color:var(--vh-primary);}
.vh-tag-select-group .btn-vh-tag-new{border:1px solid var(--vh-primary);background:var(--vh-primary);color:#fff;}
.vh-tag-select-group{overflow:visible!important;position:relative;}
.vh-tag-dropdown{padding:6px;z-index:1080;min-width:220px;max-height:240px;overflow-y:auto;}
.vh-tag-dropdown .dropdown-item{border-radius:10px;}
.vh-tag-area{margin-bottom:8px;}
.vh-btn-new-folder{width:100%;border-radius:var(--vh-radius-full);border:1px solid var(--vh-primary);color:var(--vh-primary);background:transparent;font-weight:600;padding:10px;margin-top:12px;} .vh-btn-new-folder:hover{background:var(--vh-primary);color:#fff;}
.vh-accordion-bounded{max-width:100%;margin-left:auto;margin-right:auto;}
.vh-accordion .accordion-item{border:1px solid rgba(135,52,172,.12);border-radius:var(--vh-radius)!important;overflow:hidden;margin-bottom:16px;}
.vh-accordion .accordion-button{font-weight:600;color:var(--vh-primary);background:#fdfaff;}
.vh-accordion .accordion-button:not(.collapsed){color:#fff;background:var(--vh-primary);} .vh-accordion .accordion-button:focus{box-shadow:none;}
.vh-bk-table{width:100%;border-collapse:collapse;} .vh-bk-table th{text-align:left;font-size:.8rem;color:var(--vh-primary);text-transform:uppercase;font-weight:600;padding:8px 12px;} .vh-bk-table td{padding:10px 12px;border-top:1px solid rgba(135,52,172,.08);vertical-align:middle;} .vh-bk-table tr:hover td{background:#fdf6ff;}
.vh-bk-cat-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(135,52,172,.08);color:var(--vh-primary);border:1px solid rgba(135,52,172,.10);border-radius:var(--vh-radius-full);padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .2s ease;}
.vh-bk-cat-link{text-decoration:none;}
.vh-bk-cat-link:hover{background:rgba(135,52,172,.14);color:var(--vh-quaternary);border-color:rgba(135,52,172,.18);}
.vh-bk-actions-cell{text-align:right;white-space:nowrap;width:1%;}
.vh-bk-table .vh-delete-bk{width:30px;height:30px;}
.vh-bk-favicon{width:16px;height:16px;border-radius:4px;object-fit:cover;margin-right:8px;vertical-align:middle;}
.vh-bk-favicon-fallback{font-size:16px;color:var(--vh-secondary);margin-right:8px;vertical-align:middle;}
.vh-bk-mobile-list{padding:0;}
.vh-bk-mobile-row{background:#fff;border:1px solid rgba(135,52,172,.08);border-radius:var(--vh-radius);margin-bottom:12px;padding:12px 16px;transition:box-shadow .2s ease;}
.vh-bk-mobile-row:hover{box-shadow:0 4px 12px rgba(135,52,172,.08);}
.vh-bk-mobile-row .vh-bk-cat-badge{font-size:.7rem;padding:3px 8px;}
.vh-bk-mobile-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#2b2b2b;font-weight:500;text-decoration:none;margin-left:8px;}
.vh-bk-mobile-title:hover{color:var(--vh-primary);text-decoration:underline;}
@media (max-width: 991px){
  .vh-bk-mobile-row{padding:10px 12px;}
  .vh-bk-mobile-title{font-size:.9rem;}
  .vh-bk-mobile-row .text-muted.small{font-size:.7rem;}
}
.vh-add-widget{background:linear-gradient(120deg, rgba(135,52,172,.05), rgba(163,63,240,.08));border:1px solid rgba(135,52,172,.15);border-radius:var(--vh-radius);padding:28px;text-align:center;}
.vh-add-widget h5{color:var(--vh-primary);font-weight:700;margin-bottom:16px;}
.vh-add-widget .input-group{border:1px solid var(--vh-primary);border-radius:var(--vh-radius-full);overflow:hidden;background:#fff;}
.vh-add-widget .input-group input{border:none;padding:12px 20px;font-family:'Poppins';}
.vh-add-widget .input-group input:focus{box-shadow:none;outline:none;}
.vh-add-widget .btn-add{background:var(--vh-primary);color:#fff;border:none;padding:0 26px;font-weight:600;min-width:120px;display:flex;align-items:center;justify-content:center;gap:8px;}
.vh-add-widget .btn-add:hover{background:var(--vh-quaternary);}
.vh-add-widget .btn-add:disabled{opacity:.5;cursor:not-allowed;}
.vh-quickadd-meta{display:flex;flex-direction:column;align-items:center;text-align:center;padding:15px 10px;margin-top:10px;background:#fdfaff;border-radius:var(--vh-radius);border:1px solid rgba(135,52,172,.12);}
.vh-quickadd-favicon{width:48px;height:48px;object-fit:contain;margin-bottom:10px;border-radius:8px;background:#fff;padding:4px;}
.vh-quickadd-title{font-weight:600;font-size:0.95rem;color:#2b2b2b;line-height:1.4;word-break:break-word;max-width:100%;margin-bottom:12px;display:block;}
.vh-quickadd-title-input{width:100% !important;padding:10px 16px;border:2px solid var(--vh-primary);border-radius:20px;font-size:0.95rem;font-weight:600;text-align:center;color:#2b2b2b;background:#fff;transition:all 0.3s ease;margin-bottom:12px;outline:none;}
.vh-quickadd-title-input:focus{box-shadow:0 0 0 3px rgba(135,52,172,0.2) !important;border-color:var(--vh-quaternary);}
.vh-quickadd-actions{display:flex;gap:10px;justify-content:center;align-items:center;}
.vh-quickadd-category-row{margin-top:14px;display:flex;justify-content:center;}
.vh-pill{display:inline-flex;align-items:center;gap:8px;border:none;border-radius:var(--vh-radius-full);padding:10px 16px;font-weight:700;line-height:1;}
.vh-pill-alert{background:var(--vh-warning-light);color:#6b5306;}
.vh-pill-success{background:var(--vh-success-light);color:#145a24;}
.vh-pill-remove{margin-left:8px;}
.vh-pill-success .vh-pill-remove{color:#145a24;}
.vh-pill-alert .vh-pill-remove{display:none;}
.vh-quickadd-alert{margin-bottom:12px;border-radius:var(--vh-radius);padding:10px 14px;font-size:.88rem;}

.vh-clipboard-suggestion{animation:vhFadeIn .3s ease;}
.vh-clipboard-hint{background:var(--vh-primary-light, #f3e8fa);border:1px solid var(--vh-primary, #8734ac);border-radius:12px;padding:10px 14px;font-size:.85rem;color:#2b2b2b;line-height:1.5;}
.vh-clipboard-hint code{background:rgba(135,52,172,.1);padding:1px 6px;border-radius:6px;color:var(--vh-primary);font-size:.82rem;}
@keyframes vhFadeIn{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}

.vh-token-steps{line-height:1.5;}
.vh-token-steps li{margin-bottom:4px;}
.vh-category-select-list{list-style:none;padding:0;margin:0;max-height:360px;overflow:auto;}
.vh-category-select-list li{margin-bottom:8px;}
.vh-category-option{width:100%;border:0px solid var(--vh-primary);background:#fff;border-radius:var(--vh-radius-full);padding:10px 14px;text-align:left;font-weight:600;color:#2b2b2b;}
.vh-category-option:hover,.vh-category-option.active{background:var(--vh-tertiary);color:var(--vh-primary);}
.modal-content{background:#fff;border:none;border-radius:var(--vh-radius);padding:24px;}
.modal .modal-title{font-weight:700;color:var(--vh-primary);width:100%;}
.modal-header,.modal-footer{border:none;padding:0 0 16px 0;}.modal-body{padding:0 0 16px 0;}
.modal-footer{display:flex;gap:10px;}.modal-footer .btn{flex:1;border-radius:var(--vh-radius-full);padding:10px;}
.modal-backdrop.show{opacity:.55;}
.form-control,.form-select{border:1px solid var(--vh-primary);border-radius:var(--vh-radius);padding:10px 16px;}
.form-control:focus,.form-select:focus{border-color:var(--vh-quaternary);box-shadow:none;}
.btn-vh-primary{background:var(--vh-primary);color:#fff;border:none;border-radius:var(--vh-radius-full);font-weight:600;padding:10px 24px;}
.btn-vh-primary:hover{background:var(--vh-quaternary);color:#fff;}
.btn-vh-outline{background:transparent;color:var(--vh-primary);border:1px solid var(--vh-primary);border-radius:var(--vh-radius-full);font-weight:600;padding:10px 24px;}
.btn-vh-outline:hover{background:var(--vh-primary);color:#fff;}
.btn-vh-danger{background:var(--vh-danger);color:#fff;border:none;border-radius:var(--vh-radius-full);font-weight:600;padding:10px 24px;}
.btn-vh-danger:hover{background:#a01e24;color:#fff;}
.input-group-text{background:var(--vh-bg);color:var(--vh-secondary);font-weight:500;}
.alert-vh-danger{background:var(--vh-danger-light);color:#fff;border:none;border-radius:var(--vh-radius);} .alert-vh-success{background:var(--vh-success-light);color:#1a5c25;border:none;border-radius:var(--vh-radius);} .alert-vh-warning{background:var(--vh-warning-light);color:#6b5306;border:none;border-radius:var(--vh-radius);}

/* ===== Toast notifiche (alto a destra) ===== */
#vhToastContainer{position:fixed;top:1rem;right:1rem;z-index:1090;display:flex;flex-direction:column;gap:.5rem;max-width:min(92vw,360px);pointer-events:none;}
.vh-toast{pointer-events:auto;display:flex;align-items:center;gap:.6rem;background:#fff;color:#212529;border-radius:50rem;box-shadow:0 .5rem 1.25rem rgba(31,18,46,.14);padding:.6rem .7rem .6rem .9rem;font-size:.9rem;line-height:1.3;animation:vhToastIn .25s ease both;}
.vh-toast.vh-toast-hide{opacity:0;transform:translateX(24px);transition:opacity .3s ease,transform .3s ease;}
.vh-toast-icon{flex:0 0 auto;font-size:1.2rem;line-height:1;}
.vh-toast-icon-success{color:var(--vh-success);}
.vh-toast-icon-error{color:var(--vh-danger);}
.vh-toast-msg{flex:1 1 auto;min-width:0;word-break:break-word;}
.vh-toast-close{flex:0 0 auto;border:none;background:transparent;color:#9aa0a6;font-size:.85rem;line-height:1;padding:.25rem .35rem;cursor:pointer;border-radius:50%;transition:color .15s ease,background .15s ease;}
.vh-toast-close:hover{color:#495057;background:rgba(0,0,0,.05);}
@keyframes vhToastIn{from{opacity:0;transform:translateX(24px);}to{opacity:1;transform:translateX(0);}}
@media (max-width:991px){#vhToastContainer{left:1rem;right:1rem;max-width:none;}}
.vh-footer{width:100%;background:#fdfaff;border-top:1px solid rgba(135,52,172,.12);padding:48px 16px 24px;margin-top:64px;}
.vh-footer h6{color:var(--vh-primary);font-weight:700;margin-bottom:16px;}
.vh-footer a{color:#555;display:block;margin-bottom:8px;font-size:.9rem;}
.vh-footer a:hover{color:var(--vh-primary);} .vh-footer-social{display:flex;gap:12px;justify-content:flex-end;} .vh-footer-social a{flex:0 0 auto;width:38px;height:38px;aspect-ratio:1/1;box-sizing:border-box;border-radius:50%;overflow:hidden;padding:0;border:1px solid var(--vh-primary);display:flex;align-items:center;justify-content:center;color:var(--vh-primary);} .vh-footer-social a:hover{background:var(--vh-primary);color:#fff;}
.vh-footer-bottom{text-align:center;font-size:.8rem;color:#999;margin-top:32px;}
.vh-auth-body{background:#fff;min-height:100vh;display:flex;flex-direction:column;}
.vh-auth-header{background:#fff;width:100%;}
.vh-auth-header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:14px 24px;}
.vh-auth-header-logo img{height:100px;}
.vh-auth-header-actions{display:flex;align-items:center;gap:12px;}
.vh-auth-translate{border:none;background:transparent;color:var(--vh-primary);font-size:1.6rem;line-height:1;padding:6px 8px;border-radius:var(--vh-radius-full);}
.vh-auth-translate:hover{background:rgba(135,52,172,.08);color:var(--vh-quaternary);}
.vh-auth-header .dropdown-item.active{background:var(--vh-primary);color:#fff;}
.vh-auth-wrapper{flex:1;width:100%;padding:64px 24px;display:flex;justify-content:center;align-items:center;}
.vh-auth-card{width:100%;max-width:420px;background:#fff;border:1px solid rgba(135,52,172,.12);border-radius:var(--vh-radius);padding:40px 36px;}
.vh-auth-logo{text-align:center;margin-bottom:24px;}.vh-auth-logo img{height:44px;}
.vh-auth-title{text-align:center;font-weight:700;color:var(--vh-primary);margin-bottom:4px;}
.vh-auth-subtitle{text-align:center;color:#888;font-size:.9rem;margin-bottom:28px;}
.vh-auth-alert{padding:10px 16px;font-size:.85rem;margin-bottom:16px;text-align:center;}
.vh-input-icon{position:relative;display:flex;align-items:center;border:1px solid var(--vh-primary);border-radius:var(--vh-radius);overflow:hidden;}
.vh-input-icon i{padding-left:16px;color:var(--vh-primary);} .vh-input-icon .form-control{border:none;border-radius:0;} .vh-input-icon .form-control:focus{box-shadow:none;}
.vh-toggle-pw{background:none;border:none;padding:0 16px;color:#999;} .vh-toggle-pw:hover{color:var(--vh-primary);}
.form-check-input:checked{background-color:var(--vh-primary);border-color:var(--vh-primary);}
.vh-auth-footer-text{text-align:center;font-size:.9rem;color:#666;margin-top:20px;margin-bottom:0;}
.vh-auth-link{color:var(--vh-primary);text-decoration:none;}
.vh-auth-link:hover{text-decoration:underline;}
.vh-field-soft{border:none !important;background:rgba(135,52,172,.08) !important;}
.vh-input-icon.vh-field-soft {
    border: none !important;
    background: rgba(135, 52, 172, .08) !important;
}

.vh-input-icon.vh-field-soft .form-control,
.vh-input-icon.vh-field-soft .form-control:focus,
.vh-input-icon.vh-field-soft .form-control[readonly] {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

@media (max-width:991px){.vh-auth-card{padding:32px 24px;}}

/* ===== Signup: check password progressivi ===== */
.vh-pw-check{display:flex;align-items:center;gap:6px;color:#aaa;font-size:.8rem;margin-bottom:2px;transition:color .2s ease;}
.vh-pw-check i{font-size:.7rem;}
.vh-pw-check.valid{color:var(--vh-success);}
.vh-pw-check.valid i::before{content:'\F26A';} /* bi-check-circle-fill */

/* ===== Signup: bottone disattivato grigio ===== */
#btnRegisterSubmit:disabled{
  background:#cfcfcf !important;
  color:#fff !important;
  cursor:not-allowed;
  opacity:1;
}
#btnRegisterSubmit:disabled:hover{background:#cfcfcf !important;}

/* =========================================
   QUICKADD WIDGET - Icon Buttons Round
   ========================================= */
.vh-btn-icon-round {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid rgba(135,52,172,.15);
    background: #fff;
    color: var(--vh-secondary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.25s ease;
    padding: 0;
    font-size: 0.9rem;
    flex-shrink: 0;
}
.vh-btn-icon-round:hover {
    transform: scale(1.1);
    box-shadow: 0 3px 10px rgba(135,52,172,.12) !important;
}
.vh-btn-edit:hover {
    background: var(--vh-primary);
    border-color: var(--vh-primary);
    color: #fff;
}
.vh-btn-confirm:hover {
    background: var(--vh-success);
    border-color: var(--vh-success);
    color: #fff;
}
.vh-btn-clear:hover {
    background: var(--vh-danger);
    border-color: var(--vh-danger);
    color: #fff;
}

/* =========================================
   CATEGORY PAGE - Header & Cards
   ========================================= */
.vh-category-header {
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid rgba(135,52,172,.12);
}
.vh-category-header-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.vh-category-header-row h2 {
    margin: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    color: var(--vh-primary);
    font-weight: 700;
    font-size: 1.6rem;
}
.vh-category-tag-pill {
    display: inline-flex;
    align-items: center;
    border-radius: var(--vh-radius-full);
    background: #e9ecef;
    color: #6c757d;
    padding: 5px 11px;
    font-size: .72rem;
    font-weight: 600;
    line-height: 1;
}
.vh-category-actions {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}
.vh-category-actions .vh-action-btn {
    width: 36px;
    height: 36px;
    font-size: 0.95rem;
}
.vh-category-actions .vh-edit-cat:hover {
    background: var(--vh-primary);
    border-color: var(--vh-primary);
    color: #fff;
}
.vh-category-actions .vh-delete-cat:hover {
    background: var(--vh-danger);
    border-color: var(--vh-danger);
    color: #fff;
}
@media (max-width: 991px) {
    .vh-category-header-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    .vh-category-actions {
        align-self: flex-end;
    }
}

/* Mobile & Tablet specific styles */
@media (max-width: 991px) {
    /* Layout: padding laterale azzerato per tutta la larghezza */
    .vh-layout {
        padding: 0 !important;
        margin-top: 16px !important;
    }

    /* Nascondi toggle sidebar */
    .vh-sidebar-toggle {
        display: none !important;
    }

    /* Hide sidebar on mobile & tablet */
    .vh-sidebar-col {
        display: none;
    }
    
    /* main-col LARGO 100% CON MARGINE DAL BORDO (padding 16px sx/dx) */
    .vh-main-col {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 16px !important;
        margin: 0 !important;
        border: none !important;
        border-bottom: none !important;
        box-sizing: border-box !important;
    }

    /* Tutti i widget interni MANTENGONO border-radius e si estendono al 100% */
    .vh-add-widget,
    .vh-accordion-bounded,
    .vh-bk-mobile-list,
    .vh-category-header,
    .vh-profile-header,
    .vh-profile-section,
    .vh-main-col > * {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    
    /* Header modifications for mobile & tablet - totally white */
    .vh-header-wrapper {
        position: sticky !important;
        top: 0 !important;
        z-index: 1030 !important;
        background-color: #fff !important;
        background-image: none !important;
        backdrop-filter: none !important;
        border: none !important;
        border-top: none !important;
        border-left: none !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(135,52,172,.12) !important;
        border-radius: 0 !important;
        padding: 8px 12px !important;
        margin-bottom: 0 !important;
    }
    
    .vh-header {
        background: transparent !important;
        border: none !important;
        border-radius: 0 !important;
        padding: 2px 0 !important;
    }
    
    /* Hide navigation menu */
    .vh-header-nav {
        display: none !important;
    }
    
    /* Ensure logo and avatar are properly aligned */
    .vh-header .logo {
        flex-shrink: 0;
    }
    
    .vh-header-user {
        margin-left: auto;
        flex-shrink: 0;
    }
    
    /* Adjust sizes for mobile */
    .vh-header .logo img {
        height: 50px;
    }
    
    .vh-header-user img.avatar {
        width: 36px;
        height: 36px;
        border-width: 2px;
    }

    .vh-add-widget .btn-add {
        width: 44px !important;
        min-width: 44px !important;
        height: 44px !important;
        padding: 0 !important;
        border-radius: 50% !important;
        border: 2px solid var(--vh-primary) !important;
        background: var(--vh-primary) !important;
    }
    .vh-add-widget .btn-add .btn-label {
        margin: 0 auto;
    }
    .vh-add-widget .btn-add .btn-label i {
        margin-right: 0 !important;
    }
    .vh-add-widget .btn-add .btn-label {
        font-size: 0 !important;
    }
    .vh-add-widget .btn-add .btn-label i {
        font-size: 1.2rem !important;
    }
    .vh-add-widget .input-group {
        align-items: center;
    }
    .vh-add-widget .btn-add {
        margin-right: 6px;
        align-self: center !important;
    }
    .vh-add-widget .input-group > .form-control {
        height: 100%;
    }
}

.vh-bookmark-card {
    border: none !important;
    box-shadow: 0 2px 8px rgba(135,52,172,.06) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    background: #fff;
    border-radius: var(--vh-radius);
    padding: 1.25rem;
    height: 100%;
}
.vh-bookmark-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(135,52,172,.12) !important;
}
.vh-bookmark-card-row {
    display: flex;
    align-items: center;
    gap: 16px;
}
.vh-bookmark-favicon-box {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fdfaff;
    border-radius: 10px;
    border: 1px solid rgba(135,52,172,.10);
}
.vh-bookmark-favicon-box img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    border-radius: 4px;
}
.vh-bookmark-favicon-box .bi-globe {
    font-size: 1.2rem;
    color: var(--vh-secondary);
}
.vh-bookmark-card-body {
    flex-grow: 1;
    min-width: 0;
}
.vh-bookmark-title-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.vh-bookmark-title {
    color: var(--vh-primary) !important;
    font-weight: 600;
    font-size: 1.1rem;
    margin-bottom: 0.5rem;
    text-decoration: none;
    display: block;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.vh-bookmark-title:hover {
    color: var(--vh-quaternary) !important;
    text-decoration: underline;
}
.vh-bookmark-title-input {
    font-weight: 600;
    color: #2b2b2b;
    display: block;
    margin-bottom: 0.5rem;
    width: 100%;
    padding: 0.25rem;
    border: 1px solid #ddd;
    border-radius: 4px;
}
.vh-bookmark-title-actions {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
.vh-bookmark-title-actions .vh-btn-icon-round {
    padding: 0.25rem;
    margin-left: 0.5rem;
}

/* Mobile & Tablet: la modifica titolo resta contenuta nella card */
@media (max-width: 991px) {
    .vh-bookmark-title-container {
        flex-wrap: nowrap;
        min-width: 0;
    }
    .vh-bookmark-title-container input[type="text"] {
        flex: 1 1 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    .vh-bookmark-title-container .vh-btn-icon-round {
        flex-shrink: 0;
    }
}

/* Mobile & Tablet: card bookmark larga quanto il widget Quick Add */
@media (max-width: 991px) {
    #vhBookmarksList.row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    #vhBookmarksList.row > [class*="col-"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}
.vh-bookmark-domain {
    font-size: 0.8rem;
    color: #adb5bd;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 4px;
}
.vh-bookmark-date {
    font-size: 0.75rem;
    color: #6c757d;
    display: flex;
    align-items: center;
    gap: 6px;
}

/* =========================================
   BOOKMARK CARD ACTIONS (Star + Delete)
   ========================================= */
.vh-bookmark-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(135,52,172,.08);
}
.vh-action-btn {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid rgba(135,52,172,.15);
    background: #fff;
    color: var(--vh-secondary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.9rem;
    padding: 0;
    line-height: 1;
}
.vh-action-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 3px 10px rgba(135,52,172,.12) !important;
}
.vh-action-btn.vh-star-active {
    color : var(--vh-warning);
border-color : var(--vh-warning);
background : rgba ( 243 , 185 , 24 , .08 );
}
.vh-action-btn.vh-star-active:hover {
background : var(--vh-warning);
color : #fff ;
border-color : var(--vh-warning);   
}
.vh-action-btn.vh-delete-bk:hover {
    color: #fff;
    background: var(--vh-danger);
    border-color: var(--vh-danger);
}

/* =========================================
   AI LINKS - bottone con bordo sfumato AI
   ========================================= */
.vh-action-btn.vh-ai-links {
    border: 2px solid transparent;
    border-radius: 50%;
    background-image: linear-gradient(#fff, #fff), 
                      linear-gradient(135deg, #ff2bd6 0%, #b026ff 25%, #ff5ea8 45%, #ffd23f 70%, #2b8bff 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
    color: #b026ff;
    position: relative;
}
.vh-action-btn.vh-ai-links:hover {
    color: #fff;
    background-image: linear-gradient(135deg, #ff2bd6 0%, #b026ff 25%, #ff5ea8 45%, #ffd23f 70%, #2b8bff 100%);
    box-shadow: 0 0 10px rgba(176,38,255,.35) !important;
}

.vh-ai-modal {
    border: 2px solid transparent;
    border-radius: var(--vh-radius);
    background-image: linear-gradient(#fff, #fff), 
                      linear-gradient(135deg, #ff2bd6 0%, #b026ff 25%, #ff5ea8 45%, #ffd23f 70%, #2b8bff 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
}
.vh-ai-modal-header {
    background: linear-gradient(135deg, rgba(255,43,214,.12), rgba(176,38,255,.16) 45%, rgba(43,139,255,.12));
    border-bottom: 1px solid rgba(176,38,255,.2);
}
.vh-ai-modal-header .modal-title {
    background: linear-gradient(135deg, #ff2bd6, #b026ff 45%, #2b8bff);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
}
#modalAiLinks .modal-title {
    background: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-text-fill-color: #000;
    color: #000;
    font-weight: 700;
}
.vh-ai-disclaimer {
    border-left: 3px solid #b026ff;
    padding-left: 8px;
}
.vh-ai-link-item {
    border: 1px solid rgba(176,38,255,.18);
    margin-bottom: 8px;
    border-radius: 12px;
    transition: border-color .15s ease, background .15s ease;
}
.vh-ai-link-item:hover {
    background: linear-gradient(120deg, rgba(255,43,214,.06), rgba(43,139,255,.06));
    border-color: rgba(176,38,255,.45);
}
.vh-ai-link {
    display: flex;
    align-items: center;
    font-weight: 600;
    color: var(--vh-primary);
}
.vh-ai-link .bi-stars {
    color: #b026ff;
}
.vh-ai-link-host {
    margin-top: 2px;
}
.vh-ai-spinner {
    width: 34px;
    height: 34px;
    margin: 0 auto;
    border-radius: 50%;
    border: 3px solid rgba(176,38,255,.2);
    border-top-color: #ff2bd6;
    border-right-color: #2b8bff;
    animation: vh-ai-spin .8s linear infinite;
}
@keyframes vh-ai-spin {
    to { transform: rotate(360deg); }
}

/* =========================================
   FOOTER STICKY - Globale
   ========================================= */
html, body {
    height: 100%;
    margin: 0;
}
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
main.vh-layout {
    flex: 1 0 auto;
}
footer, .vh-footer {
    flex-shrink: 0;
    margin-top: auto;
}

/* =========================================
   HEADER PUBBLICO (share.php) + CONDIVISIONE
   ========================================= */
.vh-header-public-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}
.vh-layout-public {
    display: block;
    padding: 0 16px;
    margin-top: 40px;
}
.vh-main-col-public {
    max-width: 1100px;
    margin: 0 auto;
    padding-left: 0;
    margin-bottom: 80px;
}
.vh-share-eye {
    font-size: 1.2rem;
    color: var(--vh-primary);
    cursor: pointer;
    margin-left: 10px;
}
.vh-share-eye:hover {
    opacity: .65;
}
.vh-category-actions .vh-share-cat:hover {
    background: var(--vh-primary);
    border-color: var(--vh-primary);
    color: #fff;
}
.vh-cat-share-eye {
    color: var(--vh-success);
    border-color: var(--vh-success);
}
.vh-cat-share-eye:hover {
    background: var(--vh-success);
    border-color: var(--vh-success);
    color: #fff;
}


/* ===== PROFILE PAGE ===== */
.vh-profile-header { margin-top: 8px; }
.vh-profile-header .d-flex { text-align: left; }
.vh-profile-avatar { width: 92px; height: 92px; border-radius: 50%; object-fit: cover; border: 3px solid var(--vh-secondary); box-shadow: 0 4px 16px rgba(135,52,172,.18) !important; }
.vh-profile-id { font-size: .82rem; color: #9aa0a6; font-weight: 400; margin-top: 4px; letter-spacing: .2px; }
.vh-profile-section { margin-top: 28px; }
.vh-profile-section-title { font-size: 1.60rem; font-weight: 600; color: var(--vh-primary); text-transform: uppercase; letter-spacing: .6px; margin-bottom: 14px;margin-top: 14px; opacity: .85; }
.vh-profile-card { cursor: pointer; transition: transform .2s ease, box-shadow .2s ease; }
.vh-profile-card:hover { transform: translateY(-3px); box-shadow: 0 6px 20px rgba(135,52,172,.16) !important; }
.vh-profile-card-row { display: flex; align-items: center; gap: 16px; }
.vh-profile-card-icon { font-size: 1.6rem; color: var(--vh-primary); flex-shrink: 0; width: 44px; text-align: center; }
.vh-profile-card .vh-danger-icon { color: var(--vh-danger); }
.vh-profile-card .vh-danger-text { color: var(--vh-danger); }
.vh-profile-link { text-decoration: none; color: inherit; display: block; }
.vh-profile-link:hover { color: inherit; }
.vh-avatar-preview { width: 90px; height: 90px; border-radius: 50%; object-fit: cover; border: 2px solid var(--vh-secondary); }
.vh-stats-list .list-group-item { background: transparent; border-color: rgba(135,52,172,.10); padding: 12px 4px; }
.vh-stats-list .list-group-item i { color: var(--vh-primary); }

/* Card piu delicate (profilo) */
.vh-profile-card-soft { box-shadow: 0 1px 6px rgba(135,52,172,.05) !important; padding: 1rem 1.15rem; border-radius: calc(var(--vh-radius) - 2px); }
.vh-profile-card-soft h5 { font-size: .98rem; font-weight: 500; letter-spacing: .2px; }
.vh-profile-card-soft .vh-profile-card-icon { font-size: 1.4rem; width: 40px; opacity: .9; }
.vh-profile-card-soft:hover { box-shadow: 0 4px 14px rgba(135,52,172,.10) !important; }

/* Lista VhumoID a colonna singola */
.vh-vhumoid-list .list-group-item { background: transparent; border-color: rgba(135,52,172,.10); padding: 12px 4px; font-weight: 400; }
.vh-vhumoid-list .list-group-item i { color: var(--vh-primary); }
.vh-vhumoid-list .list-group-item b { font-weight: 500; }

/* Menu a tendina avatar con anteprima */
#vhAvatarSelect { padding-left: 44px; background-repeat: no-repeat; background-position: 8px center; background-size: 28px 28px; border-radius: 50px; }

.vh-avatar-menu {
  max-height: 360px;
  overflow-y: auto;
  overflow-x: hidden;
}
.vh-avatar-menu::-webkit-scrollbar { width: 6px; }
.vh-avatar-menu::-webkit-scrollbar-thumb { background: #e0e0e0; border-radius: var(--vh-radius-full); }
.vh-avatar-menu::-webkit-scrollbar-track { background: transparent; }


/* --- Video Tutorial cards --- */
.vh-tutorial-card {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 1.6rem 1.5rem 1.25rem;
    cursor: pointer;
    border-radius: 20px;
    background: #fff;
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}
.vh-tutorial-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 28px rgba(135,52,172,.14) !important;
}
.vh-tutorial-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.1rem;
}
.vh-tutorial-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    background: rgba(135,52,172,.08);
    color: var(--vh-primary);
}
.vh-tutorial-card.vh-panel-success .vh-tutorial-icon {
    background: rgba(27,209,58,.10);
    color: #15a82d;
}
.vh-tutorial-card.vh-panel-warning .vh-tutorial-icon {
    background: rgba(243,185,24,.14);
    color: #c99400;
}
.vh-tutorial-duration {
    font-size: .78rem;
    font-weight: 600;
    color: #8a8a8a;
    background: #f6f1fa;
    padding: 5px 12px;
    border-radius: 999px;
    letter-spacing: .3px;
}
.vh-tutorial-title {
    font-size: 1.18rem;
    font-weight: 700;
    color: #2b2b2b;
    margin: 0 0 .65rem;
    line-height: 1.35;
}
.vh-tutorial-desc {
    font-size: .92rem;
    font-weight: 400;
    color: #6f6f6f;
    line-height: 1.6;
    margin: 0 0 1.2rem;
    flex-grow: 1;
}
.vh-tutorial-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: .9rem;
    border-top: 1px solid rgba(135,52,172,.10);
}

.vh-btn-search{width:40px;height:40px;border-radius:50%;border:1px solid var(--vh-primary);color:var(--vh-primary);background:transparent;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;}
.vh-btn-search:hover,.vh-btn-search:focus{background:var(--vh-primary);color:#fff;}
#modalGlobalSearch .modal-content{background:rgba(255,255,255,.97);backdrop-filter:blur(8px);}
#modalGlobalSearch .modal-body{overflow:hidden;display:flex;flex-direction:column;}
.vh-search-wrap{max-width:640px;width:100%;margin:0 auto;}
.vh-search-logo img{height:88px;}
.vh-search-desc{font-size:.99rem;}
@media (min-width:992px){
    .vh-search-wrap{max-width:750px;}
}
.vh-search-input-group{position:relative;}
.vh-search-input-group .form-control{width:100%;background:#fff;border:1px solid rgba(135,52,172,.18);border-radius:999px;padding:14px 44px 14px 20px;font-size:1rem;}
.vh-search-input-group .form-control:focus{border-color:var(--vh-primary);box-shadow:0 0 0 3px rgba(135,52,172,.12) !important;}
.vh-search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:#888;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.vh-search-clear:hover{background:#f1f3f5;color:#333;}
#vhGlobalSearchResults{max-height:60vh;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.vh-search-row{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 6px;border-bottom:1px solid #f0f0f0;}
.vh-search-row:last-child{border-bottom:none;}
.vh-search-title{font-weight:500;color:#2b2b2b;word-break:break-word;}
.vh-search-title:hover{color:var(--vh-primary);}
.vh-search-pill{background:#f1f3f5;color:#5f6b76;padding:6px 12px;border-radius:999px;font-size:.68rem;font-weight:500;text-decoration:none;white-space:nowrap;flex-shrink:0;}
.vh-search-pill:hover{background:#e8ecf0;color:#3a4550;}
.vh-search-row mark{background:transparent;color:inherit;font-weight:500;padding:0;}
.vh-adblock-modal-content{background:#fff;border-radius:0;}
.vh-adblock-logo img{height:90px;}
.vh-adblock-icon{font-size:4.5rem;color:var(--vh-danger);line-height:1;}
.vh-adblock-title{font-size:1.6rem;font-weight:700;color:#2b2b2b;}
.vh-adblock-msg{font-size:1rem;color:#6f6f6f;max-width:480px;line-height:1.6;}
.vh-adblock-btn-disable{background:var(--vh-primary);color:#fff;border:none;border-radius:var(--vh-radius-full);padding:12px 32px;font-weight:600;font-size:.95rem;transition:background .2s ease;}
.vh-adblock-btn-disable:hover{background:var(--vh-quaternary);color:#fff;}
.vh-adblock-btn-logout{background:transparent;color:var(--vh-danger);border:1px solid var(--vh-danger);border-radius:var(--vh-radius-full);padding:12px 32px;font-weight:600;font-size:.95rem;transition:all .2s ease;}
.vh-adblock-btn-logout:hover{background:var(--vh-danger);color:#fff;}
@media (max-width:576px){
    .vh-adblock-logo img{height:64px;}
    .vh-adblock-icon{font-size:3.2rem;}
    .vh-adblock-title{font-size:1.25rem;}
    .vh-adblock-msg{font-size:.9rem;padding:0 1rem;}
    .vh-adblock-btn-disable,.vh-adblock-btn-logout{width:100%;max-width:280px;}
}
.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* ===== PROFILE PAGE =====font-size: .9rem;
    font-weight: 600;
    color: var(--vh-primary);
}
.vh-tutorial-play {
    font-size: 1.5rem;
    color: var(--vh-primary);
    transition: transform 0.2s ease;
}
.vh-tutorial-card:hover .vh-tutorial-play {
    transform: scale(1.12);
    color: var(--vh-quaternary);
}