

/* ===== 01-layer.css — من المصدر ===== */


700&family=Aref+Ruqaa:wght@400;700&family=Scheherazade+New:wght@400;700&family=Noto+Naskh+Arabic:wght@400;500;600;700&display=swap");

:root{
  --bg:#eee7da;
  --paper:#fbf7ee;
  --paper-strong:#fffdf8;
  --paper-soft:#eee5d6;
  --ink:#211a16;
  --muted:#796f63;
  --line:#cfc2af;
  --line-dark:#aa9a83;
  --accent:#6f2637;
  --accent-deep:#4c1825;
  --gold:#9c7845;
  --gold-soft:#d8c29a;
  --shadow:0 18px 42px rgba(55,38,22,.07);
  --poem-size:31px;
  --ui-font:"Noto Naskh Arabic","Noto Naskh Arabic",serif;
  --display-font:"Noto Kufi Arabic","Noto Naskh Arabic",serif;
  --poem-font:"Noto Naskh Arabic","Noto Naskh Arabic","Noto Naskh Arabic",serif;
}
[data-theme="dark"]{
  --bg:#12100e;
  --paper:#191612;
  --paper-strong:#201b16;
  --paper-soft:#262018;
  --ink:#f1e9dc;
  --muted:#aaa093;
  --line:#40372d;
  --line-dark:#665848;
  --accent:#d08a98;
  --accent-deep:#f0b4bf;
  --gold:#d0aa72;
  --gold-soft:#6d5838;
  --shadow:0 22px 50px rgba(0,0,0,.28);
}

*{box-sizing:border-box;min-width:0}
html,body{margin:0;width:100%;max-width:100%;overflow-x:hidden;scroll-behavior:smooth}
body{
  color:var(--ink);font-family:var(--ui-font);direction:rtl;text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
  background:
    radial-gradient(circle at 15% 8%,color-mix(in srgb,var(--gold-soft) 12%,transparent),transparent 26rem),
    linear-gradient(90deg,rgba(80,60,35,.018) 1px,transparent 1px),
    linear-gradient(var(--bg),var(--bg));
  background-size:auto,29px 29px,auto;
}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
.shell{width:100%;min-height:100vh}

/* Navigation */
.topbar{position:sticky;top:0;z-index:60;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 96%,transparent)}
.topbar-inner{width:min(1220px,100%);margin:auto;padding:9px clamp(14px,3vw,28px);display:flex;align-items:center;gap:20px}
.brand{display:flex;align-items:center;gap:11px;flex:0 1 auto}
.brand-mark{width:39px;height:39px;border:1px solid var(--line-dark);display:grid;place-items:center;font-family:var(--display-font);font-size:25px;color:var(--accent);background:var(--paper-strong);border-radius:2px;box-shadow:inset 0 0 0 3px var(--paper-strong),inset 0 0 0 4px color-mix(in srgb,var(--gold) 55%,var(--line));line-height:1}
.brand-copy b{display:block;font-family:var(--display-font);font-size:22px;line-height:1.15;white-space:nowrap}
.brand-copy span{display:block;color:var(--muted);font-size:10px;letter-spacing:.02em;margin-top:2px}
.nav{display:flex;gap:1px;margin-inline:auto;border-inline:1px solid var(--line);padding-inline:10px}
.nav button,.iconbtn{border:0;background:transparent;color:var(--muted);min-height:39px;padding:6px 11px;display:inline-flex;align-items:center;justify-content:center;position:relative}
.nav button::after{content:"";position:absolute;right:11px;left:11px;bottom:1px;height:1px;background:transparent}
.nav button.active{color:var(--ink)}
.nav button.active::after{background:var(--accent)}
.nav button:hover,.iconbtn:hover{color:var(--accent)}
.top-actions{display:flex;gap:0;flex:0 0 auto}
.iconbtn{min-width:39px;font-size:16px}

.main{width:min(1220px,100%);margin:auto;padding:42px clamp(14px,3vw,28px) 92px}
.view{display:none;width:100%}.view.active{display:block}

/* Home */
.hero{display:grid;grid-template-columns:minmax(0,1.58fr) minmax(300px,.72fr);gap:28px;align-items:stretch;border-bottom:1px solid var(--line);padding-bottom:38px}
.hero-main{padding:18px 18px 14px 2px;position:relative}
.hero-side{border-right:1px solid var(--line);padding:22px 30px 22px 4px;display:flex;flex-direction:column;justify-content:space-between}
.hero-eyebrow,.eyebrow{display:inline-block;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.04em;margin-bottom:12px}
.hero-name{font-family:var(--display-font);font-weight:700;font-size:clamp(38px,5.2vw,62px);line-height:1.55;margin:0 0 14px;max-width:18ch}
.hero-bio{font-family:var(--poem-font);font-size:clamp(19px,2vw,23px);line-height:2.05;margin:0 0 8px;max-width:72ch}
.site-note{font-size:14px;line-height:1.95;color:var(--muted);margin:0 0 25px;max-width:72ch}
.search-block{max-width:780px}.search-label{display:block;color:var(--accent);font-size:13px;margin:0 1px 7px}
.searchbox{width:100%;display:flex;align-items:center;gap:8px;border:1px solid var(--line-dark);background:var(--paper-strong);padding:4px 9px;box-shadow:0 4px 0 color-mix(in srgb,var(--line) 38%,transparent)}
.searchbox:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent)}
.searchbox input{flex:1;width:100%;border:0;outline:0;background:transparent;padding:11px 7px;font-size:16px}
.searchbox kbd{border:1px solid var(--line);padding:1px 7px;color:var(--muted);font-size:10px;background:var(--paper-soft)}
.hero-count{margin-top:15px;color:var(--muted);font-size:13px}
.hero-rule{margin-top:18px;display:flex;align-items:center;gap:9px;color:var(--gold);max-width:780px}.hero-rule::before,.hero-rule::after{content:"";height:1px;flex:1;background:linear-gradient(to left,transparent,var(--line-dark),transparent)}.hero-rule span{font-size:11px}
.quote-card{cursor:pointer;-webkit-tap-highlight-color:transparent}.quote-card:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.quote-label{color:var(--accent);font-size:12px;font-weight:700}.quote{font-family:var(--poem-font);font-size:clamp(25px,3vw,33px);line-height:2.12;margin:22px 0}
.quote-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--muted);font-size:11px}.quote-open{color:var(--accent);white-space:nowrap}

.section{margin-top:42px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.section-head h2{font-family:var(--display-font);font-size:35px;line-height:1.35;margin:0}.section-head p{margin:2px 0 0;color:var(--muted);font-size:13px}
.btn{border:1px solid var(--line-dark);background:transparent;color:var(--ink);min-height:39px;padding:7px 13px;border-radius:3px;display:inline-flex;align-items:center;justify-content:center}
.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.glass,.glass-panel{background:var(--paper)}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.poem-card{position:relative;background:color-mix(in srgb,var(--paper) 72%,transparent);border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px;cursor:pointer;min-height:205px;transition:background .15s ease}
.poem-card:hover{background:var(--paper-strong)}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.poem-card h3{font-family:var(--display-font);font-size:27px;line-height:1.45;margin:0 0 7px}.meta{display:flex;gap:5px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;border:0;border-bottom:1px solid var(--line);padding:2px 0;color:var(--muted);font-size:10px;margin-left:9px;background:transparent}
.preview-verse{font-family:var(--poem-font);font-size:18px;line-height:2.02;margin:15px 0 0}.card-foot{margin-top:13px;color:var(--muted);font-size:10px;display:flex;justify-content:space-between;gap:8px}
.heart{border:0;background:transparent;color:var(--muted);font-size:19px;width:33px;height:33px;flex:0 0 auto}.heart.on{color:var(--accent)}
.match{background:color-mix(in srgb,var(--gold) 22%,transparent);color:inherit;padding:0 .08em;border-bottom:1px solid color-mix(in srgb,var(--gold) 70%,transparent)}

/* Library */
.library-title{margin-bottom:14px}.library-toolbar{width:100%;border-block:1px solid var(--line);padding:15px 0;background:transparent}.library-searchbox{width:100%;max-width:900px}
.constraints{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto auto;gap:12px;align-items:end;margin-top:12px;width:100%}.constraint{width:100%}
.constraint label{display:block;color:var(--muted);font-size:10px;margin:0 1px 5px}.constraint select{width:100%;height:42px;border:1px solid var(--line);background:var(--paper);border-radius:0;padding:6px 9px;outline:0}
.exact-toggle{height:42px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;white-space:nowrap}.clear-link{height:42px;border:0;background:transparent;color:var(--accent);padding:0 4px;white-space:nowrap}
.library-summary{display:flex;align-items:center;justify-content:space-between;margin:14px 1px}.count{color:var(--muted);font-size:13px}
.library-grid{grid-template-columns:1fr 1fr;gap:0;background:transparent;border-top:1px solid var(--line);border-right:1px solid var(--line);padding:0}.library-grid .poem-card{min-height:185px}.loadmore{margin:22px auto 0;display:block}
.empty{padding:64px 20px;text-align:center;color:var(--muted);border-block:1px solid var(--line);grid-column:1/-1}

/* Indexes */
.index-hub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-right:1px solid var(--line)}
.hub-card,.index-card{border:0;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;padding:20px;text-align:right;color:var(--ink);min-height:118px}
.hub-card:hover,.index-card:hover{background:var(--paper-strong)}.hub-card b,.index-card b{display:block;font-family:var(--display-font);font-size:25px;line-height:1.4}.hub-card span,.index-card span{display:block;color:var(--muted);font-size:11px;line-height:1.75;margin-top:4px}
.index-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-right:1px solid var(--line)}.index-grid .index-card{min-height:96px}
.compact-search{max-width:620px;margin-bottom:16px}.matla-list{border-top:1px solid var(--line)}.matla-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 8px;border-bottom:1px solid var(--line);cursor:pointer}.matla-row:hover{background:var(--paper-strong)}
.matla-no{color:var(--muted);font-size:11px}.matla-text{font-family:var(--poem-font);font-size:19px;line-height:1.8}.matla-title{color:var(--muted);font-size:11px}
.word-cloud,.entity-list{display:flex;flex-wrap:wrap;gap:0;margin-bottom:22px;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.word-pill,.entity-pill{border:0;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:8px 12px;color:var(--ink)}.word-pill:hover,.entity-pill:hover,.word-pill.active,.entity-pill.active{background:var(--paper-strong);color:var(--accent)}
.index-note{color:var(--muted);font-size:12px;line-height:1.9;padding:9px 0 15px;border-bottom:1px solid var(--line);margin-bottom:15px}
.entity-summary{margin:0 0 14px;padding:13px 0;border-block:1px solid var(--line);font-size:13px;color:var(--muted)}.entity-summary b{color:var(--ink);font-family:var(--display-font);font-size:22px;margin-left:5px}
.stats-page{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);border-right:1px solid var(--line)}.stat-panel{border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;padding:24px}.stat-panel h3{font-family:var(--display-font);font-size:28px;margin:0 0 13px}
.source-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-right:1px solid var(--line)}.source-grid>div{border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px}.source-grid dt{color:var(--muted);font-size:10px}.source-grid dd{font-family:var(--display-font);font-size:25px;margin:5px 0 0}
.stat-bars{display:grid;gap:9px}.stat-row{display:grid;grid-template-columns:minmax(90px,150px) 1fr 42px;gap:9px;align-items:center}.bar-track{height:5px;background:var(--paper-soft);overflow:hidden}.bar-fill{height:100%;background:var(--accent)}.stat-row small{color:var(--muted)}.tiny{border:0;background:transparent;color:var(--accent);padding:0;text-align:right}

/* About */
.about-layout{width:min(980px,100%);margin:auto}.about-hero{padding:22px 0 36px;border-bottom:1px solid var(--line)}.about-hero h2{font-family:var(--display-font);font-size:clamp(46px,7vw,72px);line-height:1.35;margin:0 0 15px}.about-hero p{font-family:var(--poem-font);font-size:23px;line-height:2.15;margin:0;max-width:74ch}
.about-panel{padding:28px 0;border-bottom:1px solid var(--line)}.about-panel h3{font-family:var(--display-font);font-size:30px;margin:0 0 9px}.about-panel p{font-size:16px;line-height:2;color:var(--muted);margin:0;max-width:78ch}.editorial-note b{color:var(--ink)}
.about-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:20px 0 0;border-top:1px solid var(--line);border-right:1px solid var(--line)}.about-stats>div{border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px}.about-stats dt{font-size:10px;color:var(--muted)}.about-stats dd{font-family:var(--display-font);font-size:27px;margin:4px 0 0}

/* Reader */
.reader-wrap{width:min(960px,100%);margin:auto}.reader-head{padding:4px 0 24px;border-bottom:1px solid var(--line);margin-bottom:4px}.back{border:0;background:transparent;color:var(--muted);padding:0 0 18px}.back:hover{color:var(--accent)}
.reader-head-main{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.reader-title-block{flex:1}.reader-kicker{color:var(--accent);font-size:12px;margin-bottom:6px}.reader-head h1{font-family:var(--display-font);font-size:clamp(43px,6vw,62px);line-height:1.4;margin:0}
.reader-quick{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;padding-top:8px}.reader-intro{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.reader-intro h3{font-family:var(--display-font);font-size:23px;color:var(--accent);margin:0 0 5px}.reader-intro p{font-family:var(--poem-font);font-size:20px;line-height:2.08;color:var(--muted);margin:0}
.poem-details{margin-top:15px}.poem-details summary{cursor:pointer;color:var(--muted);font-size:12px;list-style:none}.poem-details summary::-webkit-details-marker{display:none}.details-grid{display:flex;flex-wrap:wrap;gap:11px;margin-top:11px}.vocalization-status.enhanced{color:var(--accent)}
.source-details{margin-top:13px;padding:12px 0 2px;border-top:1px dotted var(--line-dark);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.source-item small{display:block;color:var(--muted);font-size:10px}.source-item b{display:block;font-size:13px;margin-top:2px;font-weight:500}
.reader-floating{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.reader-floating button{border:0;border-bottom:1px solid var(--line-dark);background:transparent;min-height:36px;padding:6px 1px;color:var(--ink);margin-left:14px}.reader-floating button:hover{color:var(--accent);border-color:var(--accent)}
.poem-nav{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:30px 0 6px;border-block:1px solid var(--line)}.poem-nav button{border:0;background:transparent;padding:13px 0;color:var(--muted);text-align:right}.poem-nav button:last-child{text-align:left}.poem-nav button:hover{color:var(--accent)}
.poem-sheet{background:transparent;border:0;padding:12px 0 18px}.verse{position:relative;padding:19px 42px 20px;margin:0;border-bottom:1px solid color-mix(in srgb,var(--line) 62%,transparent);background:transparent;cursor:pointer;transition:background .12s ease}.verse:hover{background:color-mix(in srgb,var(--paper-strong) 56%,transparent)}.verse.selected{background:color-mix(in srgb,var(--gold) 10%,transparent)}
.verse-no{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;background:transparent;color:var(--muted);font-size:10px}.verse:hover .verse-no,.verse.selected .verse-no{color:var(--accent)}.hide-verse-numbers .verse-no{opacity:0;pointer-events:none}
.verse-body{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:baseline;position:relative}.verse-body::after{content:"";position:absolute;top:17%;bottom:17%;right:50%;width:1px;background:color-mix(in srgb,var(--line) 70%,transparent)}
.hemistich{font-family:var(--poem-font);font-size:var(--poem-size);line-height:2.08;text-align:center;word-spacing:.045em}.verse-actions{display:none!important}.notes{display:none!important}
.selection-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:max(18px,env(safe-area-inset-bottom));z-index:120;display:flex;align-items:center;gap:4px;max-width:calc(100vw - 20px);overflow-x:auto;padding:6px 9px;border:1px solid var(--line-dark);background:var(--paper-strong);box-shadow:0 16px 44px rgba(0,0,0,.15);white-space:nowrap}.selection-bar[hidden]{display:none}.selection-bar span{font-family:var(--display-font);font-size:17px;padding:0 5px}.selection-bar button{border:0;background:transparent;padding:8px 9px;color:var(--ink)}.selection-bar button:hover{color:var(--accent)}

/* Overlays */
.settings{position:fixed;inset:0;z-index:130;display:none;background:rgba(20,17,13,.28)}.settings.open{display:block}.settings-panel{position:absolute;top:68px;left:16px;width:min(345px,calc(100vw - 24px));background:var(--paper-strong);border:1px solid var(--line-dark);padding:19px;box-shadow:0 24px 70px rgba(0,0,0,.2)}.settings-panel>b{font-family:var(--display-font);font-size:23px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:0}.setting-row select{max-width:160px;background:var(--paper);border:1px solid var(--line);border-radius:0;padding:7px 9px}.range{width:130px}.small{font-size:12px;color:var(--muted)}
.overlay{position:fixed;inset:0;z-index:140;display:none;background:rgba(20,17,13,.32);padding:18px}.overlay.open{display:grid;place-items:center}.overlay-card{position:relative;width:min(460px,calc(100vw - 24px));background:var(--paper-strong);border:1px solid var(--line-dark);padding:22px;box-shadow:0 28px 80px rgba(0,0,0,.26)}.overlay-card h3{font-family:var(--display-font);font-size:29px;margin:0 0 12px}.overlay-close{position:absolute;left:10px;top:8px;border:0;background:transparent;color:var(--muted);font-size:26px}.menu-action{display:block;width:100%;border:0;border-top:1px solid var(--line);background:transparent;text-align:right;padding:12px 2px}.menu-action:hover{color:var(--accent)}.compare-card{width:min(1000px,calc(100vw - 24px));max-height:88vh;overflow:auto}.compare-list{display:grid;gap:0;border-top:1px solid var(--line)}.compare-row{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--line)}.compare-cell{font-family:var(--poem-font);font-size:18px;line-height:1.95;padding:14px;border-left:1px solid var(--line)}
.drawer{position:fixed;top:0;bottom:0;left:0;z-index:135;width:min(430px,92vw);background:var(--paper-strong);border-right:1px solid var(--line-dark);box-shadow:20px 0 70px rgba(0,0,0,.18);transform:translateX(-105%);transition:transform .22s ease}.drawer.open{transform:translateX(0)}.drawer-head{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;border-bottom:1px solid var(--line);font-family:var(--display-font);font-size:22px}.drawer-head button{border:0;background:transparent;color:var(--muted);font-size:25px}.drawer-body{height:calc(100% - 62px);overflow:auto;padding:17px;line-height:1.95;color:var(--muted)}.drawer-body ol{padding-right:22px}.drawer-body li{margin-bottom:10px}

.footer{width:min(1220px,100%);margin:auto;padding:20px clamp(14px,3vw,28px) 38px;color:var(--muted);font-size:11px;text-align:center;border-top:1px solid var(--line)}.mobile-nav{display:none}
body.reading-mode .topbar,body.reading-mode .footer,body.reading-mode .mobile-nav,body.reading-mode .reader-head .back,body.reading-mode .reader-head .reader-quick,body.reading-mode .reader-head .poem-details,body.reading-mode .reader-head .reader-intro,body.reading-mode .reader-floating,body.reading-mode .source-details,body.reading-mode .poem-nav{display:none!important}
body.reading-mode .main{padding-top:18px}body.reading-mode .reader-head{border:0;text-align:center;margin-bottom:4px}body.reading-mode .reader-head h1{font-size:34px;color:var(--muted);font-weight:400}body.reading-mode .reader-kicker{display:none}body.reading-mode .poem-sheet{padding-top:0}
.verse.link-target{animation:targetGlow 1.7s ease}@keyframes targetGlow{0%,100%{background:transparent}40%{background:color-mix(in srgb,var(--gold) 17%,transparent)}}

@media(max-width:1000px){
  .hero{grid-template-columns:1fr}.hero-side{border-right:0;border-top:1px solid var(--line);padding:25px 0 0}.grid{grid-template-columns:1fr 1fr}.index-hub{grid-template-columns:repeat(2,minmax(0,1fr))}.index-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-page{grid-template-columns:1fr}.source-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.constraints{grid-template-columns:repeat(3,minmax(0,1fr))}.exact-toggle,.clear-link{grid-column:auto}.about-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
  body{padding-bottom:76px}.topbar-inner{padding:8px 12px}.brand-copy b{font-size:20px}.brand-copy span{display:none}.brand-mark{width:36px;height:36px}.nav{display:none}.top-actions{margin-inline-start:auto}.main{padding:27px 13px 96px}.hero{gap:18px;padding-bottom:28px}.hero-main{padding:8px 0}.hero-name{font-size:35px;line-height:1.65;max-width:none}.hero-bio{font-size:19px;line-height:2.04}.site-note{font-size:13px}.quote{font-size:28px}.section{margin-top:34px}.section-head{align-items:flex-start}.section-head h2{font-size:31px}.grid{grid-template-columns:1fr}.poem-card{min-height:0}.library-toolbar{padding:11px 0}.constraints{grid-template-columns:1fr 1fr;gap:8px}.scope-constraint{grid-column:1/-1}.exact-toggle{grid-column:1/2}.clear-link{grid-column:2/3;justify-self:end}.library-grid{grid-template-columns:1fr}.index-hub{grid-template-columns:1fr 1fr}.index-grid{grid-template-columns:1fr 1fr}.hub-card,.index-card{padding:16px}.matla-row{grid-template-columns:34px minmax(0,1fr)}.matla-title{grid-column:2}.reader-head-main{display:block}.reader-quick{justify-content:flex-start;margin-top:10px}.reader-head h1{font-size:40px}.reader-intro p{font-size:19px}.source-details{grid-template-columns:1fr 1fr}.poem-sheet{padding:6px 0 24px}.verse{padding:17px 7px 18px 34px}.verse-no{right:auto;left:2px;top:9px;transform:none}.verse-body{grid-template-columns:1fr;gap:0}.verse-body::after{display:none}.hemistich{font-size:calc(var(--poem-size) - 1px);line-height:2.06}.hemistich.ajuz{padding-top:4px}.selection-bar{left:10px;right:10px;transform:none;bottom:calc(72px + env(safe-area-inset-bottom));justify-content:flex-start}.compare-row{grid-template-columns:1fr}.compare-cell{border-left:0;border-bottom:1px solid var(--line)}
  .mobile-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:8px;right:8px;bottom:max(7px,env(safe-area-inset-bottom));z-index:90;border:1px solid var(--line-dark);padding:4px;background:var(--paper-strong);box-shadow:0 14px 44px rgba(0,0,0,.15)}.mobile-nav button{border:0;background:transparent;min-height:43px;color:var(--muted);font-size:12px;position:relative}.mobile-nav button.active{color:var(--accent)}.mobile-nav button.active::after{content:"";position:absolute;bottom:3px;right:30%;left:30%;height:1px;background:var(--accent)}.footer{padding-bottom:88px}.searchbox kbd{display:none}
}
@media(max-width:470px){
  .brand-copy b{font-size:18px}.top-actions{gap:0}.iconbtn{min-width:36px;padding:5px}.hero-name{font-size:31px}.hero-bio{font-size:18px}.constraints{grid-template-columns:1fr}.scope-constraint,.exact-toggle,.clear-link{grid-column:1}.clear-link{justify-self:start}.index-hub,.index-grid{grid-template-columns:1fr}.source-grid,.source-details,.about-stats{grid-template-columns:1fr 1fr}.section-head{display:block}.section-head .btn{margin-top:8px}.about-hero h2{font-size:44px}.about-hero p{font-size:20px}.mobile-nav button{font-size:11px;padding:0 2px}
}
.poem-nav-bottom{margin-top:12px;margin-bottom:28px}
.entity-contexts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-right:1px solid var(--line);margin-bottom:22px}
.entity-hit{border:0;border-left:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;text-align:right;padding:15px 16px}
.entity-hit:hover{background:var(--paper-strong)}
.entity-hit span{display:block;font-family:var(--poem-font);font-size:18px;line-height:1.85}
.entity-hit small{display:block;color:var(--muted);font-size:10px;margin-top:5px}
@media(max-width:800px){.entity-contexts{grid-template-columns:1fr}}

