:root{--ink: #2b1d14;--paper: #f6ecd9;--paper-2: #efe0c3;--accent: #b5342b;--accent-2: #1f6f6b;--gold: #d9a441;--muted: #7a6656}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#1a120c;color:var(--ink);font-family:Fraunces,Georgia,serif}#scene{display:block;width:100vw;height:100vh}.shahmukhi{font-family:Noto Nastaliq Urdu,serif;line-height:2.2}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:16px;background:#1a120c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10}.overlay[hidden]{display:none}.card{background:var(--paper);border-radius:14px;box-shadow:0 20px 60px #00000073;border:3px solid var(--gold);outline:6px solid var(--accent);outline-offset:-12px}.welcome-card{max-width:520px;width:100%;padding:36px 32px 28px;text-align:center}.welcome-card h1{font-size:clamp(2.2rem,7vw,3.4rem);margin:0;color:var(--accent)}.subtitle{font-size:1.3rem;margin:0 0 8px;letter-spacing:.04em}.tagline{margin:0 0 22px;color:var(--muted)}.small{font-size:.85rem;color:var(--muted);margin:16px 0 0}#pause{cursor:pointer;background:#1a120c59}.pause-card{padding:20px 28px;text-align:center;cursor:default}.pause-title{margin:0 0 12px;font-size:1.15rem}.buttons{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}button{font:inherit;cursor:pointer;border-radius:999px;padding:10px 20px;border:2px solid var(--ink);background:transparent;color:var(--ink)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button:hover{filter:brightness(1.08)}button:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px 8px}.panel-header h2{margin:0}.close{border:none;font-size:1.8rem;line-height:1;padding:4px 10px}.link-btn{border:none;padding:0;background:none;border-radius:0;color:var(--accent-2);text-decoration:underline;font:inherit;cursor:pointer}.panel-header .link-btn{font-size:.85rem}.pause-card .buttons{margin-top:4px}.about-card{width:min(760px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding-bottom:16px}.about-card h2.shahmukhi{font-size:1.8rem;color:var(--accent);margin:0;text-align:left}.about-card .subtitle{margin:0;font-size:1rem;color:var(--muted)}.about-body{padding:4px 28px 8px;line-height:1.6}.about-body h3{color:var(--accent-2);margin:20px 0 6px}.about-body p{margin:0 0 8px}.about-body ul{margin:0 0 8px;padding-left:20px}.about-body a{color:var(--accent-2)}.about-body .lead{font-size:1.08rem}.about-body .lead .shahmukhi{display:block;font-size:1.5rem;color:var(--accent);text-align:right;line-height:2}@media (max-width: 600px){.about-body{padding:4px 16px 8px}}.list-card{width:min(900px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding-bottom:20px}.search-wrap{margin:0 14px;padding:4px 6px 0;position:sticky;top:0;background:var(--paper);z-index:1}#search{width:100%;font:inherit;font-size:1.05rem;padding:10px 16px;border-radius:999px;border:2px solid var(--paper-2);background:#fffaf0;color:var(--ink);unicode-bidi:plaintext}#search:focus{outline:none;border-color:var(--accent-2)}#search-count{margin:6px 4px 0;min-height:1.2em;font-size:.85rem;color:var(--muted)}#no-results{padding:8px 20px;color:var(--muted)}#no-results .shahmukhi{line-height:1.6}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.room-block{padding:8px 20px 4px}.room-block h3{margin:12px 0 10px;color:var(--accent-2)}.room-block h3 .shahmukhi{font-weight:400;margin-left:12px}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.book-tile{text-align:right;border-radius:8px;border:2px solid var(--paper-2);background:#fffaf0;padding:10px 12px}.book-tile:hover{border-color:var(--gold)}.book-tile .shahmukhi{display:block;font-size:1.15rem}.book-tile .en{display:block;text-align:left;font-size:.85rem;color:var(--muted)}.reader-card{width:min(1100px,100%);height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden;outline:none}#reader-title-sm{font-size:1.6rem;margin:0}#reader-meta{margin:0;color:var(--muted)}.reader-body{position:relative;flex:1;display:flex}#reader-frame{flex:1;width:100%;border:0;background:#222}#reader-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);transition:opacity .35s ease}#reader-loading.done{opacity:0;pointer-events:none}#reader-loading p{margin:0}#reader-loading .shahmukhi{font-size:1.5rem;color:var(--accent)}#reader-loading .en{color:var(--muted)}.loader-star{width:84px;height:84px;margin-bottom:6px;animation:spin 2.4s linear infinite}.loader-star polygon{fill:var(--gold)}.loader-star .inner{fill:var(--accent);animation:pulse 1.2s ease-in-out infinite;transform-origin:50% 50%}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(.7);fill:var(--accent-2)}}@media (prefers-reduced-motion: reduce){.loader-star,.loader-star .inner{animation-duration:6s}}#reader-footer{padding:8px 20px 12px;font-size:.85rem;color:var(--muted)}#reader-footer a{color:var(--accent-2)}#crosshair{position:fixed;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border:2px solid rgba(255,255,255,.85);border-radius:50%;pointer-events:none;z-index:5}#hover-label{position:fixed;left:50%;top:calc(50% + 24px);transform:translate(-50%);background:#1a120ccc;color:var(--paper);padding:6px 14px;border-radius:8px;pointer-events:none;z-index:5;text-align:center}#hover-label .shahmukhi{font-size:1.2rem;display:block;line-height:2}#hint{position:fixed;bottom:16px;left:50%;transform:translate(-50%);color:#f6ecd9d9;font-size:.85rem;background:#1a120c8c;padding:6px 12px;border-radius:999px;pointer-events:none;z-index:5}[hidden]{display:none!important}@media (max-width: 600px){.welcome-card{padding:28px 16px 20px}.panel-header{padding:12px 14px 6px}.room-block{padding:6px 14px 4px}}
