:root{--bg:#0b0d10;--panel:#13171d;--panel2:#191e25;--line:#29313b;--text:#f4f6f8;--muted:#97a2af;--accent:#ff7a00;--accent2:#ff9b32;--danger:#ef5350;--ok:#40c783;--radius:16px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,#3c1d00 0,transparent 35%),var(--bg)}.login-card{width:min(440px,100%);background:rgba(19,23,29,.94);border:1px solid var(--line);border-radius:24px;padding:30px;box-shadow:0 20px 80px #0008}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.3px}.brand-mark{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--accent2),var(--accent));display:grid;place-items:center;color:#111;font-weight:950}.login-card h1{font-size:28px;margin:28px 0 8px}.muted{color:var(--muted)}label{display:block;font-size:13px;color:#c5ccd3;margin:14px 0 7px}.input,select,textarea{width:100%;border:1px solid var(--line);background:#0e1217;color:var(--text);border-radius:12px;padding:12px 14px;outline:none}.input:focus,select:focus,textarea:focus{border-color:var(--accent)}.btn{border:0;border-radius:12px;padding:11px 16px;cursor:pointer;font-weight:700;background:#252d37;color:#fff}.btn:hover{filter:brightness(1.08)}.btn-primary{background:linear-gradient(145deg,var(--accent2),var(--accent));color:#17100a}.btn-danger{background:#3a191a;color:#ffabab}.btn-block{width:100%;margin-top:18px}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);background:#0d1014;padding:20px 14px;display:flex;flex-direction:column}.sidebar .brand{padding:4px 8px 22px}.nav{display:grid;gap:6px}.nav button{display:flex;gap:12px;align-items:center;background:transparent;border:0;color:#b9c2cc;padding:11px 12px;border-radius:10px;text-align:left;cursor:pointer}.nav button:hover,.nav button.active{background:#1b2027;color:#fff}.nav button.active{box-shadow:inset 3px 0 var(--accent)}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.main{min-width:0}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#0b0d10e8;backdrop-filter:blur(14px);z-index:10}.content{padding:28px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.page-head h1{margin:0;font-size:28px}.grid{display:grid;gap:16px}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.stat strong{display:block;font-size:34px;margin-top:8px}.device-card,.manual-card,.category-card{cursor:pointer;transition:.18s}.device-card:hover,.manual-card:hover,.category-card:hover{transform:translateY(-2px);border-color:#4a5562}.device-thumb{height:140px;border-radius:12px;background:#0e1115 center/cover no-repeat;margin-bottom:14px;display:grid;place-items:center;font-size:42px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.toolbar .input{width:min(360px,100%)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--panel)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}th{color:#aeb7c1;font-weight:650;background:#161a20}tr:last-child td{border-bottom:0}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;background:#252c34;color:#ccd4dc}.badge.ok{background:#123324;color:#85e3af}.actions{display:flex;gap:7px}.actions .btn{padding:7px 10px;font-size:12px}.modal-backdrop{position:fixed;inset:0;background:#000a;display:grid;place-items:center;padding:20px;z-index:100}.modal{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--panel);border:1px solid #38414d;border-radius:18px;padding:20px}.modal h2{margin:0 0 16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.span-2{grid-column:1/-1}.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;max-height:210px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:10px}.check{display:flex;gap:8px;align-items:center;font-size:13px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.breadcrumb{display:flex;gap:8px;color:var(--muted);font-size:13px;margin-bottom:16px}.breadcrumb button{background:none;border:0;color:var(--accent2);padding:0;cursor:pointer}.viewer{display:grid;gap:16px}.viewer img{max-width:100%;max-height:72vh;margin:auto;border-radius:14px}.viewer iframe{width:100%;height:75vh;border:0;border-radius:14px;background:#fff}.toast{position:fixed;right:22px;bottom:22px;background:#20262e;border:1px solid #3a4551;border-radius:12px;padding:12px 16px;z-index:200;box-shadow:0 14px 50px #0008}.mobile-menu{display:none}.empty{text-align:center;padding:50px 20px;color:var(--muted)}@media(max-width:800px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:50;width:260px;transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.mobile-menu{display:inline-flex}.topbar{padding:0 16px}.content{padding:20px 14px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-head{align-items:flex-start;flex-direction:column}.toolbar{width:100%}.toolbar .input{width:100%}}
.page-subtitle{margin:6px 0 0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 14px}.section-title h2{margin:0;font-size:20px}.banner-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,1fr);gap:14px;overflow:auto;padding-bottom:6px}.banner{display:block;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--panel);min-height:120px}.banner img{display:block;width:100%;height:170px;object-fit:cover}.banner-preview{height:120px;border-radius:12px;overflow:hidden;background:#0e1115;margin-bottom:12px}.banner-preview img{width:100%;height:100%;object-fit:cover}.content-type{font-size:12px;color:var(--accent2);font-weight:800;margin-bottom:10px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent2);margin-bottom:8px}.searchbar{margin-bottom:20px}.searchbar .input{flex:1;max-width:none}.search-results{margin-top:16px}.prewrap{white-space:pre-wrap}.viewer video{width:100%;max-height:75vh;border-radius:14px}.device-admin-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.admin-note{margin-top:18px}.breadcrumb{flex-wrap:wrap;align-items:center}.breadcrumb button{background:none;border:0;color:var(--accent2);padding:0;cursor:pointer}.manual-card-admin{cursor:default}.toast.error{border-color:#6b2b2b;background:#32191a}.actions{flex-wrap:wrap}@media(max-width:800px){.banner-strip{grid-auto-columns:86%}.banner img{height:140px}.section-title{align-items:flex-start}.topbar>div:last-child{display:none}}
.password-wrap{position:relative}.password-wrap .input{padding-right:82px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--accent2);font-weight:700;cursor:pointer;padding:7px 8px}.catalog-banners{margin:0 0 20px}.catalog-banners .banner img{height:135px}.search-count{margin:0 0 12px;font-size:13px}@media(max-width:800px){.catalog-banners .banner img{height:120px}}