/* =========================================================
   v9.2 — Warm Heritage Glass
   Glass is deliberately limited to controls, navigation,
   discovery cards and overlays. The poem-reading surface stays quiet.
   ========================================================= */
:root{
  --glass-bg:color-mix(in srgb,var(--paper-strong) 68%,transparent);
  --glass-bg-soft:color-mix(in srgb,var(--paper) 52%,transparent);
  --glass-bg-hover:color-mix(in srgb,var(--paper-strong) 83%,transparent);
  --glass-border:color-mix(in srgb,var(--line-dark) 52%,rgba(255,255,255,.34));
  --glass-highlight:rgba(255,255,255,.34);
  --glass-shadow:0 18px 55px rgba(74,52,30,.10),inset 0 1px 0 rgba(255,255,255,.38);
  --glass-shadow-soft:0 10px 30px rgba(74,52,30,.075),inset 0 1px 0 rgba(255,255,255,.28);
  --glass-filter:blur(20px) saturate(128%);
  --glass-radius:18px;
}
[data-theme="dark"]{
  --glass-bg:color-mix(in srgb,var(--paper-strong) 62%,transparent);
  --glass-bg-soft:color-mix(in srgb,var(--paper) 48%,transparent);
  --glass-bg-hover:color-mix(in srgb,var(--paper-strong) 78%,transparent);
  --glass-border:color-mix(in srgb,var(--line-dark) 68%,rgba(255,255,255,.16));
  --glass-highlight:rgba(255,255,255,.09);
  --glass-shadow:0 20px 60px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08);
  --glass-shadow-soft:0 12px 34px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.06);
}
body{
  background:
    radial-gradient(circle at 88% 4%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 24rem),
    radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 30rem),
    linear-gradient(90deg,rgba(80,60,35,.018) 1px,transparent 1px),
    linear-gradient(var(--bg),var(--bg));
  background-size:auto,auto,29px 29px,auto;
  background-attachment:fixed;
}

/* Glass navigation */
.topbar{
  border-bottom:1px solid var(--glass-border);
  background:var(--glass-bg);
  -webkit-backdrop-filter:var(--glass-filter);
  backdrop-filter:var(--glass-filter);
  box-shadow:0 8px 28px color-mix(in srgb,var(--ink) 5%,transparent);
}
.brand-mark{
  border-color:var(--glass-border);
  background:var(--glass-bg);
  border-radius:12px;
  box-shadow:var(--glass-shadow-soft);
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
}
.nav{
  gap:3px;border:1px solid var(--glass-border);padding:3px;
  border-radius:999px;background:var(--glass-bg-soft);box-shadow:inset 0 1px 0 var(--glass-highlight);
  -webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%);
}
.nav button{border-radius:999px;padding-inline:14px}
.nav button::after{display:none}
.nav button.active{background:var(--glass-bg-hover);box-shadow:0 5px 16px color-mix(in srgb,var(--ink) 6%,transparent),inset 0 1px 0 var(--glass-highlight);color:var(--accent)}
.iconbtn{border-radius:12px}.iconbtn:hover{background:var(--glass-bg-soft)}

/* Search and controls */
.searchbox{
  border:1px solid var(--glass-border);background:var(--glass-bg);border-radius:16px;
  box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);
  padding:5px 10px;
}
.searchbox:focus-within{border-color:color-mix(in srgb,var(--accent) 58%,var(--glass-border));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent),var(--glass-shadow-soft)}
.searchbox kbd{border-color:var(--glass-border);background:var(--glass-bg-soft);border-radius:8px}
.btn{
  border-color:var(--glass-border);background:var(--glass-bg-soft);border-radius:11px;
  box-shadow:inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(12px) saturate(120%);backdrop-filter:blur(12px) saturate(120%);
}
.btn:hover{background:var(--glass-bg-hover);box-shadow:var(--glass-shadow-soft)}
.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-deep));border-color:color-mix(in srgb,var(--accent) 74%,white 10%);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 23%,transparent);color:#fff}
.glass,.glass-panel{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}

/* Home: glass only for the supporting quote panel */
.hero-side{
  border:1px solid var(--glass-border);padding:26px;border-radius:22px;background:var(--glass-bg-soft);
  box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(16px) saturate(118%);backdrop-filter:blur(16px) saturate(118%);
}
.quote-open{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg-soft)}

/* Discovery cards */
.grid,.library-grid,.index-hub,.index-grid,.stats-page,.source-grid,.about-stats,.entity-contexts{
  gap:14px;border:0;background:transparent;
}
.poem-card,.hub-card,.index-card,.stat-panel,.source-grid>div,.about-stats>div,.entity-hit{
  border:1px solid var(--glass-border)!important;background:var(--glass-bg-soft);border-radius:var(--glass-radius);
  box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(15px) saturate(118%);backdrop-filter:blur(15px) saturate(118%);
}
.poem-card,.hub-card,.index-card,.entity-hit{transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}
.poem-card:hover,.hub-card:hover,.index-card:hover,.entity-hit:hover{
  background:var(--glass-bg-hover);border-color:color-mix(in srgb,var(--accent) 32%,var(--glass-border))!important;
  box-shadow:var(--glass-shadow);transform:translateY(-2px);
}
.poem-card{padding:21px}.heart{border-radius:50%}.heart:hover{background:var(--glass-bg-hover)}
.chip{border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:999px;padding:2px 8px;margin-left:3px}

/* Library/search filter console */
.library-toolbar{
  border:1px solid var(--glass-border);padding:16px;border-radius:20px;background:var(--glass-bg-soft);
  box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(18px) saturate(122%);backdrop-filter:blur(18px) saturate(122%);
}
.constraint select,.setting-row select{
  border:1px solid var(--glass-border);background:var(--glass-bg);border-radius:11px;
  box-shadow:inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.word-cloud,.entity-list{gap:8px;border:0}.word-pill,.entity-pill{
  border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:999px;padding:7px 13px;
  box-shadow:inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.word-pill:hover,.entity-pill:hover,.word-pill.active,.entity-pill.active{background:var(--glass-bg-hover);border-color:color-mix(in srgb,var(--accent) 40%,var(--glass-border));box-shadow:var(--glass-shadow-soft)}
.matla-list{border:0;display:grid;gap:9px}.matla-row{border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-bg-soft);padding:13px 14px;box-shadow:inset 0 1px 0 var(--glass-highlight)}.matla-row:hover{background:var(--glass-bg-hover)}
.entity-summary{border:1px solid var(--glass-border);border-radius:14px;padding:12px 14px;background:var(--glass-bg-soft)}

/* Reader: keep poetry unglazed; glass is reserved for tools and metadata */
.reader-quick .btn,.reader-floating button{
  border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:999px;padding:6px 12px;margin-left:0;
  box-shadow:inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.reader-floating button:hover{background:var(--glass-bg-hover);box-shadow:var(--glass-shadow-soft)}
.source-details{
  border:1px solid var(--glass-border);border-radius:15px;padding:12px 14px;background:var(--glass-bg-soft);
  box-shadow:inset 0 1px 0 var(--glass-highlight);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
}
.poem-sheet,.verse,.reader-head{background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
.verse{border-radius:0!important;border-inline:0!important}
.selection-bar{
  border-color:var(--glass-border);background:var(--glass-bg);border-radius:18px;box-shadow:var(--glass-shadow);
  -webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);
}
.selection-bar button{border-radius:10px}.selection-bar button:hover{background:var(--glass-bg-hover)}

/* Floating surfaces / dialogs */
.settings{background:rgba(20,17,13,.22);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.overlay{background:rgba(20,17,13,.26);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.settings-panel,.overlay-card{
  background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.26),inset 0 1px 0 var(--glass-highlight);
  -webkit-backdrop-filter:blur(28px) saturate(142%);backdrop-filter:blur(28px) saturate(142%);
}
.drawer{
  background:var(--glass-bg);border-right:1px solid var(--glass-border);box-shadow:24px 0 80px rgba(0,0,0,.22),inset -1px 0 0 var(--glass-highlight);
  -webkit-backdrop-filter:blur(28px) saturate(138%);backdrop-filter:blur(28px) saturate(138%);
}


/* v12.1 — robust drawer lifecycle on mobile and desktop */
.drawer{opacity:1;visibility:visible;transition:transform .22s ease,opacity .16s ease,visibility 0s linear 0s}
.drawer[aria-hidden="true"]{opacity:0;visibility:hidden;pointer-events:none;transition:transform .22s ease,opacity .14s ease,visibility 0s linear .22s}
.drawer.open[aria-hidden="false"]{opacity:1;visibility:visible;pointer-events:auto}
.drawer-scrim{position:fixed;inset:0;z-index:149;background:rgba(18,14,12,.22);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .18s;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.drawer-scrim.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s ease}
body.drawer-open{overflow:hidden}
@media(max-width:800px){
  .reader-tool-drawer{transform:translateY(calc(100% + 130px))}
  .reader-tool-drawer.open{transform:translateY(0)}
}

/* Mobile glass dock */
@media(max-width:1000px){
  .hero-side{border:1px solid var(--glass-border);padding:22px;margin-top:4px}
}
@media(max-width:800px){
  body{background-attachment:scroll}
  .library-toolbar{padding:12px;border-radius:17px}
  .mobile-nav{
    left:9px;right:9px;bottom:max(8px,env(safe-area-inset-bottom));border:1px solid var(--glass-border);border-radius:20px;padding:5px;
    background:var(--glass-bg);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(24px) saturate(138%);backdrop-filter:blur(24px) saturate(138%);
  }
  .mobile-nav button{border-radius:14px}
  .mobile-nav button.active{background:var(--glass-bg-hover);box-shadow:inset 0 1px 0 var(--glass-highlight)}
  .mobile-nav button.active::after{display:none}
  .poem-card,.hub-card,.index-card,.entity-hit{border-radius:16px}
}
@media(prefers-reduced-transparency:reduce){
  .topbar,.searchbox,.hero-side,.poem-card,.hub-card,.index-card,.library-toolbar,.settings-panel,.overlay-card,.drawer,.selection-bar,.mobile-nav,.glass,.glass-panel{
    -webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--paper-strong)!important;
  }
}



/* v9.3 — unified literary line-icon system */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.ui-icon{width:19px;height:19px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.iconbtn .ui-icon{width:18px;height:18px}
.iconbtn{width:40px;height:40px;padding:0!important;border:1px solid transparent;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.iconbtn:hover{border-color:var(--glass-border);transform:translateY(-1px)}
.iconbtn:active{transform:translateY(0)}
.heart{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);border:0;background:transparent;padding:0}
.heart .ui-icon{width:20px;height:20px;stroke-width:1.45}
.heart.on{color:var(--accent)}
.icon-only{width:36px;height:36px!important;display:inline-flex!important;align-items:center;justify-content:center;padding:0!important;border:1px solid var(--glass-border)!important;border-radius:11px!important;background:var(--glass-bg-soft)!important;color:var(--muted)!important}
.icon-only:hover{color:var(--accent)!important;background:var(--glass-bg-hover)!important}
.icon-only .ui-icon{width:17px;height:17px}
.reader-quick .btn,.back,.poem-nav button,.selection-bar button{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.reader-quick .btn .ui-icon{width:17px;height:17px}
.back .ui-icon{width:16px;height:16px}
.poem-nav .ui-icon{width:15px;height:15px;opacity:.75}
.selection-bar button{gap:5px}
.selection-bar button .ui-icon{width:16px;height:16px}
.mobile-nav button{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;line-height:1.05}
.mobile-nav button .ui-icon{width:19px;height:19px;stroke-width:1.45}
.mobile-nav button span{font-size:11px}
.mobile-nav button.active .ui-icon{stroke-width:1.8}
@media(max-width:430px){
  .selection-bar button{padding:7px 9px!important}
  .selection-bar button span{display:none}
  .selection-bar button .ui-icon{width:18px;height:18px}
  .mobile-nav button span{font-size:10px}
}

/* =========================================================
   v10 — فهارس ذكية / مختبر الديوان
   ========================================================= */
.mode-toggle{
  min-height:38px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg-soft);
  padding:4px 10px;display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;
  box-shadow:inset 0 1px 0 var(--glass-highlight);white-space:nowrap
}
.mode-toggle .mode-dot{width:7px;height:7px;border-radius:50%;background:var(--line-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--line) 45%,transparent)}
.mode-toggle.active{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--glass-border));background:color-mix(in srgb,var(--accent) 8%,var(--glass-bg-soft))}
.mode-toggle.active .mode-dot{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}

.indexes-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.55fr);gap:24px;align-items:end;padding:8px 0 28px;border-bottom:1px solid var(--line);margin-bottom:24px}
.indexes-hero h2{font-family:var(--display-font);font-size:clamp(36px,5vw,58px);line-height:1.5;margin:0 0 8px;max-width:17ch}
.indexes-hero p{font-family:var(--poem-font);font-size:20px;line-height:1.95;margin:0;color:var(--muted);max-width:66ch}
.index-mode-note{border-right:2px solid var(--accent);padding:10px 15px 10px 4px;display:grid;gap:4px;color:var(--muted)}
.index-mode-note b{font-family:var(--display-font);font-size:20px;color:var(--ink)}
.index-mode-note span{font-size:12px;line-height:1.8}
.lab-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 38px}
.lab-card{position:relative;min-height:210px;text-align:right;border:1px solid var(--glass-border);border-radius:20px;background:var(--glass-bg-soft);padding:20px;overflow:hidden;box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(16px) saturate(120%);backdrop-filter:blur(16px) saturate(120%);transition:.18s ease}
.lab-card::after{content:"";position:absolute;inset:auto -24% -46% auto;width:170px;height:170px;border:1px solid color-mix(in srgb,var(--accent) 16%,transparent);border-radius:50%}
.lab-card:hover{transform:translateY(-3px);background:var(--glass-bg-hover);box-shadow:var(--glass-shadow)}
.lab-card .ui-icon{width:25px;height:25px;color:var(--accent);margin-bottom:42px}
.lab-card .lab-no{position:absolute;left:18px;top:17px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}
.lab-card b{display:block;font-family:var(--display-font);font-size:28px;line-height:1.25;margin-bottom:7px}
.lab-card em{display:block;color:var(--muted);font-style:normal;font-size:12px;line-height:1.8}
.lab-card.lab-primary{background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 10%,var(--glass-bg)),var(--glass-bg-soft))}
.subsection-head{display:flex;justify-content:space-between;align-items:end;margin:30px 0 13px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.subsection-head h3{font-family:var(--display-font);font-size:28px;margin:0}.subsection-head p{color:var(--muted);margin:2px 0 0;font-size:12px}

.lab-toolbar{padding:13px;border-radius:20px;margin:0 0 20px}.lab-toolbar .searchbox{box-shadow:none}
.lab-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.lab-suggestions button,.term-chips button,.research-terms button{
 border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:999px;padding:5px 10px;color:var(--muted);font-size:12px
}
.lab-suggestions button:hover,.term-chips button:hover,.research-terms button:hover{color:var(--accent);background:var(--glass-bg-hover)}
.lab-result{display:grid;gap:15px}.lexicon-hero{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:24px;border-radius:22px}
.lexicon-hero h3{font-family:var(--display-font);font-size:54px;margin:1px 0 2px;color:var(--accent)}.lexicon-hero p{margin:0;color:var(--muted);font-size:12px}
.lab-kpis,.research-kpis,.observatory-kpis{display:grid;grid-template-columns:repeat(3,minmax(95px,1fr));gap:8px}
.lab-kpis>div,.research-kpis>div,.observatory-kpis>div{border:1px solid var(--glass-border);border-radius:14px;background:var(--glass-bg-soft);padding:12px 14px;display:grid;gap:1px;box-shadow:inset 0 1px 0 var(--glass-highlight)}
.lab-kpis b,.research-kpis b,.observatory-kpis b{font-family:var(--display-font);font-size:28px;line-height:1.2}.lab-kpis span,.research-kpis span,.observatory-kpis span{font-size:10px;color:var(--muted)}
.lexicon-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:12px}.lab-panel{border:1px solid var(--glass-border);border-radius:18px;background:var(--glass-bg-soft);padding:19px;box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(14px) saturate(115%);backdrop-filter:blur(14px) saturate(115%)}
.lab-panel h3{font-family:var(--display-font);font-size:25px;margin:0 0 4px}.lab-panel>p{color:var(--muted);font-size:11px;line-height:1.7;margin:0 0 12px}.panel-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:12px}.panel-head h3{margin:0}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:11px}
.collocate-cloud{display:flex;flex-wrap:wrap;gap:7px;align-content:flex-start}.collocate-cloud button{border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg-soft);padding:7px 10px;display:inline-flex;align-items:baseline;gap:6px}.collocate-cloud button b{font-family:var(--poem-font);font-size:16px}.collocate-cloud button small{font-size:9px;color:var(--muted)}.collocate-cloud button:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--glass-border));background:var(--glass-bg-hover)}
.phrase-list{display:grid;gap:1px}.phrase-list>div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);font-family:var(--poem-font);font-size:15px}.phrase-list small{font-family:var(--ui-font);font-size:9px;color:var(--muted)}
.contexts-panel{padding:20px}.context-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.context-card{border:1px solid var(--glass-border);border-radius:13px;background:color-mix(in srgb,var(--paper) 30%,transparent);padding:13px 14px;text-align:right}.context-card:hover{background:var(--glass-bg-hover)}.context-card>span{font-family:var(--poem-font);font-size:18px;line-height:1.9}.context-card>small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.lab-empty{border:1px dashed var(--line-dark);border-radius:18px;padding:35px;text-align:center;color:var(--muted);display:grid;gap:5px}.lab-empty b{font-family:var(--display-font);font-size:24px;color:var(--ink)}

