/* BRIHANTRA NET · design consistency and accessibility layer · Oct 2026
   Intentionally scoped to website pages; does not replace Cloud Learning functionality. */
:root{--bn-ink:#211d42;--bn-brand:#321a8c;--bn-violet:#6340cb;--bn-border:#e4def4;--bn-muted:#676481;--bn-surface:#fff;--bn-bg:#f7f6fc;--bn-success:#145e44;--bn-focus:#8a64f3}
[hidden]{display:none!important}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--bn-focus);outline-offset:3px}
:where(button,a){-webkit-tap-highlight-color:transparent}
:where(button){touch-action:manipulation}
/* Public overview: consistent layout, honest calls to action */
body.marketing-page{background:var(--bn-bg);color:var(--bn-ink)}
.marketing-page header{background:#261664}
.marketing-page header nav{flex-wrap:wrap;gap:12px 22px}
.marketing-page header nav a{display:inline-flex;align-items:center;min-height:42px}
.marketing-page .hero{box-shadow:0 14px 40px rgba(35,23,99,.12)}
.marketing-page .section>.notice{font-size:1rem;color:#54516b;max-width:850px}
.marketing-page .package{gap:9px;border-color:var(--bn-border);box-shadow:0 4px 14px rgba(38,22,95,.035)}
.marketing-page .package.featured{border:1px solid var(--bn-border);box-shadow:0 4px 14px rgba(38,22,95,.035)}
.marketing-page .package .soon{color:#554d75;line-height:1.45}
.marketing-page .btn{min-height:45px}
.marketing-page .discount{background:#f4f1ff;border-color:#ded5f7}
.marketing-page .discount p{margin:.6rem 0}
.marketing-page .disclaimer{max-width:900px}
/* Shared payment and administrator pages */
body.payments-page,body.review-page{margin:0;min-height:100vh;background:var(--bn-bg);color:var(--bn-ink);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.payments-page .payment-shell,.review-page .review-shell{margin:0 auto;max-width:800px;padding:clamp(24px,5vw,60px) 20px 75px}
.review-page .review-shell{max-width:980px}
.payments-page .breadcrumb,.review-page .breadcrumb{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:14px;margin-bottom:32px;color:#58516c}
.payments-page .breadcrumb a,.review-page .breadcrumb a{color:var(--bn-brand);text-decoration:none;font-weight:700}
.payments-page .breadcrumb a:hover,.review-page .breadcrumb a:hover{text-decoration:underline}
.payments-page .eyebrow,.review-page .eyebrow{margin:0 0 8px;font-size:12px;letter-spacing:.14em;font-weight:850;color:var(--bn-violet)}
.payments-page h1,.review-page h1{font-size:clamp(28px,4vw,38px);font-weight:800;line-height:1.18;letter-spacing:-.035em;margin:0 0 12px;color:#28195f}
.payments-page .page-lede{font-size:16px;color:#625b75;max-width:690px;line-height:1.65;margin:0 0 26px}
.payments-page .payment-card,.review-page .request{background:#fff;border:1px solid var(--bn-border);border-radius:20px;box-shadow:0 8px 30px rgba(31,19,81,.06);padding:clamp(22px,4vw,35px)}
.payments-page .plan-summary{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border-bottom:1px solid #eeeaf7;padding-bottom:16px}
.payments-page .plan-label{font-size:13px;font-weight:750;color:#6a6180;margin:0 0 3px}
.payments-page .plan-summary h2{font-size:40px;margin:0;color:#31208a;line-height:1.1}
.payments-page .plan-duration{font-size:14px;font-weight:800;background:#ede9ff;color:#4b2d9a;padding:9px 14px;border-radius:99px;margin:0}
.payments-page .plan-rule{font-size:15px;color:#4e4965;margin:17px 0}
.payments-page #qr{background:#f3f0ff;border:1px solid #e1d9ff;color:#362376;padding:18px 20px;border-radius:13px;line-height:1.6;overflow-wrap:anywhere}
.payments-page #qr img{max-width:240px;width:100%;border:8px solid white;border-radius:13px;box-shadow:0 5px 15px rgba(22,14,60,.1)}
.payments-page #qr a.pay{display:inline-flex;text-decoration:none;margin:10px 0 0;justify-content:center}
.payments-page #request-preview{background:#fcfbff!important;border:1px solid #e5ddf5!important;padding:18px!important;margin:16px 0!important}
.payments-page #request-preview strong{color:#36237e}
.payments-page #request-preview p{font-size:14px;color:#57516b;line-height:1.65}
.payments-page #claim{border-top:1px solid var(--bn-border);padding-top:22px;margin-top:20px}
.payments-page #claim h3{margin:0 0 14px;font-size:18px}
.payments-page #claim label{font-weight:750;font-size:14px}
.payments-page #claim input{width:100%;max-width:100%;border:1px solid #cfc8e7;border-radius:10px;margin:6px 0 10px;font-size:16px}
.payments-page #claim p{font-size:13px;color:#6b6280}
.payments-page .notice{font-size:14px;line-height:1.65;color:#3f3569;margin:16px 0}
.payments-page .privacy-note{color:#666078;font-size:13px;line-height:1.65}
.payments-page button,.payments-page .pay{background:#5030ae;border:0;color:#fff;padding:12px 20px;border-radius:10px;font-weight:750;min-height:45px;cursor:pointer}
/* Payment review is a sensitive workflow: readable information density and clear actions. */
.review-page .review-shell>p:not(.eyebrow){color:#59526f;max-width:830px}
.review-page .review-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:24px 0 16px}
.review-page .role-note{font-size:12px;color:#6c637f}
.review-page #fetch-pending{font-weight:750;background:#f0ebff;color:#42269a;border:1px solid #dcd3f7;min-height:44px}
.review-page #review-status{display:block;font-size:14px;line-height:1.6;padding:12px 16px;background:#f0effa;color:#352c70;border:1px solid #e1dcf5;border-radius:12px;margin:18px 0}
.review-page .request{margin:16px 0;padding:26px 30px}
.review-page .request h2{font-size:21px;margin:0 0 12px}
.review-page .request .meta{font-size:13px;color:#615c73;overflow-wrap:anywhere;margin:8px 0}
.review-page .request label{display:block;font-weight:650;font-size:14px;color:#342d5f}
.review-page .request input[type=text],.review-page .request textarea{max-width:100%;width:100%;font-size:16px;background:#fff;border:1px solid #ccc5e1;border-radius:10px;padding:10px 13px}
.review-page .request textarea{min-height:85px;resize:vertical}
.review-page .request .verification-check{display:flex;gap:10px;align-items:flex-start;margin:17px 0 10px;line-height:1.55}
.review-page .request .verification-check input{margin:4px 0 0;width:18px;height:18px;flex-shrink:0;accent-color:#5e36c8}
.review-page .request button{min-height:45px;font-weight:750;margin:8px 10px 4px 0}
.review-page .request button.approve{background:#146444;color:#fff;border:0}
.review-page .request button.reject{background:#fff;color:#9a2c42;border:1px solid #aa5264}
.review-page button:disabled,.payments-page button:disabled{opacity:.5;cursor:not-allowed}
/* Cloud Learning: respect layout but make the subscription link and focus states consistent. */
.cloud-page .subscription-banner{background:#241661;color:#fff;font-size:13px;font-weight:750;text-align:center;padding:12px 16px}
.cloud-page .subscription-banner a{color:#fff;display:inline-block;line-height:1.5}
@media(max-width:760px){.marketing-page header{padding:14px 17px}.marketing-page nav{width:100%;justify-content:flex-start}.marketing-page .brand{font-size:1.08rem}.marketing-page .package{padding:19px}.marketing-page main{padding:20px 15px}.payments-page .payment-shell,.review-page .review-shell{padding:22px 14px 50px}.review-page .request{padding:20px}.review-page .request button{width:100%;margin:7px 0}.payments-page .plan-summary{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
.preview-page header{background:#261664}
.preview-page header nav{flex-wrap:wrap;align-items:center;gap:12px 18px}
.preview-page header nav a{display:inline-flex;align-items:center;min-height:42px}
.preview-page .panel{border-color:var(--bn-border);box-shadow:0 5px 21px rgba(35,21,95,.035)}
.preview-page .authbox{line-height:1.6}
.preview-page .question h3{line-height:1.55}
.preview-page button:disabled{opacity:.6}
.preview-page .status{line-height:1.55}
