/* =========================================================
   NOVAPEX FRONTEND STABLE PRO 2.2
   Professional UI / UX full stylesheet
========================================================= */

:root{
    --np-bg:#f8fafc;--np-white:#fff;--np-dark:#020617;--np-slate:#0f172a;--np-text:#172033;--np-muted:#64748b;--np-line:#e2e8f0;
    --np-blue:#2563eb;--np-blue2:#1d4ed8;--np-green:#22c55e;--np-red:#ef4444;--np-amber:#f59e0b;
    --np-radius:24px;--np-radius-lg:34px;--np-pill:999px;--np-shadow:0 26px 80px rgba(15,23,42,.10);--np-shadow-strong:0 42px 130px rgba(15,23,42,.22);
    --np-container:1240px;
}
html{scroll-behavior:auto!important}body{margin:0!important;overflow-x:hidden!important;background:radial-gradient(circle at 8% 2%,rgba(37,99,235,.14),transparent 32rem),radial-gradient(circle at 92% 8%,rgba(34,197,94,.10),transparent 32rem),#f8fafc!important;color:var(--np-text)}
#novapex-frontend-app,.np-site{width:100%;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--np-text)}.np-site,.np-site *{box-sizing:border-box}.np-site button,.np-site input,.np-site select,.np-site textarea{font:inherit}.np-site button{cursor:pointer;-webkit-tap-highlight-color:transparent}.np-site svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.np-loading-shell{min-height:40vh;display:grid;place-items:center;gap:8px;color:#0f172a}.np-loading-shell strong{font-size:34px;letter-spacing:-.06em}.np-loading-shell span{color:#64748b;font-weight:800}.np-reveal{opacity:0;transform:translateY(22px);transition:.65s ease}.np-reveal.is-visible{opacity:1;transform:none}

/* Header */
.np-header{position:sticky;top:0;z-index:99999;padding:12px 14px;background:rgba(248,250,252,.76);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(226,232,240,.7)}
.np-header-inner{width:min(var(--np-container),100%);margin:0 auto;min-height:66px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.np-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--np-slate);min-width:0}.np-brand>span{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#020617,#1d4ed8);font-weight:1000;font-size:21px;box-shadow:0 18px 48px rgba(37,99,235,.26)}.np-brand strong{display:grid;font-weight:1000;letter-spacing:-.04em;line-height:1}.np-brand small{margin-top:4px;color:var(--np-muted);font-size:11px;font-weight:850;letter-spacing:0;white-space:nowrap}.np-main-nav{justify-self:center;display:flex;gap:4px;background:rgba(255,255,255,.78);border:1px solid rgba(226,232,240,.9);border-radius:var(--np-pill);padding:6px;box-shadow:0 18px 44px rgba(15,23,42,.06)}.np-main-nav button{height:38px;border:0;border-radius:var(--np-pill);padding:0 14px;background:transparent;color:#334155;font-size:13px;font-weight:950}.np-main-nav button:hover{background:#111827;color:#fff}.np-actions{display:flex;gap:8px;align-items:center;justify-self:end}.np-header-action{position:relative}.np-action-btn,.np-mobile-toggle{min-height:46px;border:1px solid rgba(226,232,240,.94);border-radius:var(--np-pill);background:rgba(255,255,255,.93);box-shadow:0 16px 44px rgba(15,23,42,.08);color:#0f172a;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-weight:950}.np-action-btn:hover,.np-mobile-toggle:hover{transform:translateY(-1px);box-shadow:0 24px 58px rgba(15,23,42,.12)}.np-search-btn{width:46px;padding:0}.np-mobile-toggle{display:none;width:48px;padding:0}.np-mini-grid{display:grid;width:18px;height:18px;grid-template-columns:repeat(2,1fr);gap:3px}.np-mini-grid i{background:currentColor;border-radius:5px}.np-avatar{width:34px;height:34px;border-radius:999px;display:inline-grid;place-items:center;background:linear-gradient(135deg,#020617,#2563eb);color:#fff;font-weight:1000;flex:none}.np-avatar.big{width:78px;height:78px;font-size:30px}.np-account-btn{padding-left:8px}

/* Floating panels */
.np-float{position:fixed!important;right:5px;top:90px;width:min(460px,calc(100vw - 10px));max-height:calc(100vh - 105px);overflow:auto;z-index:100000;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.96));border:1px solid rgba(226,232,240,.92);border-radius:30px;padding:14px;box-shadow:0 34px 110px rgba(15,23,42,.22);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.np-account-panel{width:min(405px,calc(100vw - 10px))}.np-float-head{padding:10px 10px 12px;display:grid;gap:4px}.np-float-head strong{font-size:20px;color:#0f172a;font-weight:1000;letter-spacing:-.04em}.np-float-head small{font-size:12px;line-height:1.55;color:var(--np-muted);font-weight:750}.np-service-row{width:100%;border:1px solid transparent;background:transparent;border-radius:22px;padding:12px;display:grid;grid-template-columns:48px 1fr;gap:12px;text-align:left;align-items:center;color:#0f172a}.np-service-row:hover{background:#fff;border-color:#e2e8f0;box-shadow:0 16px 38px rgba(15,23,42,.07);transform:translateX(2px)}.np-service-row>span{width:48px;height:48px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8}.np-service-row b{display:grid;gap:4px;font-size:14px;font-weight:1000}.np-service-row small{color:var(--np-muted);font-size:12px;line-height:1.45;font-weight:700}.np-search-input{width:100%;height:54px;border-radius:999px;border:1px solid #cbd5e1;padding:0 18px;background:#fff;outline:none;font-weight:850;color:#0f172a;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 14px 34px rgba(15,23,42,.06);margin:0 0 10px}.np-search-input:focus{border-color:#2563eb;box-shadow:0 0 0 5px rgba(37,99,235,.13)}

/* Mobile menu */
.np-mobile-menu{position:fixed;top:84px;left:5px;right:5px;z-index:100000;background:#fff;border:1px solid #e2e8f0;border-radius:26px;padding:12px;box-shadow:0 34px 110px rgba(15,23,42,.22)}.np-mobile-menu button{width:100%;min-height:48px;border:0;border-radius:16px;background:transparent;text-align:left;padding:0 14px;font-weight:950;color:#334155}.np-mobile-menu button:hover{background:#f1f5f9;color:#1d4ed8}

/* Auth */
.np-auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:5px;margin:8px 0 12px;gap:5px}.np-auth-tabs button{height:42px;border:0;border-radius:999px;background:transparent;font-weight:1000;color:#475569}.np-auth-tabs .active{background:#111827;color:#fff}.np-auth-form{display:grid;gap:10px}.np-auth-form input{height:48px;border:1px solid #cbd5e1;border-radius:16px;padding:0 14px;outline:none;font-weight:800}.np-auth-form input:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}.np-auth-form button,.np-submit{min-height:50px;border:0;border-radius:999px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:1000;box-shadow:0 20px 50px rgba(37,99,235,.28)}.np-auth-form .link{background:transparent;color:#2563eb;box-shadow:none}.np-user-card{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:10px;margin-bottom:10px}.np-user-card b{display:grid;line-height:1.2;min-width:0}.np-user-card small{color:#64748b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.np-account-link,.np-logout{width:100%;min-height:45px;border:0;border-radius:16px;background:transparent;color:#334155;display:flex;align-items:center;gap:10px;padding:0 12px;font-weight:950;text-align:left}.np-account-link:hover{background:#f1f5f9;color:#1d4ed8}.np-account-link span{display:grid;place-items:center}.np-logout{justify-content:center;margin-top:8px;background:#fee2e2;color:#991b1b}.np-error,.np-note{padding:12px 14px;border-radius:16px;margin:10px 0 0;font-weight:800;line-height:1.55}.np-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.np-note{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}

/* Main homepage */
.np-main{width:min(var(--np-container),calc(100% - 28px));margin:0 auto;padding:24px 0 0}.np-pill{display:inline-flex;width:fit-content;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:8px 12px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:1000}.np-hero{min-height:calc(100vh - 120px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.65fr);gap:clamp(24px,5vw,58px);align-items:center;padding:clamp(38px,7vw,92px) 0}.np-hero h1{margin:18px 0;font-size:clamp(48px,8vw,104px);line-height:.88;letter-spacing:-.09em;background:linear-gradient(135deg,#020617,#0f172a 45%,#1d4ed8);-webkit-background-clip:text;background-clip:text;color:transparent}.np-hero p{max-width:760px;color:#475569;font-size:clamp(17px,2vw,21px);line-height:1.8;font-weight:650;margin:0}.np-hero-actions,.np-contact>div,.np-proof{display:flex;flex-wrap:wrap;gap:12px}.np-hero-actions{margin-top:28px}.np-hero-actions button,.np-feature-grid button,.np-care-grid button,.np-contact button{min-height:54px;border:0;border-radius:999px;padding:0 22px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:1000;box-shadow:0 22px 56px rgba(37,99,235,.28)}.np-hero-actions .dark,.np-contact button:nth-child(2){background:linear-gradient(135deg,#111827,#334155);box-shadow:0 18px 46px rgba(15,23,42,.2)}.np-hero-actions button:hover,.np-feature-grid button:hover,.np-care-grid button:hover,.np-contact button:hover,.np-submit:hover{transform:translateY(-2px);box-shadow:0 30px 76px rgba(37,99,235,.36)}.np-proof{margin-top:24px}.np-proof span{background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:9px 12px;color:#334155;font-size:13px;font-weight:900;box-shadow:0 14px 34px rgba(15,23,42,.06)}.np-hero-card{min-height:470px;border-radius:42px;padding:36px;color:#fff;background:radial-gradient(circle at 18% 16%,rgba(34,197,94,.42),transparent 22rem),radial-gradient(circle at 88% 10%,rgba(59,130,246,.48),transparent 20rem),linear-gradient(145deg,#020617,#0f172a 46%,#1d4ed8);box-shadow:0 45px 120px rgba(15,23,42,.3);display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.np-hero-card:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.20);border-radius:30px}.np-hero-card span,.np-hero-card strong,.np-hero-card p{position:relative;z-index:1}.np-hero-card span{font-size:12px;color:#93c5fd;font-weight:1000;letter-spacing:.12em}.np-hero-card strong{margin-top:12px;font-size:clamp(42px,5vw,66px);line-height:.92;letter-spacing:-.08em}.np-hero-card p{color:#dbeafe;font-size:16px}

/* Sections */
.np-section{margin:0 0 clamp(48px,8vw,92px)}.np-section-head{max-width:890px;margin-bottom:26px}.np-section-head h2{margin:16px 0 10px;color:#0f172a;font-size:clamp(36px,5vw,68px);line-height:.96;letter-spacing:-.075em}.np-section-head p{margin:0;color:#64748b;line-height:1.8;font-size:17px}.np-feature-grid,.np-care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.np-feature-grid article,.np-care-grid article,.np-empty-card,.np-order-card,.np-invoice-card,.np-site-card,.np-profile-box{background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,250,252,.92));border:1px solid #e2e8f0;border-radius:30px;padding:26px;box-shadow:var(--np-shadow)}.np-feature-grid article>span{width:60px;height:60px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;margin-bottom:18px}.np-feature-grid h3,.np-care-grid h3{font-size:27px;line-height:1.05;letter-spacing:-.05em;margin:0 0 10px;color:#0f172a}.np-feature-grid p,.np-care-grid p{line-height:1.75;color:#64748b;font-weight:650;margin:0 0 18px}.np-contact{padding:clamp(30px,6vw,58px);border-radius:42px;color:#fff;background:radial-gradient(circle at top right,rgba(34,197,94,.35),transparent 20rem),linear-gradient(135deg,#020617,#0f172a 45%,#1d4ed8);box-shadow:0 46px 130px rgba(15,23,42,.30);border:1px solid rgba(255,255,255,.14)}.np-contact h2{max-width:840px;margin:0 0 14px;font-size:clamp(38px,6vw,76px);line-height:.95;letter-spacing:-.08em}.np-contact p{max-width:740px;color:#dbeafe;line-height:1.75;font-size:18px}.np-footer{margin:20px 0 52px;padding:clamp(24px,4vw,38px);border-radius:34px;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,250,252,.93));border:1px solid #e2e8f0;box-shadow:0 30px 90px rgba(15,23,42,.10);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:26px}.np-footer strong{font-size:32px;letter-spacing:-.06em;color:#0f172a}.np-footer p{color:#64748b;line-height:1.7}.np-footer nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.np-footer nav button{min-height:46px;border-radius:16px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;font-weight:1000;box-shadow:0 14px 34px rgba(15,23,42,.05)}.np-footer nav button:hover{background:#111827;color:#fff;transform:translateY(-2px)}

/* Public pages */
.np-public,.np-dashboard{width:min(1280px,calc(100% - 28px));min-height:100vh;margin:0 auto;padding:88px 0}.np-back{position:fixed;top:18px;left:18px;z-index:100002;width:52px;height:52px;border:0;border-radius:999px;background:linear-gradient(135deg,#111827,#1d4ed8);color:#fff;font-size:28px;font-weight:1000;box-shadow:0 24px 70px rgba(15,23,42,.28)}.np-public-card{max-width:1020px;margin:0 auto;border-radius:38px;padding:clamp(26px,5vw,56px);background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;box-shadow:0 38px 110px rgba(15,23,42,.13)}.np-public-card h1{margin:16px 0 12px;font-size:clamp(42px,7vw,76px);line-height:.95;letter-spacing:-.075em;color:#0f172a}.np-public-card>p{font-size:17px;color:#64748b;line-height:1.8}.np-legal-list{display:grid;gap:14px;margin-top:28px}.np-legal-list article{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:18px;border-radius:22px;background:#fff;border:1px solid #e2e8f0}.np-legal-list strong{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#111827;color:#fff}.np-legal-list p{margin:0;line-height:1.7;color:#475569;font-weight:650}

/* Dashboard */
.np-dash-hero{border-radius:34px;padding:24px;color:#fff;background:radial-gradient(circle at top right,rgba(34,197,94,.30),transparent 22rem),linear-gradient(135deg,#020617,#0f172a 46%,#1d4ed8);display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;box-shadow:0 44px 125px rgba(15,23,42,.28);margin-bottom:20px}.np-dash-hero h1{margin:10px 0 6px;font-size:clamp(32px,5vw,52px);line-height:1;letter-spacing:-.06em}.np-dash-hero p{margin:0;color:#dbeafe}.np-mini-profile{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.10);padding:10px 12px}.np-mini-profile b{display:grid}.np-mini-profile small{font-size:12px;color:#bfdbfe}.np-dash-layout{display:grid;grid-template-columns:280px 1fr;gap:22px}.np-dash-tabs{position:sticky;top:20px;display:grid;gap:8px;border-radius:30px;background:#fff;border:1px solid #e2e8f0;padding:14px;box-shadow:var(--np-shadow)}.np-dash-tabs button{min-height:50px;border:0;border-radius:18px;background:transparent;color:#334155;display:flex;align-items:center;gap:10px;padding:0 14px;font-weight:1000;text-align:left}.np-dash-tabs button.active,.np-dash-tabs button:hover{background:linear-gradient(135deg,#111827,#1d4ed8);color:#fff}.np-dash-tabs svg{width:20px;height:20px}.np-dash-content{min-height:620px;border-radius:34px;background:rgba(255,255,255,.92);border:1px solid #e2e8f0;box-shadow:0 28px 90px rgba(15,23,42,.10);padding:clamp(20px,4vw,34px)}.np-tab-head{max-width:760px;margin-bottom:22px}.np-tab-head span{display:inline-flex;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:7px 11px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:1000}.np-tab-head h2{margin:12px 0 8px;font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.06em;color:#0f172a}.np-tab-head p{margin:0;color:#64748b;line-height:1.75}.np-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.np-stat-grid article{padding:22px;border-radius:26px;background:#fff;border:1px solid #e2e8f0}.np-stat-grid small{color:#64748b;font-weight:850}.np-stat-grid strong{display:block;font-size:44px;line-height:1;margin:10px 0;color:#0f172a}.np-dashboard-quick,.np-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.np-dashboard-quick button,.np-card-actions button,.np-soft-btn,.np-invoice-card button{min-height:44px;border:0;border-radius:999px;background:#111827;color:#fff;padding:0 15px;font-weight:1000}.np-order-grid,.np-sites-grid,.np-invoice-list{display:grid;gap:18px}.np-card-top{display:flex;flex-wrap:wrap;gap:8px}.np-card-top span{border-radius:999px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:6px 10px;font-size:12px;font-weight:1000}.np-order-card h3,.np-site-card h3,.np-invoice-card h3{font-size:26px;line-height:1.1;letter-spacing:-.04em;color:#0f172a;margin:14px 0 8px}.np-order-card p,.np-site-card p{color:#64748b;line-height:1.7}.np-order-card dl,.np-site-card dl,.np-profile-box dl,.np-invoice-card dl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.np-order-card dl div,.np-site-card dl div,.np-profile-box dl div,.np-invoice-card dl div{padding:12px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}.np-order-card dt,.np-site-card dt,.np-profile-box dt,.np-invoice-card dt{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-weight:1000}.np-order-card dd,.np-site-card dd,.np-profile-box dd,.np-invoice-card dd{margin:5px 0 0;color:#0f172a;font-weight:850}.np-note-box{padding:14px;border-radius:18px;background:#fff;border:1px solid #e2e8f0}.np-site-orb{width:58px;height:58px;border-radius:20px;background:linear-gradient(135deg,#dbeafe,#eff6ff);box-shadow:0 18px 45px rgba(37,99,235,.13)}.np-site-card a{color:#1d4ed8;font-weight:850}.np-message-shell{display:grid;grid-template-columns:270px 1fr;gap:18px}.np-thread-list,.np-thread-box{border:1px solid #e2e8f0;border-radius:26px;background:#fff;padding:16px}.np-thread-list{display:grid;gap:8px;align-content:start}.np-thread-list strong{font-size:12px;text-transform:uppercase;color:#64748b;letter-spacing:.08em}.np-thread-list button{min-height:42px;border:0;border-radius:14px;background:#f8fafc;text-align:left;padding:0 12px;font-weight:850;color:#334155}.np-thread-list button.active,.np-thread-list button:hover{background:#111827;color:#fff}.np-thread-box h3{font-size:28px;letter-spacing:-.05em;margin:0 0 12px}.np-chat-list{display:grid;gap:10px;max-height:360px;overflow:auto;padding-right:4px}.np-chat-bubble{max-width:78%;padding:12px 14px;border-radius:18px;background:#f1f5f9}.np-chat-bubble.client{justify-self:end;background:#dbeafe}.np-chat-bubble.admin{justify-self:start;background:#ecfdf5}.np-chat-bubble p{margin:6px 0;color:#334155;line-height:1.55}.np-chat-bubble small{color:#64748b;font-size:11px}.np-chat-form{display:grid;gap:10px;margin-top:14px}.np-chat-form textarea{min-height:96px;border:1px solid #cbd5e1;border-radius:18px;padding:14px;outline:none}.np-chat-form button{min-height:48px;border:0;border-radius:999px;background:#2563eb;color:#fff;font-weight:1000}.np-profile-box{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center}

/* Modal request */
.np-modal{position:fixed;inset:0;z-index:100001;background:rgba(15,23,42,.68);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:grid;place-items:center;padding:16px;overflow:auto}.np-modal-card{position:relative;width:min(980px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:34px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(255,255,255,.76);box-shadow:0 45px 140px rgba(15,23,42,.40);padding:clamp(20px,4vw,34px)}.np-modal-close{position:absolute;top:14px;right:14px;width:44px;height:44px;border:0;border-radius:999px;background:#111827;color:#fff;display:grid;place-items:center;z-index:2}.np-modal-head{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;padding-right:50px;margin-bottom:22px}.np-modal-head>span{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8}.np-modal-head h2{margin:0;font-size:clamp(30px,4vw,48px);line-height:1;letter-spacing:-.06em;color:#0f172a}.np-modal-head p{margin:8px 0 0;color:#64748b;line-height:1.65;font-weight:700}.np-request-form{display:grid;gap:16px}.np-form-section{display:grid;gap:12px}.np-form-section>strong{font-size:17px;color:#0f172a}.np-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.np-choice-grid button{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:14px;text-align:left;color:#0f172a}.np-choice-grid button.active{border-color:#2563eb;box-shadow:0 0 0 5px rgba(37,99,235,.11);background:#eff6ff}.np-choice-grid button:disabled{opacity:.45;cursor:not-allowed}.np-choice-grid b{display:block;font-weight:1000}.np-choice-grid small{display:block;margin-top:6px;color:#64748b;line-height:1.5;font-weight:700}.np-form-note{padding:12px 14px;border-radius:16px;background:#fff7ed;color:#9a3412;border:1px solid #fdba74;font-weight:800;line-height:1.6}.np-field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.np-field-grid label{display:grid;gap:7px;color:#334155;font-size:13px;font-weight:950}.np-field-grid input,.np-field-grid select,.np-field-grid textarea{width:100%;min-height:50px;border:1px solid #cbd5e1;border-radius:16px;background:#fff;padding:0 14px;outline:none;color:#0f172a;font-weight:750}.np-field-grid textarea{grid-column:1/-1;min-height:125px;padding:14px;line-height:1.65;resize:vertical}.np-field-grid input:focus,.np-field-grid select:focus,.np-field-grid textarea:focus{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12)}

/* Responsive */
@media(max-width:1180px){.np-main-nav{display:none}.np-mobile-toggle{display:inline-flex}.np-header-inner{grid-template-columns:auto 1fr auto}.np-brand small{display:none}}
@media(max-width:980px){.np-hero,.np-footer,.np-dash-layout,.np-message-shell,.np-dash-hero{grid-template-columns:1fr}.np-feature-grid,.np-care-grid,.np-stat-grid{grid-template-columns:1fr}.np-hero{min-height:auto;padding-top:36px}.np-hero-card{min-height:330px}.np-dash-tabs{position:relative;top:auto;display:flex;overflow:auto;scrollbar-width:none}.np-dash-tabs::-webkit-scrollbar{display:none}.np-dash-tabs button{min-width:max-content}.np-message-shell{gap:12px}.np-thread-list{max-height:220px;overflow:auto}.np-profile-box{grid-template-columns:1fr}}
@media(max-width:720px){.np-header{padding:8px 9px}.np-header-inner{min-height:58px;gap:8px}.np-brand>span{width:43px;height:43px;border-radius:16px}.np-brand strong{font-size:15px}.np-action-btn b{display:none}.np-action-btn,.np-mobile-toggle{width:43px;height:43px;min-height:43px;padding:0}.np-account-btn{padding:0}.np-account-btn .np-avatar{width:31px;height:31px}.np-float{top:76px!important;left:5px!important;right:5px!important;width:auto!important;max-width:calc(100vw - 10px)!important;border-radius:24px}.np-main{width:min(100% - 18px,var(--np-container));padding-top:18px}.np-hero h1{font-size:44px}.np-section-head h2{font-size:36px}.np-hero-actions,.np-contact>div{flex-direction:column}.np-hero-actions button,.np-contact button{width:100%}.np-hero-card,.np-contact,.np-footer,.np-public-card,.np-modal-card,.np-dash-content{border-radius:28px}.np-footer nav,.np-choice-grid,.np-field-grid,.np-order-card dl,.np-site-card dl,.np-invoice-card dl,.np-profile-box dl{grid-template-columns:1fr}.np-modal-head{grid-template-columns:1fr;padding-right:48px}.np-public,.np-dashboard{width:calc(100% - 18px);padding:78px 0 48px}.np-back{top:12px;left:12px;width:48px;height:48px}.np-chat-bubble{max-width:92%}.np-service-row{grid-template-columns:44px 1fr}.np-service-row>span{width:44px;height:44px}}
@media(max-width:420px){.np-actions{gap:5px}.np-brand strong{font-size:14px}.np-hero h1{font-size:40px}.np-section-head h2{font-size:32px}.np-feature-grid article,.np-care-grid article,.np-order-card,.np-site-card{padding:22px}.np-public-card{padding:22px}}

/* =========================================================
   NOVAPEX STABLE PRO 2.3 — BRAND COLOR + MOBILE FOOTER + AUTH POLISH
   Additive only: keeps the previous UI, then improves colors, mobile footer,
   Google auth button area, and service/search dropdown icons.
========================================================= */
:root{
    --np-brand-blue:#2563eb;
    --np-brand-blue-2:#1d4ed8;
    --np-brand-blue-3:#0f3ea8;
    --np-brand-green:#22c55e;
    --np-brand-cyan:#06b6d4;
    --np-brand-gold:#f59e0b;
    --np-brand-ink:#020617;
}
body{
    background:
        radial-gradient(circle at 8% 2%,rgba(37,99,235,.28),transparent 34rem),
        radial-gradient(circle at 92% 8%,rgba(34,197,94,.22),transparent 32rem),
        radial-gradient(circle at 45% 0%,rgba(6,182,212,.14),transparent 36rem),
        linear-gradient(180deg,#eef6ff 0%,#f8fbff 38%,#f8fafc 100%)!important;
}
.np-site{
    background:
        radial-gradient(circle at 14% 10%,rgba(37,99,235,.16),transparent 30rem),
        radial-gradient(circle at 88% 18%,rgba(34,197,94,.14),transparent 30rem),
        radial-gradient(circle at 50% 92%,rgba(245,158,11,.08),transparent 28rem);
}
.np-header{
    background:rgba(239,246,255,.82);
    border-bottom-color:rgba(191,219,254,.78);
}
.np-brand>span,
.np-avatar,
.np-back,
.np-modal-close{
    background:radial-gradient(circle at 25% 15%,rgba(255,255,255,.32),transparent 32%),linear-gradient(135deg,var(--np-brand-ink),var(--np-brand-blue-2) 58%,var(--np-brand-cyan));
}
.np-main-nav,
.np-action-btn,
.np-mobile-toggle,
.np-float,
.np-feature-grid article,
.np-care-grid article,
.np-footer,
.np-public-card,
.np-dash-content,
.np-dash-tabs,
.np-modal-card{
    border-color:rgba(191,219,254,.8)!important;
}
.np-main-nav button:hover,
.np-account-link:hover,
.np-mobile-menu button:hover{
    color:#fff!important;
    background:linear-gradient(135deg,var(--np-brand-ink),var(--np-brand-blue-2))!important;
}
.np-action-btn:hover{
    border-color:rgba(37,99,235,.42)!important;
    color:var(--np-brand-blue-2);
}
.np-pill,
.np-tab-head span{
    color:var(--np-brand-blue-2);
    border-color:rgba(147,197,253,.95);
    background:linear-gradient(135deg,#eff6ff,#e0f2fe);
}
.np-hero h1,
.np-section-head h2,
.np-public-card h1,
.np-tab-head h2{
    background:linear-gradient(135deg,#020617 0%,#0f172a 40%,var(--np-brand-blue-2) 76%,var(--np-brand-cyan) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.np-hero-card,
.np-contact,
.np-dash-hero{
    background:
        radial-gradient(circle at 18% 16%,rgba(34,197,94,.46),transparent 22rem),
        radial-gradient(circle at 84% 10%,rgba(6,182,212,.30),transparent 20rem),
        radial-gradient(circle at 100% 100%,rgba(245,158,11,.16),transparent 20rem),
        linear-gradient(145deg,#020617,#0f172a 42%,#1d4ed8 100%)!important;
}
.np-hero-actions button,
.np-feature-grid button,
.np-care-grid button,
.np-contact button,
.np-submit,
.np-auth-form button:not(.link):not(.np-google-fallback),
.np-chat-form button{
    background:linear-gradient(135deg,var(--np-brand-blue),var(--np-brand-blue-2) 64%,var(--np-brand-cyan));
    box-shadow:0 24px 68px rgba(37,99,235,.34);
}
.np-hero-actions .dark,
.np-contact button:nth-child(2){
    background:linear-gradient(135deg,#020617,#172554 60%,#0e7490)!important;
}
.np-service-row>span,
.np-feature-grid article>span,
.np-modal-head>span,
.np-site-orb{
    color:var(--np-brand-blue-2)!important;
    background:radial-gradient(circle at 30% 15%,rgba(255,255,255,.75),transparent 34%),linear-gradient(135deg,#dbeafe,#cffafe)!important;
    box-shadow:0 18px 46px rgba(37,99,235,.16);
}
.np-service-row svg,
.np-feature-grid svg,
.np-action-btn svg,
.np-account-link svg,
.np-dash-tabs svg,
.np-modal-close svg,
.np-back svg{
    width:22px;
    height:22px;
    display:block;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
    fill:none;
}
.np-search-btn svg{width:23px;height:23px;fill:currentColor;stroke:none;}
.np-service-row b{min-width:0;}
.np-service-row small{max-width:100%;}
.np-auth-divider{display:flex;align-items:center;gap:10px;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin:2px 0;}
.np-auth-divider:before,.np-auth-divider:after{content:"";height:1px;flex:1;background:#e2e8f0;}
.np-google-real-button{min-height:44px;display:grid;place-items:center;overflow:hidden;}
.np-google-fallback{display:flex!important;align-items:center;justify-content:center;gap:8px;background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:0 12px 28px rgba(15,23,42,.08)!important;}
.np-google-fallback svg{width:20px;height:20px;fill:currentColor;stroke:none;}
.np-auth-form .link{min-height:34px!important;color:var(--np-brand-blue-2)!important;border:0!important;box-shadow:none!important;}
.np-footer{
    background:
        radial-gradient(circle at top right,rgba(37,99,235,.18),transparent 22rem),
        radial-gradient(circle at bottom left,rgba(34,197,94,.10),transparent 22rem),
        linear-gradient(180deg,rgba(255,255,255,.98),rgba(239,246,255,.92));
}
.np-footer nav{align-items:stretch;}
.np-footer nav button{
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    min-height:48px;
    padding:0 12px;
    border-radius:16px;
}
.np-footer nav button:hover{background:linear-gradient(135deg,var(--np-brand-ink),var(--np-brand-blue-2));color:#fff;}
@media(max-width:720px){
    .np-footer nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
    .np-footer nav button{font-size:12px;min-height:44px;padding:0 8px;line-height:1.15;}
    .np-service-row{grid-template-columns:42px minmax(0,1fr)!important;gap:10px!important;padding:10px!important;}
    .np-service-row>span{width:42px!important;height:42px!important;border-radius:15px!important;}
    .np-service-row svg{width:20px!important;height:20px!important;}
    .np-action-btn svg,.np-mobile-toggle svg{width:21px!important;height:21px!important;}
    .np-hero-card{box-shadow:0 26px 80px rgba(37,99,235,.22);}
}
@media(max-width:390px){
    .np-footer nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .np-footer nav button{font-size:11px;}
}

/* =========================================================
   NOVAPEX STABLE PRO 2.4 — ADDITIVE UI POLISH ONLY
   Purpose: stronger brand colours, clearer footer distinction,
   mobile icon alignment, homepage colour depth, Google button visibility.
   This section only adds/overrides design; it does not remove features.
========================================================= */
:root{
    --np-electric:#2563eb;
    --np-electric-2:#1d4ed8;
    --np-deep:#020617;
    --np-sky:#06b6d4;
    --np-mint:#22c55e;
    --np-lime:#84cc16;
    --np-gold:#f59e0b;
    --np-purple:#7c3aed;
    --np-pink:#ec4899;
}
body{
    background:
        radial-gradient(circle at 5% 3%, rgba(37,99,235,.42), transparent 28rem),
        radial-gradient(circle at 95% 4%, rgba(34,197,94,.32), transparent 30rem),
        radial-gradient(circle at 62% 0%, rgba(124,58,237,.18), transparent 32rem),
        radial-gradient(circle at 42% 100%, rgba(6,182,212,.20), transparent 34rem),
        linear-gradient(180deg,#eaf3ff 0%,#f0f9ff 28%,#f8fbff 58%,#f8fafc 100%) !important;
}
.np-site:before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(90deg, rgba(37,99,235,.055) 1px, transparent 1px),
        linear-gradient(180deg, rgba(37,99,235,.045) 1px, transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(to bottom, rgba(0,0,0,.8), transparent 72%);
    z-index:0;
}
.np-header{
    background:linear-gradient(180deg,rgba(239,246,255,.94),rgba(240,249,255,.84)) !important;
    box-shadow:0 18px 55px rgba(37,99,235,.10);
}
.np-header-inner{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(147,197,253,.7);
    box-shadow:0 20px 70px rgba(15,23,42,.08);
}
.np-brand>span{
    box-shadow:0 18px 42px rgba(37,99,235,.35), inset 0 1px 0 rgba(255,255,255,.28);
}
.np-hero{
    padding-top:clamp(38px,7vw,92px);
}
.np-hero:before{
    content:"";
    position:absolute;
    inset:-18px -20px auto -20px;
    height:58%;
    border-radius:46px;
    background:
        radial-gradient(circle at 12% 18%,rgba(37,99,235,.20),transparent 22rem),
        radial-gradient(circle at 80% 5%,rgba(34,197,94,.16),transparent 20rem),
        linear-gradient(135deg,rgba(255,255,255,.48),rgba(255,255,255,.08));
    border:1px solid rgba(191,219,254,.42);
    z-index:-1;
}
.np-hero h1{
    background:linear-gradient(128deg,#020617 0%,#0f172a 34%,#1d4ed8 58%,#06b6d4 78%,#22c55e 100%) !important;
    -webkit-background-clip:text !important;
    background-clip:text !important;
    color:transparent !important;
    text-shadow:0 18px 55px rgba(37,99,235,.08);
}
.np-hero p{
    color:#334155 !important;
    font-weight:700;
}
.np-hero-actions button,
.np-feature-grid button,
.np-care-grid button,
.np-contact button,
.np-submit,
.np-auth-form button:not(.link):not(.np-google-fallback),
.np-chat-form button{
    background:linear-gradient(135deg,var(--np-electric),var(--np-electric-2) 52%,var(--np-sky) 82%,var(--np-mint)) !important;
    box-shadow:0 24px 70px rgba(37,99,235,.38), inset 0 1px 0 rgba(255,255,255,.22) !important;
}
.np-hero-actions button:hover,
.np-feature-grid button:hover,
.np-care-grid button:hover,
.np-contact button:hover,
.np-submit:hover,
.np-chat-form button:hover{
    transform:translateY(-3px);
    box-shadow:0 34px 90px rgba(37,99,235,.46), inset 0 1px 0 rgba(255,255,255,.24) !important;
}
.np-hero-actions .dark,
.np-contact button:nth-child(2){
    background:linear-gradient(135deg,#020617,#172554 55%,#0891b2 100%) !important;
}
.np-proof span{
    background:linear-gradient(135deg,#ffffff,#eff6ff) !important;
    border:1px solid rgba(147,197,253,.85) !important;
    box-shadow:0 16px 42px rgba(37,99,235,.12) !important;
}
.np-hero-card{
    background:
        radial-gradient(circle at 15% 10%,rgba(34,197,94,.58),transparent 18rem),
        radial-gradient(circle at 86% 14%,rgba(6,182,212,.44),transparent 18rem),
        radial-gradient(circle at 50% 100%,rgba(124,58,237,.30),transparent 18rem),
        linear-gradient(145deg,#020617 0%,#0f172a 42%,#1d4ed8 78%,#06b6d4 100%) !important;
    border-color:rgba(255,255,255,.22) !important;
    box-shadow:0 50px 135px rgba(15,23,42,.32), 0 30px 80px rgba(37,99,235,.22) !important;
}
.np-feature-grid article,
.np-care-grid article{
    background:
        radial-gradient(circle at top right,rgba(37,99,235,.09),transparent 12rem),
        radial-gradient(circle at bottom left,rgba(34,197,94,.065),transparent 12rem),
        linear-gradient(180deg,rgba(255,255,255,.98),rgba(240,249,255,.90)) !important;
    border-color:rgba(147,197,253,.72) !important;
}
.np-feature-grid article:hover,
.np-care-grid article:hover{
    border-color:rgba(37,99,235,.46) !important;
    box-shadow:0 34px 95px rgba(37,99,235,.18),0 18px 60px rgba(15,23,42,.10) !important;
}
.np-service-row:hover{
    background:linear-gradient(135deg,#ffffff,#eff6ff) !important;
    border-color:rgba(37,99,235,.30) !important;
}
.np-float{
    background:
        radial-gradient(circle at top right,rgba(37,99,235,.12),transparent 14rem),
        linear-gradient(180deg,rgba(255,255,255,.98),rgba(239,246,255,.96)) !important;
    border-color:rgba(147,197,253,.82) !important;
    box-shadow:0 35px 115px rgba(15,23,42,.22),0 18px 55px rgba(37,99,235,.12) !important;
}
.np-float-head strong{
    color:#0f172a;
}
.np-search-input{
    background:linear-gradient(180deg,#ffffff,#eff6ff) !important;
    border-color:rgba(147,197,253,.9) !important;
}
.np-search-input:focus{
    border-color:var(--np-electric) !important;
    box-shadow:0 0 0 5px rgba(37,99,235,.16),0 18px 48px rgba(37,99,235,.14) !important;
}
.np-google-real-button{
    width:100%;
    min-height:46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:4px 0 !important;
    overflow:visible !important;
}
.np-google-real-button iframe{
    max-width:100% !important;
}
.np-google-fallback{
    min-height:46px !important;
    border-radius:999px !important;
}
.np-footer{
    position:relative;
    overflow:hidden;
    color:#e5f2ff;
    background:
        radial-gradient(circle at 14% 18%,rgba(37,99,235,.52),transparent 20rem),
        radial-gradient(circle at 86% 20%,rgba(34,197,94,.36),transparent 18rem),
        radial-gradient(circle at 50% 105%,rgba(6,182,212,.28),transparent 18rem),
        linear-gradient(135deg,#020617 0%,#0f172a 48%,#172554 100%) !important;
    border-color:rgba(147,197,253,.24) !important;
    box-shadow:0 45px 130px rgba(15,23,42,.30),0 18px 70px rgba(37,99,235,.18) !important;
}
.np-footer:before{
    content:"";
    position:absolute;
    inset:18px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:26px;
    pointer-events:none;
}
.np-footer strong{
    color:#fff !important;
}
.np-footer p{
    color:#bfdbfe !important;
}
.np-footer nav button{
    color:#e0f2fe !important;
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    box-shadow:none !important;
}
.np-footer nav button:hover{
    color:#06121f !important;
    background:linear-gradient(135deg,#ffffff,#bfdbfe) !important;
    transform:translateY(-2px);
}
.np-contact{
    background:
        radial-gradient(circle at 16% 14%,rgba(34,197,94,.45),transparent 20rem),
        radial-gradient(circle at 90% 10%,rgba(6,182,212,.35),transparent 20rem),
        radial-gradient(circle at 52% 100%,rgba(124,58,237,.22),transparent 18rem),
        linear-gradient(135deg,#020617,#0f172a 48%,#1d4ed8) !important;
}
.np-contact h2{color:#fff !important;}
.np-contact p{color:#dbeafe !important;}
@media(max-width:720px){
    body{
        background:
            radial-gradient(circle at 0% 0%,rgba(37,99,235,.34),transparent 22rem),
            radial-gradient(circle at 100% 0%,rgba(34,197,94,.24),transparent 22rem),
            linear-gradient(180deg,#edf6ff,#f8fbff 42%,#f8fafc 100%) !important;
    }
    .np-header-inner{border-radius:22px !important;}
    .np-hero:before{inset:-8px -8px auto -8px;border-radius:30px;height:50%;}
    .np-hero h1{font-size:clamp(44px,13vw,64px) !important;}
    .np-feature-grid article>span,
    .np-care-grid article>span,
    .np-service-row>span{
        display:grid !important;
        place-items:center !important;
        flex:0 0 auto !important;
    }
    .np-service-row svg,
    .np-feature-grid svg,
    .np-action-btn svg,
    .np-mobile-toggle svg{
        display:block !important;
        margin:auto !important;
    }
    .np-footer{
        padding:24px 18px !important;
        border-radius:28px !important;
    }
    .np-footer nav{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px !important;
    }
    .np-footer nav button{
        min-height:46px !important;
        font-size:12px !important;
        line-height:1.15 !important;
        padding:0 8px !important;
        white-space:normal !important;
    }
}
@media(max-width:360px){
    .np-footer nav button{font-size:11px !important;}
}


/* =========================================================
   NOVAPEX STABLE PRO 2.5 — ADDITIVE POLISH + AUTH UX FIXES
   This section only improves the previous 2.4 design and does not remove UI.
========================================================= */

/* Make the hero-card paragraph readable over the strong card gradient. */
.np-hero .np-hero-card p,
.np-hero-card p{
    color:#f8fbff !important;
    text-shadow:0 2px 14px rgba(2,6,23,.42) !important;
    font-weight:750 !important;
}
.np-hero-card strong{color:#ffffff !important;text-shadow:0 10px 34px rgba(2,6,23,.36) !important;}
.np-hero-card span{color:#dff7ff !important;text-shadow:0 2px 12px rgba(2,6,23,.32) !important;}

/* Give all homepage content sections a lighter version of the footer colour language. */
.np-main > .np-section:not(.np-hero):not(.np-contact){
    position:relative;
    padding:clamp(24px,4vw,44px);
    border-radius:40px;
    background:
        radial-gradient(circle at 10% 12%, rgba(37,99,235,.13), transparent 22rem),
        radial-gradient(circle at 88% 10%, rgba(34,197,94,.10), transparent 20rem),
        radial-gradient(circle at 52% 105%, rgba(6,182,212,.09), transparent 20rem),
        linear-gradient(135deg, rgba(255,255,255,.96), rgba(239,246,255,.86) 54%, rgba(240,249,255,.84));
    border:1px solid rgba(147,197,253,.52);
    box-shadow:0 26px 90px rgba(37,99,235,.12),0 12px 55px rgba(15,23,42,.06);
    overflow:hidden;
}
.np-main > .np-section:not(.np-hero):not(.np-contact):before{
    content:"";
    position:absolute;
    inset:18px;
    border-radius:30px;
    border:1px solid rgba(255,255,255,.62);
    pointer-events:none;
}
.np-main > .np-section:not(.np-hero):not(.np-contact) > *{
    position:relative;
    z-index:1;
}
.np-main > .np-section:not(.np-hero):not(.np-contact) .np-section-head h2,
.np-main > .np-section:not(.np-hero):not(.np-contact) h3{
    color:#07142b !important;
}
.np-main > .np-section:not(.np-hero):not(.np-contact) .np-section-head p,
.np-main > .np-section:not(.np-hero):not(.np-contact) p{
    color:#334155 !important;
}

/* More visible card contrast inside the newly-coloured sections. */
.np-feature-grid article,
.np-care-grid article{
    background:
        radial-gradient(circle at top right, rgba(37,99,235,.11), transparent 12rem),
        linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,250,252,.94)) !important;
}

/* Remove the border-line feel from the Google button area/fallback. */
.np-google-real-button,
.np-google-real-button > div,
.np-google-real-button iframe{
    border:0 !important;
    box-shadow:none !important;
    outline:0 !important;
}
.np-google-fallback{
    border:0 !important;
    box-shadow:0 16px 38px rgba(15,23,42,.10) !important;
}
.np-auth-divider span{background:#fff !important;}
.np-logout:disabled{opacity:.72;cursor:wait;}

@media(max-width:720px){
    .np-main > .np-section:not(.np-hero):not(.np-contact){
        padding:22px 16px;
        border-radius:30px;
    }
    .np-main > .np-section:not(.np-hero):not(.np-contact):before{
        inset:10px;
        border-radius:24px;
    }
}

/* =========================================================
   NOVAPEX 2.7 — My Sites/App selector + CTA login gate polish
   This is an additive section only. It does not replace prior design.
========================================================= */
.np-site-selector-card {
    margin: 0 0 18px;
    padding: 18px;
    border-radius: 26px;
    background:
        radial-gradient(circle at top right, rgba(37,99,235,.16), transparent 18rem),
        linear-gradient(135deg, rgba(239,246,255,.98), rgba(255,255,255,.96));
    border: 1px solid rgba(191,219,254,.95);
    box-shadow: 0 22px 60px rgba(15,23,42,.08);
}

.np-site-selector-card label {
    display: grid;
    gap: 9px;
    color: #0f172a;
}

.np-site-selector-card strong {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #1d4ed8;
}

.np-site-selector-card select {
    width: 100%;
    min-height: 54px;
    border-radius: 18px;
    border: 1px solid rgba(148,163,184,.65);
    background: #fff;
    color: #0f172a;
    padding: 0 14px;
    font-weight: 900;
    outline: none;
    box-shadow: 0 14px 34px rgba(15,23,42,.06);
}

.np-site-selector-card select:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 5px rgba(37,99,235,.12), 0 16px 42px rgba(37,99,235,.10);
}

.np-site-selector-card p {
    margin: 10px 0 0;
    color: #475569;
    line-height: 1.65;
    font-weight: 700;
}

.np-site-card-selected {
    position: relative;
    overflow: hidden;
}

.np-site-card-selected::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 7px;
    height: 100%;
    background: linear-gradient(180deg, #2563eb, #22c55e);
}

.np-site-card-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
}

.np-site-tag {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.np-site-card-head h3 {
    margin-top: 10px !important;
}

.np-site-care-note {
    margin-top: 14px;
    padding: 14px;
    border-radius: 18px;
    background: linear-gradient(135deg, #fff7ed, #ffedd5);
    border: 1px solid rgba(253,186,116,.72);
    color: #9a3412;
}

.np-site-care-note.active {
    background: linear-gradient(135deg, #ecfdf5, #dcfce7);
    border-color: rgba(134,239,172,.82);
    color: #166534;
}

.np-site-care-note strong {
    display: block;
    margin-bottom: 5px;
    font-weight: 1000;
}

.np-site-care-note p {
    margin: 0;
    line-height: 1.65;
    color: inherit;
    font-weight: 750;
}

.np-site-actions button {
    box-shadow: 0 16px 38px rgba(15,23,42,.15);
}

.np-site-actions button:nth-child(1) {
    background: linear-gradient(135deg, #2563eb, #1d4ed8);
}

.np-site-actions button:nth-child(2) {
    background: linear-gradient(135deg, #111827, #334155);
}

.np-site-actions button:nth-child(6),
.np-site-actions button:nth-child(7) {
    background: linear-gradient(135deg, #22c55e, #16a34a);
    color: #052e16;
}

@media(max-width:720px) {
    .np-site-card-head {
        grid-template-columns: 1fr;
    }

    .np-site-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .np-site-actions button {
        width: 100%;
        min-height: 46px;
        padding: 0 10px;
        font-size: 12px;
    }
}

/* =========================================================
   NOVAPEX 2.8 Messages / Support Threads Upgrade
========================================================= */
.np-message-shell-pro {
    grid-template-columns: minmax(260px, 360px) minmax(0, 1fr);
    align-items: stretch;
}

.np-thread-picker {
    gap: 14px;
}

.np-message-select-card,
.np-thread-history-head,
.np-new-topic-box,
.np-thread-current {
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(226,232,240,.9);
    border-radius: 22px;
    box-shadow: 0 14px 36px rgba(15,23,42,.06);
}

.np-message-select-card {
    padding: 16px;
    display: grid;
    gap: 10px;
}

.np-message-select-card strong,
.np-thread-history-head strong {
    color: var(--np-dark, #0f172a);
    font-weight: 1000;
}

.np-message-select-card select,
.np-new-topic-box input {
    width: 100%;
    min-height: 48px;
    border: 1px solid rgba(203,213,225,.95);
    border-radius: 16px;
    padding: 0 14px;
    background: #fff;
    color: #0f172a;
    font-weight: 850;
    outline: none;
}

.np-message-select-card select:focus,
.np-new-topic-box input:focus {
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37,99,235,.12);
}

.np-message-select-card small,
.np-new-topic-box small {
    color: #64748b;
    line-height: 1.55;
    font-weight: 700;
}

.np-thread-history-head {
    padding: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.np-thread-history-head button {
    min-height: 36px;
    border: 0;
    border-radius: 999px;
    padding: 0 12px;
    background: linear-gradient(135deg, #111827, #1d4ed8);
    color: #fff;
    font-weight: 950;
    cursor: pointer;
}

.np-thread-history {
    display: grid;
    gap: 10px;
    max-height: 480px;
    overflow: auto;
    padding-right: 3px;
}

.np-thread-history button {
    width: 100%;
    border: 1px solid rgba(226,232,240,.9);
    border-radius: 20px;
    padding: 13px;
    background: rgba(255,255,255,.9);
    text-align: left;
    cursor: pointer;
    display: grid;
    gap: 4px;
    transition: .2s ease;
}

.np-thread-history button:hover,
.np-thread-history button.active {
    transform: translateY(-2px);
    border-color: rgba(37,99,235,.42);
    box-shadow: 0 18px 46px rgba(37,99,235,.12);
}

.np-thread-history button span {
    width: fit-content;
    padding: 5px 9px;
    border-radius: 999px;
    color: #1d4ed8;
    background: #eff6ff;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.np-thread-history button b {
    color: #0f172a;
    font-size: 14px;
    line-height: 1.25;
}

.np-thread-history button small,
.np-thread-history button em {
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

.np-thread-history button em {
    font-style: normal;
}

.np-thread-box-pro {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.np-thread-current {
    padding: 18px;
}

.np-thread-current span {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    color: #1e40af;
    background: #dbeafe;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 1000;
}

.np-thread-current h3 {
    margin: 10px 0 4px;
    color: #0f172a;
    font-size: clamp(24px, 3vw, 34px);
    letter-spacing: -.05em;
}

.np-thread-current p {
    margin: 0;
    color: #64748b;
    line-height: 1.6;
}

.np-new-topic-box {
    padding: 16px;
    display: grid;
    gap: 8px;
}

.np-new-topic-box label {
    color: #0f172a;
    font-weight: 1000;
}

.np-empty-card.small {
    padding: 14px;
}

@media (max-width: 860px) {
    .np-message-shell-pro {
        grid-template-columns: 1fr;
    }
    .np-thread-history {
        max-height: none;
    }
}

/* =========================================================
   NOVAPEX 2.9 Messages / Support Inbox Upgrade
========================================================= */
.np-message-head-row{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
}
.np-history-toggle{
    min-height:48px;
    border:0;
    border-radius:999px;
    padding:0 16px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
    color:#fff;
    background:linear-gradient(135deg,#0f172a,#2563eb);
    box-shadow:0 18px 45px rgba(37,99,235,.22);
    font-weight:1000;
    position:relative;
}
.np-history-toggle svg{width:20px;height:20px;fill:currentColor}.np-history-toggle b{position:absolute;right:7px;top:7px;width:10px;height:10px;border-radius:999px;background:#ef4444;border:2px solid #fff}.np-message-shell-live{display:grid;grid-template-columns:1fr;gap:16px}.np-message-target-bar{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:12px}.np-message-target-bar select{min-height:48px;border:1px solid rgba(203,213,225,.95);border-radius:16px;padding:0 14px;background:#fff;font-weight:800;color:#0f172a}.np-thread-main-only{min-height:560px}.np-chat-form-upgraded{display:grid;gap:10px}.np-chat-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.np-file-tool input{display:none}.np-file-tool span,.np-voice-tool,.np-send-tool{min-height:44px;border:0;border-radius:999px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-weight:1000}.np-file-tool span{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.np-voice-tool{background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0}.np-voice-tool.danger{background:#fee2e2;color:#991b1b;border-color:#fecaca}.np-send-tool{margin-left:auto;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 16px 38px rgba(37,99,235,.22)}.np-upload-note{display:block;color:#64748b;line-height:1.5;font-weight:700}.np-file-preview{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.np-file-preview strong{color:#0f172a}.np-file-preview small{color:#64748b}.np-file-preview button{border:0;border-radius:999px;background:#fee2e2;color:#991b1b;padding:7px 10px;font-weight:900;cursor:pointer}.np-message-attachment{margin-top:8px;display:grid;gap:6px}.np-message-attachment img{max-width:min(260px,100%);border-radius:16px;box-shadow:0 12px 28px rgba(15,23,42,.12)}.np-message-attachment video{max-width:min(320px,100%);border-radius:16px;background:#000}.np-message-attachment audio{max-width:100%}.np-message-attachment a{color:inherit;font-weight:900;text-decoration:underline}.np-history-modal{position:fixed;inset:0;z-index:1000008;background:rgba(15,23,42,.58);display:grid;place-items:center;padding:16px;backdrop-filter:blur(12px)}.np-history-card{width:min(680px,96vw);max-height:90vh;overflow:auto;background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:28px;padding:18px;position:relative;box-shadow:0 35px 110px rgba(15,23,42,.28)}.np-history-close{position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;border-radius:999px;background:#0f172a;color:#fff;font-size:24px;cursor:pointer}.np-history-title{padding-right:46px;margin-bottom:12px;display:flex;justify-content:space-between;gap:12px;align-items:center}.np-history-title span{color:#2563eb;text-transform:uppercase;letter-spacing:.08em;font-weight:1000;font-size:12px}.np-history-title h3{margin:4px 0 0;color:#0f172a;font-size:28px;letter-spacing:-.04em}.np-history-title button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:8px 12px;font-weight:900;cursor:pointer}.np-thread-history.modal-list{display:grid;gap:8px}.np-thread-history.modal-list button{width:100%;border:1px solid #e2e8f0;background:#f8fafc;border-radius:18px;padding:12px;text-align:left;cursor:pointer;transition:.2s}.np-thread-history.modal-list button:hover,.np-thread-history.modal-list button.active{border-color:#2563eb;background:#eff6ff}.np-thread-history.modal-list span{display:flex;align-items:center;justify-content:space-between;color:#2563eb;font-weight:1000;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.np-thread-history.modal-list span em{font-style:normal;background:#ef4444;color:#fff;border-radius:999px;padding:2px 8px;text-transform:none;letter-spacing:0}.np-thread-history.modal-list b{display:block;margin-top:4px;color:#0f172a}.np-thread-history.modal-list small,.np-thread-history.modal-list > button > em{display:block;margin-top:4px;color:#64748b;font-style:normal;line-height:1.4}
@media(max-width:720px){.np-message-head-row{align-items:center}.np-history-toggle{width:48px;height:48px;padding:0;justify-content:center}.np-history-toggle span{display:none}.np-message-target-bar{grid-template-columns:1fr}.np-chat-tools{display:grid;grid-template-columns:1fr 1fr}.np-send-tool{grid-column:1/-1;margin-left:0}.np-history-title{display:grid}.np-history-title button{width:max-content}.np-thread-main-only{min-height:auto}}

/* =========================================================
   NOVAPEX 3.0 Messages + Dashboard Identity polish
   Improvement only: keeps previous design, improves support chat UX.
========================================================= */

.np-dash-hero-minimal {
    min-height: auto !important;
    padding: 14px 16px !important;
    margin-bottom: 18px !important;
    border-radius: 26px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    background:
        linear-gradient(135deg, rgba(15, 23, 42, 0.94), rgba(30, 64, 175, 0.88)),
        radial-gradient(circle at 15% 15%, rgba(59, 130, 246, 0.45), transparent 18rem) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    box-shadow: 0 22px 70px rgba(15,23,42,0.18) !important;
}

.np-dashboard-identity {
    width: 100%;
    max-width: 520px;
    background: rgba(255,255,255,0.12) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    box-shadow: none !important;
}

.np-dashboard-identity .np-avatar {
    width: 48px !important;
    height: 48px !important;
    border-radius: 18px !important;
    box-shadow: 0 16px 42px rgba(0,0,0,0.22);
}

.np-dashboard-identity b {
    color: #fff !important;
    font-weight: 1000 !important;
}

.np-dashboard-identity small {
    color: #dbeafe !important;
    font-weight: 750 !important;
}

.np-message-app {
    position: relative;
}

.np-message-app .np-tab-head,
.np-message-app .np-message-select-card,
.np-message-app .np-thread-box {
    background:
        linear-gradient(180deg, rgba(255,255,255,0.95), rgba(239,246,255,0.90)),
        radial-gradient(circle at top right, rgba(37,99,235,0.13), transparent 18rem) !important;
}

.np-history-toggle-strong {
    min-height: 52px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #020617, #1d4ed8) !important;
    color: #fff !important;
    box-shadow: 0 22px 60px rgba(37,99,235,0.32) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    font-weight: 1000 !important;
    position: relative !important;
}

.np-history-toggle-strong svg {
    width: 22px !important;
    height: 22px !important;
    fill: currentColor !important;
}

.np-history-toggle-strong b {
    position: absolute;
    top: 7px;
    right: 8px;
    width: 11px;
    height: 11px;
    border-radius: 99px;
    background: #22c55e;
    box-shadow: 0 0 0 3px rgba(255,255,255,0.85);
}

.np-message-target-bar {
    display: grid !important;
    grid-template-columns: minmax(180px, 0.65fr) minmax(220px, 1fr) !important;
    gap: 14px !important;
    align-items: center !important;
    border: 1px solid rgba(191,219,254,0.85) !important;
}

.np-message-target-bar strong,
.np-message-target-bar small {
    display: block;
}

.np-message-target-bar strong {
    color: #0f172a;
    font-size: 15px;
    font-weight: 1000;
}

.np-message-target-bar small {
    margin-top: 3px;
    color: #64748b;
    font-size: 12px;
    font-weight: 750;
}

.np-message-target-bar select,
.np-new-topic-box input {
    width: 100%;
    min-height: 52px;
    border-radius: 18px;
    border: 1px solid rgba(147,197,253,0.75);
    background: #fff;
    color: #0f172a;
    font-weight: 850;
    padding: 0 14px;
    outline: none;
    box-shadow: 0 14px 34px rgba(37,99,235,0.07);
}

.np-thread-box-pro {
    border: 1px solid rgba(191,219,254,0.85) !important;
    overflow: hidden;
}

.np-thread-current {
    border-radius: 24px !important;
    padding: 18px !important;
    background:
        linear-gradient(135deg, rgba(2,6,23,0.96), rgba(29,78,216,0.90)),
        radial-gradient(circle at top right, rgba(34,197,94,0.24), transparent 14rem) !important;
    color: #fff !important;
    margin-bottom: 14px !important;
}

.np-thread-current span {
    color: #bfdbfe !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.np-thread-current h3 {
    color: #fff !important;
    margin: 8px 0 4px !important;
    font-size: clamp(22px, 3vw, 34px) !important;
    line-height: 1.05 !important;
}

.np-thread-current p {
    color: #dbeafe !important;
    margin: 0 !important;
}

.np-chat-list {
    background: linear-gradient(180deg, rgba(239,246,255,0.78), rgba(255,255,255,0.94));
    border: 1px solid rgba(219,234,254,0.9);
    border-radius: 26px;
    padding: 16px;
    min-height: 220px;
    max-height: 520px;
    overflow: auto;
}

.np-chat-bubble {
    max-width: min(76%, 620px);
    margin: 0 0 12px;
    padding: 13px 15px;
    border-radius: 22px;
    border: 1px solid rgba(226,232,240,0.86);
    box-shadow: 0 14px 34px rgba(15,23,42,0.06);
}

.np-chat-bubble.client {
    margin-left: auto;
    background: linear-gradient(135deg, #1d4ed8, #2563eb) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,0.15) !important;
}

.np-chat-bubble.admin {
    margin-right: auto;
    background: #fff !important;
    color: #0f172a !important;
}

.np-chat-bubble strong,
.np-chat-bubble p,
.np-chat-bubble small {
    display: block;
}

.np-chat-bubble p {
    margin: 6px 0 0;
    line-height: 1.65;
    font-weight: 700;
}

.np-chat-bubble small {
    margin-top: 8px;
    opacity: 0.72;
    font-size: 11px;
    font-weight: 800;
}

.np-message-attachment {
    margin-top: 10px;
    display: grid;
    gap: 8px;
}

.np-message-attachment img,
.np-message-attachment video {
    max-width: 320px;
    max-height: 260px;
    border-radius: 18px;
    object-fit: cover;
    border: 1px solid rgba(255,255,255,0.22);
}

.np-message-attachment audio {
    width: min(320px, 100%);
}

.np-message-attachment a {
    color: inherit;
    font-weight: 900;
    text-decoration: underline;
}

.np-chat-composer {
    margin-top: 14px;
    border-radius: 26px !important;
    padding: 14px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(239,246,255,0.92)) !important;
    border: 1px solid rgba(191,219,254,0.9) !important;
    box-shadow: 0 18px 55px rgba(37,99,235,0.10) !important;
}

.np-composer-tools-top,
.np-composer-bottom-row {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    align-items: center;
    justify-content: space-between;
}

.np-composer-tools-top {
    margin-bottom: 10px;
    justify-content: flex-start;
}

.np-file-tool,
.np-voice-tool {
    min-height: 40px !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    background: #0f172a !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    box-shadow: 0 14px 34px rgba(15,23,42,0.15) !important;
}

.np-file-tool input {
    display: none !important;
}

.np-voice-tool.danger {
    background: #dc2626 !important;
}

.np-chat-composer textarea {
    width: 100%;
    min-height: 90px;
    margin: 10px 0;
    border-radius: 20px;
    border: 1px solid rgba(147,197,253,0.72);
    padding: 14px;
    resize: vertical;
    outline: none;
    background: #fff;
    color: #0f172a;
    line-height: 1.6;
    font-weight: 750;
}

.np-media-ready-card {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr) 38px;
    gap: 12px;
    align-items: center;
    margin: 10px 0;
    padding: 10px;
    border-radius: 22px;
    background: #fff;
    border: 1px solid rgba(191,219,254,0.9);
    box-shadow: 0 14px 38px rgba(37,99,235,0.08);
}

.np-media-preview {
    width: 76px;
    height: 64px;
    border-radius: 18px;
    overflow: hidden;
    display: grid;
    place-items: center;
    background: #eff6ff;
}

.np-media-preview img,
.np-media-preview video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.np-media-preview.voice-dot {
    font-size: 26px;
}

.np-media-info {
    min-width: 0;
    display: grid;
    gap: 4px;
}

.np-media-info strong,
.np-media-info small,
.np-media-info em {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.np-media-info strong {
    color: #0f172a;
    font-size: 13px;
    font-weight: 1000;
}

.np-media-info small,
.np-media-info em {
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    font-style: normal;
}

.np-media-info audio {
    width: 100%;
    max-width: 300px;
}

.np-media-ready-card > button {
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: #fee2e2;
    color: #991b1b;
    font-weight: 1000;
    cursor: pointer;
}

.np-upload-progress {
    height: 8px;
    width: 100%;
    border-radius: 999px;
    overflow: hidden;
    background: #dbeafe;
}

.np-upload-progress span {
    display: block;
    height: 100%;
    min-width: 4%;
    border-radius: 999px;
    background: linear-gradient(90deg, #1d4ed8, #22c55e);
    transition: width 0.2s ease;
}

.np-composer-bottom-row span {
    color: #64748b;
    font-size: 12px;
    font-weight: 850;
}

.np-send-tool {
    min-height: 44px !important;
    min-width: 96px !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 0 18px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #1d4ed8, #2563eb) !important;
    box-shadow: 0 18px 46px rgba(37,99,235,0.24) !important;
    font-weight: 1000 !important;
    cursor: pointer !important;
}

.np-send-tool:disabled {
    opacity: 0.45 !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
}

.np-history-modal {
    position: fixed;
    inset: 0;
    z-index: 1000004;
    display: grid;
    place-items: center;
    padding: 14px;
    background: rgba(15,23,42,0.64);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.np-history-card {
    width: min(620px, 100%);
    max-height: min(720px, calc(100vh - 28px));
    overflow: auto;
    position: relative;
    border-radius: 30px;
    padding: 18px;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.98), rgba(239,246,255,0.94));
    border: 1px solid rgba(255,255,255,0.65);
    box-shadow: 0 45px 130px rgba(15,23,42,0.32);
}

.np-history-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 99px;
    background: #0f172a;
    color: #fff;
    font-size: 22px;
    cursor: pointer;
}

.np-history-title {
    padding-right: 46px;
    margin-bottom: 12px;
}

.np-history-title span {
    color: #1d4ed8;
    font-size: 12px;
    font-weight: 1000;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.np-history-title h3 {
    margin: 5px 0 10px;
    color: #0f172a;
    font-size: 30px;
    line-height: 1;
    letter-spacing: -0.05em;
}

.np-history-title button {
    min-height: 36px;
    border: 0;
    border-radius: 999px;
    padding: 0 12px;
    background: #dbeafe;
    color: #1d4ed8;
    font-weight: 950;
    cursor: pointer;
}

.np-thread-history.modal-list {
    display: grid;
    gap: 9px;
}

.np-thread-history.modal-list button {
    width: 100%;
    border: 1px solid rgba(191,219,254,0.85);
    border-radius: 20px;
    padding: 13px;
    background: #fff;
    color: #0f172a;
    cursor: pointer;
    text-align: left;
    display: grid;
    gap: 4px;
    box-shadow: 0 14px 34px rgba(37,99,235,0.06);
}

.np-thread-history.modal-list button.active,
.np-thread-history.modal-list button:hover {
    border-color: #2563eb;
    box-shadow: 0 0 0 4px rgba(37,99,235,0.11), 0 18px 42px rgba(37,99,235,0.12);
}

.np-thread-history.modal-list span {
    color: #1d4ed8;
    font-size: 11px;
    font-weight: 1000;
    text-transform: uppercase;
}

.np-thread-history.modal-list b {
    font-size: 15px;
    font-weight: 1000;
}

.np-thread-history.modal-list small,
.np-thread-history.modal-list em {
    color: #64748b;
    font-size: 12px;
    font-style: normal;
    line-height: 1.45;
}

@media (max-width: 720px) {
    .np-dash-hero-minimal {
        padding: 12px !important;
        border-radius: 22px !important;
    }

    .np-dashboard-identity {
        max-width: none;
    }

    .np-message-head-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: start !important;
        gap: 10px !important;
    }

    .np-history-toggle-strong {
        width: 52px !important;
        height: 52px !important;
        min-height: 52px !important;
        padding: 0 !important;
    }

    .np-history-toggle-strong span {
        display: none !important;
    }

    .np-message-target-bar {
        grid-template-columns: 1fr !important;
    }

    .np-chat-list {
        max-height: 430px;
        padding: 12px;
    }

    .np-chat-bubble {
        max-width: 88%;
    }

    .np-composer-tools-top,
    .np-composer-bottom-row {
        align-items: stretch;
    }

    .np-file-tool,
    .np-voice-tool,
    .np-send-tool {
        flex: 1 1 auto;
    }

    .np-media-ready-card {
        grid-template-columns: 60px minmax(0, 1fr) 34px;
    }

    .np-media-preview {
        width: 60px;
        height: 56px;
    }
}

/* =========================================================
   NOVAPEX 3.1 Chat Polish + Protected Media UI
   Improvement only: clearer chat contrast, mobile fullscreen,
   sticky composer, visible history, stronger message layout.
========================================================= */
.np-message-shell-live,
.np-thread-box-pro {
    background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(241,248,255,.92)) !important;
    border-color: rgba(147,197,253,.42) !important;
}

.np-thread-box-pro {
    color: #0f172a !important;
}

.np-thread-current {
    position: relative;
    background: linear-gradient(135deg, rgba(15,23,42,.96), rgba(30,64,175,.92)) !important;
    color: #fff !important;
    border: 1px solid rgba(255,255,255,.16) !important;
}

.np-thread-current span,
.np-thread-current h3,
.np-thread-current p {
    color: #fff !important;
}

.np-chat-list {
    max-height: min(56vh, 620px);
    overflow-y: auto;
    padding: 18px !important;
    border-radius: 26px !important;
    background: linear-gradient(180deg, rgba(239,246,255,.92), rgba(255,255,255,.96)) !important;
    border: 1px solid rgba(191,219,254,.7) !important;
    scroll-behavior: smooth;
}

.np-chat-bubble {
    color: #0f172a !important;
    background: #fff !important;
    border: 1px solid rgba(226,232,240,.95) !important;
    box-shadow: 0 14px 34px rgba(15,23,42,.07) !important;
}

.np-chat-bubble.client {
    margin-left: auto;
    background: linear-gradient(135deg, #0f172a, #1d4ed8) !important;
    color: #fff !important;
    border-color: rgba(255,255,255,.16) !important;
}

.np-chat-bubble.admin {
    margin-right: auto;
    background: #fff !important;
    color: #0f172a !important;
}

.np-chat-bubble.client strong,
.np-chat-bubble.client p,
.np-chat-bubble.client small,
.np-chat-bubble.client a {
    color: #fff !important;
}

.np-chat-bubble.admin strong,
.np-chat-bubble.admin p,
.np-chat-bubble.admin small {
    color: #0f172a !important;
}

.np-chat-bubble small {
    opacity: .78;
}

.np-message-attachment {
    margin-top: 10px;
    padding: 8px;
    border-radius: 18px;
    background: rgba(255,255,255,.9);
}

.np-chat-bubble.client .np-message-attachment {
    background: rgba(255,255,255,.13);
}

.np-chat-form-upgraded {
    position: sticky;
    bottom: 0;
    z-index: 10;
    background: linear-gradient(180deg, rgba(255,255,255,.90), #fff) !important;
    border: 1px solid rgba(191,219,254,.65) !important;
    box-shadow: 0 -8px 28px rgba(15,23,42,.08) !important;
}

.np-history-toggle-strong {
    background: linear-gradient(135deg, #0f172a, #1d4ed8) !important;
    color: #fff !important;
    box-shadow: 0 18px 44px rgba(37,99,235,.24) !important;
}

.np-history-toggle-strong svg { fill: currentColor; }

.np-mobile-thread-close {
    display: none;
    position: absolute;
    top: 12px;
    right: 12px;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 999px;
    background: rgba(255,255,255,.16);
    color: #fff;
    font-size: 22px;
    font-weight: 1000;
    cursor: pointer;
}

@media (max-width: 720px) {
    .np-dashboard .np-message-app .np-message-shell-live:has(.np-thread-main-only .np-thread-current) {
        min-height: calc(100vh - 120px);
    }

    .np-message-app .np-thread-main-only:has(.np-chat-form-upgraded) {
        position: fixed !important;
        inset: 0 !important;
        z-index: 1000004 !important;
        width: 100vw !important;
        height: 100vh !important;
        border-radius: 0 !important;
        padding: 12px !important;
        display: flex !important;
        flex-direction: column !important;
        background: linear-gradient(180deg, #eef6ff, #ffffff) !important;
        overflow: hidden !important;
    }

    .np-message-app .np-thread-main-only .np-thread-current {
        flex: 0 0 auto;
        border-radius: 22px !important;
        padding-right: 58px !important;
    }

    .np-mobile-thread-close {
        display: grid;
        place-items: center;
    }

    .np-message-app .np-chat-list {
        flex: 1 1 auto;
        max-height: none !important;
        min-height: 0 !important;
        margin: 10px 0;
        border-radius: 22px !important;
    }

    .np-message-app .np-chat-form-upgraded {
        flex: 0 0 auto;
        position: relative !important;
        bottom: auto !important;
        border-radius: 22px !important;
    }
}

/* =========================================================
   NOVAPEX 3.2 — Chat mobile/send/media polish only
========================================================= */
.np-message-app .np-chat-list {
    background:
        radial-gradient(circle at 15% 0%, rgba(37, 99, 235, .11), transparent 26rem),
        linear-gradient(180deg, #f8fbff, #eef6ff) !important;
    color: #0f172a !important;
}

.np-message-app .np-chat-bubble {
    word-break: break-word;
}

.np-message-app .np-chat-bubble.client {
    background: linear-gradient(135deg, #0b1220, #1d4ed8) !important;
}

.np-message-app .np-chat-bubble.admin {
    background: #ffffff !important;
}

.np-media-open {
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    width: fit-content;
    max-width: 100%;
    display: grid;
    gap: 6px;
    text-align: left;
}

.np-media-open span {
    color: inherit;
    font-size: 12px;
    font-weight: 900;
    opacity: .82;
}

.np-message-attachment em {
    display: block;
    margin-top: 6px;
    color: inherit;
    font-style: normal;
    font-size: 12px;
    font-weight: 900;
    opacity: .78;
}

.np-message-progress,
.np-upload-progress {
    width: 100%;
    height: 7px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(148,163,184,.25);
    margin-top: 8px;
}

.np-message-progress span,
.np-upload-progress span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #22c55e, #2563eb);
    transition: width .18s ease;
}

.np-media-viewer {
    position: fixed;
    inset: 0;
    z-index: 1000012;
    background: rgba(2, 6, 23, .92);
    display: grid;
    place-items: center;
    padding: 18px;
}

.np-media-viewer img,
.np-media-viewer video {
    max-width: min(1100px, 96vw);
    max-height: 88vh;
    border-radius: 18px;
    box-shadow: 0 35px 100px rgba(0,0,0,.45);
    background: #000;
}

.np-media-viewer-close {
    position: fixed;
    right: 16px;
    top: 16px;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 999px;
    background: #ffffff;
    color: #0f172a;
    font-size: 28px;
    line-height: 1;
    font-weight: 1000;
    cursor: pointer;
}

.np-input-send-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

.np-chat-composer .np-input-send-row textarea {
    min-height: 52px !important;
    max-height: 110px;
    resize: vertical;
    border-radius: 20px !important;
    padding: 13px 14px !important;
}

.np-chat-composer .np-input-send-row .np-send-tool {
    min-width: 74px;
    min-height: 52px;
    margin-left: 0 !important;
    flex: 0 0 auto;
}

.np-composer-bottom-row.compact {
    display: flex;
    justify-content: flex-end;
    min-height: 18px;
    margin-top: -4px;
}

.np-composer-bottom-row.compact span {
    font-size: 11px;
    line-height: 1.2;
    opacity: .72;
}

.np-history-title small {
    color: #64748b;
    font-weight: 900;
}

@media(max-width:720px) {
    .np-message-app .np-thread-main-only:has(.np-chat-form-upgraded) {
        height: 100dvh !important;
        min-height: 100dvh !important;
        padding: 10px !important;
    }

    .np-message-app .np-thread-main-only .np-thread-current {
        padding: 12px 58px 12px 14px !important;
        border-radius: 20px !important;
    }

    .np-message-app .np-thread-main-only .np-thread-current h3 {
        font-size: 18px !important;
        margin: 4px 0 0 !important;
    }

    .np-message-app .np-chat-list {
        margin: 8px 0 !important;
        padding: 12px !important;
        border-radius: 18px !important;
    }

    .np-message-app .np-chat-form-upgraded {
        padding: 10px !important;
        border-radius: 20px !important;
        gap: 7px !important;
    }

    .np-composer-tools-top {
        gap: 6px !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scrollbar-width: none;
    }

    .np-composer-tools-top::-webkit-scrollbar { display: none; }

    .np-file-tool span,
    .np-voice-tool {
        min-height: 38px !important;
        white-space: nowrap;
        padding: 0 11px !important;
        font-size: 12px;
    }

    .np-media-ready-card {
        grid-template-columns: 42px minmax(0, 1fr) 34px !important;
        padding: 8px !important;
        border-radius: 16px !important;
    }

    .np-media-preview {
        width: 42px !important;
        height: 42px !important;
        border-radius: 13px !important;
    }

    .np-media-info audio {
        max-width: 180px;
    }

    .np-input-send-row {
        grid-template-columns: minmax(0, 1fr) 62px;
        gap: 7px;
    }

    .np-chat-composer .np-input-send-row textarea {
        min-height: 46px !important;
        max-height: 86px;
        padding: 11px 12px !important;
        font-size: 14px;
    }

    .np-chat-composer .np-input-send-row .np-send-tool {
        min-width: 62px;
        min-height: 46px;
        padding: 0 8px !important;
        font-size: 12px;
    }

    .np-composer-bottom-row.compact {
        display: none !important;
    }
}

/* =========================================================
   NOVAPEX 3.3 — Messages stability polish only
   - clearer header labels
   - send button truly beside input on mobile
   - voice player visibility
   - better admin chat/media controls
========================================================= */
.np-message-app .np-thread-current span {
    display: inline-flex !important;
    width: fit-content !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.20) !important;
    color: #ffffff !important;
    font-weight: 1000 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.25) !important;
}
.np-message-app .np-thread-current h3,
.np-message-app .np-thread-current p { color:#ffffff !important; text-shadow:0 1px 2px rgba(0,0,0,.22) !important; }
.np-message-app .np-input-send-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 76px !important;
    align-items: end !important;
    gap: 8px !important;
}
.np-message-app .np-input-send-row .np-send-tool {
    grid-column: auto !important;
    width: 76px !important;
    min-width: 76px !important;
    margin: 0 !important;
    align-self: stretch !important;
}
.np-voice-message-player {
    display: grid;
    gap: 8px;
    min-width: min(280px, 100%);
}
.np-voice-message-player span {
    display: inline-flex;
    width: fit-content;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(255,255,255,.22);
    color: inherit;
    font-size: 12px;
    font-weight: 1000;
}
.np-voice-message-player audio,
.np-message-attachment audio {
    width: min(300px, 100%) !important;
    min-height: 38px !important;
    display: block !important;
    opacity: 1 !important;
}
.np-chat-bubble.client .np-voice-message-player audio { filter: none !important; background:#fff; border-radius:999px; }
.np-history-card .np-empty-card.small { margin-top: 12px; }
@media(max-width:720px){
    .np-message-app .np-input-send-row { grid-template-columns: minmax(0,1fr) 64px !important; }
    .np-message-app .np-input-send-row .np-send-tool { width:64px !important; min-width:64px !important; }
    .np-voice-message-player audio,
    .np-message-attachment audio { width: min(250px, 100%) !important; }
}

/* Admin message center 3.3 */
.npx-admin-chat .npx-chat-list { scroll-behavior: smooth; }
.npx-admin-tools {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    padding: 8px;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    background: #f8fafc;
}
.npx-admin-tools label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 0 10px;
    border-radius: 999px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    color: #1d4ed8;
    font-weight: 800;
    cursor: pointer;
}
.npx-admin-tools input[type=file] { display: none; }
#npx-admin-media-ready {
    color: #334155;
    font-weight: 800;
}
#npx-admin-media-ready button {
    border: 0;
    border-radius: 999px;
    background: #fee2e2;
    color: #991b1b;
    margin-left: 6px;
    cursor: pointer;
}
.npx-admin-voice-play {
    display: grid;
    gap: 6px;
    margin-top: 8px;
}
.npx-admin-voice-play span {
    font-size: 12px;
    font-weight: 900;
}
.npx-admin-voice-play audio { width: min(280px, 100%); }

/* NOVAPEX 3.4 message status/read polish */
.np-unread-divider{display:flex;align-items:center;gap:10px;margin:12px 0;color:#1d4ed8;font-size:12px;font-weight:1000;letter-spacing:.02em;text-transform:uppercase}.np-unread-divider:before,.np-unread-divider:after{content:"";height:1px;background:#bfdbfe;flex:1}.np-unread-divider span{background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:6px 10px}.np-resolve-chat-btn{margin-top:10px;border:0;border-radius:999px;padding:9px 13px;background:#dcfce7;color:#166534;font-weight:1000;cursor:pointer;box-shadow:0 10px 24px rgba(22,101,52,.12)}.np-resolve-chat-btn:hover{background:#bbf7d0}

/* NOVAPEX 3.7 message pagination polish */
.np-load-more-chat {
    justify-self: center;
    width: fit-content;
    min-height: 36px;
    border: 1px solid rgba(37, 99, 235, 0.18);
    border-radius: 999px;
    padding: 0 14px;
    background: rgba(255,255,255,0.92);
    color: #1d4ed8;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 10px 28px rgba(15,23,42,0.08);
}
.np-load-more-chat:disabled { opacity: .65; cursor: not-allowed; }

/* =========================================================
   3.8 Currency + Payment polish
========================================================= */
.np-currency-card{margin-top:18px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.92));border:1px solid rgba(191,219,254,.9);border-radius:26px;padding:20px;box-shadow:0 18px 52px rgba(15,23,42,.08);display:grid;gap:14px}
.np-currency-card span{display:inline-flex;width:max-content;border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:6px 10px;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}
.np-currency-card h3{margin:4px 0 0;color:#0f172a;font-size:26px;line-height:1.05;letter-spacing:-.04em}.np-currency-card p{margin:0;color:#475569;line-height:1.65;font-weight:650}.np-currency-actions{display:flex;gap:10px;flex-wrap:wrap}.np-currency-actions select{min-height:46px;border-radius:16px;border:1px solid #bfdbfe;background:#fff;padding:0 12px;font-weight:900;color:#0f172a}.np-currency-actions button,.np-pay-actions button{min-height:46px;border:0;border-radius:999px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-weight:1000;padding:0 16px;cursor:pointer}.np-currency-actions button:disabled,.np-pay-actions button:disabled{opacity:.6;cursor:not-allowed}.np-currency-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:16px;padding:12px!important;color:#1e3a8a!important}.np-pay-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.np-pay-actions button.crypto{background:linear-gradient(135deg,#0f172a,#16a34a)}.np-paid-box{margin-top:14px;background:#dcfce7;color:#166534;border:1px solid #86efac;border-radius:16px;padding:12px;font-weight:900}
@media(max-width:720px){.np-currency-actions,.np-pay-actions{display:grid;grid-template-columns:1fr}.np-currency-actions select,.np-currency-actions button,.np-pay-actions button{width:100%}}

/* =========================================================
   NOVAPEX 3.9 — Currency switch + minimized lists
========================================================= */
.np-menu-currency{margin:10px 0;padding:12px;border-radius:18px;background:linear-gradient(135deg,rgba(239,246,255,.96),rgba(240,253,250,.92));border:1px solid rgba(191,219,254,.9);display:grid;gap:8px}
.np-menu-currency>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#1d4ed8;font-weight:1000}.np-menu-currency>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.np-menu-currency button{min-height:38px;border:1px solid rgba(37,99,235,.18);border-radius:999px;background:#fff;color:#0f172a;font-weight:1000;cursor:pointer}.np-menu-currency button.active{background:linear-gradient(135deg,#111827,#1d4ed8);color:#fff;border-color:transparent;box-shadow:0 14px 30px rgba(37,99,235,.18)}.np-menu-currency small{color:#64748b;font-weight:750;line-height:1.45}.np-compact-head{margin-bottom:14px!important}.np-list-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 16px}.np-list-toolbar small{color:#64748b;font-weight:900}.np-mini-list{display:grid;gap:10px}.np-mini-row{border:1px solid rgba(226,232,240,.95);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,250,252,.94));border-radius:22px;padding:14px 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;box-shadow:0 16px 42px rgba(15,23,42,.06);cursor:pointer;transition:.2s ease}.np-mini-row:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.24);box-shadow:0 24px 60px rgba(15,23,42,.1)}.np-mini-row h3{margin:4px 0;color:#0f172a;font-size:18px;line-height:1.15;letter-spacing:-.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np-mini-row p{margin:0;color:#64748b;font-weight:800;line-height:1.45}.np-mini-kicker{font-size:12px;color:#1d4ed8;font-weight:1000;text-transform:uppercase;letter-spacing:.05em}.np-mini-row button,.np-load-more{min-height:40px;border:0;border-radius:999px;padding:0 14px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;font-weight:1000;cursor:pointer}.np-load-more{width:max-content;justify-self:center;margin-top:4px}.np-small-modal{width:min(520px,calc(100vw - 24px))!important}.np-detail-modal{width:min(850px,calc(100vw - 24px))!important}.np-small-modal label{display:grid;gap:7px;margin:12px 0;color:#334155;font-weight:950}.np-small-modal input,.np-small-modal select{min-height:46px;border:1px solid rgba(203,213,225,.95);border-radius:14px;padding:0 12px;background:#fff;color:#0f172a;font-weight:800}.np-modal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.np-detail-head span{display:inline-flex;width:max-content;border-radius:999px;background:#dbeafe;color:#1d4ed8;padding:7px 11px;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.08em}.np-detail-head h2{margin:12px 0 8px;color:#0f172a;font-size:clamp(28px,4vw,46px);line-height:1;letter-spacing:-.055em}.np-detail-head p{margin:0;color:#64748b;font-weight:750;line-height:1.6}.np-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.np-detail-grid div{background:#f8fafc;border:1px solid rgba(226,232,240,.95);border-radius:16px;padding:12px}.np-detail-grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:1000}.np-detail-grid dd{margin:5px 0 0;color:#0f172a;font-weight:900;overflow-wrap:anywhere}@media(max-width:720px){.np-mini-row{grid-template-columns:1fr}.np-mini-row button{width:100%}.np-detail-grid{grid-template-columns:1fr}.np-menu-currency>div{grid-template-columns:1fr 1fr}.np-mini-row h3{white-space:normal}}


/* NOVAPEX 4.0 Access + Platform workflow polish */
.np-access-guide{
    grid-column:1/-1;
    padding:16px 18px;
    border-radius:22px;
    background:linear-gradient(135deg, rgba(239,246,255,.98), rgba(240,253,250,.95));
    border:1px solid rgba(59,130,246,.22);
    box-shadow:0 16px 46px rgba(15,23,42,.06);
    color:#0f172a;
}
.np-access-guide strong{display:block;font-weight:1000;color:#0f172a;margin-bottom:6px;letter-spacing:-.02em;}
.np-access-guide p{margin:0;color:#334155;line-height:1.65;font-weight:760;}
.np-access-guide small{display:block;margin-top:8px;color:#1d4ed8;font-weight:900;line-height:1.5;}
.npx-admin-wide{grid-column:1/-1;}