.phrase-tree-wrap{margin:18px 0}.phrase-tree{display:grid;grid-template-columns:1fr 220px 1fr;gap:20px;align-items:center;min-height:480px;padding:28px;border-radius:24px;overflow:hidden;position:relative}.phrase-tree::before{content:"";position:absolute;left:50%;top:12%;bottom:12%;width:1px;background:linear-gradient(transparent,var(--line-dark),transparent);opacity:.6}.tree-root{position:relative;z-index:2;width:185px;height:185px;margin:auto;border-radius:50%;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--glass-border));background:color-mix(in srgb,var(--accent) 9%,var(--paper-strong));display:grid;place-items:center;align-content:center;box-shadow:0 18px 50px color-mix(in srgb,var(--accent) 10%,transparent),inset 0 1px 0 var(--glass-highlight)}
.tree-root span,.tree-root small{font-size:10px;color:var(--muted)}.tree-root b{font-family:var(--display-font);font-size:37px;color:var(--accent);line-height:1.3}.tree-side{display:grid;gap:7px;position:relative;z-index:2}.tree-side h3{font-family:var(--display-font);font-size:22px;margin:0 0 6px;color:var(--muted)}.tree-branch{--strength:.4;position:relative;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--glass-border));background:color-mix(in srgb,var(--accent) 5%,var(--glass-bg-soft));border-radius:11px;padding:7px 11px;display:flex;justify-content:space-between;gap:10px;align-items:center}.tree-branch span{font-family:var(--poem-font);font-size:16px}.tree-branch small{font-size:9px;color:var(--muted)}.tree-branch:hover{background:var(--glass-bg-hover);color:var(--accent)}
.context-stack{margin-top:10px}

.compare-controls{display:grid;grid-template-columns:1fr 52px 1fr;gap:10px;align-items:end;padding:14px;border-radius:20px;margin-bottom:18px}.compare-controls label,.observatory-controls label{display:grid;gap:5px;color:var(--muted);font-size:10px}.compare-controls select,.observatory-controls select,.observatory-controls input{width:100%;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg-soft);padding:10px 11px;color:var(--ink);outline:none}.compare-swap{height:42px;width:42px;border:1px solid var(--glass-border);border-radius:50%;background:var(--glass-bg-soft);display:grid;place-items:center;color:var(--accent);margin:0 auto}.poem-compare-result{display:grid;gap:12px}.compare-titles{display:grid;grid-template-columns:1fr 150px 1fr;gap:15px;align-items:center}.compare-titles>button{border:0;background:transparent;text-align:center;padding:15px}.compare-titles>button small{display:block;color:var(--muted);font-size:9px}.compare-titles>button b{font-family:var(--display-font);font-size:30px;line-height:1.5}.similarity-ring{width:128px;height:128px;margin:auto;border-radius:50%;border:1px solid var(--glass-border);background:var(--glass-bg-soft);display:grid;place-items:center;align-content:center;box-shadow:inset 0 1px 0 var(--glass-highlight)}.similarity-ring b{font-family:var(--display-font);font-size:32px;color:var(--accent)}.similarity-ring span{font-size:8px;color:var(--muted)}
.compare-metrics{display:grid;gap:0;padding:0;overflow:hidden}.compare-metric{display:grid;grid-template-columns:120px 1fr 24px 1fr;gap:10px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}.compare-metric:last-child{border-bottom:0}.compare-metric span{font-size:10px;color:var(--muted)}.compare-metric b{text-align:center;font-family:var(--poem-font);font-size:16px}.compare-metric i{height:1px;background:var(--line)}.compare-lex-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}.term-chips{display:flex;flex-wrap:wrap;gap:6px}.lab-method{font-size:10px;color:var(--muted);text-align:center;margin:3px 0}

.observatory-controls{display:grid;grid-template-columns:1fr 1fr .85fr 1.25fr auto;gap:8px;align-items:end;padding:14px;border-radius:20px;margin-bottom:15px}.observatory-controls .btn{height:42px}.observatory-kpis{grid-template-columns:repeat(4,1fr);margin-bottom:12px}.observatory-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:12px}.obs-bar{display:grid;grid-template-columns:100px 1fr 28px;gap:7px;align-items:center;padding:5px 0}.obs-bar span{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.obs-bar i{height:5px;border-radius:999px;background:color-mix(in srgb,var(--line) 55%,transparent);overflow:hidden}.obs-bar i b{display:block;height:100%;border-radius:inherit;background:var(--accent)}.obs-bar small{font-size:9px;color:var(--muted);text-align:left}.observatory-result{display:grid;gap:0}

.research-only{display:none!important}.research-ui .research-only{display:block!important}.research-panel{border:1px solid color-mix(in srgb,var(--accent) 30%,var(--glass-border));border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--glass-bg-soft)),var(--glass-bg-soft));padding:16px;margin:15px 0 11px;box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.research-panel-head{display:flex;align-items:end;justify-content:space-between;gap:12px}.research-panel-head h3{font-family:var(--display-font);font-size:25px;margin:0}.research-actions{display:flex;gap:6px}.research-kpis{grid-template-columns:repeat(4,1fr);margin-top:12px}.research-kpis b{font-size:19px}.research-terms{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.research-disclaimer{font-size:9px;color:var(--muted);margin:9px 0 0}.research-ui .poem-details{border-color:color-mix(in srgb,var(--accent) 18%,var(--glass-border))}

@media(max-width:1000px){
 .lab-grid{grid-template-columns:1fr 1fr}.lexicon-grid,.compare-lex-grid,.observatory-grid{grid-template-columns:1fr 1fr}.lexicon-grid .lab-panel:first-child,.observatory-grid .lab-panel:last-child{grid-column:1/-1}.observatory-controls{grid-template-columns:1fr 1fr 1fr}.observatory-controls .obs-word{grid-column:1/3}.indexes-hero{grid-template-columns:1fr}
}
@media(max-width:800px){
 .mode-toggle{padding:4px 8px}.mode-toggle #modeSwitchLabel{font-size:10px}.lab-grid{grid-template-columns:1fr 1fr}.lab-card{min-height:170px;padding:16px}.lab-card .ui-icon{margin-bottom:25px}.lab-card b{font-size:24px}.lexicon-hero{display:block}.lab-kpis{margin-top:14px}.lexicon-grid,.compare-lex-grid,.observatory-grid{grid-template-columns:1fr}.lexicon-grid .lab-panel:first-child,.observatory-grid .lab-panel:last-child{grid-column:auto}.context-grid{grid-template-columns:1fr}.phrase-tree{grid-template-columns:1fr;min-height:0;padding:18px}.phrase-tree::before{display:none}.tree-root{order:-1;width:150px;height:150px}.compare-controls{grid-template-columns:1fr 42px 1fr}.compare-titles{grid-template-columns:1fr 100px 1fr}.similarity-ring{width:88px;height:88px}.compare-titles>button b{font-size:23px}.observatory-kpis,.research-kpis{grid-template-columns:1fr 1fr}.observatory-controls{grid-template-columns:1fr 1fr}.observatory-controls .obs-word{grid-column:1/-1}.observatory-controls .btn{grid-column:1/-1}.research-panel-head{display:block}.research-actions{margin-top:8px}.research-actions .btn{flex:1}.panel-head{align-items:flex-start}
}
@media(max-width:470px){
 .top-actions{gap:3px}.mode-toggle{min-height:35px;padding:3px 7px}.lab-grid{grid-template-columns:1fr}.lab-card{min-height:145px}.lab-card .ui-icon{margin-bottom:16px}.indexes-hero h2{font-size:36px}.indexes-hero p{font-size:18px}.lab-kpis{grid-template-columns:repeat(3,1fr)}.lab-kpis>div{padding:9px}.lab-kpis b{font-size:23px}.compare-controls{grid-template-columns:1fr}.compare-swap{transform:rotate(90deg)}.compare-titles{grid-template-columns:1fr}.similarity-ring{order:-1}.compare-metric{grid-template-columns:74px 1fr 12px 1fr;padding:9px 8px}.observatory-controls{grid-template-columns:1fr}.observatory-controls .obs-word,.observatory-controls .btn{grid-column:auto}.research-kpis{grid-template-columns:1fr 1fr}.research-actions{display:grid;grid-template-columns:1fr}.context-card>span{font-size:17px}
}

body.reading-mode .research-panel{display:none!important}

/* =========================================================
   v11 — تجربة القراءة: قارئ صافي + عدسة البيت + أدراج بحثية
   ========================================================= */
.reader-dock{
  position:sticky;top:70px;z-index:44;margin:0 0 18px;padding:9px 11px;border-radius:17px;
  display:grid;grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:12px;
  border:1px solid var(--glass-border);background:var(--glass-bg);box-shadow:var(--glass-shadow-soft);
  -webkit-backdrop-filter:blur(22px) saturate(130%);backdrop-filter:blur(22px) saturate(130%);
}
.reader-dock-title{min-width:0;display:grid;gap:1px}.reader-dock-title small{font-size:9px;color:var(--muted)}.reader-dock-title b{font-family:var(--display-font);font-size:18px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reader-dock-meta{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px;white-space:nowrap}.reader-dock-meta span{padding:4px 7px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg-soft)}
.reader-dock-actions{display:flex;align-items:center;gap:4px}.reader-dock-actions button{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:11px;min-height:35px;padding:6px 8px;display:inline-flex;align-items:center;gap:5px}.reader-dock-actions button:hover{color:var(--accent);border-color:var(--glass-border);background:var(--glass-bg-hover)}.reader-dock-actions .ui-icon{width:16px;height:16px}.reader-dock-actions span{font-size:10px}

.verse-lens-btn{position:absolute;left:3px;top:50%;transform:translateY(-50%);width:31px;height:31px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--muted);opacity:0;display:grid;place-items:center;transition:.15s ease}.verse-lens-btn .ui-icon{width:15px;height:15px}.verse:hover .verse-lens-btn,.verse:focus-within .verse-lens-btn{opacity:1}.verse-lens-btn:hover{color:var(--accent);border-color:var(--glass-border);background:var(--glass-bg-soft)}

.reader-tool-drawer{width:min(520px,94vw);z-index:150}.reader-tool-drawer .drawer-body{padding:18px 18px 30px;color:var(--ink)}
.verse-lens-sheet,.source-sheet{display:grid;gap:16px}.lens-head h3,.source-sheet h3{font-family:var(--display-font);font-size:30px;line-height:1.5;margin:0}.lens-head .eyebrow,.source-sheet .eyebrow{margin:0 0 3px}
.lens-verse{margin:0;padding:18px 16px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--glass-border));border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 5%,var(--glass-bg-soft)),var(--glass-bg-soft));box-shadow:inset 0 1px 0 var(--glass-highlight);font-family:var(--poem-font);font-size:24px;line-height:2;text-align:center;display:grid;gap:2px}.lens-verse span{display:block}
.lens-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.lens-actions button{border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:13px;padding:9px 7px;color:var(--ink);display:flex;align-items:center;justify-content:center;gap:5px;min-height:42px}.lens-actions button:hover{color:var(--accent);background:var(--glass-bg-hover)}.lens-actions .ui-icon{width:16px;height:16px}.lens-actions span{font-size:10px}
.lens-section{border-top:1px solid var(--line);padding-top:14px}.lens-section-head{display:flex;align-items:end;justify-content:space-between;gap:8px;margin-bottom:8px}.lens-section-head b{font-family:var(--display-font);font-size:20px}.lens-section-head span{font-size:9px;color:var(--muted)}
.lens-context{display:grid;gap:6px}.lens-context>button,.lens-context>.current{border:1px solid var(--glass-border);border-radius:13px;background:var(--glass-bg-soft);padding:10px 12px;text-align:right;color:var(--ink)}.lens-context>button:hover{background:var(--glass-bg-hover);border-color:color-mix(in srgb,var(--accent) 35%,var(--glass-border))}.lens-context small{display:block;color:var(--muted);font-size:9px;margin-bottom:3px}.lens-context span{display:block;font-family:var(--poem-font);font-size:16px;line-height:1.9}.lens-context>.current{border-color:color-mix(in srgb,var(--accent) 28%,var(--glass-border))}
.lens-similar{display:grid;gap:6px}.lens-similar button{border:1px solid var(--glass-border);border-radius:13px;background:var(--glass-bg-soft);padding:11px 12px;text-align:right;color:var(--ink)}.lens-similar button:hover{background:var(--glass-bg-hover)}.lens-similar button>span{display:block;font-family:var(--poem-font);font-size:16px;line-height:1.85}.lens-similar button>small{display:block;color:var(--muted);font-size:9px;margin-top:4px}

.source-facts{display:grid;grid-template-columns:1fr 1fr;gap:7px}.source-facts>div{border:1px solid var(--glass-border);border-radius:13px;background:var(--glass-bg-soft);padding:11px 12px;display:grid;gap:2px}.source-facts small,.source-origin small,.citation-box small{font-size:9px;color:var(--muted)}.source-facts b{font-family:var(--display-font);font-size:19px}.source-warning{margin:0;padding:10px 12px;border-right:2px solid var(--gold);background:color-mix(in srgb,var(--gold) 6%,transparent);color:var(--muted);font-size:11px;line-height:1.9}.source-verse-label{margin:-8px 0 0;color:var(--muted);font-size:11px}.citation-box{border:1px solid var(--glass-border);border-radius:15px;background:var(--glass-bg-soft);padding:13px}.citation-box p{font-family:var(--poem-font);font-size:16px;line-height:1.9;margin:4px 0 10px}.citation-box .btn{gap:6px}.source-origin{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;color:var(--muted)}.source-origin b{color:var(--ink)}.source-origin span{font-size:10px}

#researchDrawer .research-panel{margin:0;background:transparent;border:0;box-shadow:none;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none}

body.reading-mode .reader-dock{top:10px;width:min(620px,calc(100vw - 26px));margin:0 auto 12px;grid-template-columns:1fr auto}.reading-mode .reader-dock-meta{display:none}.reading-mode .reader-dock-actions #dockSource,.reading-mode .reader-dock-actions #dockResearch{display:none!important}.reading-mode .reader-dock-actions #dockFocus{color:var(--accent);border-color:var(--glass-border);background:var(--glass-bg-soft)}
body.reading-mode .reader-head{padding-bottom:5px}.reading-mode .reader-head .reader-head-main{display:block}.reading-mode .reader-head .reader-title-block{text-align:center}

@media(max-width:800px){
  .reader-dock{top:59px;grid-template-columns:1fr auto;margin:0 0 12px;padding:8px 9px;border-radius:15px}.reader-dock-meta{grid-column:1/2;grid-row:2;justify-content:flex-start;gap:4px}.reader-dock-actions{grid-column:2;grid-row:1/3}.reader-dock-actions span{display:none}.reader-dock-actions button{width:34px;height:34px;padding:0;justify-content:center}.reader-dock-title b{font-size:16px}
  .verse{padding-left:40px}.verse-lens-btn{left:2px;top:auto;bottom:8px;transform:none;opacity:1;width:29px;height:29px}.verse-no{left:2px;top:8px}
  .reader-tool-drawer{top:auto;right:8px;left:8px;bottom:calc(76px + env(safe-area-inset-bottom));width:auto;max-height:78vh;border:1px solid var(--glass-border);border-radius:22px;transform:translateY(115%);box-shadow:0 -18px 70px rgba(0,0,0,.22);overflow:hidden}.reader-tool-drawer.open{transform:translateY(0)}.reader-tool-drawer .drawer-head{height:56px}.reader-tool-drawer .drawer-body{height:auto;max-height:calc(78vh - 56px)}
  .lens-actions{grid-template-columns:1fr 1fr}.lens-verse{font-size:22px}.source-facts{grid-template-columns:1fr 1fr}
}
@media(max-width:470px){
  .reader-dock-meta span:nth-child(n+2){display:none}.source-facts{grid-template-columns:1fr}.lens-section-head{display:block}.lens-section-head span{display:block;margin-top:1px}.lens-verse{font-size:21px;padding:15px 11px}.reader-tool-drawer{right:6px;left:6px}
}

/* =========================================================
   v12 — الاستكشاف البصري: أطلس / قوافي / كوكبة / مطالع
   ========================================================= */
.explore-head{margin-top:0}
.explore-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0 34px}
.explore-card{position:relative;min-height:235px;border:1px solid var(--glass-border);border-radius:24px;background:linear-gradient(155deg,var(--glass-bg),var(--glass-bg-soft));padding:20px;text-align:right;overflow:hidden;box-shadow:var(--glass-shadow-soft);-webkit-backdrop-filter:blur(18px) saturate(125%);backdrop-filter:blur(18px) saturate(125%);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.explore-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 35%,var(--glass-border));box-shadow:var(--glass-shadow)}
.explore-card>.ui-icon{width:26px;height:26px;color:var(--accent)}
.explore-card .explore-no{position:absolute;left:18px;top:18px;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}
.explore-card>b{display:block;font-family:var(--display-font);font-size:29px;line-height:1.3;margin:34px 0 6px}
.explore-card>em{display:block;font-style:normal;color:var(--muted);font-size:12px;line-height:1.85;max-width:24ch}
.explore-visual{position:absolute;left:-8px;bottom:-18px;width:125px;height:105px;opacity:.54;pointer-events:none}
.atlas-mini i{position:absolute;width:11px;height:11px;border:1px solid var(--accent);border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,transparent)}
.atlas-mini i:nth-child(1){right:14px;top:18px}.atlas-mini i:nth-child(2){right:54px;top:42px;width:18px;height:18px}.atlas-mini i:nth-child(3){right:86px;top:22px;width:8px;height:8px}.atlas-mini i:nth-child(4){right:88px;top:69px;width:14px;height:14px}
.atlas-mini::before,.atlas-mini::after{content:"";position:absolute;height:1px;background:color-mix(in srgb,var(--accent) 42%,transparent);transform-origin:right center}.atlas-mini::before{width:84px;right:22px;top:38px;transform:rotate(19deg)}.atlas-mini::after{width:75px;right:55px;top:57px;transform:rotate(-28deg)}
.wheel-mini{border:1px solid color-mix(in srgb,var(--accent) 46%,transparent);border-radius:50%;width:94px;height:94px;left:5px;bottom:-6px;background:repeating-conic-gradient(from 0deg,color-mix(in srgb,var(--accent) 35%,transparent) 0 3deg,transparent 3deg 15deg)}
.wheel-mini::after{content:"";position:absolute;inset:29px;border:1px solid var(--glass-border);border-radius:50%;background:var(--glass-bg-soft)}
.orbit-mini i{position:absolute;border:1px solid var(--accent);border-radius:50%;width:10px;height:10px}.orbit-mini i:nth-child(1){left:54px;top:44px;width:17px;height:17px;background:color-mix(in srgb,var(--accent) 15%,transparent)}.orbit-mini i:nth-child(2){left:8px;top:30px}.orbit-mini i:nth-child(3){left:94px;top:16px}.orbit-mini i:nth-child(4){left:20px;top:79px}.orbit-mini i:nth-child(5){left:101px;top:76px}.orbit-mini::before,.orbit-mini::after{content:"";position:absolute;left:18px;top:51px;width:92px;height:1px;background:color-mix(in srgb,var(--accent) 32%,transparent);transform:rotate(16deg)}.orbit-mini::after{transform:rotate(-23deg)}
.opening-mini{display:grid;gap:9px;align-content:center;padding:16px}.opening-mini i{display:block;height:1px;background:color-mix(in srgb,var(--accent) 52%,transparent)}.opening-mini i:nth-child(1){width:88px}.opening-mini i:nth-child(2){width:70px}.opening-mini i:nth-child(3){width:92px}