/* v2.3 - Banner carousel */
.banner-carousel{position:relative;width:100%;margin:0 0 22px;overflow:hidden;border-radius:16px}.banner-viewport{position:relative;width:100%;height:170px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--panel)}.banner-slide{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .6s ease,visibility .6s ease;background:var(--panel)}.banner-slide.active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.banner-slide img{display:block;width:100%;height:100%;object-fit:cover}.banner-dots{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:3;display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:#0008;backdrop-filter:blur(6px)}.banner-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#ffffff78;cursor:pointer;transition:.2s}.banner-dot.active{width:22px;background:#fff}.banner-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.catalog-banners{margin:0 0 20px}.catalog-banners .banner-viewport{height:135px}@media(max-width:800px){.banner-viewport{height:140px}.catalog-banners .banner-viewport{height:120px}.banner-dots{bottom:8px}}

/* v2.5 - Manual viewer */
.viewer-manual{gap:12px}.manual-toolbar{position:sticky;top:84px;z-index:8;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px;background:#0d1014e8;border:1px solid var(--line);border-radius:14px;backdrop-filter:blur(12px);box-shadow:0 8px 30px #0004}.manual-toolbar .btn{padding:9px 12px}.manual-image-card{display:grid;gap:12px;justify-items:center}.manual-image-button{position:relative;display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:16px;background:#07090c;overflow:hidden;cursor:zoom-in}.manual-image-button img{display:block;width:100%;max-height:calc(100vh - 240px);object-fit:contain;margin:0 auto;border-radius:0;background:#07090c}.manual-image-hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:8px 12px;border-radius:999px;background:#090c10d9;border:1px solid #ffffff1f;color:#fff;font-size:12px;font-weight:800;pointer-events:none;backdrop-filter:blur(10px);white-space:nowrap}.manual-original-link{justify-self:center}.manual-lightbox{position:fixed;inset:0;z-index:500;background:#000000f2;display:flex;align-items:center;justify-content:center;padding:28px;cursor:zoom-out}.manual-lightbox img{display:block;max-width:96vw;max-height:94vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 20px 70px #000}.manual-lightbox-close{position:fixed;top:18px;right:22px;width:46px;height:46px;border:1px solid #ffffff2b;border-radius:50%;background:#111820dd;color:#fff;font-size:32px;line-height:1;cursor:pointer;z-index:501}.manual-lightbox-open{overflow:hidden}.manual-document-stage{height:calc(100vh - 220px);min-height:520px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#080a0d}.manual-document-stage iframe{width:100%;height:100%;border:0;border-radius:0;background:#fff}.manual-document-stage video{display:block;width:100%;height:100%;max-height:none;object-fit:contain;background:#000;border-radius:0}.manual-text{font-size:16px;line-height:1.7;max-width:1000px;margin:0 auto}.manual-link-card{text-align:center;padding:42px 24px}.manual-link-card p{margin:0 0 18px;color:var(--muted)}.manual-document-stage:fullscreen{width:100vw;height:100vh;min-height:100vh;border:0;border-radius:0;background:#050607}.manual-document-stage:fullscreen iframe,.manual-document-stage:fullscreen video{height:100vh}
@media(max-width:800px){.manual-toolbar{top:76px;gap:6px;padding:8px}.manual-toolbar .btn{padding:8px 10px;font-size:12px}.manual-image-button img{max-height:calc(100vh - 210px)}.manual-image-hint{bottom:10px;font-size:11px}.manual-lightbox{padding:10px}.manual-lightbox img{max-width:100vw;max-height:100vh;border-radius:0}.manual-lightbox-close{top:10px;right:10px}.manual-document-stage{height:calc(100vh - 245px);min-height:420px}}

/* v2.6 - Visualizador de manual amplo e zoom por scroll */
.content.manual-content-wide{max-width:none;padding-left:12px;padding-right:12px}
.manual-content-wide .page-head{margin-left:4px;margin-right:4px;margin-bottom:12px}
.manual-content-wide .viewer-manual{width:100%;gap:8px}
.manual-content-wide .manual-image-card{width:100%;display:block}
.manual-content-wide .manual-image-button{width:100%;border-radius:10px;background:#050607;border-color:#252b33;overflow:visible}
.manual-content-wide .manual-image-button img{display:block;width:auto;max-width:100%;height:auto;max-height:none;object-fit:contain;margin:0 auto;border-radius:9px;background:#050607}
.manual-content-wide .manual-image-hint{position:sticky;display:table;margin:-48px auto 12px;left:auto;bottom:auto;transform:none;opacity:.82}
.manual-lightbox{padding:10px;cursor:default;overflow:hidden}
.manual-lightbox-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;overscroll-behavior:contain}
.manual-lightbox-stage img{max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);width:auto;height:auto;transform-origin:center center;transition:transform .12s ease;cursor:zoom-in;box-shadow:none}
.manual-lightbox-stage.zoomed img{cursor:zoom-out}
.manual-zoom-status{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);padding:7px 11px;border-radius:999px;background:#0b0f14dd;border:1px solid #ffffff24;color:#fff;font-size:12px;font-weight:800;pointer-events:none;z-index:502}
@media(max-width:800px){.content.manual-content-wide{padding-left:4px;padding-right:4px}.manual-content-wide .page-head{padding-left:8px;padding-right:8px}.manual-content-wide .manual-image-button{border-left:0;border-right:0;border-radius:0}.manual-content-wide .manual-image-button img{border-radius:0}.manual-lightbox{padding:0}.manual-lightbox-stage img{max-width:100vw;max-height:100vh}.manual-zoom-status{bottom:10px}}







/* v2.10 — miniatura do manual em 5% do tamanho original */
.manual-content-wide .manual-image-card{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:flex-start;
    overflow:visible;
}

.manual-content-wide .manual-image-button{
    display:inline-block !important;
    width:auto !important;
    max-width:100% !important;
    padding:0 !important;
    margin:0 auto !important;
    overflow:visible !important;
    border-radius:10px;
    background:#050607;
    line-height:0;
}

.manual-content-wide #manualImage{
    display:block !important;
    width:auto;
    max-width:none !important;
    min-width:0 !important;
    height:auto !important;
    max-height:none !important;
    margin:0 !important;
    object-fit:contain !important;
    cursor:zoom-in;
    border-radius:9px;
}

.manual-content-wide .manual-image-hint{
    display:none !important;
}

/* O lightbox não herda o tamanho da miniatura. */
#manualLightboxImage{
    width:auto !important;
    height:auto !important;
    max-width:calc(100vw - 24px);
    max-height:calc(100vh - 24px);
}


/* ================================================================
   v2.12 — Layout moderno + menu mobile no fluxo da página
   ================================================================ */
:root{
    --bg:#080a0d;
    --bg-soft:#0c1015;
    --panel:#11161d;
    --panel2:#171d25;
    --panel3:#1d2530;
    --line:#26303b;
    --line-soft:#1b232c;
    --text:#f7f8fa;
    --muted:#8f9aa7;
    --accent:#ff7900;
    --accent2:#ff9d3d;
    --danger:#ef5b5b;
    --ok:#44cf8a;
    --radius:18px;
    --shadow:0 18px 50px rgba(0,0,0,.22);
}

html,body{
    background:
        radial-gradient(circle at 85% -10%,rgba(255,121,0,.07),transparent 28%),
        var(--bg);
}

body{
    overflow-x:hidden;
}

