/* HasibOS 1.2.0 · midnight / purple / magenta */
:root{--hb-bg:#0d0d0f;--hb-panel:#151419;--hb-panel2:#1b1820;--hb-line:#2d2636;--hb-text:#f7f4fa;--hb-muted:#aaa1b5;--hb-purple:#541597;--hb-magenta:#f31081;--hb-soft:#b78be8;--hb-ok:#75c9a1;--hb-warn:#e0b66e}
html,body{margin:0!important;padding:0!important;background:var(--hb-bg)!important;color:var(--hb-text);font-family:Manrope,"Hind Siliguri",sans-serif;overflow:hidden}
body.admin-bar{margin-top:0!important}#wpadminbar{display:none!important}
#page,.hb-theme-shell,#primary{height:100dvh;min-height:0;overflow:hidden}
#hasibos-app{height:100dvh;max-height:100dvh;display:flex;flex-direction:column;background:var(--hb-bg);color:var(--hb-text);overflow:hidden}
#hasibos-app *{box-sizing:border-box}
#hasibos-app .bn{font-family:"Hind Siliguri",sans-serif}
.hb-shell{height:100%;display:grid;grid-template-columns:238px minmax(0,1fr);min-height:0}
.hb-sidebar{background:#111014;border-right:1px solid var(--hb-line);padding:24px 15px;display:flex;flex-direction:column;min-height:0}
.hb-brand{display:flex;align-items:center;gap:11px;padding:2px 9px 26px}
.hb-logo{width:42px;height:42px;object-fit:contain;border-radius:10px}.hb-logo-fallback{width:42px;height:42px;display:grid;place-items:center;background:var(--hb-purple);border-radius:12px;color:#fff;font-weight:900;font-size:22px}
.hb-brand-name{font-size:20px;font-weight:800;letter-spacing:-.7px}.hb-brand-sub{font-size:10px;color:var(--hb-muted);margin-top:2px}
.hb-nav-label{font-size:10px;color:#746b7e;font-weight:800;letter-spacing:1.4px;padding:8px 11px 10px;text-transform:uppercase}
.hb-nav{display:grid;gap:5px}.hb-tab{border:0;background:transparent;color:#b8afc1;text-align:left;padding:12px 13px;border-radius:10px;font:600 13px Manrope,sans-serif;cursor:pointer;display:flex;align-items:center;gap:11px}.hb-tab .hb-ico{width:18px;text-align:center;font-size:16px}.hb-tab.active{background:#28163b;color:#fff;box-shadow:inset 2px 0 var(--hb-magenta)}.hb-tab:hover{background:#211b28;color:#fff}
.hb-side-bottom{margin-top:auto;border-top:1px solid var(--hb-line);padding:16px 8px 0;color:#82788c;font-size:11px;line-height:1.7}
.hb-main{min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.hb-topbar{height:72px;flex:none;border-bottom:1px solid var(--hb-line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:#101013}
.hb-page-title{font-size:16px;font-weight:800}.hb-page-sub{font-size:11px;color:var(--hb-muted);margin-top:3px}
.hb-top-actions{display:flex;align-items:center;gap:10px}.hb-date{font-size:12px;color:#bdb4c6}.hb-icon-btn{border:1px solid var(--hb-line);background:#19161e;color:#eee;border-radius:10px;width:37px;height:37px;cursor:pointer}
.hb-content{padding:22px 28px 26px;overflow:auto;min-height:0;scrollbar-width:thin;scrollbar-color:#4a315d transparent}
.hb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.hb-card{background:var(--hb-panel);border:1px solid var(--hb-line);border-radius:15px;padding:16px;min-width:0}
.hb-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:#968ba1;font-weight:800}
.hb-value{font-size:26px;font-weight:800;color:#fff;margin-top:8px;letter-spacing:-.8px}
.hb-sub{font-size:11px;color:var(--hb-muted);margin-top:4px}
.hb-section{font-size:16px;font-weight:800;color:#f5effa;margin:23px 0 12px}
.hb-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.hb-btn{border:1px solid transparent;border-radius:9px;padding:9px 13px;background:var(--hb-purple);color:#fff;font:700 11px Manrope,sans-serif;cursor:pointer}
.hb-btn:hover{background:#6820b0}.hb-btn.secondary{background:#21192a;border-color:#49305e;color:#e7d8f7}.hb-btn.danger{background:#261a25;border-color:#503043;color:#e9a9c9}
.hb-actions{display:flex;gap:6px;flex-wrap:wrap}
.hb-pill{font-size:10px;padding:5px 8px;border-radius:20px;background:#28202f;color:#d8b9f2;font-weight:800;white-space:nowrap}
.hb-pill.done{background:#183127;color:#91d6b2}.hb-pill.skip{background:#30251b;color:#e0b66e}.hb-progress{height:6px;background:#302a35;border-radius:20px;overflow:hidden;margin-top:9px}.hb-progress span{display:block;height:100%;background:var(--hb-magenta);border-radius:20px}
.hb-task{display:grid;grid-template-columns:105px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid #29232e}
.hb-time{font-size:11px;color:#d69bc1;font-weight:800;font-variant-numeric:tabular-nums}.hb-taskname{font-size:13px;font-weight:700;color:#f5f0f8}.hb-meta{font-size:10px;color:#8f859a;margin-top:4px}
.hb-form{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;align-items:end}
.hb-field label{display:block;font-size:10px;font-weight:800;color:#a89db3;margin-bottom:6px}
.hb-field input,.hb-field select,.hb-field textarea{width:100%;border:1px solid #3a3043;background:#100f13;border-radius:9px;padding:10px;color:#f7f4fa;font:12px Manrope,sans-serif;min-width:0}
.hb-table{width:100%;border-collapse:collapse}.hb-table th,.hb-table td{text-align:left;padding:12px 9px;border-bottom:1px solid #2a2430;font-size:11px}.hb-table th{color:#8f849b;font-size:9px;text-transform:uppercase;letter-spacing:.8px}
.hb-empty{padding:25px;text-align:center;color:#92889d;background:#151419;border:1px dashed #45374f;border-radius:13px;font-size:12px}
.hb-notice{padding:11px 13px;background:#281b32;color:#e5c8fa;border:1px solid #52346b;border-radius:10px;margin-bottom:13px;font-size:12px}
.hb-chart{width:100%;height:210px;display:block}.hb-chart text{fill:#968ba1;font:10px Manrope,sans-serif}.hb-chart .gridline{stroke:#302a35;stroke-width:1}.hb-chart .bar-plan{fill:#57416d}.hb-chart .bar-actual{fill:#f31081}
.hb-history-item{display:grid;grid-template-columns:90px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 4px;border-bottom:1px solid #29232e}
.hb-date-label{font-size:11px;color:#d6c4e3;font-weight:800}.hb-footer{display:none}
.hb-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hb-logo-preview{width:100%;height:110px;object-fit:contain;background:#0b0a0d;border:1px solid #3a3043;border-radius:12px;padding:12px}
.hb-mobile-nav{display:none}
@media(max-width:900px){.hb-shell{grid-template-columns:190px minmax(0,1fr)}.hb-content{padding:18px}.hb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
 html,body{overflow:hidden!important;height:100%;overscroll-behavior:none}
 #page,.hb-theme-shell,#primary,#hasibos-app{height:100dvh;max-height:100dvh;min-height:0}
 .hb-shell{display:flex;flex-direction:column}
 .hb-sidebar{display:none}
 .hb-topbar{height:58px;padding:0 14px}
 .hb-page-title{font-size:14px}.hb-page-sub{font-size:10px}
 .hb-date{font-size:10px}
 .hb-content{padding:13px 12px 12px;flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:78px}
 .hb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .hb-card{padding:12px;border-radius:12px}
 .hb-kicker{font-size:9px}.hb-value{font-size:21px}.hb-sub{font-size:9px}
 .hb-section{font-size:14px;margin:17px 0 9px}
 .hb-task{grid-template-columns:72px minmax(0,1fr);gap:7px;padding:10px 0}
 .hb-task .hb-pill{justify-self:start}.hb-task .hb-actions{grid-column:2}
 .hb-time{font-size:10px}.hb-taskname{font-size:12px}.hb-meta{font-size:9px}
 .hb-btn{padding:8px 10px;font-size:10px}
 .hb-form{grid-template-columns:1fr 1fr}
 .hb-settings-grid{grid-template-columns:1fr}
 .hb-history-item{grid-template-columns:68px minmax(0,1fr);gap:6px}
 .hb-history-item .hb-pill,.hb-history-item .hb-sub{grid-column:2}
 .hb-table{min-width:0}.hb-table th,.hb-table td{padding:9px 5px;font-size:10px}
 .hb-mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:999;background:#121015;border-top:1px solid #35283f;padding:7px 4px calc(7px + env(safe-area-inset-bottom))}
 .hb-mobile-nav .hb-tab{display:flex;flex-direction:column;gap:3px;text-align:center;align-items:center;justify-content:center;padding:5px 2px;font-size:9px;border-radius:8px}
 .hb-mobile-nav .hb-ico{font-size:15px}
}

/* HasibOS 1.2.5: purple-led brand palette */
:root{--hb-bg:#1b1030;--hb-panel:#26163c;--hb-panel2:#302047;--hb-line:#49305f;--hb-text:#f8f2ff;--hb-muted:#c1b0d2;--hb-purple:#541597;--hb-magenta:#f31081;--hb-soft:#c69bea}
html,body{background:#1b1030!important;color:var(--hb-text)}
#hasibos-app,.hb-theme-shell{background:#1b1030!important}
.hb-sidebar,.hb-topbar,.hb-mobile-nav{background:#160d25!important}
.hb-card{background:#26163c;border-color:#49305f}
.hb-empty{background:#211432;border-color:#63417d;color:#c1b0d2}
.hb-content{scrollbar-color:#7541a3 transparent}
.hb-icon-btn{background:#302047;border-color:#49305f}
.hb-field input,.hb-field select,.hb-field textarea{background:#1b1030;border-color:#65457d;color:#fff}
.hb-progress{background:#49305f}
.hb-section,.hb-taskname,.hb-value{color:#fff}
.hb-tab.active{background:#3b1b59;box-shadow:inset 3px 0 var(--hb-magenta)}
.hb-tab:hover{background:#302047}
.hb-notice{background:#3b1b59;border-color:#7541a3;color:#f8eaff}
.hb-logo-preview{background:#1b1030;border-color:#49305f}
.hb-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hb-note-content{color:#d8c9e6;font-size:12px;line-height:1.7;white-space:normal;overflow-wrap:anywhere}
.hb-mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))!important}
@media(max-width:640px){.hb-notes-grid{grid-template-columns:1fr}.hb-mobile-nav .hb-tab{font-size:8px}}

/* HasibOS 1.2.6: subtle motion, wake-up alarm and study player */
@keyframes hb-progress-fill{from{width:0;filter:brightness(1.5)}to{filter:brightness(1)}}
@keyframes hb-progress-glow{0%,100%{box-shadow:0 0 5px rgba(243,16,129,.25)}50%{box-shadow:0 0 14px rgba(243,16,129,.75)}}
@keyframes hb-card-breathe{0%,100%{transform:translateY(0);border-color:#49305f}50%{transform:translateY(-2px);border-color:#7541a3}}
@keyframes hb-live-pulse{0%,100%{opacity:.65;box-shadow:0 0 0 0 rgba(243,16,129,.35)}50%{opacity:1;box-shadow:0 0 0 6px rgba(243,16,129,0)}}
@keyframes hb-alarm-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.hb-progress span{animation:hb-progress-fill 1.25s cubic-bezier(.2,.75,.25,1) both,hb-progress-glow 2.8s ease-in-out infinite}
.hb-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.hb-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(9,3,20,.18)}
.hb-live-card{animation:hb-card-breathe 5s ease-in-out infinite}
.hb-live-dot{display:inline-flex;align-items:center;gap:7px;color:#ff83c2;font-size:9px;font-weight:900;letter-spacing:1px}
.hb-live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#f31081;animation:hb-live-pulse 1.7s infinite}
.hb-reminder-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--hb-line)}
.hb-check{display:flex;gap:10px;align-items:center;font-size:12px;margin:12px 0}
.hb-reminder-form{grid-template-columns:1fr 1fr}
.hb-study-player{margin-top:12px}
.hb-youtube-frame{width:100%;aspect-ratio:16/9;border:1px solid var(--hb-line);border-radius:12px;background:#10091b}
.hb-alarm-overlay{position:fixed;inset:0;z-index:1000000;background:rgba(10,4,20,.92);display:grid;place-items:center;padding:20px;backdrop-filter:blur(10px)}
.hb-alarm-panel{width:min(440px,100%);padding:34px 24px;text-align:center;border:1px solid #a33c85;border-radius:22px;background:linear-gradient(145deg,#291344,#42104a);box-shadow:0 20px 80px rgba(0,0,0,.5);animation:hb-alarm-in .35s ease-out}
.hb-alarm-overline{color:#ff8cc9;font-size:11px;letter-spacing:2px;font-weight:900}
.hb-alarm-panel h2{font-size:30px;margin:16px 0 8px;color:#fff}
.hb-alarm-panel p{color:#e4cde8;font-size:14px;line-height:1.6;margin-bottom:22px}
.hb-alarm-stop{font-size:14px;padding:13px 25px;background:#f31081}
@media(prefers-reduced-motion:reduce){.hb-progress span,.hb-live-card,.hb-live-dot:before{animation:none!important}.hb-card{transition:none!important}}
@media(max-width:640px){.hb-reminder-row{align-items:flex-start;flex-direction:column}.hb-reminder-row .hb-actions{width:100%}.hb-alarm-panel h2{font-size:25px}}


/* v1.2.7 progress journey and alarm challenge */
.hb-progress-journey{height:13px;position:relative;overflow:visible;margin:17px 12px 15px;background:#39234d;border:1px solid #58366e}
.hb-progress-journey .hb-progress-fill{height:100%;display:block;width:0;background:var(--hb-magenta);border-radius:20px;position:relative;transition:width 1.15s cubic-bezier(.2,.75,.25,1);box-shadow:0 0 12px rgba(243,16,129,.42);overflow:hidden}
.hb-progress-journey .hb-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 15%,rgba(255,255,255,.38) 48%,transparent 78%);transform:translateX(-100%);animation:hb-progress-shimmer 2.8s ease-in-out infinite}
.hb-progress-marker{position:absolute;top:50%;z-index:2;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#25133b;border:2px solid var(--hb-magenta);color:#fff;transform:translate(-50%,-50%);box-shadow:0 0 0 4px rgba(243,16,129,.13),0 0 15px rgba(243,16,129,.48);transition:left 1.15s cubic-bezier(.2,.75,.25,1);animation:hb-marker-pulse 2s ease-in-out infinite}
.hb-progress-journey .hb-progress-marker svg{width:15px;height:15px}
@keyframes hb-progress-shimmer{0%,15%{transform:translateX(-110%)}70%,100%{transform:translateX(110%)}}
@keyframes hb-marker-pulse{0%,100%{box-shadow:0 0 0 3px rgba(243,16,129,.10),0 0 9px rgba(243,16,129,.3)}50%{box-shadow:0 0 0 6px rgba(243,16,129,.16),0 0 17px rgba(243,16,129,.55)}}
.hb-alarm-math{margin-top:20px;padding:18px;border:1px solid rgba(255,140,201,.35);border-radius:16px;background:rgba(15,7,25,.35)}
.hb-alarm-step{font-size:10px;letter-spacing:1.5px;font-weight:900;color:#ff9ccc}
.hb-alarm-question{font-size:34px;font-weight:900;letter-spacing:1px;color:#fff;margin:13px 0 17px;font-variant-numeric:tabular-nums}
.hb-alarm-math form{display:flex;gap:9px;flex-wrap:wrap;justify-content:center}
.hb-alarm-math input{width:min(150px,100%);min-height:43px;border:1px solid #80519a;border-radius:9px;background:#170d23;color:#fff;text-align:center;font:700 18px Manrope,sans-serif;padding:8px}
.hb-alarm-feedback{font-size:12px;line-height:1.5;color:#e5cde9;margin-top:13px}
.hb-alarm-panel{max-height:92dvh;overflow:auto}
@media(prefers-reduced-motion:reduce){.hb-progress-journey .hb-progress-fill:after,.hb-progress-marker{animation:none!important}.hb-progress-journey .hb-progress-fill,.hb-progress-marker{transition:none!important}}

.hb-progress-journey .hb-progress-marker{display:grid;height:27px;background:#25133b;border-radius:50%;overflow:visible}


/* HasibOS 1.2.8: activity-specific live progress and user-selectable palettes */
html,body,#hasibos-app,.hb-theme-shell,#page,#primary{background:var(--hb-bg)!important}
.hb-sidebar,.hb-topbar,.hb-mobile-nav{background:color-mix(in srgb,var(--hb-bg) 82%,#080510)!important;border-color:var(--hb-line)!important}
.hb-card{background:var(--hb-panel)!important;border-color:var(--hb-line)!important}
.hb-empty{background:color-mix(in srgb,var(--hb-panel) 82%,#000)!important;border-color:var(--hb-line)!important}
.hb-btn{background:var(--hb-purple)!important}
.hb-btn:hover{filter:brightness(1.14)}
.hb-btn.secondary{background:color-mix(in srgb,var(--hb-panel) 80%,#000)!important;border-color:var(--hb-line)!important}
.hb-progress span,.hb-chart .bar-actual{background:var(--hb-magenta)}
.hb-routine-progress{display:flex;align-items:center;gap:8px;margin-top:9px;max-width:360px}
.hb-routine-icon{width:23px;height:23px;flex:none;display:grid;place-items:center;border-radius:50%;font-size:13px;font-weight:900;color:var(--routine-color);border:1.5px solid var(--routine-color);background:color-mix(in srgb,var(--routine-color) 13%,transparent);box-shadow:0 0 10px color-mix(in srgb,var(--routine-color) 24%,transparent)}
.hb-routine-track{height:6px;flex:1;min-width:45px;border-radius:30px;background:color-mix(in srgb,var(--routine-color) 16%,var(--hb-panel));overflow:hidden}
.hb-routine-track>span{display:block;height:100%;border-radius:30px;background:var(--routine-color);box-shadow:0 0 9px color-mix(in srgb,var(--routine-color) 55%,transparent);transition:width 1s linear;position:relative}
.hb-routine-track>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);transform:translateX(-100%);animation:hb-routine-shimmer 2.4s ease-in-out infinite}
.hb-routine-progress small{font-size:9px;color:var(--routine-color);font-weight:800;min-width:29px;text-align:right;font-variant-numeric:tabular-nums}
@keyframes hb-routine-shimmer{to{transform:translateX(200%)}}
@media(prefers-reduced-motion:reduce){.hb-routine-track>span:after{animation:none}}

/* v1.2.9 learning modules */
.hb-ai-fab{position:fixed;right:22px;bottom:94px;z-index:50;width:54px;height:54px;border:1px solid var(--hb-line);border-radius:50%;background:var(--hb-purple);color:#fff;font-size:25px;box-shadow:0 8px 28px #0005;cursor:pointer}
.hb-books-grid,.hb-ai-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:12px}
.hb-book-icon{width:48px;height:56px;display:grid;place-items:center;border-radius:8px;background:#e84b8c22;color:#f18ac0;font-weight:800;margin-bottom:12px}
.hb-book-card[hidden]{display:none}.hb-pdf-reader{margin-top:14px}.hb-pdf-reader iframe{width:100%;height:min(78vh,850px);border:0;border-radius:12px;background:#fff;margin:12px 0}
.hb-import{border-top:1px solid var(--hb-line);padding:12px 0}.hb-import summary{cursor:pointer;font-weight:700;margin-bottom:10px}.hb-import textarea{width:100%;background:var(--hb-bg);color:#fff;border:1px solid var(--hb-line);border-radius:10px;padding:12px}
.hb-mcq-card{margin:12px 0}.hb-mcq-card>strong{display:block;margin:8px 0 14px}.hb-mcq-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hb-mcq-options label{padding:10px;border:1px solid var(--hb-line);border-radius:9px;cursor:pointer}.hb-mcq-options input{accent-color:var(--hb-pink)}
.hb-ai-provider{padding:18px;border:1px solid var(--hb-line);border-radius:12px;background:var(--hb-panel);color:#fff;text-align:left;font-weight:700;cursor:pointer}.hb-ai-provider small{display:block;color:var(--hb-muted);font-weight:400;margin-top:5px}
.hb-ai-sheet{position:fixed;inset:0;z-index:1000;background:#08040dcc;display:flex;align-items:flex-end;justify-content:center}.hb-ai-sheet-panel{width:min(760px,100%);height:min(78vh,760px);background:var(--hb-panel);border:1px solid var(--hb-line);border-radius:22px 22px 0 0;padding:18px;display:flex;flex-direction:column;gap:12px;box-shadow:0 -12px 50px #0007}.hb-ai-messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:8px 0}.hb-ai-message{max-width:88%;padding:11px 14px;border-radius:14px;line-height:1.5;overflow-wrap:anywhere}.hb-ai-message.user{align-self:flex-end;background:var(--hb-purple);color:#fff}.hb-ai-message.assistant{align-self:flex-start;background:var(--hb-bg);border:1px solid var(--hb-line);color:#fff}.hb-ai-sheet form{display:flex;gap:8px;align-items:flex-end}.hb-ai-sheet form textarea{flex:1;min-width:0;background:var(--hb-bg);color:#fff;border:1px solid var(--hb-line);border-radius:10px;padding:12px}
@media(max-width:700px){.hb-ai-fab{right:14px;bottom:90px;width:48px;height:48px}.hb-mcq-options{grid-template-columns:1fr}.hb-ai-sheet-panel{height:82vh;padding:14px}.hb-books-grid{grid-template-columns:1fr 1fr}}

@media(max-width:640px){
 .hb-mobile-nav{display:flex!important;overflow-x:auto;overflow-y:hidden;justify-content:flex-start;gap:3px;scrollbar-width:none}
 .hb-mobile-nav::-webkit-scrollbar{display:none}
 .hb-mobile-nav .hb-tab{flex:0 0 64px;min-width:64px}
}

/* Official ChatGPT web view inside the HasibOS AI bottom sheet */
.hb-ai-web-frame{width:100%;height:100%;min-height:360px;flex:1;border:0;border-radius:12px;background:#fff}
.hb-ai-sheet-panel:has(.hb-ai-web-frame){height:min(92vh,900px)}
.hb-ai-web-actions{display:flex;flex-direction:column;gap:8px}
.hb-ai-web-actions[hidden]{display:none}
.hb-ai-sheet form[hidden]{display:none}

/* HasibOS automatic free-tier multi-model assistant */
.hb-ai-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.hb-ai-status{padding:12px;border:1px solid var(--hb-line);border-radius:10px;background:var(--hb-bg)}
.hb-ai-status strong,.hb-ai-status small{display:block}.hb-ai-status small{margin-top:5px;color:var(--hb-muted)}
.hb-ai-provider-note{font-size:12px;line-height:1.5;color:var(--hb-muted);padding:9px 11px;border:1px solid var(--hb-line);border-radius:9px}
.hb-ai-model-label{font-size:10px;opacity:.75;font-weight:700}
@media(max-width:480px){.hb-ai-status-grid{grid-template-columns:1fr}}

.hb-ai-stream-text{white-space:pre-wrap;overflow-wrap:anywhere}

/* v1.3.6 AI image, voice and keyboard controls */
.hb-ai-tools{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.hb-ai-tools .hb-btn{white-space:nowrap}
.hb-ai-sheet form{flex-wrap:wrap}
.hb-ai-sheet form textarea{width:100%;flex-basis:100%;min-height:64px}
.hb-ai-attached-image{display:block;max-width:min(280px,100%);max-height:220px;object-fit:contain;border-radius:10px;margin-top:8px}
@media(max-width:520px){.hb-ai-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.hb-ai-tools .hb-btn{width:100%}}

/* HasibOS 1.3.8 Quran Reader */
.hb-quran-intro{margin-bottom:13px}.hb-quran-modes{display:flex;gap:8px;flex-wrap:wrap}.hb-quran-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.hb-quran-frame-wrap{width:100%;height:min(76vh,900px);min-height:540px;overflow:hidden;border:1px solid var(--hb-line);border-radius:12px;background:#fff;margin:14px 0}.hb-quran-frame{width:100%;height:100%;border:0;background:#fff}.hb-quran-ayah{margin-top:10px}.hb-quran-ar{font-family:"Noto Naskh Arabic","Amiri",serif;font-size:29px;line-height:2.1;text-align:right;color:#fff;padding:14px 4px;border-bottom:1px solid var(--hb-line)}.hb-quran-translation{font-size:13px;line-height:1.85;color:#e9deef;padding:9px 2px}.hb-quran-translation p{margin:5px 0}.hb-quran-translation.bn{font-family:"Hind Siliguri",sans-serif}.hb-quran-tafsir{border-top:1px solid var(--hb-line);padding-top:10px;font-size:12px;line-height:1.8;color:#d7c5e6}.hb-quran-tafsir summary{cursor:pointer;color:#e7b4d6;font-weight:700}.hb-quran-tafsir p{white-space:pre-wrap}
@media(max-width:640px){.hb-quran-controls{grid-template-columns:1fr 1fr}.hb-quran-frame-wrap{min-height:480px;height:68vh}.hb-quran-ar{font-size:24px;line-height:2}.hb-quran-modes .hb-btn{flex:1}}