/* Atlas */
.atlas-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(285px,.62fr);gap:14px;align-items:start}
.atlas-stage{min-height:590px;border-radius:26px;padding:15px;position:relative;overflow:hidden}
.atlas-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:5px 7px 10px;color:var(--muted);font-size:10px}.atlas-caption b{color:var(--accent);font-size:12px}.atlas-svg{display:block;width:100%;height:auto;min-height:510px}
.atlas-land,.atlas-east{fill:var(--paper-soft);fill-opacity:.38;stroke:var(--line-dark);stroke-opacity:.45;stroke-width:1.2}.atlas-east{fill:var(--paper-soft);fill-opacity:.24}
.atlas-river{fill:none;stroke:var(--accent);stroke-opacity:.28;stroke-width:2;stroke-linecap:round;stroke-dasharray:6 8}.atlas-river.second{stroke:var(--gold);stroke-opacity:.34}
.atlas-region{font-family:var(--display-font);font-size:35px;fill:var(--muted);fill-opacity:.16;text-anchor:middle}
.atlas-node{cursor:pointer;color:var(--accent);outline:none}.atlas-node circle:first-of-type{fill:var(--paper-strong);fill-opacity:.92;stroke:var(--accent);stroke-opacity:.55;stroke-width:1.5;transition:.18s ease}.atlas-node .atlas-halo{fill:none;stroke:var(--accent);stroke-opacity:.16;stroke-width:1;opacity:0;transition:.18s ease}.atlas-node text{font-family:var(--ui-font);font-size:13px;fill:var(--ink);pointer-events:none}.atlas-node .atlas-count{font-size:9px;fill:var(--accent)}
.atlas-node:hover circle:first-of-type,.atlas-node.active circle:first-of-type{fill:var(--paper-soft);stroke:var(--accent);stroke-opacity:1;filter:drop-shadow(0 7px 12px rgba(111,38,55,.16))}.atlas-node:hover .atlas-halo,.atlas-node.active .atlas-halo{opacity:1}.atlas-node.active text:not(.atlas-count){font-weight:700;fill:var(--accent)}
.atlas-side{display:grid;gap:12px;position:sticky;top:82px}.atlas-detail{padding:22px;border-radius:23px}.atlas-detail h3{font-family:var(--display-font);font-size:43px;line-height:1.25;margin:0 0 8px;color:var(--accent)}.atlas-detail>p{color:var(--muted);font-size:12px;line-height:1.9}.atlas-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0}.atlas-kpis>div{border:1px solid var(--glass-border);border-radius:14px;padding:11px;background:var(--glass-bg-soft)}.atlas-kpis b{display:block;font-family:var(--display-font);font-size:27px}.atlas-kpis span{font-size:9px;color:var(--muted)}
.atlas-related{display:grid;gap:6px;margin:18px 0}.atlas-related>small{color:var(--muted);font-size:9px}.atlas-related button{display:flex;justify-content:space-between;gap:10px;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:transparent;padding:7px 0;text-align:right}.atlas-related button:hover{color:var(--accent)}.atlas-related button span{font-size:9px;color:var(--muted)}.atlas-related em{font-size:11px;color:var(--muted);font-style:normal}.atlas-contexts{margin-top:18px}.atlas-poem-head{margin-top:32px}

/* Rhyme wheel */
.rhyme-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(285px,.6fr);gap:14px;align-items:start}.rhyme-stage{border-radius:26px;padding:12px;min-height:610px;display:grid;place-items:center}.rhyme-svg{width:min(100%,650px);height:auto;overflow:visible}.rhyme-sector{fill:var(--paper-soft);stroke:var(--line);stroke-width:1;cursor:pointer;transition:fill .15s ease,filter .15s ease}.rhyme-sector:hover,.rhyme-sector.active{fill:var(--accent);filter:drop-shadow(0 5px 10px rgba(111,38,55,.16))}.rhyme-label{font-family:var(--ui-font);font-size:10px;fill:var(--muted);cursor:pointer}.rhyme-label.active{fill:var(--accent);font-weight:700}.rhyme-core{fill:var(--paper-strong);stroke:var(--line-dark);stroke-width:1.4}.rhyme-core-title{font-family:var(--display-font);font-size:31px;fill:var(--accent)}.rhyme-core-sub{font-family:var(--ui-font);font-size:10px;fill:var(--muted)}
.rhyme-side{border-radius:24px;padding:22px;position:sticky;top:82px}.rhyme-side h3{font-family:var(--display-font);font-size:38px;margin:0 0 8px;color:var(--accent)}.rhyme-kpis{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:18px}.rhyme-kpis>div{padding:10px;border:1px solid var(--glass-border);border-radius:13px;background:var(--glass-bg-soft)}.rhyme-kpis b{display:block;font-size:24px;font-family:var(--display-font)}.rhyme-kpis span{font-size:9px;color:var(--muted)}.rhyme-meter-list>small{color:var(--muted);font-size:9px}.rhyme-meter-list>div{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);font-size:11px}.rhyme-meter-list b{font-size:10px;color:var(--accent)}.rhyme-longest{width:100%;border:1px solid var(--glass-border);border-radius:15px;background:var(--glass-bg-soft);padding:12px;text-align:right;margin-top:15px}.rhyme-longest small,.rhyme-longest span{display:block;color:var(--muted);font-size:9px}.rhyme-longest b{display:block;font-family:var(--display-font);font-size:22px;margin:2px 0}.rhyme-poems{margin-top:18px}

/* Constellation */
.constellation-toolbar{padding:13px;border-radius:20px;margin-bottom:14px}.constellation-toolbar .searchbox{box-shadow:none}.constellation-suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.constellation-suggestions button{border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg-soft);padding:5px 10px;font-size:11px;color:var(--muted)}.constellation-suggestions button:hover{color:var(--accent);background:var(--glass-bg-hover)}
.constellation-layout{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(300px,.58fr);gap:14px;align-items:start}.constellation-stage{min-height:600px;border-radius:26px;padding:10px;position:relative;display:grid;place-items:center}.constellation-svg{width:100%;height:auto;min-height:540px}.const-edges line{stroke:var(--line-dark);stroke-linecap:round}.const-node{cursor:pointer;outline:none}.const-node circle{fill:var(--paper-strong);stroke:var(--line-dark);stroke-width:1.4;transition:.16s ease}.const-node text{font-family:var(--ui-font);font-size:12px;fill:var(--ink);pointer-events:none}.const-node .const-count{font-size:8px;fill:var(--muted)}.const-node.word circle{stroke:var(--gold)}.const-node.person circle{stroke:var(--accent)}.const-node.place circle{stroke:#7a8c6a}.const-node:hover circle{fill:var(--paper-soft);filter:drop-shadow(0 8px 12px rgba(111,38,55,.14))}.const-center circle{fill:var(--paper-soft);stroke:var(--accent);stroke-width:1.4}.const-center text{font-family:var(--display-font);font-size:30px;fill:var(--accent)}.const-center .const-center-sub{font-family:var(--ui-font);font-size:9px;fill:var(--muted)}
.constellation-legend{position:absolute;top:17px;right:18px;display:flex;gap:8px;z-index:2;font-size:9px;color:var(--muted)}.constellation-legend span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:4px;border:1px solid currentColor}.constellation-legend .word{color:var(--gold)}.constellation-legend .person{color:var(--accent)}.constellation-legend .place{color:#7a8c6a}
.constellation-side{display:grid;gap:12px;position:sticky;top:82px}.constellation-detail{border-radius:23px;padding:21px}.constellation-detail h3{font-family:var(--display-font);font-size:41px;color:var(--accent);margin:0 0 6px}.constellation-detail>p{font-size:11px;line-height:1.9;color:var(--muted)}.const-related-list{display:grid;margin:13px 0}.const-related-list button{display:flex;justify-content:space-between;align-items:center;gap:10px;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);background:transparent;padding:7px 0;text-align:right}.const-related-list button:hover{color:var(--accent)}.const-related-list span small{display:inline-block;margin-right:4px;font-size:8px;color:var(--muted)}.const-related-list b{font-size:9px;color:var(--muted)}.const-samples{border-top:1px solid var(--line);padding-top:10px}.const-samples>small{font-size:9px;color:var(--muted)}.const-samples button{width:100%;border:0;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);text-align:right;padding:8px 0}.const-samples button b{display:block;font-family:var(--display-font);font-size:20px}.const-samples button span{display:block;color:var(--muted);font-size:9px}

/* Openings */
.opening-feature{border-radius:24px;padding:24px 26px;display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:14px;min-height:205px;position:relative;overflow:hidden}.opening-feature::after{content:"«";position:absolute;left:25px;top:-38px;font-family:var(--display-font);font-size:190px;line-height:1;color:color-mix(in srgb,var(--accent) 7%,transparent);pointer-events:none}.opening-feature blockquote{font-family:var(--poem-font);font-size:clamp(25px,3.2vw,39px);line-height:1.9;margin:2px 0 7px;max-width:23ch}.opening-feature small{color:var(--muted);font-size:10px}.opening-feature-actions{display:flex;gap:7px;position:relative;z-index:2}
.opening-controls{display:grid;grid-template-columns:minmax(280px,1.7fr) 1fr 1fr auto;gap:9px;align-items:end;border-radius:20px;padding:13px}.opening-controls .searchbox{box-shadow:none}.opening-controls label{display:grid;gap:5px;font-size:9px;color:var(--muted)}.opening-controls select{height:43px;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg-soft);padding:7px 10px;outline:none}.opening-controls>.btn{height:43px}
.opening-letters{display:flex;gap:5px;overflow:auto;padding:12px 1px 10px;scrollbar-width:thin}.opening-letters button{flex:0 0 auto;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg-soft);padding:5px 9px;font-size:12px;color:var(--muted)}.opening-letters button small{font-size:8px;margin-right:3px}.opening-letters button.active,.opening-letters button:hover{background:color-mix(in srgb,var(--accent) 9%,var(--glass-bg));color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--glass-border))}
.opening-summary{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:stretch;margin:4px 0 14px}.opening-count{border:1px solid var(--glass-border);border-radius:17px;background:var(--glass-bg-soft);padding:13px 16px}.opening-count b{display:block;font-family:var(--display-font);font-size:32px;color:var(--accent)}.opening-count span{font-size:9px;color:var(--muted)}.opening-first-words{border-bottom:1px solid var(--line);padding:8px 0}.opening-first-words>small{display:block;color:var(--muted);font-size:9px;margin-bottom:7px}.opening-first-words button{border:0;background:transparent;padding:4px 0;margin-left:14px;color:var(--ink);font-family:var(--poem-font);font-size:14px}.opening-first-words button:hover{color:var(--accent)}.opening-first-words button span{font-family:var(--ui-font);font-size:8px;color:var(--muted)}
.opening-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.opening-card{position:relative;border:1px solid var(--glass-border);border-radius:19px;background:var(--glass-bg-soft);padding:18px 19px 14px;min-height:190px;cursor:pointer;box-shadow:var(--glass-shadow-soft);overflow:hidden;transition:.16s ease}.opening-card:hover{transform:translateY(-2px);background:var(--glass-bg-hover);border-color:color-mix(in srgb,var(--accent) 28%,var(--glass-border))}.opening-letter-mark{position:absolute;left:15px;top:6px;font-family:var(--display-font);font-size:64px;color:color-mix(in srgb,var(--accent) 8%,transparent);line-height:1}.opening-card blockquote{font-family:var(--poem-font);font-size:20px;line-height:1.9;margin:12px 0 17px;position:relative;z-index:1}.opening-card>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent);padding-top:8px}.opening-card>div b{font-family:var(--display-font);font-size:17px}.opening-card>div span{font-size:9px;color:var(--muted)}

@media(max-width:1000px){
 .explore-grid{grid-template-columns:1fr 1fr}.atlas-layout,.rhyme-layout,.constellation-layout{grid-template-columns:1fr}.atlas-side,.rhyme-side,.constellation-side{position:static}.atlas-stage,.constellation-stage{min-height:500px}.opening-controls{grid-template-columns:1fr 1fr}.opening-controls .searchbox{grid-column:1/-1}.opening-controls>.btn{grid-column:1/-1}
}
@media(max-width:700px){
 .explore-grid{grid-template-columns:1fr 1fr}.explore-card{min-height:190px;padding:16px}.explore-card>b{font-size:24px;margin-top:24px}.explore-visual{transform:scale(.78);transform-origin:left bottom}.atlas-stage,.rhyme-stage,.constellation-stage{min-height:0;padding:7px}.atlas-svg{min-height:380px}.rhyme-stage{min-height:430px}.constellation-svg{min-height:410px}.atlas-caption{display:grid}.atlas-layout,.rhyme-layout,.constellation-layout{gap:10px}.opening-feature{display:block;padding:20px;min-height:0}.opening-feature blockquote{font-size:27px}.opening-feature-actions{margin-top:16px}.opening-controls{grid-template-columns:1fr}.opening-controls .searchbox,.opening-controls>.btn{grid-column:auto}.opening-summary{grid-template-columns:1fr}.opening-grid{grid-template-columns:1fr}.opening-card{min-height:165px}.opening-card blockquote{font-size:18px}.constellation-legend{position:static;margin:3px 6px 8px}.constellation-stage{display:block}
}
@media(max-width:470px){
 .explore-grid{grid-template-columns:1fr}.explore-card{min-height:160px}.explore-card>b{margin-top:15px}.explore-card>em{max-width:30ch}.atlas-svg{min-height:310px}.atlas-node text{font-size:11px}.rhyme-stage{min-height:350px}.rhyme-label{font-size:9px}.rhyme-core-title{font-size:27px}.constellation-svg{min-height:330px}.const-node text{font-size:10px}.const-center text{font-size:25px}.opening-feature-actions{display:grid;grid-template-columns:1fr 1fr}.opening-card>div{display:block}.opening-card>div span{display:block;margin-top:3px}
}


/* =========================================================
   v13 — تنقية الهيكل: ديوان للقراءة + مرجع للدراسة
   ========================================================= */
.mode-toggle{display:none!important}
.reader-context .mode-toggle{display:inline-flex!important}
.legacy-exact{display:none!important}

.hero-refined{display:block;max-width:1050px;border-bottom:0;padding-bottom:16px}
.hero-refined .hero-main{padding-inline:0;max-width:1000px}
.hero-refined .hero-name{max-width:22ch;font-size:clamp(40px,5.5vw,68px);line-height:1.5}
.hero-refined .hero-bio{max-width:78ch}
.home-search-block{max-width:860px;margin-top:24px}
.searchbox-hero{min-height:62px;border-radius:18px}
.searchbox-hero input{font-size:20px}
.resume-card{max-width:860px;margin:10px 0 28px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.resume-card[hidden]{display:none!important}.resume-card>div{display:grid;gap:2px}.resume-card b{font-family:var(--display-font);font-size:25px}.resume-card small{color:var(--muted)}
.home-portals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0 44px}
.portal-card,.unified-card,.study-tool{border:1px solid var(--line);background:transparent;color:var(--ink);text-align:right;padding:22px;border-radius:16px;display:grid;gap:6px;transition:.16s ease}
.portal-card:hover,.unified-card:hover,.study-tool:hover{border-color:var(--line-dark);background:color-mix(in srgb,var(--paper-strong) 58%,transparent);transform:translateY(-1px)}
.portal-card .ui-icon,.unified-card .ui-icon,.study-tool .ui-icon{width:22px;height:22px;color:var(--accent);margin-bottom:12px;stroke-width:1.45}
.portal-card b,.unified-card b,.study-tool b{font-family:var(--display-font);font-size:26px}.portal-card span,.unified-card span,.study-tool span{color:var(--muted);font-size:13px;line-height:1.75}
.home-verse-section{max-width:860px}.home-verse-card{border-block:1px solid var(--line);padding:28px 4px;cursor:pointer}.home-verse-card .quote{font-family:var(--poem-font);font-size:clamp(28px,3vw,38px);line-height:2;text-align:center}.home-verse-card .quote-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px;margin-top:12px}

.search-mode{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass-bg-soft);align-self:end}
.search-mode button{border:0;background:transparent;color:var(--muted);border-radius:9px;padding:7px 12px;min-height:34px}.search-mode button.active{background:var(--paper-strong);color:var(--accent);box-shadow:0 3px 15px rgba(0,0,0,.06)}

.indexes-refined{grid-template-columns:1fr!important;max-width:960px}.indexes-refined h2{max-width:none!important}
.unified-index-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:26px 0 40px}
.unified-card{min-height:190px;align-content:start}.unified-card b{font-size:24px}
.study-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.study-tool{min-height:150px}
.method-note{max-width:840px;color:var(--muted);font-size:12px;line-height:1.9;border-top:1px solid var(--line);padding-top:14px}

.reader-context .topbar{border-bottom-color:color-mix(in srgb,var(--line) 70%,transparent)}
.reader-intro .intro-clean-note{display:block;color:var(--muted);font-size:11px;line-height:1.7;margin-top:7px}
body.verse-select-mode .verse{cursor:cell;background:color-mix(in srgb,var(--gold) 3%,transparent)}
body.verse-select-mode .verse:hover{background:color-mix(in srgb,var(--gold) 8%,transparent)}
#dockSelect.active{color:var(--accent)!important;border-color:var(--glass-border)!important;background:var(--glass-bg-hover)!important}
.verse:focus-visible{outline:1px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:-2px}
.intro-appendix{padding:13px 14px;margin-bottom:16px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--paper-soft) 52%,transparent)}.intro-appendix p{margin:0;line-height:1.95}.intro-appendix .eyebrow{margin-bottom:5px}
.citation-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}

.project-version{grid-column:1/-1}.provenance-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.provenance-badges span{border:1px solid var(--line);padding:5px 9px;border-radius:999px;color:var(--muted);font-size:11px}

.mobile-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}

