/* WEBHOST SOLUTIONS — Downloads V1
   Presentation only. Native WHMCS download search, category routes, file links,
   client-only restrictions, denial/renewal flows and Support navigation remain intact. */

html.whs-downloads-page,
html.whs-downloads-page body,
body.whs-downloads-page,
body.whs-downloads-page #main-body,
body.whs-downloads-page #main-body > .container,
body.whs-downloads-page #main-body > .container-fluid,
body.whs-downloads-page .main-content,
body.whs-downloads-page .primary-content {
    background:#07111f !important;
    color:#dfe5f6;
}
body.whs-downloads-page #main-body { padding-top:18px; padding-bottom:14px; }
body.whs-downloads-page #main-body,
body.whs-downloads-page #main-body > .container,
body.whs-downloads-page #main-body > .container-fluid,
body.whs-downloads-page #main-body > .container > .row,
body.whs-downloads-page #main-body > .container-fluid > .row,
body.whs-downloads-page #main-body .main-content,
body.whs-downloads-page #main-body .primary-content {
    min-height:0 !important;
    height:auto !important;
    margin-bottom:0 !important;
}
body.whs-downloads-page #footer { margin-top:0 !important; }

/* Hero */
body.whs-downloads-page .header-lined {
    position:relative;
    overflow:hidden;
    margin:0 0 18px !important;
    padding:19px 26px 18px !important;
    border:1px solid rgba(142,154,212,.17) !important;
    border-radius:20px !important;
    background:radial-gradient(circle at 94% 6%,rgba(134,82,226,.18),transparent 38%),linear-gradient(145deg,#11192f,#0c1427) !important;
    box-shadow:0 16px 38px rgba(0,0,0,.12) !important;
}
body.whs-downloads-page .header-lined::before {
    content:"RESOURCES";
    position:relative;
    z-index:1;
    display:block;
    margin-bottom:6px;
    color:#aeb7ff;
    font-size:11px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.22em;
}
body.whs-downloads-page .header-lined::after {
    content:"Access available files, resources and useful downloads.";
    position:relative;
    z-index:1;
    display:block;
    margin-top:8px;
    color:#98a5c2;
    font-size:14px;
    line-height:1.55;
}
body.whs-downloads-page .header-lined h1 {
    position:relative;
    z-index:1;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    color:#f7f9ff !important;
    font-size:34px !important;
    line-height:1.14 !important;
    font-weight:800 !important;
    letter-spacing:-.025em;
    overflow-wrap:anywhere;
}
body.whs-downloads-page .header-lined h1 small,
body.whs-downloads-page .header-lined .breadcrumb,
body.whs-downloads-page .header-lined ol.breadcrumb { display:none !important; }

/* Native Support panel */
body.whs-downloads-page .sidebar .panel,
body.whs-downloads-page .sidebar .panel-sidebar,
body.whs-downloads-page .sidebar-primary .panel,
body.whs-downloads-page .sidebar-secondary .panel {
    overflow:hidden;
    margin:0 0 18px !important;
    border:1px solid rgba(142,154,212,.16) !important;
    border-radius:18px !important;
    background:radial-gradient(circle at 100% 0,rgba(129,81,218,.10),transparent 42%),linear-gradient(145deg,#11192f,#0c1427) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.10) !important;
}
body.whs-downloads-page .sidebar .panel-heading,
body.whs-downloads-page .sidebar .panel-sidebar > .panel-heading,
body.whs-downloads-page .sidebar-primary .panel-heading,
body.whs-downloads-page .sidebar-secondary .panel-heading {
    min-height:64px;
    padding:0 !important;
    border:0 !important;
    border-bottom:1px solid rgba(142,154,212,.10) !important;
    color:#eef1fb !important;
    background:linear-gradient(135deg,rgba(17,25,47,.96),rgba(20,26,54,.96)) !important;
}
body.whs-downloads-page .sidebar .panel-title,
body.whs-downloads-page .sidebar-primary .panel-title,
body.whs-downloads-page .sidebar-secondary .panel-title {
    display:flex;
    align-items:center;
    min-height:64px;
    margin:0 !important;
    padding:16px 18px !important;
    color:#eef1fb !important;
    font-size:17px !important;
    line-height:1.35;
    font-weight:800 !important;
}
body.whs-downloads-page .sidebar .panel-title > i:not(.panel-minimise),
body.whs-downloads-page .sidebar-primary .panel-title > i:not(.panel-minimise),
body.whs-downloads-page .sidebar-secondary .panel-title > i:not(.panel-minimise) {
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    flex:0 0 40px;
    width:40px;
    height:40px;
    margin:0 12px 0 0 !important;
    border:1px solid rgba(169,145,255,.25);
    border-radius:11px;
    color:#c5b5ff !important;
    background:linear-gradient(145deg,rgba(117,91,225,.26),rgba(142,82,205,.18));
    font-size:15px !important;
}
body.whs-downloads-page .sidebar .panel-minimise,
body.whs-downloads-page .sidebar-primary .panel-minimise,
body.whs-downloads-page .sidebar-secondary .panel-minimise { margin-left:auto !important; color:#8290ae !important; }
body.whs-downloads-page .sidebar .panel-body,
body.whs-downloads-page .sidebar .list-group,
body.whs-downloads-page .sidebar-primary .panel-body,
body.whs-downloads-page .sidebar-secondary .panel-body { border:0 !important; color:#dbe2f4; background:#0b1427 !important; }
body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group,
body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    width:100%;
    margin:0 !important;
    padding:12px !important;
}
body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group-item,
body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group-item {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    min-width:0 !important;
    width:100% !important;
    min-height:52px;
    margin:0 !important;
    padding:11px 12px !important;
    border:1px solid rgba(142,154,212,.13) !important;
    border-radius:10px !important;
    white-space:normal !important;
    overflow:hidden !important;
    color:#c4cce0 !important;
    background:#0e182c !important;
    text-decoration:none !important;
}
body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group-item.active,
body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group-item:hover,
body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group-item.active,
body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group-item:hover {
    color:#fff !important;
    border-color:rgba(169,145,255,.34) !important;
    background:#111d35 !important;
}
body.whs-downloads-page .sidebar .list-group-item i { color:#b9aaff !important; }

/* Main */
body.whs-downloads-page .whs-downloads { width:100%; color:#dfe5f6; }
body.whs-downloads-page .whs-download-empty-card,
body.whs-downloads-page .whs-download-section,
body.whs-downloads-page .whs-download-denied-card {
    overflow:hidden;
    margin:0 0 18px;
    border:1px solid rgba(142,154,212,.17);
    border-radius:20px;
    background:radial-gradient(circle at 100% 0,rgba(129,81,218,.10),transparent 38%),linear-gradient(145deg,#11192f,#0c1427);
    box-shadow:0 16px 36px rgba(0,0,0,.12);
}

/* Empty state */
body.whs-downloads-page .whs-download-empty-card { padding:40px 24px 36px; text-align:center; }
body.whs-downloads-page .whs-download-empty-icon,
body.whs-downloads-page .whs-download-section-icon,
body.whs-downloads-page .whs-download-card-icon,
body.whs-downloads-page .whs-download-denied-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(169,145,255,.25);
    color:#c5b5ff;
    background:linear-gradient(145deg,rgba(117,91,225,.26),rgba(142,82,205,.18));
}
body.whs-downloads-page .whs-download-empty-icon { width:66px; height:66px; margin:0 auto 18px; border-radius:18px; font-size:25px; }
body.whs-downloads-page .whs-download-empty-card h2 { margin:0 0 8px; color:#f5f7ff; font-size:22px; line-height:1.3; font-weight:800; }
body.whs-downloads-page .whs-download-empty-card p { max-width:520px; margin:0 auto; color:#9da9c3; font-size:14px; line-height:1.65; }

/* Search */
body.whs-downloads-page .whs-download-search-form { margin:0 0 18px; }
body.whs-downloads-page .whs-download-search {
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) 112px;
    align-items:stretch;
    width:100%;
    min-height:52px;
    margin:0 !important;
    border:1px solid rgba(142,154,212,.20) !important;
    border-radius:14px !important;
    background:#081225 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.08);
    overflow:hidden;
}
body.whs-downloads-page .whs-download-search-icon { display:flex; align-items:center; justify-content:center; width:48px; color:#a997ff; font-size:16px; }
body.whs-downloads-page .whs-download-search .form-control {
    width:100% !important;
    min-width:0 !important;
    height:52px !important;
    margin:0 !important;
    padding:0 10px !important;
    border:0 !important;
    border-radius:0 !important;
    color:#f1f4ff !important;
    -webkit-text-fill-color:#f1f4ff;
    background:#081225 !important;
    box-shadow:none !important;
    font-size:14px;
}
body.whs-downloads-page .whs-download-search .form-control::placeholder { color:#7f8ba8 !important; -webkit-text-fill-color:#7f8ba8 !important; opacity:1; }
body.whs-downloads-page .whs-download-search .input-group-btn { display:block !important; width:112px !important; min-width:112px !important; max-width:112px !important; }
body.whs-downloads-page .whs-download-search #btnDownloadsSearch {
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    height:52px !important;
    margin:0 !important;
    padding:0 14px !important;
    border:0 !important;
    border-left:1px solid rgba(175,145,255,.25) !important;
    border-radius:0 !important;
    color:#fff !important;
    background:linear-gradient(135deg,#6959e5,#a54bd8) !important;
    box-shadow:none !important;
    font-weight:800;
}

/* Sections */
body.whs-downloads-page .whs-download-section-heading {
    display:flex;
    align-items:center;
    gap:13px;
    padding:20px 22px 17px;
    border-bottom:1px solid rgba(142,154,212,.11);
}
body.whs-downloads-page .whs-download-section-icon { flex:0 0 44px; width:44px; height:44px; border-radius:13px; font-size:18px; }
body.whs-downloads-page .whs-download-section-heading h2 { margin:0; color:#f5f7ff; font-size:19px; line-height:1.3; font-weight:800; }
body.whs-downloads-page .whs-download-section-heading p { margin:4px 0 0; color:#929fbd; font-size:13px; line-height:1.5; }
body.whs-downloads-page .whs-download-section-body { padding:18px 20px 20px; }
body.whs-downloads-page .whs-download-intro { margin:0 0 15px; color:#9ba7c1; font-size:14px; line-height:1.65; }
body.whs-downloads-page .whs-download-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
body.whs-downloads-page .whs-download-category-card,
body.whs-downloads-page .whs-download-file-card {
    display:flex;
    align-items:center;
    gap:12px;
    min-width:0;
    width:100%;
    padding:14px 15px;
    border:1px solid rgba(142,154,212,.15);
    border-radius:13px;
    color:#dfe5f6 !important;
    background:#0b1528;
    text-decoration:none !important;
}
body.whs-downloads-page .whs-download-category-card:hover,
body.whs-downloads-page .whs-download-file-card:hover { border-color:rgba(159,137,255,.32); color:#fff !important; background:#101b31; }
body.whs-downloads-page .whs-download-card-icon { flex:0 0 42px; width:42px; height:42px; border-radius:12px; font-size:16px; }
body.whs-downloads-page .whs-download-card-copy { display:block; min-width:0; flex:1 1 auto; }
body.whs-downloads-page .whs-download-card-title { display:block; color:#f3f5ff; font-size:15px; line-height:1.4; font-weight:800; overflow-wrap:anywhere; }
body.whs-downloads-page .whs-download-card-description { display:block; margin-top:4px; color:#929fbd; font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
body.whs-downloads-page .whs-download-file-size { display:block; margin-top:5px; color:#7f8ba8; font-size:12px; }
body.whs-downloads-page .whs-download-count { flex:0 0 auto; min-width:28px; padding:4px 8px; border:1px solid rgba(156,139,255,.25); border-radius:999px; color:#c8c0ff; background:rgba(116,92,221,.12); font-size:11px; font-weight:800; text-align:center; }
body.whs-downloads-page .whs-download-arrow { flex:0 0 auto; color:#8d99b5; font-size:25px; line-height:1; }
body.whs-downloads-page .whs-download-lock { margin-left:5px; color:#a8a1c8; font-size:11px; }
body.whs-downloads-page .whs-download-list { display:grid; gap:10px; }
body.whs-downloads-page .whs-download-inline-empty { padding:20px; border:1px dashed rgba(142,154,212,.18); border-radius:12px; color:#909db9; background:#0b1528; text-align:center; }

/* Denied / restricted download */
body.whs-downloads-page .whs-download-denied-card { display:flex; align-items:flex-start; gap:18px; padding:28px; }
body.whs-downloads-page .whs-download-denied-icon { flex:0 0 58px; width:58px; height:58px; border-radius:16px; font-size:21px; }
body.whs-downloads-page .whs-download-denied-copy { min-width:0; flex:1; }
body.whs-downloads-page .whs-download-denied-kicker { display:block; margin-bottom:6px; color:#aeb7ff; font-size:10px; line-height:1.2; font-weight:800; letter-spacing:.18em; }
body.whs-downloads-page .whs-download-denied-card h2 { margin:0 0 12px; color:#f5f7ff; font-size:22px; line-height:1.3; font-weight:800; }
body.whs-downloads-page .whs-download-denied-card p { color:#aab4cc; font-size:14px; line-height:1.7; }
body.whs-downloads-page .whs-download-denied-card .alert { border:1px solid rgba(142,154,212,.18) !important; border-radius:12px !important; color:#dfe5f6 !important; background:#0b1528 !important; }
body.whs-downloads-page .whs-download-action { min-height:46px; padding:11px 18px !important; border:1px solid rgba(175,145,255,.42) !important; border-radius:11px !important; color:#fff !important; background:linear-gradient(135deg,#6959e5,#a54bd8) !important; font-weight:800; }

@media (max-width:991px) {
    body.whs-downloads-page #main-body > .container > .row > [class*="col-md-"] { float:none; width:100%; }
}
@media (max-width:767px) {
    body.whs-downloads-page #main-body { padding-top:14px; padding-bottom:12px; }
    body.whs-downloads-page .header-lined { margin-bottom:16px !important; padding:18px 20px 17px !important; border-radius:18px !important; }
    body.whs-downloads-page .header-lined h1 { font-size:28px !important; }
    body.whs-downloads-page .whs-download-empty-card,
    body.whs-downloads-page .whs-download-section,
    body.whs-downloads-page .whs-download-denied-card,
    body.whs-downloads-page .sidebar .panel,
    body.whs-downloads-page .sidebar .panel-sidebar { border-radius:18px !important; }
    body.whs-downloads-page .whs-download-search { grid-template-columns:44px minmax(0,1fr) 98px; min-height:50px; }
    body.whs-downloads-page .whs-download-search-icon { width:44px; }
    body.whs-downloads-page .whs-download-search .form-control,
    body.whs-downloads-page .whs-download-search #btnDownloadsSearch { height:50px !important; }
    body.whs-downloads-page .whs-download-search .input-group-btn { width:98px !important; min-width:98px !important; max-width:98px !important; }
    body.whs-downloads-page .whs-download-section-heading { padding:17px 16px 14px; }
    body.whs-downloads-page .whs-download-section-body { padding:14px 16px 16px; }
    body.whs-downloads-page .whs-download-category-grid { grid-template-columns:1fr; }
    body.whs-downloads-page .whs-download-empty-card { padding:34px 18px 30px; }
    body.whs-downloads-page .whs-download-denied-card { padding:20px 17px; }
    body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group,
    body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:380px) {
    body.whs-downloads-page .whs-download-search { grid-template-columns:40px minmax(0,1fr) 88px; }
    body.whs-downloads-page .whs-download-search-icon { width:40px; }
    body.whs-downloads-page .whs-download-search .input-group-btn { width:88px !important; min-width:88px !important; max-width:88px !important; }
    body.whs-downloads-page .whs-download-denied-card { flex-direction:column; }
    body.whs-downloads-page .sidebar .panel[menuItemName="Support"] .list-group,
    body.whs-downloads-page .sidebar-secondary .panel[menuItemName="Support"] .list-group { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
    body.whs-downloads-page * { scroll-behavior:auto !important; transition:none !important; }
}