.btn{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px solid #303a46;
    border-radius:12px;
    padding:10px 15px;
    background:linear-gradient(180deg,#252d37,#1e2630);
    color:#f7f8fa;
    box-shadow:0 1px 0 rgba(255,255,255,.03) inset;
    transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}

.btn:hover{
    filter:none;
    transform:translateY(-1px);
    border-color:#465363;
    background:linear-gradient(180deg,#2b3541,#222b35);
}

.btn:active{
    transform:translateY(0);
}

.btn-primary{
    border-color:#ff8d24;
    color:#16100b;
    background:linear-gradient(135deg,#ffad55 0%,#ff7900 62%,#ef6500 100%);
    box-shadow:0 8px 24px rgba(255,121,0,.16);
}

.btn-back{
    background:#161d25;
    border-color:#313d49;
}

.app-shell{
    min-height:100vh;
    display:grid;
    grid-template-columns:244px minmax(0,1fr);
}

.sidebar{
    position:sticky;
    top:0;
    height:100vh;
    padding:18px 14px;
    border-right:1px solid var(--line-soft);
    background:
        linear-gradient(180deg,rgba(255,255,255,.018),transparent 22%),
        #0b0f14;
}

.sidebar-brand{
    min-height:64px;
    padding:4px 8px 20px!important;
    border-bottom:1px solid var(--line-soft);
    margin-bottom:15px;
}

.sidebar-brand strong{
    display:block;
    font-size:14px;
    letter-spacing:.08em;
}

.sidebar-brand small{
    display:block;
    margin-top:3px;
    color:var(--muted);
    font-size:11px;
    font-weight:600;
    letter-spacing:.02em;
}

.brand-mark{
    width:40px;
    height:40px;
    border-radius:12px;
    box-shadow:0 10px 28px rgba(255,121,0,.18);
}

.nav{
    gap:7px;
}

.nav button{
    min-height:44px;
    position:relative;
    padding:10px 11px;
    border:1px solid transparent;
    border-radius:12px;
    color:#aeb8c4;
    font-weight:650;
    transition:.16s ease;
}

.nav button:hover{
    background:#141a21;
    border-color:#202a34;
    color:#fff;
}

.nav button.active{
    background:linear-gradient(90deg,rgba(255,121,0,.13),rgba(255,121,0,.035));
    border-color:rgba(255,121,0,.22);
    color:#fff;
    box-shadow:none;
}

.nav button.active::before{
    content:"";
    position:absolute;
    left:-1px;
    top:10px;
    bottom:10px;
    width:3px;
    border-radius:999px;
    background:var(--accent);
    box-shadow:0 0 16px rgba(255,121,0,.4);
}

.nav-icon{
    width:24px;
    height:24px;
    display:inline-grid;
    place-items:center;
    border-radius:8px;
    color:#b8c1cb;
    font-size:14px;
    flex:0 0 24px;
}

.nav button.active .nav-icon{
    background:rgba(255,121,0,.11);
    color:var(--accent2);
}

.side-bottom{
    padding-top:14px;
    border-top:1px solid var(--line-soft);
}

.user-chip{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
    padding:9px 7px;
}

.user-avatar{
    width:36px;
    height:36px;
    flex:0 0 36px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:linear-gradient(145deg,#2c3642,#1b222b);
    border:1px solid #354250;
    color:var(--accent2);
    font-weight:850;
}

.user-chip-text{
    min-width:0;
    display:grid;
    gap:2px;
}

.user-chip-text strong{
    font-size:13px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.user-chip-text span{
    display:block;
    max-width:150px;
    color:var(--muted);
    font-size:10px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.btn-logout{
    width:100%;
    margin-top:6px;
    min-height:38px;
    background:#171e27;
}

.main{
    min-width:0;
    background:
        linear-gradient(180deg,rgba(255,255,255,.008),transparent 230px);
}

.topbar{
    height:70px;
    padding:0 30px;
    border-bottom:1px solid var(--line-soft);
    background:rgba(8,11,15,.88);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
}

.topbar-left{
    display:flex;
    align-items:center;
    gap:13px;
    min-width:0;
}

.topbar-brand{
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
}

.topbar-brand>div{
    min-width:0;
    display:grid;
    gap:2px;
}

.topbar-brand strong{
    font-size:14px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.topbar-brand small{
    color:var(--muted);
    font-size:10px;
}

.topbar-dot,
.status-dot{
    display:block;
    width:8px;
    height:8px;
    border-radius:50%;
}

.topbar-dot{
    background:var(--accent);
    box-shadow:0 0 14px rgba(255,121,0,.55);
}

.topbar-status{
    display:flex;
    align-items:center;
    gap:7px;
    color:var(--muted);
    font-size:12px;
}

.status-dot{
    width:7px;
    height:7px;
    background:var(--ok);
    box-shadow:0 0 12px rgba(68,207,138,.4);
}

.mobile-menu,
.mobile-nav-panel{
    display:none;
}

.content{
    width:100%;
    max-width:1580px;
    margin:0 auto;
    padding:30px 34px 42px;
}

.page-head{
    align-items:center;
    margin-bottom:22px;
}

.page-head h1{
    font-size:clamp(24px,2.2vw,32px);
    letter-spacing:-.025em;
}

.page-subtitle{
    max-width:760px;
    color:#8995a3;
    line-height:1.5;
}

.card{
    border:1px solid var(--line);
    border-radius:18px;
    background:
        linear-gradient(160deg,rgba(255,255,255,.018),transparent 42%),
        var(--panel);
    box-shadow:0 1px 0 rgba(255,255,255,.02) inset;
}

.grid{
    gap:17px;
}

.grid-cards{
    grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
}

.device-card,
.category-card,
.manual-card{
    position:relative;
    overflow:hidden;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

.device-card:hover,
.category-card:hover,
.manual-card:hover{
    transform:translateY(-3px);
    border-color:#3e4a58;
    box-shadow:0 16px 42px rgba(0,0,0,.18);
}

.device-card::after,
.category-card::after,
.manual-card::after{
    content:"";
    position:absolute;
    inset:auto 0 0 0;
    height:2px;
    opacity:0;
    background:linear-gradient(90deg,transparent,var(--accent),transparent);
    transition:opacity .18s ease;
}

.device-card:hover::after,
.category-card:hover::after,
.manual-card:hover::after{
    opacity:.8;
}

.device-thumb{
    height:150px;
    margin:-4px -4px 15px;
    border-radius:14px;
    border:1px solid #202832;
    background-color:#0a0e13;
    box-shadow:0 12px 30px rgba(0,0,0,.17) inset;
}

.device-card strong,
.category-card strong,
.manual-card strong{
    font-size:15px;
    line-height:1.35;
}

.device-card p,
.category-card p,
.manual-card p{
    margin-bottom:0;
    font-size:13px;
    line-height:1.45;
}

.section-title{
    margin:30px 0 14px;
}

.section-title h2{
    font-size:19px;
    letter-spacing:-.01em;
}

.breadcrumb{
    width:max-content;
    max-width:100%;
    padding:8px 11px;
    border:1px solid var(--line-soft);
    border-radius:12px;
    background:#0c1117;
    color:#66717e;
}

.breadcrumb button{
    color:#c8d0d8;
    font-weight:650;
}

.breadcrumb button:hover{
    color:var(--accent2);
}

.toolbar{
    gap:8px;
}

.banner-carousel{
    border-radius:18px;
}

.banner-viewport{
    border-color:#202a34;
    border-radius:18px;
    box-shadow:var(--shadow);
}

.input,select,textarea{
    min-height:44px;
    border-color:#27323d;
    border-radius:12px;
    background:#0b1016;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}

.input:focus,select:focus,textarea:focus{
    border-color:rgba(255,121,0,.75);
    background:#0d1218;
    box-shadow:0 0 0 3px rgba(255,121,0,.09);
}

.table-wrap{
    border-color:#26313c;
    border-radius:16px;
    box-shadow:0 14px 40px rgba(0,0,0,.12);
}

.modal{
    border-color:#33404d;
    border-radius:20px;
    box-shadow:0 30px 90px rgba(0,0,0,.55);
}

/* Manual aprovado na v2.11: mantém a imagem inicial em 35%. */
.manual-content-wide .manual-image-button{
    box-shadow:0 18px 48px rgba(0,0,0,.18);
}

/* ----------------------- MOBILE ----------------------- */
@media(max-width:800px){
    .app-shell{
        display:block;
        min-height:100vh;
    }

    /* A barra lateral desktop deixa de existir no celular. */
    .sidebar{
        display:none!important;
    }

    .main{
        width:100%;
        min-height:100vh;
    }

    /* O cabeçalho deixa de ficar preso no topo no celular. */
    .topbar{
        position:relative!important;
        top:auto!important;
        z-index:20;
        height:62px;
        padding:0 14px;
        background:#0a0e13;
        backdrop-filter:none;
        -webkit-backdrop-filter:none;
    }

    .topbar-status{
        display:none;
    }

    .topbar-brand small{
        display:block!important;
    }

    .mobile-menu{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:7px;
        min-height:38px;
        padding:8px 11px;
        border:1px solid #2c3742;
        border-radius:11px;
        background:#151c24;
        color:#fff;
        font-weight:750;
        cursor:pointer;
    }

    .mobile-menu.active{
        border-color:rgba(255,121,0,.45);
        background:rgba(255,121,0,.1);
        color:var(--accent2);
    }

    .menu-bars{
        font-size:17px;
        line-height:1;
    }

    /* Menu mobile em fluxo normal: não é fixed nem overlay. */
    .mobile-nav-panel{
        display:grid;
        grid-template-rows:0fr;
        opacity:0;
        overflow:hidden;
        border-bottom:1px solid transparent;
        background:#0c1117;
        transition:grid-template-rows .22s ease,opacity .18s ease,border-color .18s ease;
    }

    .mobile-nav-panel>*{
        min-height:0;
    }

    .mobile-nav-panel.open{
        grid-template-rows:1fr;
        opacity:1;
        border-bottom-color:#202934;
    }

    .mobile-nav{
        display:grid;
        gap:7px;
        padding:12px 14px 8px;
    }

    .mobile-nav button{
        min-height:46px;
        background:#111821;
        border-color:#202a34;
    }

    .mobile-user-row{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        gap:10px;
        padding:8px 14px 14px;
    }

    .mobile-user-row .user-chip{
        padding:5px 0;
    }

    .mobile-user-row .user-chip-text span{
        max-width:210px;
    }

    .mobile-user-row .btn-logout{
        width:auto;
        margin:0;
        min-height:38px;
        padding:8px 15px;
    }

    .content{
        max-width:none;
        padding:20px 14px 34px;
    }

    .page-head{
        gap:12px;
        margin-bottom:18px;
    }

    .page-head h1{
        font-size:24px;
    }

    .page-head>.toolbar{
        width:100%;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .page-head>.toolbar .btn{
        width:100%;
    }

    .page-head>.toolbar .btn:only-child{
        grid-column:1/-1;
    }

    .grid-cards{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:11px;
    }

    .card{
        border-radius:15px;
        padding:14px;
    }

    .device-thumb{
        height:112px;
        margin:-2px -2px 12px;
        border-radius:12px;
    }

    .device-card strong,
    .category-card strong,
    .manual-card strong{
        font-size:14px;
    }

    .device-card p,
    .category-card p,
    .manual-card p{
        font-size:12px;
    }

    .breadcrumb{
        width:100%;
        overflow-x:auto;
        flex-wrap:nowrap;
        white-space:nowrap;
        scrollbar-width:none;
        padding:8px 10px;
    }

    .breadcrumb::-webkit-scrollbar{
        display:none;
    }

    .banner-carousel{
        margin-bottom:18px;
    }

    .banner-viewport{
        border-radius:15px;
    }

    .section-title{
        margin-top:24px;
    }

    .content.manual-content-wide{
        padding-left:8px;
        padding-right:8px;
    }
}

@media(max-width:520px){
    .grid-cards{
        grid-template-columns:1fr;
    }

    .device-thumb{
        height:148px;
    }

    .topbar-brand strong{
        font-size:13px;
    }

    .mobile-menu span:last-child{
        display:none;
    }

    .mobile-menu{
        width:40px;
        padding:0;
    }

    .page-head>.toolbar{
        grid-template-columns:1fr;
    }

    .page-head>.toolbar .btn{
        grid-column:1;
    }
}


/* ================================================================
   v2.13 — Imagens dos aparelhos sem corte
   ================================================================ */
.device-thumb{
    height:190px !important;
    background-position:center center !important;
    background-size:contain !important;
    background-repeat:no-repeat !important;
    background-color:#070b10 !important;
    border:1px solid #202b36 !important;
    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.015),
        inset 0 -28px 50px rgba(0,0,0,.16) !important;
}

/* Espaço visual mais elegante ao redor de imagens muito estreitas/verticais. */
.device-card .device-thumb{
    position:relative;
}

/* Mobile: mantém boa leitura sem deixar os cards altos demais. */
@media(max-width:800px){
    .device-thumb{
        height:150px !important;
        background-size:contain !important;
    }
}

@media(max-width:520px){
    .device-thumb{
        height:185px !important;
    }
}


/* ================================================================
   v2.14 — Módulo de vídeos YouTube
   ================================================================ */
.video-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
    gap:18px;
}
.video-card,
.admin-video-card{
    padding:0;
    overflow:hidden;
}
.video-card{
    cursor:pointer;
}
.video-thumb{
    position:relative;
    aspect-ratio:16/9;
    overflow:hidden;
    background:#05080c;
    border-bottom:1px solid var(--line-soft);
}
.video-thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .25s ease,filter .25s ease;
}
.video-card:hover .video-thumb img,
.admin-video-card:hover .video-thumb img{
    transform:scale(1.025);
    filter:brightness(.88);
}
.video-play{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    padding-left:3px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
    background:rgba(8,10,13,.78);
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    color:#fff;
    font-size:20px;
    box-shadow:0 12px 35px rgba(0,0,0,.36);
    transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.video-card:hover .video-play,
.admin-video-card:hover .video-play{
    transform:translate(-50%,-50%) scale(1.08);
    background:var(--accent);
    border-color:var(--accent2);
}
.video-card-body{
    padding:16px 17px 18px;
}
.video-card-body strong{
    display:block;
    font-size:15px;
    line-height:1.4;
}
.video-description{
    display:-webkit-box;
    margin:8px 0 0;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    line-height:1.5;
}
.video-content-wide{
    max-width:1500px;
}
.video-watch{
    width:min(100%,1280px);
    margin:0 auto;
}
.video-player{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    overflow:hidden;
    border:1px solid #27333f;
    border-radius:18px;
    background:#000;
    box-shadow:0 24px 70px rgba(0,0,0,.34);
}
.video-player iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}
.video-info{
    margin-top:18px;
    padding:20px 22px;
}
.video-info h2{
    margin:0 0 8px;
    font-size:17px;
}
.video-info p{
    margin:0;
    color:#c4ccd5;
    line-height:1.65;
    white-space:pre-line;
}
.admin-video-grid{
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
}
.admin-video-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
}
.video-meta{
    margin-top:8px;
    font-size:11px;
}
.modal-video-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:16px;
}
.modal-video-head h2,
.modal-video-head p{
    margin:0;
}
.modal-video-player{
    border-radius:14px;
}
.field-help{
    display:block;
    margin-top:6px;
    color:var(--muted);
    font-size:11px;
}
.video-active-check{
    min-height:44px;
    display:flex;
    align-items:center;
}

@media(max-width:800px){
    .video-grid,
    .admin-video-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:11px;
    }
    .video-card-body{
        padding:13px 13px 15px;
    }
    .video-play{
        width:46px;
        height:46px;
        font-size:17px;
    }
    .video-watch{
        width:100%;
    }
    .video-player{
        border-radius:13px;
    }
}
@media(max-width:560px){
    .video-grid,
    .admin-video-grid{
        grid-template-columns:1fr;
    }
    .video-player{
        border-radius:10px;
    }
    .video-info{
        padding:16px;
    }
}


/* ================================================================
   v2.15 — Painel administrativo moderno e operacional
   ================================================================ */
.admin-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:20px}.admin-metric{width:100%;min-width:0;padding:16px;text-align:left;display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:11px;cursor:pointer;color:var(--text);background:linear-gradient(155deg,rgba(255,255,255,.025),transparent 50%),var(--panel);border:1px solid var(--line);border-radius:16px;transition:.17s}.admin-metric:hover{transform:translateY(-2px);border-color:#3e4b58;background:var(--panel2)}.admin-metric-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(255,121,0,.09);border:1px solid rgba(255,121,0,.13);color:var(--accent2);font-size:18px}.admin-metric-copy{min-width:0;display:grid;gap:2px}.admin-metric-copy small{color:var(--muted);font-size:11px;font-weight:700}.admin-metric-copy strong{font-size:25px;line-height:1}.admin-metric-copy em{font-style:normal;color:#73808e;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-metric-arrow{color:#596572;font-size:24px}.admin-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-panel{padding:0;overflow:hidden}.admin-panel-head{min-height:70px;padding:16px 18px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-panel-head h3{font-size:16px;margin:2px 0 0}.btn-small{min-height:34px!important;padding:7px 10px!important;font-size:11px!important}.admin-list{display:grid}.admin-list-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 18px;border:0;border-bottom:1px solid var(--line-soft);background:transparent;color:var(--text);text-align:left}.admin-list-row:last-child{border-bottom:0}.admin-list-row:is(button):hover{background:#151b22;cursor:pointer}.admin-list-main{min-width:0;display:grid;gap:2px}.admin-list-main strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-list-main small,.admin-list-row time{color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-pulse{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 13px rgba(68,207,138,.42);flex:0 0 9px}.admin-activity{margin-top:16px}.activity-list{display:grid;grid-template-columns:1fr 1fr}.activity-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;padding:13px 18px;border-bottom:1px solid var(--line-soft)}.activity-row:nth-child(odd){border-right:1px solid var(--line-soft)}.activity-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#182028;color:var(--accent2);font-size:12px}.activity-row span:last-child{font-size:12px;color:#bbc4ce}.activity-row strong{color:#fff}.activity-row small{display:block;margin-top:3px;color:#6f7b88;font-size:10px}.empty.compact{padding:28px 18px}
.admin-filterbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.admin-filterbar select{width:auto;min-width:170px}.filter-search{position:relative;display:flex;align-items:center;min-width:min(420px,100%);flex:1}.filter-search>span{position:absolute;left:13px;color:#687482;z-index:1}.filter-search .input{width:100%;padding-left:36px}.filter-search.compact{min-width:260px;max-width:380px}.admin-result-count{color:var(--muted);font-size:12px;margin-left:auto}.admin-summary-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.admin-summary-chips span{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid var(--line-soft);border-radius:999px;background:#0e141a;color:#84909d;font-size:11px}.admin-summary-chips span.ok{color:#87dcae;border-color:#1f4232;background:#10251b}.admin-summary-chips b{color:#fff}.user-cell{display:flex;align-items:center;gap:10px;min-width:0}.user-cell>span:last-child{min-width:0;display:grid;gap:2px}.user-cell strong{font-size:13px}.user-cell small,.table-sub{display:block;color:var(--muted);font-size:10px;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:#1b232c;color:#a7b2bd;font-weight:800}.session-count.online{background:#10291d;color:#71d69e}.status-toggle{min-height:32px;display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border:1px solid #36414c;border-radius:999px;background:#171e26;color:#9da8b3;cursor:pointer;font-size:11px;font-weight:750}.status-toggle>span{width:8px;height:8px;border-radius:50%;background:#687482}.status-toggle.on{border-color:#22523b;background:#11271c;color:#82dbaa}.status-toggle.on>span{background:var(--ok);box-shadow:0 0 9px rgba(68,207,138,.4)}.btn-ghost-danger{background:transparent!important;border-color:#47292d!important;color:#e68d91!important}.btn-ghost-danger:hover{background:#2a171a!important;border-color:#67373c!important}.admin-user-mobile-list{display:none}
.modal-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.modal-title-row h2{margin:2px 0 3px}.modal-title-row p{margin:0;font-size:12px}.modal-x{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#161d25;color:#aeb8c3;font-size:21px;cursor:pointer}.permission-section{margin-top:6px}.permission-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:8px}.permission-head label{margin:0}.permission-head small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.device-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px}.permission-tile{position:relative;padding:11px;border:1px solid #27323d;border-radius:11px;background:#0c1117;cursor:pointer}.permission-tile input{position:absolute;opacity:0}.permission-check{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;border:1px solid #36424e;color:transparent;background:#151c24}.permission-tile input:checked+.permission-check{background:var(--accent);border-color:var(--accent);color:#17100a}.permission-tile>span:last-child{display:grid;gap:2px}.permission-tile strong{font-size:12px}.permission-tile small{color:var(--muted);font-size:9px}.user-status-box{padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#0e141a;margin-top:10px}.user-status-box label{margin:0}.user-status-box label>span{display:grid;gap:2px}.user-status-box small{color:var(--muted);font-size:10px}.form-switch-box{display:flex;align-items:end;padding-bottom:4px}.form-switch-box label{margin:0}.form-image-preview{height:160px;margin-top:10px;border:1px dashed #34404c;border-radius:13px;background:#080c11 center/contain no-repeat}
.admin-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:16px}.admin-device-card{padding:0;overflow:hidden}.admin-device-thumb{height:165px;display:grid;place-items:center;background:#080c11 center/contain no-repeat;border-bottom:1px solid var(--line-soft);color:#46515e;font-size:34px}.admin-device-body{padding:16px}.device-admin-head>div{min-width:0;display:grid;gap:3px}.device-admin-head small{color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-device-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.admin-device-stats span{padding:8px;border:1px solid var(--line-soft);border-radius:10px;background:#0c1117;color:#788491;text-align:center;font-size:10px}.admin-device-stats b{display:block;color:#fff;font-size:16px}.admin-folder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line-soft);border-radius:14px;background:#0c1117;margin-bottom:15px}.admin-folder-toolbar>div:first-child{display:grid;gap:2px}.admin-folder-toolbar small{color:var(--muted);font-size:10px}.admin-folder-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.admin-catalog-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;cursor:default}.catalog-item-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#1a222c;color:var(--accent2);font-size:17px}.catalog-item-icon.folder{background:#2a2114;color:#ffb45c}.catalog-item-content{min-width:0}.catalog-item-content p{font-size:11px;margin:7px 0 12px}.admin-banner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.admin-banner-card .banner-preview{height:150px}.admin-banner-card .device-admin-head{margin-bottom:13px}
.audit-action{display:inline-flex;padding:5px 8px;border-radius:8px;background:#182028;color:#c4cdd6;font-size:11px}code{padding:3px 6px;border-radius:6px;background:#0a0e13;color:#aeb9c4;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px}
@media(max-width:1250px){.admin-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.admin-dashboard-grid{grid-template-columns:1fr}.activity-list{grid-template-columns:1fr}.activity-row:nth-child(odd){border-right:0}.admin-folder-toolbar{align-items:stretch;flex-direction:column}.filter-search.compact{max-width:none}.admin-filterbar select{flex:1;min-width:145px}}
@media(max-width:800px){.admin-metrics{grid-template-columns:repeat(2,1fr);gap:9px}.admin-metric{grid-template-columns:36px minmax(0,1fr);padding:12px}.admin-metric-icon{width:36px;height:36px}.admin-metric-copy strong{font-size:21px}.admin-metric-arrow{display:none}.admin-user-table{display:none}.admin-user-mobile-list{display:grid;gap:10px}.admin-user-mobile{padding:13px}.admin-user-mobile-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-user-facts{display:flex;gap:8px;margin:11px 0 7px}.admin-user-facts span{padding:6px 9px;border:1px solid var(--line-soft);border-radius:9px;color:var(--muted);font-size:10px}.admin-user-facts b{color:#fff}.device-permission-grid{grid-template-columns:1fr}.permission-head{align-items:flex-start;flex-direction:column}.admin-catalog-grid{grid-template-columns:1fr}.admin-device-thumb{height:180px}.admin-folder-grid{grid-template-columns:1fr}.admin-catalog-item{grid-template-columns:40px minmax(0,1fr)}.catalog-item-icon{width:40px;height:40px}.admin-banner-grid{grid-template-columns:1fr}.admin-filterbar{align-items:stretch}.admin-filterbar select{width:100%;flex:auto}.admin-result-count{margin-left:0}.filter-search{min-width:100%}}
@media(max-width:520px){.admin-metrics{grid-template-columns:1fr 1fr}.admin-metric-copy em{display:none}.admin-metric{padding:11px}.admin-metric-icon{width:34px;height:34px}.admin-metric-copy strong{font-size:19px}.admin-list-row{padding:11px 13px}.admin-list-row time{display:none}.admin-panel-head{padding:13px}.admin-user-mobile-head{align-items:flex-start;flex-direction:column}.admin-user-mobile-head .status-toggle{align-self:flex-start}.admin-device-stats{grid-template-columns:repeat(3,1fr)}.admin-folder-toolbar{padding:11px}.admin-catalog-item{padding:13px}.modal-title-row p{display:none}}


/* ================================================================
   v2.16 — Controle do limite mensal de acessos
   ================================================================ */
.access-quota{
    display:inline-flex;
    align-items:baseline;
    gap:2px;
    min-width:58px;
    padding:7px 10px;
    border:1px solid #2d3945;
    border-radius:10px;
    background:#121820;
    color:#aeb9c5;
    font-size:12px;
}
.access-quota b{
    color:#fff;
    font-size:15px;
}
.access-quota.limit{
    border-color:rgba(239,91,91,.45);
    background:rgba(239,91,91,.08);
}
.access-quota.limit b{
    color:#ff8e8e;
}
.access-limit-text{
    display:block;
    margin-top:5px;
    color:#ff8181;
    font-size:10px;
    font-weight:700;
}
.btn-access-reset{
    border-color:rgba(255,121,0,.48)!important;
    background:rgba(255,121,0,.11)!important;
    color:#ffad61!important;
}
.admin-summary-chips .danger{
    border-color:rgba(239,91,91,.35);
    color:#ff9b9b;
}
.limit-fact{
    color:#ff9292!important;
}
.access-control-panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 18px;
    padding:14px 16px;
    border:1px solid #2b3743;
    border-radius:14px;
    background:#10161d;
}
.access-control-panel>div{
    display:grid;
    gap:3px;
}
.access-control-panel strong{
    font-size:22px;
    color:#fff;
}
.access-control-panel small{
    color:var(--muted);
    line-height:1.4;
}
.access-control-panel.limit{
    border-color:rgba(239,91,91,.35);
    background:rgba(239,91,91,.055);
}
.access-control-panel.limit strong{
    color:#ff8d8d;
}
@media(max-width:700px){
    .access-control-panel{
        align-items:stretch;
        flex-direction:column;
    }
    .access-control-panel .btn{
        width:100%;
    }
}
\n\n/* ================================================================\n   v2.17 — Atalho para usuários no limite de acesso\n   ================================================================ */\n.btn-limit-shortcut,\n.limit-filter-toggle{\n    border-color:rgba(239,91,91,.42)!important;\n    background:rgba(239,91,91,.08)!important;\n    color:#ff9a9a!important;\n}\n.btn-limit-shortcut:hover,\n.limit-filter-toggle:hover,\n.btn-limit-shortcut.active,\n.limit-filter-toggle.active{\n    border-color:rgba(255,121,0,.55)!important;\n    background:rgba(255,121,0,.12)!important;\n    color:#ffb16a!important;\n}\n.filter-active-label{\n    font-weight:800;\n}\n@media(max-width:800px){\n    .admin-filterbar .limit-filter-toggle{\n        width:100%;\n    }\n}\n

/* ================================================================
   v2.18 — Uploads de aparelhos e manuais
   ================================================================ */
.upload-source-card{padding:14px;border:1px solid #29343f;border-radius:14px;background:#0d1319}.upload-source-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.upload-source-head label{margin:0}.upload-source-head small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.source-tabs{display:flex;gap:7px;margin-bottom:12px}.source-tab{min-height:36px;padding:8px 13px;border:1px solid #2e3945;border-radius:10px;background:#151c24;color:#aeb8c4;font-weight:750;cursor:pointer}.source-tab.active{border-color:rgba(255,121,0,.5);background:rgba(255,121,0,.11);color:#ffad61}.source-panel.hidden,.upload-source-card .hidden{display:none!important}.file-drop{min-height:120px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:18px;border:1px dashed #40505f;border-radius:12px;background:#090e13;cursor:pointer;text-align:center;transition:.16s}.file-drop:hover{border-color:rgba(255,121,0,.65);background:rgba(255,121,0,.035)}.file-drop input{display:none}.file-drop-icon{font-size:25px;color:var(--accent2)}.file-drop strong{font-size:13px}.file-drop small{max-width:520px;color:var(--muted);font-size:10px;line-height:1.45}.selected-file,.resource-existing{display:flex;align-items:center;gap:10px;margin-top:10px;padding:9px 11px;border:1px solid #27333e;border-radius:10px;background:#121920}.selected-file strong,.resource-existing strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.selected-file small,.resource-existing small{margin-left:auto;color:var(--muted);font-size:10px}.resource-existing>span{color:var(--muted);font-size:10px}.form-image-preview.large{height:210px;background-color:#080c11}.manual-file-card{max-width:760px;margin:0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px}.manual-file-icon{width:58px;height:58px;display:grid;place-items:center;border:1px solid #34414e;border-radius:14px;background:#151d26;color:var(--accent2);font-size:12px;font-weight:900}.manual-file-card p{margin:4px 0 0}.manual-file-card .btn{white-space:nowrap}
@media(max-width:700px){.upload-source-head{flex-direction:column}.source-tabs{display:grid;grid-template-columns:1fr 1fr}.source-tab{width:100%}.form-image-preview.large{height:170px}.manual-file-card{grid-template-columns:auto 1fr}.manual-file-card .btn{grid-column:1/-1;width:100%}.selected-file,.resource-existing{align-items:flex-start;flex-direction:column}.selected-file small,.resource-existing small{margin-left:0}}


/* v2.19 — Downloads protegidos */
.download-grid,.download-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}
.download-card,.download-admin-card{display:flex;gap:15px;align-items:flex-start}
.download-card-body{min-width:0;flex:1}
.download-file-icon{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border:1px solid #364351;border-radius:14px;background:#0b1117;color:#ff9c43;font-size:12px;font-weight:900;letter-spacing:.04em}
.download-title-row,.download-admin-head{display:flex;align-items:center;gap:10px}
.download-title-row{justify-content:space-between}
.download-meta{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}
.download-meta span{padding:5px 8px;border:1px solid #293440;border-radius:8px;background:#0d1319;color:#9faab6;font-size:11px}
.download-integrity{display:flex;align-items:center;gap:8px;margin:10px 0 14px;color:#73808e}
.download-integrity code,.download-admin-stats code{font-size:10px;color:#aeb9c4}
.download-filterbar{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:10px;margin-bottom:18px}
.download-admin-card{display:block}
.download-admin-head{margin-bottom:10px}
.download-admin-head>div:nth-child(2){min-width:0;flex:1;display:grid;gap:3px}
.download-admin-head small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.download-admin-stats{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0;color:var(--muted);font-size:11px}
.download-admin-stats b{color:#fff}
.upload-current{display:grid;gap:4px;margin-top:8px;color:var(--muted);font-size:11px}
.upload-current strong{color:#fff;font-size:12px}

/* v2.19 — Marca d'água e proteção do manual */
.protected-manual-surface{position:relative!important;isolation:isolate}
.manual-watermark{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:hidden;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));grid-auto-rows:90px;align-items:center;justify-items:center;opacity:.20;mix-blend-mode:screen}
.manual-watermark span{display:block;white-space:nowrap;color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em;transform:rotate(-27deg);text-shadow:0 1px 2px rgba(0,0,0,.8)}
.manual-watermark-image{border-radius:inherit}
.manual-watermark-lightbox{position:absolute!important;inset:0!important;z-index:20!important;opacity:.24}
.manual-watermark-pdf{z-index:10;opacity:.19}
.manual-watermark-video{z-index:10}
.manual-watermark-text{z-index:2;opacity:.12}
.manual-image-button{position:relative!important}
.manual-document-stage iframe,.manual-document-stage video{position:relative;z-index:1}
.manual-protection-strip{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:9px 12px;border:1px solid rgba(255,121,0,.18);border-radius:11px;background:rgba(255,121,0,.045);color:#ff9d48;font-size:11px}
.manual-protection-strip small{color:#8f9aa7}
.protected-note{display:inline-flex;align-items:center;padding:8px 10px;border-radius:10px;color:#9ba7b4;font-size:11px}
.manual-privacy-shield{display:none;position:fixed;inset:0;z-index:10050;background:#06080b;align-items:center;justify-content:center;text-align:center;padding:30px}
.manual-privacy-shield>div{display:grid;gap:8px}
.manual-privacy-shield strong{font-size:22px;color:#fff}
.manual-privacy-shield span{color:#7f8a96;font-size:12px}
.manual-privacy-hidden .manual-privacy-shield,.capture-shield-active .manual-privacy-shield{display:flex}
.manual-privacy-hidden .viewer-manual>*:not(.manual-privacy-shield),.capture-shield-active .viewer-manual>*:not(.manual-privacy-shield){visibility:hidden}
.viewer-manual img{-webkit-user-drag:none;user-select:none}
@media print{
    .viewer-manual>*:not(.manual-privacy-shield){display:none!important}
    .manual-privacy-shield{display:flex!important;position:fixed!important;inset:0!important;background:#fff!important;color:#000!important}
    .manual-privacy-shield strong,.manual-privacy-shield span{color:#000!important}
}
@media(max-width:800px){
    .download-filterbar{grid-template-columns:1fr}
    .download-grid,.download-admin-grid{grid-template-columns:1fr}
    .manual-watermark{grid-template-columns:repeat(2,minmax(120px,1fr));grid-auto-rows:78px}
    .manual-watermark span{font-size:9px}
    .manual-protection-strip{align-items:flex-start;flex-direction:column;gap:3px}
}

/* ================================================================
   v2.20 — Central de comunicação, promoções e administradores
   ================================================================ */
.notification-bell{
    position:relative;display:inline-grid;place-items:center;width:42px;height:42px;
    border:1px solid var(--line);border-radius:12px;background:#0d1117;color:#fff;
    cursor:pointer;font-size:17px;transition:.18s ease
}
.notification-bell:hover{border-color:rgba(255,121,0,.55);background:#131922;transform:translateY(-1px)}
.notification-bell b{
    position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 5px;
    display:grid;place-items:center;border:2px solid #080a0d;border-radius:999px;
    background:#ff7900;color:#fff;font-size:9px;line-height:1
}
.notification-panel{
    position:fixed;z-index:12000;right:22px;top:70px;width:min(430px,calc(100vw - 28px));
    max-height:min(690px,calc(100vh - 92px));display:flex;flex-direction:column;
    border:1px solid #2a3540;border-radius:18px;background:#0b0f14;
    box-shadow:0 24px 70px rgba(0,0,0,.58);overflow:hidden
}
.notification-panel-head{
    display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 17px;
    border-bottom:1px solid #202934;background:#0e1319
}
.notification-panel-head>div{display:grid;gap:2px}
.notification-panel-head strong{font-size:15px;color:#fff}
.notification-panel-head small{font-size:10px;color:var(--muted)}
.notification-close,.promotion-close{
    width:34px;height:34px;display:grid;place-items:center;border:1px solid #303b47;
    border-radius:10px;background:#10161d;color:#cdd5dd;cursor:pointer;font-size:21px
}
.notification-tools{display:flex;flex-wrap:wrap;gap:8px;padding:11px 14px;border-bottom:1px solid #1c252f}
.btn-small{min-height:32px!important;padding:6px 10px!important;font-size:10px!important}
.push-on{border-color:rgba(62,201,128,.4)!important;color:#80ddb0!important}
.notification-list{overflow:auto;overscroll-behavior:contain}
.notification-item{
    width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) 8px;gap:11px;
    align-items:start;padding:13px 15px;border:0;border-bottom:1px solid #19212a;
    background:transparent;color:inherit;text-align:left;cursor:pointer
}
.notification-item:hover{background:#10161d}
.notification-item.unread{background:rgba(255,121,0,.035)}
.notification-item>span:nth-child(2){display:grid;gap:4px;min-width:0}
.notification-item strong{font-size:12px;color:#f3f6f8}
.notification-item small{font-size:10px;line-height:1.45;color:#98a3af;white-space:normal}
.notification-item time{font-size:9px;color:#697581}
.notification-item>i{width:7px;height:7px;margin-top:7px;border-radius:50%;background:#ff7900}
.notification-kind{
    width:34px;height:34px;display:grid;place-items:center;border:1px solid #34404c;
    border-radius:10px;background:#121922;color:#c9d2da;font-size:12px;font-style:normal;font-weight:800
}
.notification-kind.manual{color:#ff9e48}.notification-kind.video{color:#f2b15f}
.notification-kind.download{color:#82c6ff}.notification-kind.promotion{color:#ffd066}
.notification-kind.system{color:#aeb8ff}
.empty.compact{padding:18px!important;min-height:0!important}

/* Popup de promoção */
.promotion-backdrop{
    position:fixed;inset:0;z-index:13000;display:flex;align-items:center;justify-content:center;
    padding:20px;background:rgba(0,0,0,.75);backdrop-filter:blur(7px)
}
.promotion-popup{
    position:relative;width:min(610px,100%);max-height:calc(100vh - 40px);overflow:auto;
    border:1px solid #333f4b;border-radius:22px;background:#0b0f14;
    box-shadow:0 28px 90px rgba(0,0,0,.7)
}
.promotion-close{position:absolute;z-index:3;right:13px;top:13px;background:rgba(8,11,15,.86)}
.promotion-image{width:100%;aspect-ratio:16/8;overflow:hidden;background:#090d12}
.promotion-image img{display:block;width:100%;height:100%;object-fit:cover}
.promotion-body{padding:24px;display:grid;gap:12px}
.promotion-body h2{margin:0;font-size:25px;line-height:1.15;color:#fff}
.promotion-body p{margin:0 0 5px;line-height:1.6;color:#b0bac4;white-space:pre-wrap}
.promotion-body .promotion-action{justify-self:start;min-width:150px;margin-top:4px}
.promotion-never{
    justify-self:start;border:0;background:none;color:#737f8b;font-size:10px;padding:3px 0;
    cursor:pointer;text-decoration:underline;text-underline-offset:3px
}
.promotion-never:hover{color:#aeb8c2}

/* Administração da comunicação */
.communication-stats{
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px
}
.communication-stats .card{padding:15px;display:grid;gap:4px}
.communication-stats small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.communication-stats strong{font-size:24px;color:#fff}
.communication-list{display:grid;gap:12px}
.communication-card{padding:16px}
.communication-card-head{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center}
.communication-card-head>div{display:grid;gap:3px;min-width:0}
.communication-card-head strong{color:#fff}
.communication-card-head small{color:var(--muted);font-size:10px}
.communication-card>p{margin:12px 0;color:#a9b3bd;font-size:11px;line-height:1.55}
.communication-progress{height:5px;border-radius:999px;background:#1b242d;overflow:hidden}
.communication-progress span{display:block;height:100%;border-radius:inherit;background:#ff7900}
.communication-meta{display:flex;flex-wrap:wrap;gap:12px;margin:9px 0 12px;color:#77838f;font-size:10px}
.communication-meta b{color:#d9e0e7}
.notification-options,.promotion-options,.publish-notify-option{display:grid;gap:8px}
.notification-options .check,.promotion-options .check,.publish-notify-option .check{
    align-items:flex-start;padding:12px;border:1px solid #29343f;border-radius:12px;background:#0e141a
}
.notification-options .check span,.promotion-options .check span,.publish-notify-option .check span{display:grid;gap:2px}
.notification-options .check small,.promotion-options .check small,.publish-notify-option .check small{font-size:10px;color:var(--muted);font-weight:400}
.comm-user-search{margin-bottom:8px}
.comm-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:260px;overflow:auto;padding:2px}
.comm-user-tile{align-items:flex-start!important;padding:9px 10px!important;border:1px solid #26313c;border-radius:10px;background:#0c1218}
.comm-user-tile span{display:grid;gap:2px;min-width:0}
.comm-user-tile strong{font-size:10px;color:#e3e8ed;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.comm-user-tile small{font-size:9px;color:#76828e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Promoções no admin */
.promotion-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px}
.promotion-admin-card{padding:0;overflow:hidden;display:grid;grid-template-columns:140px minmax(0,1fr)}
.promotion-admin-image{min-height:190px;background:#0b1117;display:grid;place-items:center;overflow:hidden;color:#ff9c43;font-size:28px}
.promotion-admin-image img{width:100%;height:100%;object-fit:cover}
.promotion-admin-body{padding:15px;min-width:0}
.promotion-admin-stats{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.promotion-admin-stats span{padding:6px 8px;border:1px solid #26313c;border-radius:8px;color:#84909c;font-size:9px}
.promotion-admin-stats b{color:#e6ebef}
.promotion-upload{margin-top:8px}
.promotion-form-preview{margin-top:9px;height:150px;border:1px solid #2a3540;border-radius:12px;background-position:center;background-repeat:no-repeat;background-size:contain;background-color:#080c10}

/* Administradores e permissões */
.admin-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:14px}
.admin-admin-card{display:grid;gap:14px}
.admin-admin-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}
.admin-admin-head>div{display:grid;gap:2px;min-width:0}
.admin-admin-head strong{color:#fff}.admin-admin-head small{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis}
.badge.super{border-color:rgba(255,179,74,.36);background:rgba(255,179,74,.08);color:#ffc46f}
.admin-permission-tags{display:flex;flex-wrap:wrap;gap:6px}
.admin-permission-tags span{padding:5px 7px;border:1px solid #28333e;border-radius:7px;background:#0c1218;color:#a1acb7;font-size:9px}
.admin-admin-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #202933;padding-top:12px}
.status-text{font-size:10px;color:#76828d}.status-text.on{color:#7ed6a7}
.protected-admin{font-size:10px}
.admin-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-permission-tile{position:relative;align-items:flex-start!important;padding:12px!important;border:1px solid #2a3540;border-radius:12px;background:#0d1319}
.admin-permission-tile>input{margin-top:2px}
.admin-permission-tile>span:last-child{display:grid;gap:2px}
.admin-permission-tile strong{font-size:11px;color:#e4e9ee}.admin-permission-tile small{font-size:9px;line-height:1.35;color:#7f8b96;font-weight:400}
.permission-check{display:none}

@media(max-width:800px){
    .notification-panel{right:10px;top:66px;width:calc(100vw - 20px);max-height:calc(100vh - 78px)}
    .communication-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
    .promotion-admin-grid,.admin-admin-grid{grid-template-columns:1fr}
    .promotion-admin-card{grid-template-columns:1fr}
    .promotion-admin-image{min-height:165px;max-height:220px}
    .comm-user-grid,.admin-permission-grid{grid-template-columns:1fr}
    .promotion-body{padding:20px}
    .promotion-body h2{font-size:21px}
}
@media(max-width:520px){
    .topbar-actions{gap:6px}
    .notification-bell{width:39px;height:39px;border-radius:11px}
    .communication-stats{grid-template-columns:1fr 1fr;gap:8px}
    .communication-stats .card{padding:12px}
    .communication-stats strong{font-size:20px}
    .communication-card-head{grid-template-columns:36px minmax(0,1fr)}
    .communication-card-head .status-toggle{grid-column:1/-1;justify-self:start}
    .promotion-backdrop{padding:10px}
    .promotion-popup{max-height:calc(100vh - 20px);border-radius:17px}
    .promotion-image{aspect-ratio:16/9}
    .admin-admin-footer{align-items:flex-start;flex-direction:column}
}


/* ================================================================
   v2.21 — PWA, favoritos, busca global, suporte, analytics e backup
   ================================================================ */
.pwa-install-button{border:1px solid rgba(255,121,0,.4);background:rgba(255,121,0,.08);color:#ff9d48;border-radius:10px;padding:8px 11px;font-weight:700;cursor:pointer}.favorite-corner{position:absolute;z-index:5;right:10px;top:10px;width:34px;height:34px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:rgba(4,7,10,.82);color:#ffb36e;font-size:18px;cursor:pointer}.device-card{position:relative}.favorite-type{display:inline-flex;align-self:flex-start;padding:5px 8px;border-radius:8px;background:#111820;border:1px solid #293540;color:#9ba8b4;font-size:10px}.favorite-card{display:grid;gap:10px}.history-list{padding:0;overflow:hidden}.history-row{width:100%;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:13px 15px;border:0;border-bottom:1px solid #202a34;background:transparent;color:inherit;text-align:left;cursor:pointer}.history-row:last-child{border-bottom:0}.history-row:hover{background:#0e141b}.history-row span:nth-child(2){display:grid;gap:3px}.history-row small{color:var(--muted)}.history-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#10171e;color:#ff9839}.global-search-section{margin-top:22px}.global-search-section .section-title span{color:var(--muted);font-size:12px}.no-result-search{border-color:rgba(255,121,0,.2)}
.support-list{display:grid;gap:10px}.support-ticket-row{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:16px;cursor:pointer}.support-ticket-row>div{display:grid;gap:5px}.support-ticket-row small{color:var(--muted)}.support-status{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;background:#1a232c;color:#a8b2bd}.support-status.open{background:rgba(255,121,0,.1);color:#ff9c42}.support-status.in_progress{background:rgba(74,144,226,.12);color:#8ebcf2}.support-status.resolved{background:rgba(62,190,117,.1);color:#7cdaa4}.support-thread{display:grid;gap:12px;margin-bottom:16px}.support-message{max-width:82%;padding:13px 15px;border-radius:15px;background:#111820;border:1px solid #26313b}.support-message.from-admin{margin-left:auto;border-color:rgba(255,121,0,.25);background:rgba(255,121,0,.055)}.support-message>div{display:flex;justify-content:space-between;gap:14px;margin-bottom:7px}.support-message time{font-size:10px;color:var(--muted)}.support-message p{white-space:pre-wrap;margin:0;line-height:1.5}.support-message img{max-width:340px;max-height:260px;margin-top:10px;border-radius:10px}.support-reply{display:grid;gap:9px}.support-admin-status{margin-top:16px}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.analytics-rank h3{margin-top:0}.rank-row{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #202933}.rank-row:last-child{border-bottom:0}.rank-row>b{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#121a22;color:#ff9b40}.rank-row>span{display:grid;gap:2px}.rank-row small{color:var(--muted)}.rank-row em{font-style:normal;font-weight:800;color:#fff}.backup-warning{border-color:rgba(255,121,0,.22);margin-bottom:16px}.backup-warning p,.backup-danger p{color:var(--muted)}.backup-danger{padding:14px;border-radius:12px;background:rgba(230,75,75,.06);border:1px solid rgba(230,75,75,.25);margin-bottom:14px}.backup-danger strong{color:#ff9797}
@media(max-width:800px){.pwa-install-button{font-size:0;padding:9px}.pwa-install-button::before{content:'⬇';font-size:15px}.analytics-grid{grid-template-columns:1fr}.support-ticket-row{align-items:flex-start}.support-message{max-width:94%}}


/* v2.21.4 — instalação PWA no iPhone */
.ios-install-hint{position:fixed;right:18px;bottom:18px;z-index:10020;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;width:min(520px,calc(100vw - 28px));padding:13px 14px;border:1px solid rgba(255,121,0,.38);border-radius:16px;background:rgba(10,14,19,.97);box-shadow:0 18px 50px rgba(0,0,0,.45);backdrop-filter:blur(14px)}
.ios-install-hint-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(255,121,0,.12);color:#ff912e;font-size:22px}
.ios-install-hint>div:nth-child(3){min-width:0;display:grid;gap:3px}.ios-install-hint strong{color:#fff}.ios-install-hint small{color:var(--muted);font-size:11px}.ios-install-hint-close{position:absolute;right:5px;top:3px;width:25px;height:25px;border:0;background:transparent;color:#7f8b97;font-size:19px;cursor:pointer}.ios-install-hint-action{margin-right:16px;white-space:nowrap}
.ios-install-backdrop{position:fixed;inset:0;z-index:10100;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.76);backdrop-filter:blur(5px)}
.ios-install-guide{position:relative;width:min(510px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:26px;border:1px solid #2b3743;border-radius:20px;background:#0b1016;box-shadow:0 25px 80px rgba(0,0,0,.6)}
.ios-install-guide-close{position:absolute;right:12px;top:10px;width:35px;height:35px;border:1px solid #27313b;border-radius:10px;background:#10171e;color:#cbd4dd;font-size:22px;cursor:pointer}.ios-install-guide-apple{width:52px;height:52px;display:grid;place-items:center;margin-bottom:15px;border-radius:15px;background:rgba(255,121,0,.11);color:#ff922e;font-size:29px}.ios-install-guide h2{margin:5px 0 18px;color:#fff}.ios-install-browser-note{display:grid;gap:4px;margin:0 0 15px;padding:11px 13px;border:1px solid rgba(255,121,0,.25);border-radius:12px;background:rgba(255,121,0,.055)}.ios-install-browser-note strong{color:#ff9d48}.ios-install-browser-note small{color:var(--muted)}
.ios-install-steps{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ios-install-steps li{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:10px;padding:11px 12px;border:1px solid #26313c;border-radius:12px;background:#0e151c;color:#c6d0da}.ios-install-steps li>b{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:rgba(255,121,0,.12);color:#ff9738}.ios-install-steps i{font-style:normal;color:#ff9d48}.ios-install-guide-foot{margin:15px 0;color:var(--muted);font-size:12px;line-height:1.55}.ios-install-done{width:100%}
@media(max-width:700px){.ios-install-hint{left:14px;right:14px;bottom:14px;width:auto;grid-template-columns:38px 1fr}.ios-install-hint-icon{width:38px;height:38px}.ios-install-hint-action{grid-column:1/-1;margin:0;width:100%}.ios-install-guide{padding:22px 18px}.pwa-install-button{font-size:11px!important;padding:8px 10px!important}.pwa-install-button::before{content:none!important}}