@media (max-width:980px){
  .unified-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.unified-card:last-child{grid-column:1/-1}.home-portals{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:720px){
  .hero-refined .hero-name{font-size:34px;line-height:1.64}.hero-refined .hero-bio{font-size:18px}
  .searchbox-hero{min-height:54px}.searchbox-hero input{font-size:17px}
  .home-portals{grid-template-columns:1fr;gap:8px;margin-bottom:34px}.portal-card{min-height:0;padding:16px;grid-template-columns:30px 1fr;column-gap:10px}.portal-card .ui-icon{grid-row:1/3;margin:4px 0 0}.portal-card b{font-size:23px}.portal-card span{grid-column:2}
  .resume-card{padding:13px 14px}.resume-card b{font-size:21px}.home-verse-card .quote{font-size:27px}.home-verse-card .quote-meta{display:grid;justify-content:center;text-align:center}
  .unified-index-grid,.study-tools-grid{grid-template-columns:1fr}.unified-card:last-child{grid-column:auto}.unified-card,.study-tool{min-height:0;padding:17px}.unified-card .ui-icon,.study-tool .ui-icon{margin-bottom:7px}.unified-card b,.study-tool b{font-size:23px}
  .search-mode{grid-column:1/-1;justify-self:stretch}.search-mode button{flex:1}
  .drawer,.reader-tool-drawer,.topbar,.mobile-nav,.library-toolbar,.searchbox,.settings-panel,.selection-bar{-webkit-backdrop-filter:blur(9px)!important;backdrop-filter:blur(9px)!important}
}
@media (max-width:430px){
  .reader-context .mode-toggle{padding:3px 6px!important}.reader-context .mode-toggle .mode-dot{display:none}.top-actions #randomTop{display:none}
}

/* v14 — atlas verification, lazy corpus, weighted relations */
.corpus-wait,.load-error{grid-column:1/-1;border:1px solid var(--line);border-radius:18px;padding:20px;text-align:center;color:var(--muted);background:var(--glass-bg-soft)}.load-error{display:grid;gap:5px;margin:12px 0}.load-error b{color:var(--accent)}
body.corpus-loading::before{content:"يُحمَّل متن الديوان…";position:fixed;top:74px;left:50%;transform:translateX(-50%);z-index:180;padding:7px 13px;border:1px solid var(--glass-border);border-radius:999px;background:var(--glass-bg);backdrop-filter:blur(16px);font-size:10px;color:var(--muted);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.atlas-country{fill:color-mix(in srgb,var(--paper-soft) 72%,transparent);stroke:color-mix(in srgb,var(--line-dark) 64%,transparent);stroke-width:1;vector-effect:non-scaling-stroke}.verified-map{background:radial-gradient(circle at 48% 45%,color-mix(in srgb,var(--accent) 3%,transparent),transparent 52%)}
.atlas-region-shape{cursor:pointer;outline:none}.atlas-region-shape ellipse{fill:color-mix(in srgb,var(--gold) 6%,transparent);stroke:color-mix(in srgb,var(--gold) 55%,transparent);stroke-width:1.2;stroke-dasharray:6 7;transition:.18s ease}.atlas-region-shape text{font-family:var(--display-font);font-size:21px;fill:var(--muted);pointer-events:none}.atlas-region-shape:hover ellipse,.atlas-region-shape.active ellipse{fill:color-mix(in srgb,var(--accent) 7%,transparent);stroke:var(--accent);stroke-dasharray:3 5}.atlas-region-shape.active text{fill:var(--accent)}
.atlas-river-group{cursor:pointer;outline:none}.atlas-river-group .atlas-river.verified{stroke:#758d9e;stroke-width:2.6;stroke-opacity:.66;stroke-dasharray:none;vector-effect:non-scaling-stroke}.atlas-river-group text{font-family:var(--ui-font);font-size:11px;fill:#647b8b;pointer-events:none}.atlas-river-group:hover .atlas-river,.atlas-river-group.active .atlas-river{stroke:var(--accent);stroke-width:4}.atlas-river-group.active text{fill:var(--accent);font-weight:700}
.atlas-node.historical circle:first-of-type{stroke-dasharray:3 3;stroke:var(--gold)}.atlas-node.valley circle:first-of-type{stroke:#788a68}.atlas-node.valley .atlas-halo{stroke:#788a68}.atlas-map-credit{padding:3px 8px 8px;font-size:9px;color:var(--muted);line-height:1.7}
.atlas-detail-top{display:flex;justify-content:space-between;align-items:center;gap:9px}.atlas-certainty{font-size:9px;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent);border-radius:999px;padding:4px 8px}.atlas-modern{margin:-3px 0 10px!important;color:var(--ink)!important;font-size:11px!important}.atlas-kpis-3{grid-template-columns:repeat(3,1fr)}.atlas-kpis-3>div{min-width:0}.atlas-kpis-3 b{font-size:24px}
.atlas-source-list{display:grid;gap:5px;margin:15px 0}.atlas-source-list>small{font-size:9px;color:var(--muted)}.atlas-source-list a{display:block;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);padding:6px 0;font-size:10px;color:var(--ink);text-decoration:none}.atlas-source-list a:hover{color:var(--accent)}.atlas-related button>span{display:grid;gap:1px}.atlas-related button em{font-style:normal;font-size:8px;color:var(--muted)}.atlas-related button b{font-size:9px;color:var(--accent);font-weight:600}.const-method-badge{margin:9px 0 12px;border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:11px;padding:7px 9px;font-size:9px;color:var(--muted)}
@media(max-width:700px){body.corpus-loading::before{top:12px}.atlas-kpis-3{grid-template-columns:1fr 1fr}.atlas-kpis-3>div:last-child{grid-column:1/-1}.atlas-region-shape text{font-size:17px}.atlas-map-credit{font-size:8px}.verified-map{min-height:340px}}

/* v15 — permanent entity profiles and research registry */
.profile-view{max-width:1180px;margin-inline:auto}.entity-profile{display:grid;gap:22px}.profile-hero{display:flex;justify-content:space-between;gap:24px;align-items:end;padding:28px 0 16px;border-bottom:1px solid var(--line)}.profile-hero h1{font:700 clamp(44px,6vw,78px)/1.15 var(--display);margin:6px 0}.profile-hero p{max-width:780px;color:var(--muted);font-size:18px}.profile-actions{display:flex;gap:8px;flex-wrap:wrap}.profile-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.profile-kpis>div,.profile-panel{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 84%,transparent);border-radius:18px;padding:18px}.profile-kpis b{display:block;font-size:30px;font-family:var(--display)}.profile-kpis span{color:var(--muted);font-size:13px}.profile-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profile-panel h3{margin:0 0 12px;font:700 23px var(--display)}.profile-status{display:grid;gap:6px;border-inline-start:3px solid var(--line);padding-inline-start:14px}.profile-status.mapped{border-color:var(--accent)}.profile-status.identified{border-color:#b79b63}.profile-status.unresolved{border-color:var(--muted)}.profile-status span,.profile-warning{color:var(--muted)}.profile-warning{padding:10px 12px;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:12px}.evidence-list{display:grid;gap:10px}.evidence-list blockquote{margin:0;padding:14px 16px;border-inline-start:2px solid var(--accent);background:color-mix(in srgb,var(--paper) 70%,transparent);border-radius:12px}.evidence-list small{color:var(--muted)}.evidence-list p{margin:7px 0 0;line-height:1.9}.profile-relations,.word-rel-list{display:grid;gap:8px}.profile-relations button,.word-rel-list button,.phrase-sides button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:right;border:1px solid var(--line);background:transparent;border-radius:12px;padding:10px 12px;color:inherit}.profile-relations button span{display:grid}.profile-relations small{color:var(--muted);font-weight:400}.profile-sources{display:grid;gap:8px}.profile-sources a,.profile-sources span{padding:10px 12px;border:1px solid var(--line);border-radius:10px;color:inherit;text-decoration:none}.profile-tags{display:flex;flex-wrap:wrap;gap:7px}.profile-tags span{padding:6px 10px;border:1px solid var(--line);border-radius:999px}.phrase-sides{display:grid;grid-template-columns:1fr 1fr;gap:10px}.phrase-sides>div{display:grid;gap:7px}.phrase-sides small{color:var(--muted)}.profile-bars{display:grid;gap:8px}.profile-bars>div{display:grid;grid-template-columns:minmax(80px,1fr) 3fr 38px;gap:8px;align-items:center}.profile-bars i{height:6px;border-radius:99px;background:linear-gradient(90deg,var(--accent) min(100%,calc(var(--v)*5%)),color-mix(in srgb,var(--line) 70%,transparent) 0)}.profile-bars b{text-align:left}.profile-empty{padding:80px 10px;text-align:center}.atlas-register-wrap{margin-top:28px}.atlas-register-wrap .subsection-head{align-items:end}.atlas-register-wrap input{max-width:310px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:inherit;padding:10px 12px}.atlas-register{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.atlas-register-item{display:grid;grid-template-columns:1fr auto;grid-template-areas:'name status' 'name count';gap:4px 10px;text-align:right;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--surface) 88%,transparent);padding:12px;color:inherit}.atlas-register-item>span{grid-area:name;display:grid}.atlas-register-item small{color:var(--muted)}.atlas-register-item i{grid-area:count;font-style:normal;color:var(--muted);font-size:12px}.registry-status{grid-area:status;font-style:normal;font-size:11px;border-radius:999px;padding:3px 7px;align-self:start}.registry-status.mapped{background:color-mix(in srgb,var(--accent) 15%,transparent)}.registry-status.identified{background:rgba(183,155,99,.14)}.registry-status.unresolved{background:color-mix(in srgb,var(--muted) 12%,transparent)}@media(max-width:800px){.profile-hero{display:grid;align-items:start}.profile-kpis{grid-template-columns:1fr 1fr 1fr}.profile-kpis b{font-size:24px}.profile-columns{grid-template-columns:1fr}.atlas-register{grid-template-columns:1fr}.phrase-sides{grid-template-columns:1fr}.atlas-register-wrap .subsection-head{display:grid}.atlas-register-wrap input{max-width:none;width:100%}}


/* v17 — contextual geographic review */
.review-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.review-kpis>div{padding:14px 12px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--paper) 88%,transparent);display:flex;flex-direction:column;gap:3px}.review-kpis b{font-size:1.45rem}.review-kpis span{font-size:.78rem;color:var(--muted)}.review-method{padding:13px 15px;border-inline-start:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent);border-radius:12px;color:var(--muted);line-height:1.8}.review-section{margin-top:22px}.review-section summary{cursor:pointer;font-weight:700;padding:10px 0}.review-badge{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;padding:4px 8px;border:1px solid var(--line);border-radius:999px;margin-inline-start:7px}.review-badge.confirmed{background:rgba(37,120,78,.09)}.review-badge.probable{background:rgba(178,128,25,.10)}.review-badge.generic{background:rgba(80,100,130,.09)}.review-badge.rejected{background:rgba(150,70,70,.08)}.context-card.review-rejected{opacity:.72}.context-card.review-generic{opacity:.82}.atlas-register-item i small{display:block;font-style:normal;color:var(--muted);font-size:.68rem;margin-top:3px}.profile-warning.reviewed{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 7%,transparent)}
@media(max-width:700px){.review-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.review-kpis>div{padding:11px}.review-method{font-size:.88rem}}

/* v17 — review-gated atlas */
.review-kpis-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.review-badge.derived{background:rgba(105,76,140,.10)}
.review-badge.pending{background:rgba(120,120,120,.10);border-style:dashed}
.context-card.review-derived{opacity:.9}
.context-card.review-pending{opacity:.68;filter:saturate(.75)}
.pending-review{border-style:dashed!important}
.pending-section{border-style:dashed!important}
.sense-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sense-card{padding:16px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--paper) 91%,transparent)}
.sense-card b,.sense-card span{display:block}.sense-card span{font-size:.78rem;color:var(--accent);margin:.35rem 0}.sense-card p{color:var(--muted);line-height:1.75;margin:0}
@media(max-width:760px){.review-kpis-6,.sense-groups{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.sense-groups{grid-template-columns:1fr}}

/* v18 — professional reader text modes, copying and source footnotes */
.reader-textbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0 8px;padding:10px 0;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 72%,transparent)}
.reader-textbar-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.reader-textbar-label{font-size:11px;color:var(--muted);font-weight:700}.text-mode-segment{display:inline-grid;grid-template-columns:1fr 1fr;padding:3px;border:1px solid var(--line-dark);border-radius:13px;background:color-mix(in srgb,var(--paper-strong) 82%,transparent)}
.text-mode-segment button{border:0;background:transparent;color:var(--muted);padding:7px 13px;border-radius:10px;font-family:inherit;font-size:12px;cursor:pointer}.text-mode-segment button.active{background:var(--ink);color:var(--paper);box-shadow:0 3px 10px rgba(0,0,0,.12)}
.text-mode-status{font-size:10px;color:var(--muted);max-width:420px;line-height:1.6}.text-mode-status.enhanced{color:var(--accent)}.text-mode-status.loading{opacity:.75}.reader-textbar-actions{display:flex;gap:7px;flex-wrap:wrap}.reader-textbar-actions .btn{min-height:36px}
.poem-footnotes{margin:40px 0 28px;padding:28px 0 6px;border-top:1px solid var(--line-dark)}.poem-footnotes[hidden]{display:none}.footnotes-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}.footnotes-head h2{font-family:var(--display-font);font-size:29px;margin:0 0 4px}.footnotes-head p{margin:0;color:var(--muted);font-size:12px}.footnotes-list{display:grid;gap:0;counter-reset:source-note}.footnote-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:13px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 64%,transparent);font-family:var(--poem-font);font-size:17px;line-height:1.9}.footnote-no{font-family:var(--display-font);font-size:14px;color:var(--accent);padding-top:4px;text-align:center}.footnote-text{min-width:0}.footnote-appendix{padding:15px 17px;margin-bottom:15px;border-inline-start:3px solid var(--accent);background:color-mix(in srgb,var(--paper-strong) 68%,transparent);border-radius:10px}.footnote-appendix small{display:block;color:var(--accent);margin-bottom:5px}.footnote-appendix p{margin:0;font-family:var(--poem-font);line-height:1.9}.footnotes-back{border:0;background:transparent;color:var(--accent);padding:6px 0;cursor:pointer}
body.verse-select-mode .verse{padding-inline-start:52px}.verse-select-mode .verse::before{content:'';position:absolute;inset-inline-start:11px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;border:1.5px solid var(--line-dark);background:var(--paper-strong);box-shadow:inset 0 0 0 4px var(--paper-strong)}.verse-select-mode .verse.selected::before{background:var(--accent);border-color:var(--accent);box-shadow:inset 0 0 0 4px var(--paper-strong)}
.selection-bar button:disabled{opacity:.38;pointer-events:none}.copy-menu-note{color:var(--muted);font-size:12px;line-height:1.7;margin:-4px 0 13px}.copy-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.copy-menu-grid .menu-action{display:grid;gap:2px;text-align:right;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:transparent;color:var(--ink)}.copy-menu-grid .menu-action b{font-size:13px}.copy-menu-grid .menu-action small{font-size:10px;color:var(--muted);line-height:1.5}.copy-menu-grid .primary-copy{background:color-mix(in srgb,var(--accent) 7%,var(--paper-strong));border-color:color-mix(in srgb,var(--accent) 34%,var(--line))}
@media(max-width:700px){.reader-textbar{align-items:stretch}.reader-textbar-main{width:100%;justify-content:space-between}.text-mode-segment{flex:1;max-width:230px}.text-mode-segment button{padding:7px 9px}.text-mode-status{width:100%;max-width:none}.reader-textbar-actions{width:100%}.reader-textbar-actions .btn{flex:1}.copy-menu-grid{grid-template-columns:1fr}.poem-footnotes{margin-top:30px}.footnotes-head{display:block}.footnotes-head .footnotes-back{margin-top:7px}.footnote-item{grid-template-columns:36px minmax(0,1fr);font-size:16px}}

/* v21 — layered local vocalization */
.vocalization-status.local-reviewed{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,transparent)}
.vocal-progress{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--glass-bg-soft);font-size:11px;color:var(--muted)}
.vocal-progress b{color:var(--text)}
.vocal-progress-bar{height:5px;border-radius:999px;background:var(--line);overflow:hidden;margin-top:7px}.vocal-progress-bar>i{display:block;height:100%;background:var(--accent);border-radius:inherit}
.vocal-layer-note{font-size:10px;color:var(--muted);margin-top:7px}.vocal-layer-note strong{color:var(--text)}


/* v23 EXPERIMENT — additional, reversible presentation only */
.astrolabe-experiment{margin:24px auto 34px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(215px,.75fr);gap:28px;align-items:center;max-width:1060px;direction:rtl}
.astrolabe-frame{position:relative;width:min(100%,520px);aspect-ratio:1;margin:auto;isolation:isolate;min-width:0}
.astrolabe-frame:before{content:"";position:absolute;inset:3%;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--glass-border));border-radius:50%;box-shadow:0 0 0 14px color-mix(in srgb,var(--accent) 2%,transparent),inset 0 0 50px color-mix(in srgb,var(--accent) 5%,transparent)}
.astrolabe-frame:after{content:"";position:absolute;inset:15%;border-radius:50%;border:1px dashed color-mix(in srgb,var(--gold) 38%,var(--glass-border));pointer-events:none}
.astro-ornament{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:.63}
.astro-ornament circle,.astro-ornament path{stroke:color-mix(in srgb,var(--accent) 58%,var(--glass-border));stroke-width:.7;fill:none}.astro-ornament text{font-family:var(--display-font);fill:var(--accent);font-size:10px}
.astrolabe-center{position:absolute;inset:36% 36%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--glass-border));border-radius:50%;background:linear-gradient(145deg,var(--glass-bg-hover),var(--glass-bg-soft));box-shadow:0 15px 42px color-mix(in srgb,var(--accent) 11%,transparent),inset 0 1px var(--glass-highlight);backdrop-filter:blur(14px);z-index:2;color:var(--ink)}
.astrolabe-center b{font-family:var(--display-font);font-size:clamp(19px,2.3vw,27px);line-height:1.25;color:var(--accent)}.astrolabe-center small{font-size:10px;color:var(--muted);letter-spacing:.015em}
.astro-node{position:absolute;width:clamp(80px,19%,102px);height:clamp(80px,19%,102px);border-radius:50%;border:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:blur(12px);box-shadow:var(--glass-shadow-soft),inset 0 1px var(--glass-highlight);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--ink);cursor:pointer;z-index:3;transition:background .2s,border-color .2s,box-shadow .2s,scale .2s;transform:translate(-50%,-50%);padding:6px}
.astro-node .ui-icon{width:21px;height:21px;color:var(--accent)}.astro-node b{font-family:var(--display-font);font-size:19px;line-height:1.15}.astro-node:hover,.astro-node:focus-visible,.astro-node.is-peek{background:var(--glass-bg-hover);border-color:var(--accent);box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 16%,transparent);scale:1.05}.astro-node:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.astro-node[data-astro="qafiya"]{top:7%;left:50%}.astro-node[data-astro="meters"]{top:36%;left:91%}.astro-node[data-astro="openings"]{top:84%;left:76%}.astro-node[data-astro="lexicon"]{top:84%;left:24%}.astro-node[data-astro="entities"]{top:36%;left:9%}
.astro-side{padding:22px 24px;border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:22px;box-shadow:var(--glass-shadow-soft);min-height:218px;display:flex;flex-direction:column;justify-content:center;gap:11px}
.astro-side .eyebrow{font-size:11px}.astro-side h3{font:700 31px/1.45 var(--display-font);margin:0;color:var(--accent)}.astro-side p{line-height:2;color:var(--muted);font-size:14px;margin:0}.astro-hint{font-size:11px;color:var(--muted)}
.astro-legacy-toggle{display:flex;justify-content:center;margin:0 0 22px}.astro-legacy-toggle summary{cursor:pointer;list-style:none;color:var(--accent);font-size:13px;padding:11px 17px;border:1px solid var(--glass-border);border-radius:100px;background:var(--glass-bg-soft)}.astro-legacy-toggle summary::-webkit-details-marker{display:none}.astro-legacy-toggle>.unified-index-grid{margin:18px 0 26px}.astro-legacy-toggle[open]{display:block}.astro-legacy-toggle[open] summary{width:max-content;margin:auto}
/* Quote studio: rendered preview and downloaded PNG share one canvas. */
#v23Studio[hidden]{display:none!important}
#v23Studio{position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;padding:clamp(10px,3vw,30px);background:rgba(10,9,12,.84);backdrop-filter:blur(18px);overscroll-behavior:contain}
.v23-studio-shell{width:min(1120px,100%);height:min(93dvh,900px);background:var(--paper);color:var(--ink);border:1px solid var(--glass-border);border-radius:22px;overflow:hidden;display:grid;grid-template-columns:minmax(250px,1fr) minmax(290px,.92fr);direction:rtl;box-shadow:0 28px 100px rgba(0,0,0,.42)}
.v23-studio-settings{overflow:auto;padding:22px 23px;scrollbar-width:thin}.v23-studio-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:17px}.v23-studio-top h2{font:700 29px/1.3 var(--display-font);margin:3px 0 0}.v23-studio-top small{color:var(--muted)}.v23-studio-close{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--glass-border);background:var(--glass-bg-soft);color:var(--ink);font-size:22px;cursor:pointer}
.v23-setting{display:grid;gap:9px;margin:17px 0}.v23-setting>label{font-size:12px;font-weight:700}.v23-setting select,.v23-setting input[type="range"]{width:100%;accent-color:var(--accent)}.v23-setting select{border:1px solid var(--line);border-radius:11px;background:var(--glass-bg-soft);color:var(--ink);padding:12px;font:inherit}.v23-formats,.v23-colors{display:flex;gap:8px;flex-wrap:wrap}.v23-choice{min-width:74px;flex:1;border:1px solid var(--glass-border);border-radius:10px;background:var(--glass-bg-soft);color:var(--ink);padding:10px 8px;cursor:pointer;font:inherit;font-size:12px}.v23-choice[aria-pressed="true"]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--glass-bg-soft));color:var(--accent);font-weight:700}.v23-color{width:42px;height:42px;border:2px solid transparent;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff40;cursor:pointer}.v23-color[aria-pressed="true"]{outline:2px solid var(--accent);outline-offset:3px}
.v23-export{margin-top:16px;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.v23-export button{border:0;border-radius:12px;background:var(--accent);color:#fff;padding:12px 19px;font:inherit;font-weight:700;cursor:pointer}.v23-export small{color:var(--muted);font-size:11px}
.v23-studio-preview{background:#151419;display:flex;flex-direction:column;gap:10px;min-height:0;padding:24px;align-items:center;justify-content:center}.v23-studio-preview canvas{display:block;max-width:100%;max-height:calc(93dvh - 100px);width:auto;height:auto;object-fit:contain;box-shadow:0 18px 50px #0007}.v23-preview-note{color:#e3dacf;font-size:11px;opacity:.9;text-align:center}
body.v23-studio-active{overflow:hidden}
/* Literary lens tabs: honest local analysis, no AI hallucinations. */
.v23-lens-tabs{border-top:1px solid var(--line);padding-top:14px;display:grid;gap:12px}.v23-lens-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.v23-lens-nav button{border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:11px;color:var(--ink);min-height:38px;cursor:pointer;font:inherit;font-size:12px}.v23-lens-nav button[aria-selected="true"]{color:var(--accent);border-color:var(--accent);background:var(--glass-bg-hover)}.v23-lens-panel{padding:15px;border:1px solid var(--line);border-radius:14px;line-height:1.95;font-size:13px}.v23-lens-panel b{color:var(--accent)}.v23-lens-panel p{margin:6px 0;color:var(--muted)}.v23-lens-panel .term-chips{margin-top:9px}
@media(max-width:760px){.astrolabe-experiment{grid-template-columns:1fr;gap:5px}.astrolabe-frame{max-width:370px}.astrolabe-center b{font-size:18px}.astro-node{width:76px;height:76px}.astro-node b{font-size:16px}.astro-node .ui-icon{width:18px;height:18px}.astro-side{min-height:unset;padding:15px 19px}.astro-side h3{font-size:26px}.v23-studio-shell{grid-template-columns:1fr;grid-template-rows:minmax(205px,45%) minmax(0,55%);height:min(96dvh,1000px)}.v23-studio-preview{grid-row:1;min-height:0;padding:13px}.v23-studio-preview canvas{max-height:calc(45dvh - 40px)}.v23-studio-settings{grid-row:2;padding:15px}.v23-studio-top{margin-bottom:8px}.v23-studio-top h2{font-size:23px}}
@media(max-width:390px){.astrolabe-frame{max-width:320px}.astro-node{width:67px;height:67px}.astro-node b{font-size:14px}.astro-node .ui-icon{width:16px;height:16px}.astrolabe-center{inset:35%}.astrolabe-center b{font-size:16px}}
@media(prefers-reduced-motion:reduce){.astro-node{transition:none!important}#v23Studio{backdrop-filter:none}}


/* v23.1 — unmistakable, reversible editorial redesign of the experimental home. */
#homeView .v231-hero{
  position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);
  align-items:center;gap:26px;min-height:610px;margin:0 0 26px;padding:clamp(25px,4.6vw,58px);
  border:1px solid #755347;border-radius:28px;overflow:hidden;
  background:radial-gradient(ellipse 52% 75% at 3% 12%,rgba(173,126,79,.18),transparent 78%),
             radial-gradient(circle at 86% 48%,rgba(148,87,95,.2),transparent 57%),
             linear-gradient(130deg,#392027 0%,#25171d 43%,#100f13 100%);
  box-shadow:0 30px 80px rgba(32,16,21,.21),inset 0 0 0 1px rgba(245,221,180,.1);
}
#homeView .v231-hero:before {content:'';position:absolute;inset:11px;border:1px solid rgba(224,187,128,.16);border-radius:19px;pointer-events:none}
#homeView .v231-hero:after {content:'';position:absolute;right:-160px;bottom:-260px;width:460px;height:460px;border:1px solid rgba(212,168,103,.13);border-radius:50%;pointer-events:none}
#homeView .v231-hero .hero-main{z-index:2;padding:0;max-width:none;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
#homeView .v231-hero .v231-kicker{display:flex;align-items:center;gap:10px;margin-bottom:24px;color:#e4c79b;font-size:12px;letter-spacing:.03em;font-weight:600}
#homeView .v231-kicker:before{content:'';width:34px;height:1px;background:#b49768}
#homeView .v231-hero .hero-eyebrow{color:#d8b78e;margin-bottom:12px;font-size:13px}
#homeView .v231-hero .hero-name{color:#fff5e9;font-family:var(--display-font);font-size:clamp(32px,3.65vw,52px);font-weight:700;line-height:1.46;max-width:24ch;margin:0 0 13px;text-wrap:balance}
#homeView .v231-hero .hero-bio{color:#d5c3b4;font-family:var(--poem-font);font-size:clamp(15px,1.55vw,19px);line-height:1.92;max-width:66ch;margin:0 0 20px}
#homeView .v231-hero .hero-count{color:#ddc5a5;font-size:12px;margin-top:13px}
#homeView .v231-hero .search-label{color:#e3c59e}
#homeView .v231-hero .home-search-block{width:100%;max-width:610px;margin-top:18px}
#homeView .v231-hero .searchbox-hero{background:rgba(248,236,218,.1);border:1px solid rgba(255,236,209,.3);border-radius:14px;box-shadow:none;color:#fff5e9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-height:58px}
#homeView .v231-hero .searchbox-hero:focus-within{border-color:#e6c590;box-shadow:0 0 0 3px rgba(230,197,144,.1)}
#homeView .v231-hero .searchbox-hero input{color:#fff5e9;background:transparent;font-size:16px}
#homeView .v231-hero .searchbox-hero input::placeholder{color:#d0b9af}
#homeView .v231-hero .searchbox-hero kbd{color:#d1bdae;border-color:rgba(255,255,255,.2)}
.v231-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:4px}
.v231-hero-actions button{font:inherit;font-size:14px;font-weight:700;border-radius:100px;min-height:43px;padding:9px 21px;cursor:pointer;transition:.2s ease;display:flex;align-items:center;gap:8px}
.v231-hero-actions button:first-child{background:#e6c99a;color:#311b22;border:1px solid #f0dfbf;box-shadow:0 8px 25px rgba(3,1,1,.2)}
.v231-hero-actions button:last-child{background:rgba(255,255,255,.05);color:#f7e8d7;border:1px solid rgba(246,221,186,.33)}
.v231-hero-actions button:hover{transform:translateY(-2px)}
.v231-hero-art{position:relative;z-index:1;width:100%;max-width:430px;aspect-ratio:1;margin-inline:auto;display:grid;place-items:center;filter:drop-shadow(0 18px 25px rgba(0,0,0,.22))}
.v231-hero-art .v231-ring{position:absolute;border:1px solid rgba(224,194,143,.45);border-radius:50%;inset:4%;box-shadow:inset 0 0 30px rgba(203,161,111,.06),0 0 0 9px rgba(195,146,106,.05)}
.v231-hero-art .v231-ring.r2{inset:13%;border-style:dashed;opacity:.7;box-shadow:none}
.v231-hero-art .v231-ring.r3{inset:27%;border:1px solid rgba(222,178,112,.65);box-shadow:inset 0 0 26px rgba(196,133,82,.12)}
.v231-hero-art .v231-axis{position:absolute;background:linear-gradient(90deg,transparent,rgba(223,191,139,.18),transparent);width:100%;height:1px;transform:rotate(45deg)}
.v231-hero-art .v231-axis.ax2{transform:rotate(-45deg)}
.v231-hero-art .v231-nucleus{z-index:1;display:flex;align-items:center;justify-content:center;width:31%;aspect-ratio:1;border-radius:50%;font-family:var(--display-font);font-size:clamp(50px,8vw,86px);color:#f3dab4;border:1px solid rgba(232,196,140,.46);background:radial-gradient(circle at 30% 20%,#643943 0%,#341e27 60%,#24151d 100%);box-shadow:0 0 0 12px rgba(242,194,147,.045),0 18px 30px rgba(0,0,0,.28)}
.v231-hero-art .v231-node{z-index:2;position:absolute;display:grid;place-items:center;min-width:70px;min-height:40px;padding:5px 10px;color:#f0d8b7;text-decoration:none;background:rgba(62,35,45,.93);border:1px solid rgba(221,176,116,.46);border-radius:50px;font-size:13px;box-shadow:0 10px 20px rgba(0,0,0,.2);transition:background .2s,transform .2s}
.v231-hero-art .v231-node:hover,.v231-hero-art .v231-node:focus-visible{background:#79434f;color:#fff;transform:scale(1.07)}
.v231-hero-art .v231-node.n1{top:1%;left:50%;translate:-50% 0}
.v231-hero-art .v231-node.n2{top:28%;right:-4%}
.v231-hero-art .v231-node.n3{bottom:12%;right:5%}
.v231-hero-art .v231-node.n4{bottom:12%;left:5%}
.v231-hero-art .v231-node.n5{top:28%;left:-4%}
.v231-orbit-caption{position:absolute;bottom:0;color:#bca68b;font-size:11px}
.v231-feature-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:28px 0 14px}
.v231-feature-title .eyebrow{margin:0;color:var(--accent)}
.v231-feature-title h2{margin:5px 0 0;font-family:var(--display-font);font-size:clamp(27px,3.1vw,39px);line-height:1.4}
.v231-feature-title p{color:var(--muted);font-size:13px;max-width:480px;line-height:1.8;margin:0}
.v231-experience-grid{display:grid;grid-template-columns:1.14fr 1fr 1fr;gap:14px;margin-bottom:38px}
.v231-experience{min-height:210px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:25px 24px;border:1px solid var(--glass-border);background:var(--glass-bg-soft);border-radius:22px;color:var(--ink);cursor:pointer;text-align:right;transition:transform .2s,border-color .2s,box-shadow .2s;box-shadow:0 12px 28px rgba(37,21,21,.045)}
.v231-experience:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 18px 38px rgba(37,21,21,.08)}
.v231-experience:first-child{background:linear-gradient(145deg,rgba(121,44,61,.12),var(--glass-bg-soft))}
.v231-experience .v231-exp-number{font-size:13px;color:var(--accent);letter-spacing:.12em}
.v231-experience .ui-icon{width:26px;height:26px;color:var(--accent);margin:5px 0 1px}
.v231-experience b{font-family:var(--display-font);font-size:28px;line-height:1.3}
.v231-experience span:not(.v231-exp-number){font-size:13px;line-height:1.8;color:var(--muted)}
.v231-experience em{font:inherit;font-size:12px;color:var(--accent);margin-top:auto;padding-top:8px}
/* Showcase the existing real astrolabe more prominently, keeping the conventional index reachable. */
#indexesView .astrolabe-experiment{padding:26px 28px;border-radius:27px;border:1px solid var(--glass-border);background:radial-gradient(circle at 25% 45%,color-mix(in srgb,var(--gold) 10%,transparent),transparent 65%),var(--glass-bg-soft);box-shadow:var(--glass-shadow-soft);max-width:none}
#indexesView .astrolabe-frame{max-width:560px}
#indexesView .astro-side{background:transparent;border:0;box-shadow:none}
#indexesView .indexes-refined h2{max-width:none}
@media(max-width:980px){#homeView .v231-hero{grid-template-columns:1fr minmax(205px,.7fr);gap:5px;min-height:510px;padding:30px}#homeView .v231-hero .hero-name{font-size:36px}.v231-experience-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v231-experience{padding:19px}}
@media(max-width:720px){
 #homeView .v231-hero{grid-template-columns:1fr;min-height:0;gap:8px;margin:-4px -5px 24px;padding:27px 21px 32px;border-radius:22px}
 #homeView .v231-hero .v231-kicker{margin-bottom:14px}
 #homeView .v231-hero .hero-eyebrow{font-size:12px}
 #homeView .v231-hero .hero-name{font-size:clamp(26px,7vw,35px);line-height:1.45;margin-bottom:11px}
 #homeView .v231-hero .hero-bio{font-size:14px;line-height:1.88;margin-bottom:15px}
 #homeView .v231-hero .searchbox-hero{min-height:50px}
 #homeView .v231-hero .searchbox-hero input{font-size:15px}
 #homeView .v231-hero .home-search-block{margin-top:16px}
 .v231-hero-actions{gap:8px}.v231-hero-actions button{font-size:12px;padding:7px 14px;min-height:40px}
 .v231-hero-art{width:min(86%,320px);margin:18px auto 0;max-width:320px}
 .v231-hero-art .v231-nucleus{font-size:62px}
 .v231-hero-art .v231-node{font-size:11px;min-width:60px;padding:5px 8px}
 .v231-feature-title{display:block}.v231-feature-title p{margin-top:5px}
 .v231-experience-grid{grid-template-columns:1fr;gap:9px}
 .v231-experience{min-height:0;display:grid;grid-template-columns:36px 1fr;gap:3px 14px;padding:18px;border-radius:16px}
 .v231-experience .v231-exp-number{grid-column:1;grid-row:1;margin-top:4px}
 .v231-experience .ui-icon{grid-column:1;grid-row:2;max-width:23px}
 .v231-experience b{grid-column:2;grid-row:1;font-size:25px}
 .v231-experience span:not(.v231-exp-number){grid-column:2;grid-row:2}
 .v231-experience em{grid-column:2;grid-row:3;padding-top:5px}
 #indexesView .astrolabe-experiment{padding:20px 13px 12px;gap:4px}
}
@media(prefers-reduced-motion:reduce){.v231-experience,.v231-hero-actions button,.v231-hero-art .v231-node{transition:none!important}}



/* v23.2 — Quality pass: stable layers, legible mobile UI, accessible controls. */
[hidden]{display:none!important}
.drawer{z-index:172!important;overscroll-behavior:contain;will-change:transform}
.drawer-scrim{z-index:170!important}
.settings{z-index:182!important}
.overlay{z-index:184!important}
#v23Studio{z-index:200!important}
.drawer[aria-hidden="true"]{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.drawer-scrim[aria-hidden="true"]{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
body.ui-panel-open{overflow:hidden;overscroll-behavior:none}
.drawer:focus{outline:0}
.drawer-head button,.overlay-close,.v23-studio-close,.v231-hero-actions button,
.mobile-nav button,.v231-experience button,.astro-node{touch-action:manipulation}
:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.drawer-body{overscroll-behavior:contain}
.settings-panel,.overlay-card,.v23-studio-shell{overscroll-behavior:contain}
:where(.v231-hero-actions button,.astro-node,.mobile-nav button,.drawer-head button,.overlay-close){min-height:44px}
@media(max-width:800px){
  .drawer.reader-tool-drawer{top:auto;bottom:calc(10px + env(safe-area-inset-bottom));
    max-height:min(79dvh,700px);border-radius:22px 22px 16px 16px;
    transform:translateY(calc(100% + 30px));
    -webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px)}
  .drawer.reader-tool-drawer.open{transform:translateY(0)}
  .reader-tool-drawer .drawer-body{max-height:calc(min(79dvh,700px) - 56px);padding-bottom:calc(20px + env(safe-area-inset-bottom))}
  .drawer,.settings-panel,.overlay-card{-webkit-backdrop-filter:blur(11px);backdrop-filter:blur(11px)}
  .mobile-nav{padding:5px 6px calc(5px + env(safe-area-inset-bottom))!important;bottom:0!important;
    left:0!important;right:0!important;border-radius:18px 18px 0 0!important}
  .mobile-nav button{min-height:48px!important;font-size:12px}
  .main{padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  #homeView .v231-hero .hero-bio{font-size:clamp(15px,3.7vw,18px);line-height:1.95}
  #homeView .v231-hero .hero-name{font-size:clamp(28px,7.2vw,36px);line-height:1.53}
  #homeView .v231-hero .searchbox-hero input{font-size:16px}
  #homeView .v231-hero .v231-kicker{font-size:12px}
  #homeView .v231-hero .v231-hero-actions button{font-size:14px;min-height:44px}
  .v231-experience b{font-size:clamp(18px,4.5vw,23px)}
}
@media(max-width:370px){
 #homeView .v231-hero{padding:22px 18px 25px}
 #homeView .v231-hero .hero-name{font-size:27px;overflow-wrap:anywhere}
 .v231-hero-actions{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
@media(prefers-contrast:more){
 .v231-hero .hero-bio,.v231-hero .hero-name{color:#fff!important}
 .drawer,.glass-panel,.v231-experience{border-width:2px}
}


/* =========================================================
   23.4 — قارئ ديواني: قراءة الورق، أدوات زجاجية، وتحديد واضح
   ========================================================= */
#readerView{--reader-column:min(100%,860px)}
#readerView .reader-wrap{width:var(--reader-column)}
#readerView .reader-head{padding-bottom:24px}
#readerView .reader-head h1{font-size:clamp(36px,5vw,56px);line-height:1.65;letter-spacing:0}
#readerView .reader-kicker{font-size:13px;letter-spacing:0;line-height:1.8}
#readerView .reader-intro{max-width:76ch;margin:22px auto 5px;padding:18px 16px 16px;border-inline-start:2px solid color-mix(in srgb,var(--gold) 45%,var(--line));border-top:0;border-radius:2px 12px 12px 2px;background:color-mix(in srgb,var(--paper-strong) 58%,transparent)}
#readerView .reader-intro p{font-size:clamp(17px,2vw,20px);line-height:2.05}
#readerView .reader-textbar{border-radius:18px;margin:22px 0 18px;padding:14px;gap:14px;border:1px solid var(--glass-border);background:var(--glass-bg-soft);box-shadow:var(--glass-shadow-soft)}
#readerView .reader-textbar-main{flex:1 1 335px;gap:7px 11px}
#readerView .reader-textbar-label{font-size:13px;color:var(--ink)}
#readerView .text-mode-segment{border-radius:11px}
#readerView .text-mode-segment button{min-height:39px;min-width:88px;font-size:13px}
#readerView .text-mode-status{font-size:12px;line-height:1.8;flex:1 1 100%}
#readerView .vocal-layer-note{flex:1 1 100%;font-size:11px;line-height:1.75;color:var(--muted)}
#readerView .reader-textbar-actions{flex:0 1 auto}
#readerView .reader-textbar-actions .btn{min-height:44px;font-size:13px}
#readerView .reader-floating{align-items:center;gap:13px;margin:18px 0}
#readerView .reader-floating button{min-height:42px;display:inline-flex;align-items:center;gap:7px;border-bottom:1px solid var(--line);font-size:13px;margin:0;padding:6px 4px}
#readerView .reader-floating button[hidden]{display:none}
#readerView .reader-floating .ui-icon{width:15px;height:15px}
#readerView .poem-sheet{padding-top:17px}
#readerView .verse{padding:21px 44px 22px;scroll-margin-top:145px;border-bottom:1px solid color-mix(in srgb,var(--line) 48%,transparent)}
#readerView .verse:nth-child(5n):not(.selected){border-bottom-color:color-mix(in srgb,var(--gold) 47%,var(--line))}
#readerView .verse-body{gap:clamp(20px,4vw,56px);align-items:center}
#readerView .hemistich{font-size:clamp(23px,var(--poem-size),40px);line-height:1.95;overflow-wrap:normal;word-break:normal;text-wrap:pretty}
#readerView .verse-no{right:0;min-width:34px;height:38px;font-size:12px}
#readerView .verse-lens-btn{opacity:1;border-radius:12px;min-width:36px;min-height:36px}
#readerView .verse:hover,#readerView .verse:focus-visible{background:color-mix(in srgb,var(--gold) 5%,transparent)!important}
#readerView .verse.selected{background:color-mix(in srgb,var(--accent) 11%,var(--paper-strong))!important;box-shadow:inset 3px 0 0 var(--accent)!important}
#readerView .verse:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:8px!important}
#readerView .verse:focus-visible .verse-no{color:var(--accent)}
body.verse-select-mode #readerView .verse{cursor:pointer}
.reader-progress{position:sticky;top:var(--reader-progress-top,58px);height:3px;z-index:50;background:color-mix(in srgb,var(--line) 45%,transparent);border-radius:999px;overflow:hidden;max-width:100%;pointer-events:none}
.reader-progress span{display:block;width:0;height:100%;background:var(--accent);border-radius:999px;transition:width .15s ease}
#readerView .poem-footnotes{scroll-margin-top:112px;margin:52px 0 34px;padding:29px 0 16px;border-top:2px solid color-mix(in srgb,var(--gold) 44%,var(--line))}
#readerView .footnotes-head h2{font-size:clamp(27px,3vw,34px)}
#readerView .footnotes-head p{font-size:13px;line-height:1.9}
#readerView .footnote-item{grid-template-columns:52px minmax(0,1fr);font-size:clamp(17px,2vw,19px);line-height:2.1;padding:16px 0;align-items:baseline}
#readerView .footnote-no{font-size:16px;font-weight:700}
#readerView .footnotes-back{min-height:42px;font-size:13px}
#readerView .footnote-appendix{padding:19px 22px;line-height:2}
.selection-bar{border-radius:16px;scrollbar-width:thin;max-height:calc(100dvh - 18px)}
.selection-bar[hidden]{display:none!important}
.selection-bar button{min-width:44px;min-height:44px;border-radius:10px}
.selection-bar #selectedCount{font-size:16px;min-width:max-content;padding-inline:8px}
.selection-bar button:focus-visible,.text-mode-segment button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:760px){
 #readerView .reader-head{padding-bottom:16px}
 #readerView .reader-head-main{display:grid;gap:9px}
 #readerView .reader-title-block{text-align:center}
 #readerView .reader-head h1{font-size:clamp(34px,8vw,47px);line-height:1.55}
 #readerView .reader-kicker{font-size:12px}
 #readerView .reader-quick{justify-content:center;padding:0}
 #readerView .reader-quick .btn{min-height:40px}
 #readerView .reader-textbar{margin:15px 0 12px;padding:12px}
 #readerView .reader-textbar-main{flex:1 1 100%}
 #readerView .reader-textbar-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}
 #readerView .reader-textbar-actions .btn{width:100%;min-height:44px;justify-content:center;padding-inline:8px}
 #readerView .reader-floating{justify-content:center;gap:8px}
 #readerView .verse{padding:19px 28px 20px;scroll-margin-top:130px}
 #readerView .verse-body{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
 #readerView .verse-body::after{display:none}
 #readerView .hemistich{font-size:clamp(23px,var(--poem-size),34px);line-height:1.9;padding-inline:3px;text-align:center}
 #readerView .hemistich.ajuz{margin-top:0}
 #readerView .verse-no{right:0;top:7px;transform:none;font-size:11px;width:27px;min-width:27px}
 #readerView .verse-lens-btn{left:0;bottom:7px;top:auto;transform:none;min-width:30px;min-height:30px}
 #readerView .poem-footnotes{margin-top:34px;padding-top:20px}
 #readerView .footnote-item{grid-template-columns:37px minmax(0,1fr);gap:9px;padding:14px 0;font-size:17px}
 .reader-progress{top:59px}
 .selection-bar{bottom:calc(78px + env(safe-area-inset-bottom));width:calc(100vw - 18px);max-width:520px;padding:8px 9px;gap:5px;justify-content:space-between;overflow-x:auto}
 .selection-bar button{min-width:39px;min-height:41px;padding:8px!important;flex:0 0 auto}
 .selection-bar #selectedCount{font-size:14px}
}
@media(max-width:390px){
 #readerView .hemistich{font-size:clamp(22px,var(--poem-size),31px)}
 #readerView .verse{padding-inline:20px}
 #readerView .reader-quick{gap:5px}
 #readerView .reader-quick .btn{font-size:11px;padding-inline:9px}
 #readerView .reader-textbar-actions .btn{font-size:11px}
 .selection-bar{gap:1px;padding:7px 5px}
 .selection-bar button{min-width:34px;padding:6px!important}
 .selection-bar #selectedCount{font-size:12px;padding-inline:3px}
}
@media(prefers-reduced-motion:reduce){.reader-progress span{transition:none}}

/* Small screens: two deliberate rows for the selection controls, never horizontal scrolling. */
@media(max-width:760px){
 .selection-bar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:auto auto;align-items:center;overflow:visible;row-gap:4px;padding:9px 8px}
 .selection-bar #selectedCount{grid-column:1/-1;text-align:center;justify-self:center;font-size:14px;line-height:1.5}
 .selection-bar button{min-width:0!important;width:100%;justify-self:center;display:flex;justify-content:center;align-items:center;margin:0!important;padding:8px 3px!important}
}

/* v23.5 — search, indexes and navigation refinement */
.v235-search-summary{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.v235-share-search{min-height:42px;display:inline-flex;align-items:center;gap:8px;justify-content:center}
.v235-active-filters:not([hidden]){display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.v235-filter-chip{display:inline-flex;gap:7px;align-items:center;max-width:100%;border:1px solid var(--glass-border,#cdbbbb);border-radius:999px;padding:7px 12px;color:var(--ink);background:var(--glass-bg-soft,rgba(255,255,255,.12));font-size:13px;overflow-wrap:anywhere}
.v235-filter-chip small{color:var(--muted);font-size:11px}
.v235-no-results{text-align:center;padding:30px 18px}.v235-no-results p{color:var(--muted)}
.v235-index-finder{margin:24px 0 28px;padding:clamp(18px,3vw,30px);border-radius:22px}
.v235-index-heading{display:flex;gap:18px;align-items:end;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap}
.v235-index-heading h3{margin:5px 0 0;font-size:clamp(20px,2.5vw,27px)}
.v235-index-search{flex:1 1 235px;max-width:340px}.v235-index-search input,.v235-entity-search input{width:100%;padding:12px 16px;border:1px solid var(--glass-border,#d6c5b5);border-radius:12px;background:var(--paper,#fff);color:var(--ink);font:inherit;min-height:46px}
.v235-index-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:9px}
.v235-finder-entry{display:grid;position:relative;text-align:right;align-content:start;gap:5px;min-height:75px;padding:14px 35px 13px 12px;border:1px solid var(--glass-border,#d6c5b5);border-radius:13px;background:var(--glass-bg-soft,rgba(255,255,255,.08));color:var(--ink);cursor:pointer;transition:border-color .2s ease, background .2s ease}
.v235-finder-entry:hover,.v235-finder-entry:focus-visible{border-color:var(--accent);background:var(--glass-bg-hover,rgba(255,255,255,.2))}
.v235-finder-entry b{font-size:15px}.v235-finder-entry small{font-size:12px;color:var(--muted)}.v235-finder-entry .ui-icon{position:absolute;left:12px;top:19px;width:16px;height:16px}
.v235-index-empty{color:var(--muted);padding:6px 0}.v235-entity-search{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0 12px}.v235-entity-search label{font-weight:700}.v235-entity-search input{max-width:360px;flex:1 1 180px}.v235-entity-search span{color:var(--muted);font-size:12px}
.v235-entity-disclaimer{font-size:12px;color:var(--muted);margin:7px 0 0}.v235-open-place{margin-right:10px}
@media(max-width:600px){.v235-search-summary{align-items:stretch}.v235-share-search{width:100%}.v235-index-finder{padding:17px 12px}.v235-index-results{grid-template-columns:repeat(2,minmax(0,1fr))}.v235-finder-entry{padding:12px 11px 13px;min-height:92px}.v235-finder-entry .ui-icon{display:none}.v235-index-search{max-width:none;flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.v235-finder-entry{transition:none}}

/* v23.6 — refined quote studio: export typography, controls and pagination */
.v236-pages{display:flex;align-items:center;justify-content:center;gap:14px;color:#eae2d6;font-size:13px;direction:ltr}
.v236-pages[hidden]{display:none!important}
.v236-pages button{width:37px;height:37px;border-radius:50%;border:1px solid #ffffff45;background:#ffffff14;color:#f7eee0;font-size:23px;line-height:1;display:grid;place-items:center;cursor:pointer}
.v236-pages button:disabled{opacity:.25;cursor:default}
.v236-pages button:not(:disabled):hover{background:#ffffff30}
.v236-inline-toggle{display:flex!important;align-items:center;gap:11px;line-height:1.7;cursor:pointer}
.v236-inline-toggle input{accent-color:var(--accent);width:19px;height:19px;flex:none}
.v236-source-note{font-size:12px;color:var(--muted);line-height:1.85;margin:8px 0 3px}
.v23-export button:disabled{opacity:.6;cursor:wait}
.v23-studio-preview canvas{aspect-ratio:auto;max-height:calc(93dvh - 170px)}
.v23-studio-preview{gap:11px;background:radial-gradient(ellipse at 50% 25%,#312326 0%,#121013 68%)}
.v23-studio-preview canvas{box-shadow:0 20px 70px #000a;border:1px solid #ffffff0d}
.v23-studio-settings{padding-bottom:32px}
.v23-studio-top small{color:var(--accent)}
@media(max-width:760px){.v23-studio-shell{grid-template-rows:minmax(225px,49%) minmax(0,51%)}.v23-studio-preview{padding:12px 12px 9px;gap:8px}.v23-studio-preview canvas{max-height:calc(49dvh - 107px)}.v23-studio-preview .v23-preview-note{font-size:10px}.v236-pages button{width:33px;height:33px}.v23-studio-settings{padding:17px 16px 30px}}
@media(max-width:420px){.v23-studio-shell{height:min(97dvh,1000px)}.v23-studio-preview canvas{max-height:calc(48dvh - 105px)}.v23-studio-top h2{font-size:21px}}


/* ==============================================================
   v23.7 — accessibility & mobile performance polish
   ============================================================= */
.v237-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;border:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;clip-path:inset(50%)!important}
.v237-skip{position:fixed;inset-block-start:-100px;inset-inline-start:12px;z-index:4000;border:2px solid var(--gold);border-radius:10px;padding:9px 16px;background:var(--paper-strong);color:var(--ink);font-size:16px;min-height:44px}
.v237-skip:focus-visible{inset-block-start:calc(8px + env(safe-area-inset-top))}
:where(a,button,input,select,textarea,[role="link"],[role="button"],[tabindex="0"]):focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px!important}
#mainContent:focus{outline:none}
.poem-card[role="link"]{cursor:pointer}
#readerView .verse{scroll-margin-top:100px;scroll-margin-bottom:120px}
#readerView .footnotes{scroll-margin-top:95px}
@media (max-width:760px){
 .nav button,.iconbtn,.top-actions button{min-height:44px;min-width:44px}
 .mobile-nav button{min-height:48px!important}
 .v23-studio-close,.v236-pages button{min-width:44px;min-height:44px}
 .v231-kicker,.v231-experience small{letter-spacing:normal}
 .v23-studio-settings button{touch-action:manipulation}
 .glass-panel,.poem-card,.index-card,.mobile-nav,.topbar{-webkit-backdrop-filter:blur(7px)!important;backdrop-filter:blur(7px)!important}
}
@media (max-width:360px){
 .topbar-inner{gap:7px;padding-inline:9px}
 .v23-studio-top{gap:7px}
 .reader-quick,.reader-textbar-actions{flex-wrap:wrap}
 .v23-studio-preview .v23-preview-note{font-size:11px;line-height:1.5}
}
@media (prefers-reduced-motion:reduce){
 html,body{scroll-behavior:auto!important}
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .astrolabe-orbit,.astro-node{animation:none!important}
}

/* v23.8 — Arabic mobile keyboard friendly, editable lexicon and research fields. */
.v238-lexicon-toolbar{display:flex;flex-direction:column;gap:13px}
.v238-lexicon-intro label{display:block;color:var(--ink);font-size:clamp(15px,1.8vw,19px);font-weight:700;margin-bottom:4px}
.v238-lexicon-intro p{margin:0;line-height:1.8;color:var(--muted);font-size:12px}
.v238-word-form{display:flex;align-items:stretch;gap:9px;width:100%;min-width:0}
.v238-word-form .searchbox{min-width:0;flex:1;display:flex;align-items:center;margin:0;box-shadow:none}
.v238-word-form input{width:100%;min-width:0;direction:rtl;text-align:right;font-size:clamp(17px,2.3vw,21px)!important;min-height:52px;caret-color:var(--accent);-webkit-user-select:text;user-select:text}
.v238-word-form button{flex:none;min-height:48px;white-space:nowrap}
.v238-input-status{color:var(--muted);font-size:12px;min-height:20px;line-height:1.7}
.v238-input-status[data-status="pending"]{color:var(--accent)}
.v238-examples-title{font-size:12px;color:var(--ink);font-weight:600}
.v238-examples-title span{font-size:11px;font-weight:400;color:var(--muted)}
.v238-lexicon-toolbar .lab-suggestions{margin-top:0}
.v238-lexicon-toolbar .lab-suggestions button{min-height:36px;padding-inline:13px}
.v238-tree-link{align-self:flex-start}
@media(max-width:660px){
 .v238-word-form{display:grid;grid-template-columns:1fr auto;gap:9px}
 .v238-word-form .searchbox{grid-column:1/-1}
 .v238-word-form .v238-submit{min-width:0}
 .v238-word-form .v238-clear{min-width:72px}
 .v238-word-form input{font-size:18px!important;min-height:58px}
 .v238-lexicon-toolbar{gap:11px;padding:15px}
 .v238-examples-title{margin-top:2px}
}

/* 23.9: numerical relationship scores retain reading order inside RTL cards. */
.numeric-score{direction:ltr;unicode-bidi:isolate;white-space:nowrap;display:inline-block;font-variant-numeric:tabular-nums}
/* Keep the poem-lens title reachable when long evidence is scrolled on phones. */
@media (max-width:640px){
 .reader-tool-drawer{max-height:calc(100dvh - 100px - env(safe-area-inset-bottom))}
 .reader-tool-drawer .drawer-head{position:sticky;top:0;z-index:3;background:var(--paper-strong)}
 .reader-tool-drawer .drawer-body{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 164px - env(safe-area-inset-bottom))}
}

/* v23.11 — source-linked, non-destructive editorial notes */
.editorial-note-meta{font: 500 12px/1.9 system-ui,sans-serif;color:var(--muted);margin-top:8px;display:block;overflow-wrap:anywhere}
.editorial-note-meta a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.editorial-note-ok{color:var(--accent);font-weight:750}
.editorial-note-pending{opacity:.74}
.editorial-verse-link{border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--accent);padding:3px 9px;font:inherit;cursor:pointer;min-height:32px}
.editorial-verse-link:hover,.editorial-verse-link:focus-visible{background:color-mix(in srgb,var(--accent) 10%,transparent);outline-offset:3px}
.editorial-correction{margin:12px 0 0!important;line-height:1.9;color:var(--accent);font-size:12px}

/* 23.12 — visible source-attribution for prefatory quotations */
.edition-quotation {border-inline-start:3px solid var(--accent);padding-inline-start:16px;}
.edition-quotation blockquote {font-family:var(--poem-font, serif);font-size:1.05rem;line-height:2;opacity:.92;margin:12px 0;}
.edition-quotation small {display:block;line-height:1.9;}
.edition-quotation a {color:var(--accent);text-underline-offset:3px;}


/* 23.13 - Editorial lexicon provenance and contextual notes */
.v2313-intro{margin:20px 0 14px;padding:16px 20px;border:1px solid var(--line,rgba(126,90,70,.22));border-radius:18px;background:var(--glass-bg,rgba(255,255,255,.65));}
.v2313-intro h3{font-size:1.13rem;margin:3px 0 9px}
.v2313-intro p,.v2313-intro small{color:var(--muted);line-height:1.85}
.v2313-headwords{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.v2313-headwords button{border:1px solid var(--glass-border,rgba(126,90,70,.22));background:transparent;color:var(--ink);padding:7px 12px;border-radius:999px;font:inherit;cursor:pointer}
.v2313-headwords button:hover,.v2313-headwords button:focus-visible{border-color:var(--accent);color:var(--accent)}
.v2313-glossary{border:1px solid var(--glass-border,rgba(126,90,70,.22));background:var(--paper-strong,var(--paper,#faf4e9));color:var(--ink);border-radius:18px;padding:22px;margin:16px 0;}
.v2313-glossary h3{font-size:1.2rem;margin:5px 0 8px}.v2313-glossary p{line-height:1.9;margin:4px 0}
.v2313-sourceflag{font-size:.75rem;color:var(--accent);font-weight:700;letter-spacing:0}
.v2313-item{border-top:1px solid var(--glass-border,rgba(126,90,70,.22));padding:13px 0}.v2313-item:first-of-type{border-top:0}
.v2313-meaning{font-size:1.12em;line-height:1.95}
.v2313-citation{font-size:.82rem;color:var(--muted);line-height:1.7}
.v2313-verse{font-family:var(--poem-font,var(--display-font),serif);font-size:1.05rem;line-height:2.15;white-space:normal;}
.v2313-verse .sep{color:var(--accent);padding:0 .35em}
.v2313-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:9px}
.v2313-actions button{border:1px solid var(--glass-border,rgba(126,90,70,.22));border-radius:10px;background:transparent;color:var(--accent);font:inherit;padding:7px 12px;cursor:pointer}
.v2313-actions a{color:var(--accent);text-underline-offset:3px;font-size:.86rem}
.v2313-item details{font-size:.86rem;margin-top:7px;color:var(--muted)}.v2313-item summary{cursor:pointer;max-width:max-content}
.v2313-item details p{white-space:pre-wrap;line-height:1.9}
.v2313-lens{padding:14px;border-top:1px solid var(--glass-border,rgba(126,90,70,.22));margin-top:12px}
.v2313-lens ul{list-style:none;margin:8px 0;padding:0}.v2313-lens li{margin-bottom:12px;line-height:1.9}
@media(max-width:550px){.v2313-glossary{padding:16px}.v2313-intro{padding:14px}.v2313-verse{font-size:1rem}}


/* 23.14 — Source-grounded biography, scoped to avoid affecting poem layouts */
#bio-23-14{max-width:100%;margin-block:22px 12px}
#bio-23-14 .bio-header{border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}
#bio-23-14 .bio-header h3{font-family:var(--display-font);font-size:clamp(1.55rem,3vw,2.3rem);line-height:1.55;margin:6px 0 10px}
#bio-23-14 .bio-header p{max-width:64ch;line-height:1.95;color:var(--muted)}
#bio-23-14 .bio-chapter-nav{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 24px}
#bio-23-14 .bio-chapter-nav button{display:inline-flex;padding:7px 13px;border-radius:999px;border:1px solid var(--line);color:var(--ink);text-decoration:none;background:var(--paper-soft)}
#bio-23-14 .bio-chapter-nav button:hover,#bio-23-14 .bio-chapter-nav button:focus-visible{border-color:var(--accent);color:var(--accent)}
#bio-23-14 .bio-subchapter{padding:16px 0;border-top:1px solid var(--line);scroll-margin-top:110px}
#bio-23-14 .bio-subchapter h4{font-family:var(--display-font);font-size:1.38rem;margin:0 0 9px;color:var(--ink)}
#bio-23-14 .bio-subchapter p,#bio-23-14 .bio-biblio{line-height:2.08;font-size:1.05rem}
#bio-23-14 .bio-subchapter p{margin:8px 0 13px}
#bio-23-14 .bio-source{font-size:.83rem;text-decoration:underline;text-underline-offset:3px;color:var(--accent);white-space:normal}
#bio-23-14 .bio-criticism{margin:15px 0;padding:14px 18px;border-inline-start:3px solid var(--gold);background:var(--paper-soft);border-radius:8px}
#bio-23-14 .bio-criticism blockquote{font-family:var(--poem-font);font-size:clamp(1.1rem,2.3vw,1.42rem);line-height:1.9;margin:0 0 7px}
#bio-23-14 .bio-criticism div{line-height:1.9;color:var(--muted)}
#bio-23-14 .bio-method{color:var(--muted);border-inline-start:2px solid var(--line-dark);padding-inline-start:12px}
#bio-23-14 .bio-biblio{padding-inline-start:24px}
#bio-23-14 .bio-biblio li{margin:7px 0}
@media(max-width:600px){#bio-23-14 .bio-chapter-nav{gap:6px}#bio-23-14 .bio-chapter-nav button{font-size:.85rem;padding:7px 10px}#bio-23-14 .bio-subchapter p,#bio-23-14 .bio-biblio{font-size:1rem}#bio-23-14 .bio-criticism{padding:12px}}

/* 23.17 — editorial separation, not a new visual feature. */
#readerView .unresolved-footnote-notice{margin:28px 0 12px;padding:18px 22px;background:color-mix(in srgb,var(--paper-strong) 76%,transparent);border:1px solid var(--line);border-inline-start:3px solid var(--accent);border-radius:12px}
#readerView .unresolved-footnote-notice b{font-size:15px;font-family:var(--display-font)}
#readerView .unresolved-footnote-notice p{font-size:13px;line-height:1.9;color:var(--muted);max-width:720px;margin:7px 0 12px}
.raw-notes-archive h3{font-family:var(--display-font);font-size:21px;margin:0 0 8px}
.raw-notes-archive>p{font-size:14px;line-height:1.85;color:var(--muted)}
.raw-notes-archive .footnote-item{font-size:15px;line-height:1.8}
@media(max-width:700px){#readerView .unresolved-footnote-notice{padding:15px}}

/* v23.40 — restrained literary footnotes, responsive RTL alignment */
#readerView .footnotes-list{display:flex;flex-direction:column;gap:0}
#readerView .footnote-item{display:flex;flex-direction:row;align-items:flex-start;gap:0.8rem;direction:rtl;padding:12px 0;break-inside:avoid}
#readerView .footnote-no{display:inline-flex;flex:0 0 2.3rem;align-items:center;justify-content:center;min-height:1.7rem;font-size:0.9rem;line-height:1.7;white-space:nowrap;font-variant-numeric:tabular-nums}
#readerView .footnote-text{flex:1;min-width:0;text-align:right;overflow-wrap:anywhere;line-height:1.95}
#readerView .reader-note-link{font:12px/1.8 var(--body-font,inherit);margin-top:5px;opacity:.78}
#readerView .footnotes-head p:empty{display:none}
@media(max-width:700px){#readerView .footnote-item{gap:.55rem;padding:11px 0}#readerView .footnote-no{flex-basis:2rem}#readerView .footnote-text{font-size:16px}}

/* v23.42 — stable footnote rhythm on narrow Android screens */
#readerView .footnote-item{position:relative;max-width:100%;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent)}
#readerView .footnote-no{align-self:flex-start;position:static;letter-spacing:0;user-select:none}
#readerView .footnote-text{overflow-wrap:break-word;word-break:normal;hyphens:none;unicode-bidi:plaintext}
#readerView .footnotes-head{align-items:center;flex-wrap:wrap}
#readerView .editorial-verse-link{min-height:36px;cursor:pointer}
#readerView .editorial-verse-link:focus-visible,#readerView .footnotes-back:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:420px){#readerView .footnote-item{gap:8px;padding:12px 0}#readerView .footnote-no{flex:0 0 31px;font-size:13px}#readerView .footnote-text{font-size:16px;line-height:2}#readerView .footnotes-head h2{font-size:25px}}


/* v23.47: accessible superscript markers tied only to verified verse-level evidence */
#readerView .verse-note-marker{align-self:start;flex:0 0 auto;border:0;border-radius:5px;background:transparent;color:var(--accent);font:700 11px/1.2 var(--display-font);vertical-align:super;padding:3px 5px;cursor:pointer;min-width:23px;min-height:23px}
#readerView .verse-note-marker:hover,#readerView .verse-note-marker:focus-visible{background:var(--paper-strong);outline:2px solid var(--accent);outline-offset:2px}
#readerView .footnote-item:focus{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}
@media(max-width:700px){#readerView .verse-note-marker{font-size:10px;min-width:26px;min-height:26px}}

/* v23.55 — thematic tree: responsive, accessible, poem-level verified index */
.theme-tree-layout{display:grid;grid-template-columns:minmax(260px,0.85fr) minmax(0,1.15fr);gap:1.2rem;align-items:start;margin-top:1.2rem}
.theme-tree-stage{padding:1.5rem;min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.theme-tree-root{border:1px solid var(--gold,#a88b55);border-radius:999px;padding:1rem 1.5rem;text-align:center;font-weight:800;position:relative;background:var(--surface,#fffaf0);box-shadow:0 6px 25px #0000000a}
.theme-tree-root::after{content:'';display:block;height:32px;width:1px;background:var(--gold,#a88b55);position:absolute;top:100%;left:50%}
.theme-tree-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;width:100%;margin-top:32px;border-top:1px solid var(--gold,#a88b55);padding-top:1.2rem}
.theme-tree-node{font:inherit;min-height:90px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;position:relative;cursor:pointer;border:1px solid #bca77977;border-radius:1.2rem;background:var(--surface,#fffaf0);color:inherit;padding:.8rem;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.theme-tree-node::before{content:'';position:absolute;bottom:100%;height:1.2rem;width:1px;background:var(--gold,#a88b55)}
.theme-tree-node:hover{transform:translateY(-2px);border-color:#a88b55}.theme-tree-node.is-active{border:2px solid #a88b55;box-shadow:0 0 0 3px #a88b5522}.theme-tree-node:focus-visible{outline:3px solid #b48b44;outline-offset:3px}
.theme-tree-name{font-weight:800}.theme-tree-count{font-size:.8rem;opacity:.75}.theme-tree-results{padding:1.1rem;min-height:430px}.theme-tree-heading{margin-bottom:1rem}.theme-tree-heading h3{margin:0 0 .3rem}.theme-tree-heading p{margin:0;opacity:.75}.theme-tree-results .grid{display:grid;grid-template-columns:minmax(0,1fr);gap:.7rem}.theme-tree-disclaimer{font-size:.82rem;opacity:.75;margin-top:1rem}
@media(max-width:780px){.theme-tree-layout{grid-template-columns:minmax(0,1fr)}.theme-tree-stage,.theme-tree-results{min-height:0;padding:1rem}.theme-tree-branches{gap:.65rem}.theme-tree-node{min-height:78px}.theme-tree-root{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.theme-tree-node{transition:none}.theme-tree-node:hover{transform:none}}
@media print{.theme-tree-stage{min-height:0}.theme-tree-node{break-inside:avoid}}

/* v23.56: prominent tree navigation */
.v2356-theme-entry{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;margin:1.1rem 0 1.6rem;border:1px solid #b79a6380;border-radius:1.15rem;text-decoration:none;color:inherit;background:linear-gradient(120deg,#aa8a3815,transparent 80%);box-shadow:0 4px 18px #0000000a;transition:border-color .15s ease,transform .15s ease}
.v2356-theme-entry:hover{border-color:#a58b55;transform:translateY(-2px)}.v2356-theme-entry:focus-visible{outline:3px solid #b48b44;outline-offset:3px}.v2356-theme-entry>span:nth-child(2){display:flex;flex:1;flex-direction:column;gap:.3rem;min-width:0}.v2356-theme-entry strong{font-size:1.1rem}.v2356-theme-entry small{font-size:.84rem;opacity:.76;line-height:1.6}.v2356-theme-icon{display:grid;place-items:center;width:3rem;height:3rem;flex-shrink:0;border-radius:50%;border:1px solid #a58b5588;color:#987332;font-size:1.6rem}.v2356-index-entry{margin-top:1.3rem}
@media(max-width:600px){.v2356-theme-entry{padding:.8rem;gap:.65rem}.v2356-theme-icon{width:2.5rem;height:2.5rem}.v2356-theme-entry strong{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.v2356-theme-entry{transition:none}.v2356-theme-entry:hover{transform:none}}

/* v23.58: searchable, paginated theme tree */
.theme-tree-search-label{align-self:stretch;font-size:.85rem;font-weight:700;margin-top:1.3rem}.theme-tree-search{width:100%;max-width:28rem;min-height:44px;padding:.65rem 1rem;border-radius:.75rem;border:1px solid #bca77988;background:var(--surface,#fffaf0);color:inherit;font:inherit;margin-top:.35rem}.theme-tree-search:focus-visible{outline:3px solid #b48b44;outline-offset:2px}.theme-tree-branches{margin-top:1.2rem}.theme-tree-node[hidden]{display:none!important}.theme-tree-empty{font-size:.88rem;margin-top:1rem}.theme-tree-more{margin:1rem auto 0;display:block}.theme-tree-more[hidden]{display:none!important}

/* 23.63 — search evidence in the theme tree */
.theme-poem-result{min-width:0}.theme-match{margin:.15rem 0 1rem;padding:.7rem .9rem;border-inline-start:2px solid #a88b55;background:color-mix(in srgb,var(--surface,#fffaf0) 92%,#a88b55 8%);border-radius:.5rem}.theme-match-caption{display:block;font-size:.78rem;opacity:.78;margin:0 0 .35rem}.theme-match-verse{line-height:2;font-size:.96rem;overflow-wrap:anywhere}.theme-match-verse span{display:block}.theme-match-open{display:inline-block;margin-top:.45rem;padding:.35rem .6rem;min-height:40px;border:1px solid #a88b55;border-radius:.5rem;background:transparent;color:inherit;font:inherit;cursor:pointer}.theme-match-open:focus-visible{outline:3px solid #a88b55;outline-offset:2px}


/* ===== 02-layer.css — من المصدر ===== */
/* v23.43 — reading resilience and accessibility, without editing literary data */
#readerView{min-width:0;max-width:100%;overflow-wrap:break-word}
#readerView .footnote-item{direction:rtl;min-width:0;align-items:flex-start}
#readerView .footnote-text{min-width:0;flex:1;white-space:normal;overflow-wrap:break-word}
#readerView .footnote-no{font-variant-numeric:tabular-nums;white-space:nowrap;text-align:center}
#readerView :is(a,button,[tabindex]):focus-visible{outline:3px solid var(--accent,#80623c);outline-offset:3px;border-radius:3px}
@media(max-width:600px){#readerView{padding-inline:clamp(10px,3vw,18px)}#readerView .footnote-item{display:flex;gap:10px}#readerView .footnote-text{font-size:clamp(15px,4vw,18px);line-height:2.05}}
@media(prefers-reduced-motion:reduce){#readerView *,#readerView *::before,#readerView *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{#readerView .footnote-item{break-inside:avoid}#readerView .footnote-text{color:#111!important}#readerView .footnote-no{color:#333!important}}


/* ===== 03-layer.css — من المصدر ===== */
#readerHead #dockSource,#readerHead #openSource,#readerHead #unresolvedNotesBtn,#readerDock #dockSource,#readerHead .edition-quotation,#readerHead .historical-review{display:none!important}

/* ===== 04-layer.css — من المصدر ===== */

/* 23.51 — verified-context word explanations inside verses; no editorial banners. */
#readerView .v2351-word-gloss{display:inline;appearance:none;border:0;border-bottom:1px dotted var(--accent);border-radius:0;background:transparent;padding:0 .025em;margin:0;color:inherit;font:inherit;line-height:inherit;vertical-align:baseline;text-decoration:none;cursor:help;white-space:inherit;-webkit-tap-highlight-color:transparent}
#readerView .v2351-word-gloss:hover{color:var(--accent);background:color-mix(in srgb,var(--gold) 9%,transparent)}
#readerView .v2351-word-gloss:focus-visible{outline:2px solid var(--accent);outline-offset:3px;background:var(--paper-strong)}
#verseLensBody .v2313-lens [data-v2351-gloss-key]:focus{outline:2px solid var(--accent);outline-offset:4px;border-radius:3px}
/* The reader remains a literary diwan; provenance and audit records stay in project files. */
#verseLensBody #lensSource,#verseLensBody #lensCite,#verseLensBody [data-v23-tab="sources"]{display:none!important}
@media(max-width:700px){#readerView .v2351-word-gloss{padding-block:.08em;text-underline-offset:.15em}}


/* ===== 05-layer.css — من المصدر ===== */
/*23.52*/#readerView .v2351-word-gloss{overflow-wrap:anywhere;text-decoration-skip-ink:auto}@media(forced-colors:active){#readerView .v2351-word-gloss{border-bottom:2px dotted LinkText;color:LinkText}#readerView .v2351-word-gloss:focus-visible{outline:2px solid Highlight}}@media print{#readerView .v2351-word-gloss{border:0!important;text-decoration:none!important;color:inherit!important}}

/* ===== 06-layer.css — من المصدر ===== */

/* 23.60 — word-linked footnotes and accessible mobile note sheet */
#readerView .v2360-note-inline{display:inline;vertical-align:super;font:700 .62em/1 var(--display,serif);border:0;background:transparent;color:var(--accent);min-width:22px;min-height:24px;padding:0 .17em;margin-inline:.06em;cursor:pointer}
#readerView .v2360-note-inline:hover,#readerView .v2360-note-inline:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
.v2360-note-backdrop{position:fixed;inset:0;z-index:2400;background:rgba(17,13,13,.55)}
.v2360-note-panel{position:fixed;z-index:2401;inset:auto 14px calc(14px + env(safe-area-inset-bottom)) 14px;margin-inline:auto;max-width:660px;max-height:min(72dvh,680px);overflow:auto;overscroll-behavior:contain;background:var(--surface,#fffaf0);color:var(--ink,#231a1b);border:1px solid var(--line,#d7c7ad);box-shadow:0 14px 50px rgba(0,0,0,.25);border-radius:18px;padding:19px 20px 23px;direction:rtl}
.v2360-note-backdrop[hidden],.v2360-note-panel[hidden]{display:none!important}
.v2360-note-top{display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line,#d7c7ad);padding-bottom:10px}
.v2360-note-top b{font-size:1.02rem}.v2360-note-top button{border:1px solid var(--line,#d7c7ad);border-radius:50%;background:transparent;color:inherit;min-width:42px;min-height:42px;font-size:1.6rem;cursor:pointer}
#v2360NoteText{font-family:var(--text,serif);font-size:clamp(17px,4.2vw,21px);line-height:2.1;white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 19px}
#v2360NoteAll{border:1px solid var(--line,#d7c7ad);background:transparent;color:inherit;border-radius:10px;padding:10px 16px;font:inherit;min-height:44px;cursor:pointer}
.v2360-note-panel button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media(max-width:600px){.v2360-note-panel{inset:auto 7px calc(7px + env(safe-area-inset-bottom)) 7px;padding:16px 17px 19px;max-height:74dvh;border-radius:16px}#readerView .v2360-note-inline{min-width:24px;min-height:27px}}
@media print{.v2360-note-panel,.v2360-note-backdrop{display:none!important}#readerView .v2360-note-inline{color:inherit}}


/* ===== 07-layer.css — من المصدر ===== */

/* v23.61: stronger visible, keyboard-accessible literary branching. */
.theme-tree-stage{position:relative;isolation:isolate;background-image:radial-gradient(circle at 50% 10%,rgba(173,137,76,.09),transparent 65%)}
.theme-tree-root{z-index:1;min-width:min(100%,230px);border-width:2px}
.theme-tree-branches{position:relative;border-top:2px solid #a88b5577}
.theme-tree-node{box-shadow:0 3px 10px #00000009;border-width:1.5px}
.theme-tree-node.is-active{background:color-mix(in srgb,var(--surface,#fffaf0) 87%,#d9b875 13%)}
.theme-tree-node:focus-visible{outline:3px solid #8c642e;outline-offset:3px}
.theme-tree-node[hidden]{display:none!important}
.theme-tree-empty:not([hidden]){display:block;text-align:center;padding:1rem;border:1px dashed #a88b55;border-radius:12px;width:100%}
@media(max-width:430px){.theme-tree-stage{padding:.75rem}.theme-tree-branches{gap:.5rem}.theme-tree-node{min-height:86px;padding:.6rem .35rem}.theme-tree-count{font-size:.72rem}}
@media(forced-colors:active){.theme-tree-node.is-active{outline:2px solid Highlight;outline-offset:1px}.theme-tree-branches,.theme-tree-root::after,.theme-tree-node::before{border-color:CanvasText;background:CanvasText}}


/* ===== 08-layer.css — من المصدر ===== */

/* v23.63: scoped, accessible theme-result filters */
.theme-results-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0;align-items:end}.theme-results-filters label{display:grid;gap:.3rem;font-size:.85rem}.theme-results-filters select,.theme-results-filters input{width:100%;min-width:0;padding:.65rem;border:1px solid #a88b5580;border-radius:9px;background:var(--surface,#fffaf0);color:inherit;font:inherit}.theme-results-filters :is(select,input,button):focus-visible{outline:3px solid #8c642e;outline-offset:2px}.theme-results-empty:not([hidden]){padding:.8rem;border:1px dashed #a88b55;border-radius:9px;margin:.5rem 0}@media(max-width:520px){.theme-results-filters{grid-template-columns:1fr}}


/* ===== 09-layer.css — من المصدر ===== */

/* 23.64 A–D: conservative academic clarity and accessibility */
.note-provenance,.about-verification-status{font-size:14px;line-height:1.85;color:var(--muted);padding-block:10px}
.note-source-citation{display:block;margin-top:6px;color:var(--muted);font-size:12px}.note-source-citation a{text-decoration:underline;text-underline-offset:3px}
.note-integrity-note{padding:12px 16px;border-inline-start:3px solid var(--gold);background:var(--paper-soft);font-size:14px;line-height:1.9;margin:12px 0 17px}
.note-unlocated{display:block;margin-top:7px;color:var(--muted);font-size:13px}
.search-evidence{display:block;margin-top:8px;border-top:1px solid var(--line);padding-top:8px;color:var(--muted);font-size:13px;line-height:1.6}
.storage-warning{position:fixed;inset:auto 14px 92px 14px;z-index:250;max-width:620px;margin-inline:auto;border:2px solid var(--accent);background:var(--paper-strong);color:var(--ink);padding:12px 17px;font-size:15px;line-height:1.8;box-shadow:var(--shadow)}
.reader-intro{margin-block:12px;padding:6px 0 12px;border-top:1px solid var(--line)}
.reader-intro summary{cursor:pointer;list-style:auto;font-family:var(--display-font);font-size:24px;color:var(--accent);line-height:1.6}
.reader-intro summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.reader-intro .reader-intro-hint{font-family:var(--ui-font);font-size:13px;color:var(--muted)}
.reader-intro p{margin-top:9px}
@media(max-width:800px){.reader-intro summary{font-size:21px}.note-integrity-note,.storage-warning{font-size:14px}}
@media(prefers-reduced-motion:reduce){html,body{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* =======================================================
   نمط تراثي مطفأ — قابل للرجوع: إزالة heritage-flat من <html>
   لا تغيّر ألوان الديوان الأساسية، ولا خط الشعر أو بنيته.
   ======================================================= */
html.heritage-flat {
  --glass-bg: var(--paper-strong);
  --glass-bg-soft: var(--paper);
  --glass-bg-hover: var(--paper-soft);
  --glass-border: var(--line);
  --glass-highlight: transparent;
  --glass-shadow: none;
  --glass-shadow-soft: none;
  --glass-filter: none;
  --glass-radius: 9px;
}
html.heritage-flat body {
  background: var(--bg);
  background-attachment: scroll;
}
html.heritage-flat .topbar,
html.heritage-flat .mobile-nav,
html.heritage-flat .searchbox,
html.heritage-flat .library-toolbar,
html.heritage-flat .hero-side,
html.heritage-flat .poem-card,
html.heritage-flat .hub-card,
html.heritage-flat .index-card,
html.heritage-flat .stat-panel,
html.heritage-flat .source-grid > div,
html.heritage-flat .about-stats > div,
html.heritage-flat .entity-hit,
html.heritage-flat .lab-card,
html.heritage-flat .lab-panel,
html.heritage-flat .glass,
html.heritage-flat .glass-panel,
html.heritage-flat .settings-panel,
html.heritage-flat .overlay-card,
html.heritage-flat .drawer,
html.heritage-flat .selection-bar,
html.heritage-flat .constraint select,
html.heritage-flat .btn,
html.heritage-flat .reader-floating button,
html.heritage-flat .reader-quick .btn {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
}
html.heritage-flat .poem-card,
html.heritage-flat .hub-card,
html.heritage-flat .index-card,
html.heritage-flat .lab-card,
html.heritage-flat .lab-panel,
html.heritage-flat .library-toolbar,
html.heritage-flat .hero-side {
  background: var(--paper-strong);
  border-color: var(--line) !important;
  border-radius: 9px;
}
html.heritage-flat .poem-card:hover,
html.heritage-flat .hub-card:hover,
html.heritage-flat .index-card:hover,
html.heritage-flat .lab-card:hover,
html.heritage-flat .entity-hit:hover {
  transform: none;
  background: var(--paper-soft);
  box-shadow: none !important;
}
html.heritage-flat .reader-wrap .poem-sheet,
html.heritage-flat .reader-wrap .verse {
  background: transparent !important;
}
html.heritage-flat .lab-card::after {
  opacity: .24;
}
html.heritage-flat .index-note,
html.heritage-flat .poem-card .meta,
html.heritage-flat .source-item small {
  line-height: 1.8;
}
html.heritage-flat :is(button, a, input, select, textarea):focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}
@media (prefers-reduced-motion:reduce) {
  html.heritage-flat *, html.heritage-flat *::before, html.heritage-flat *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}

/* v23.65 — تنبيه تخزين مقتضب قابل للإغلاق، لا يحجب النص على الهاتف. */
.storage-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;
 position:fixed;inset:auto 14px calc(82px + env(safe-area-inset-bottom)) 14px;
 max-width:520px;margin-inline:auto;padding:9px 12px;border:1px solid var(--line-dark);
 border-radius:12px;box-shadow:0 6px 18px rgba(0,0,0,.12);font-size:12px;
 line-height:1.65;background:var(--paper-strong);color:var(--ink)}
.storage-warning button{flex:0 0 auto;border:1px solid var(--line-dark);border-radius:7px;
 background:var(--paper);font-size:12px;padding:3px 9px;min-height:32px}
@media(min-width:801px){.storage-warning{bottom:18px}}


