@font-face{font-family:"Noto Serif Gurmukhi";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-serif-gurmukhi-gurmukhi.woff2) format("woff2");unicode-range:U+0951-0952,U+0964-0965,U+0A01-0A76,U+200C-200D,U+20B9,U+25CC,U+262C,U+A830-A839}@font-face{font-family:"Noto Serif Gurmukhi";font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-serif-gurmukhi-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-ui: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-gu: "Noto Serif Gurmukhi", "Nirmala UI", "Gurmukhi MN", serif;--gu-size: 28px;--gu-lh: 1.9}:root,html[data-theme=paper]{color-scheme:light;--bg: #f7f1e6;--bg-outer: #e3d9c7;--paper: #fdf9f0;--ink: #2a2119;--ink-2: #56493b;--muted: #8c7d6c;--line: #e6dac6;--line-strong: #d2c1a7;--accent: #b65a1e;--accent-strong: #8f4414;--accent-soft: #f5e4d3;--green: #16342f;--green-2: #245045;--gold: #c99a48;--gold-soft: #f0dcae;--card: #fffaf1;--card-2: #f8efdf;--sheet: #fbf5e9;--tabbar: rgba(253, 249, 240, .94);--backdrop: rgba(30, 22, 14, .5);--mark: rgba(201, 154, 72, .38);--danger: #a83a2a;--shadow: 0 14px 44px rgba(64, 44, 22, .09);--shadow-sm: 0 2px 10px rgba(64, 44, 22, .05)}html[data-theme=sepia]{color-scheme:light;--bg: #efe2c8;--bg-outer: #d9c7a6;--paper: #f8eed8;--ink: #332615;--ink-2: #5c4a31;--muted: #8b7557;--line: #ddcaa8;--line-strong: #c8b089;--accent: #a4571d;--accent-strong: #7f4114;--accent-soft: #f0ddc0;--green: #1c3a32;--green-2: #2a5246;--gold: #b98a3e;--gold-soft: #ecd6a6;--card: #fbf2df;--card-2: #f2e5cd;--sheet: #f8eed8;--tabbar: rgba(248, 238, 216, .95);--backdrop: rgba(40, 29, 15, .5);--mark: rgba(185, 138, 62, .4);--shadow: 0 14px 44px rgba(72, 51, 24, .12);--shadow-sm: 0 2px 10px rgba(72, 51, 24, .06)}html[data-theme=night]{color-scheme:dark;--bg: #13110e;--bg-outer: #080706;--paper: #1b1814;--ink: #eee4d3;--ink-2: #cabca7;--muted: #95866e;--line: rgba(238, 228, 211, .11);--line-strong: rgba(238, 228, 211, .2);--accent: #e3a35d;--accent-strong: #f0bd7a;--accent-soft: rgba(227, 163, 93, .14);--green: #1d3d35;--green-2: #2a574a;--gold: #d6a955;--gold-soft: #3a2f1d;--card: #201c17;--card-2: #262119;--sheet: #1c1813;--tabbar: rgba(19, 17, 14, .95);--backdrop: rgba(0, 0, 0, .65);--mark: rgba(214, 169, 85, .28);--shadow: 0 16px 48px rgba(0, 0, 0, .5);--shadow-sm: 0 2px 10px rgba(0, 0, 0, .3)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--bg-outer);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea{font:inherit;color:inherit}button{border:0;background:none;padding:0;cursor:pointer}button:disabled{cursor:default}a{color:var(--accent);text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:2px}::selection{background:var(--mark)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,p{overflow-wrap:break-word}.app{position:relative;max-width:760px;min-height:100dvh;margin:0 auto;background:var(--bg);box-shadow:0 0 80px #1910081a}.icon-btn{width:42px;height:42px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-2);background:var(--card-2);border:1px solid var(--line);transition:background .18s ease,border-color .18s ease,color .18s ease}.icon-btn:hover{border-color:var(--line-strong)}.icon-btn.is-active{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 22%,transparent)}.icon-btn--plain{width:36px;height:36px;background:transparent;border-color:transparent}.icon-btn--small{width:34px;height:34px;border-radius:10px}.btn{min-height:50px;padding:0 18px;border-radius:15px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:650;letter-spacing:.01em;transition:transform .15s ease,background .18s ease,border-color .18s ease}.btn:active{transform:scale(.985)}.btn--primary{background:var(--green);color:#f7efdf;box-shadow:0 6px 18px #16342f33}html[data-theme=night] .btn--primary{background:var(--green-2)}.btn--gold{background:linear-gradient(135deg,#e9cd90,#cba052);color:#2c2110;box-shadow:0 8px 20px #0000002e}.btn--ghost{border-color:var(--line-strong);color:var(--ink-2);background:transparent}.btn--danger{background:var(--danger);color:#fff4ee}.btn--danger-ghost{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,transparent);background:transparent}.btn--outline-light{border-color:#f3e9d747;color:#f3e9d7;background:#ffffff0a}.btn--small{min-height:40px;padding:0 14px;border-radius:12px;font-size:13px}.btn--grow{flex:1}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}.screen{padding:0 16px calc(108px + env(safe-area-inset-bottom));animation:fadeIn .25s ease}.screen-header{padding:calc(24px + env(safe-area-inset-top)) 0 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.screen-header h1{margin:0 0 4px;font-family:var(--font-gu);font-size:27px;font-weight:600;letter-spacing:.005em}.screen-header p{margin:0;max-width:48ch;font-size:12.5px;line-height:1.55;color:var(--muted)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 2px 10px}.section-head h2{margin:0;font-size:11.5px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.section-count{font-size:11px;font-weight:700;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:999px}.text-btn{font-size:12px;font-weight:650;color:var(--accent);padding:4px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink-2);font-size:12.5px;font-weight:500;transition:border-color .18s ease,background .18s ease,color .18s ease}.chip:hover{border-color:var(--line-strong)}.chip.is-active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent)}.progress-track{height:4px;border-radius:999px;background:var(--line);overflow:hidden}.progress-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--accent));transition:width .35s ease}.status-pill{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 9px;border-radius:999px}.status-pill--ok{color:var(--green-2);background:color-mix(in srgb,var(--green) 12%,transparent)}html[data-theme=night] .status-pill--ok{color:#9fd0bc}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:30px 22px;border:1px dashed var(--line-strong);border-radius:18px;background:var(--card-2)}.empty-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);margin-bottom:12px}.empty-state h3{margin:0 0 6px;font-size:15px}.empty-state p{margin:0 0 14px;max-width:36ch;font-size:12.5px;line-height:1.55;color:var(--muted)}.tabbar{position:fixed;left:50%;bottom:0;transform:translate(-50%);z-index:40;width:100%;max-width:760px;display:grid;grid-template-columns:repeat(4,1fr);padding:6px 8px calc(6px + env(safe-area-inset-bottom));background:var(--tabbar);border-top:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 4px 5px;border-radius:14px;color:var(--muted);transition:color .18s ease}.tab.is-active{color:var(--accent)}.tab-icon{width:46px;height:26px;border-radius:999px;display:grid;place-items:center;transition:background .2s ease}.tab.is-active .tab-icon{background:var(--accent-soft)}.tab-label{font-size:10px;font-weight:600;letter-spacing:.02em}.reader-screen{padding-bottom:calc(152px + env(safe-area-inset-bottom))}.reader-header{position:sticky;top:0;z-index:30;padding:calc(10px + env(safe-area-inset-top)) 16px 9px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.reader-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;flex:0 0 auto;font-family:var(--font-gu);font-size:23px;line-height:1;color:#e8c87e;background:linear-gradient(145deg,#265044,#10241f);box-shadow:inset 0 0 0 1px #e8c87e59,0 4px 12px #10241f38;padding-bottom:2px}.brand-text{display:flex;flex-direction:column;min-width:0}.brand-text strong{font-size:14.5px;font-weight:700;letter-spacing:.01em;color:var(--ink)}.brand-text span{font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-actions{display:flex;gap:7px}.ang-strip{width:100%;display:flex;align-items:center;gap:10px;padding:9px 2px 0;font-size:11px;color:var(--muted)}.ang-strip-current{color:var(--ink-2);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.ang-strip .progress-track{flex:1;height:4px}.ang-strip-percent{font-variant-numeric:tabular-nums;min-width:40px;text-align:right}.reader-main{padding:14px 16px 0}.paper{position:relative;padding:20px 18px 16px;background:var(--paper);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;animation:pageIn .3s ease both}.paper[data-dir="-1"]{animation-name:pageInBack}.paper:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--gold),var(--accent),var(--gold),transparent);opacity:.55}.paper-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.paper-title{font-family:var(--font-gu);font-size:13px;color:var(--ink-2);letter-spacing:.015em}.paper-ang{font-family:var(--font-gu);font-size:13px;font-weight:600;color:var(--accent);white-space:nowrap}.paper-rule{height:1px;margin:7px 0 4px;background:linear-gradient(90deg,transparent,var(--line-strong),transparent)}.paper-raag{display:flex;flex-direction:column;align-items:center;gap:1px;padding:9px 0 1px;text-align:center}.paper-raag-gu{font-family:var(--font-gu);font-size:14px;font-weight:600;color:var(--accent)}.paper-raag-en{font-size:8.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.lines{padding-top:6px}.raag-divider{display:flex;align-items:center;gap:12px;margin:22px 0 12px}.raag-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line-strong))}.raag-line:last-child{background:linear-gradient(90deg,var(--line-strong),transparent)}.raag-text{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.raag-gu{font-family:var(--font-gu);font-size:1.08rem;font-weight:600;color:var(--accent)}.raag-en{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.line{position:relative;margin:0 -6px;padding:8px 10px;border-radius:12px;cursor:pointer;scroll-margin:130px 0 160px;transition:background .18s ease,box-shadow .18s ease}.line:hover{background:var(--card-2)}.line.is-selected{background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.line.is-flash{animation:lineFlash 2.6s ease}.gurmukhi{margin:0;font-family:var(--font-gu);font-size:var(--gu-size);font-weight:500;line-height:var(--gu-lh);letter-spacing:.003em;color:var(--ink);overflow-wrap:anywhere}.line--heading{padding:14px 10px 8px;text-align:center}.line--heading .gurmukhi{font-size:calc(var(--gu-size) * .78);font-weight:600;color:var(--accent)}.line--mangal{text-align:center}.line--mangal .gurmukhi{color:var(--accent);font-weight:600}.line-translit{margin:3px 0 0;font-size:clamp(11px,calc(var(--gu-size) * .42),16px);line-height:1.5;color:var(--muted);letter-spacing:.005em}.line-english{margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(12px,calc(var(--gu-size) * .45),17px);line-height:1.6;color:var(--ink-2)}.line-punjabi{margin:5px 0 0;font-family:var(--font-gu);font-size:clamp(12px,calc(var(--gu-size) * .47),17px);line-height:1.75;color:var(--ink-2)}.paper-foot{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:26px;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.paper-foot i{font-style:normal;opacity:.6;margin:0 3px}.foot-line{width:26px;height:1px;background:var(--line-strong)}.skeleton{padding:8px 0 4px}.skeleton-line{height:21px;margin:15px 0;border-radius:7px;background:linear-gradient(90deg,var(--line) 25%,var(--card-2) 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.4s linear infinite}.reader-error{padding:36px 10px;text-align:center;color:var(--muted);font-size:13px}.reader-error p{margin:0 0 14px}.path-end{display:flex;align-items:flex-start;gap:12px;margin-top:16px;padding:16px 18px;border-radius:18px;background:var(--card);border:1px solid var(--line);color:var(--accent)}.path-end strong{display:block;font-size:13.5px;color:var(--ink);margin-bottom:3px}.path-end p{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}.reader-nav{position:fixed;left:50%;bottom:calc(74px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:30;width:min(430px,calc(100vw - 28px));display:flex;align-items:center;gap:4px;padding:6px;border-radius:999px;background:color-mix(in srgb,var(--paper) 93%,transparent);border:1px solid var(--line);box-shadow:0 16px 40px #281a0c2b;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.reader-nav-btn{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;color:var(--ink-2);transition:background .18s ease}.reader-nav-btn:hover:not(:disabled){background:var(--card-2)}.reader-nav-btn:disabled{opacity:.28}.reader-nav-center{flex:1;height:46px;border-radius:999px;display:flex;align-items:baseline;justify-content:center;gap:6px;background:var(--accent-soft);color:var(--ink)}.reader-nav-label{font-size:8.5px;letter-spacing:.15em;color:var(--muted)}.reader-nav-center strong{font-size:19px;font-variant-numeric:tabular-nums;line-height:1}.reader-nav-total{font-size:10.5px;color:var(--muted)}.line-actions{position:fixed;left:50%;transform:translate(-50%);bottom:calc(150px + env(safe-area-inset-bottom));z-index:35;width:max-content;max-width:calc(100vw - 32px);display:flex;align-items:center;gap:2px;padding:6px;border-radius:999px;background:var(--green);color:#f7efdf;box-shadow:0 14px 34px #00000042;animation:rise .2s ease}.line-action{display:inline-flex;align-items:center;gap:6px;padding:9px 13px;border-radius:999px;font-size:12.5px;font-weight:600;color:#f7efdf}.line-action:hover{background:#ffffff14}.line-actions .icon-btn--plain{color:#f7efdf}.search-form{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow-sm)}.search-icon{display:flex;color:var(--muted)}.search-form input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:16px;color:var(--ink)}.search-form input::placeholder{color:var(--muted)}.search-form input::-webkit-search-cancel-button{display:none}.search-clear{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--muted);background:var(--card-2)}.search-examples{margin:12px 0 16px}.search-loading{display:flex;align-items:center;gap:14px;padding:18px;margin-top:12px}.search-loading strong{display:block;font-size:13.5px;margin-bottom:3px}.search-loading p{margin:0;font-size:11.5px;line-height:1.5;color:var(--muted)}.spinner{width:22px;height:22px;flex:0 0 auto;border-radius:50%;border:2px solid var(--line);border-top-color:var(--accent);animation:spin .9s linear infinite}.search-error{display:flex;gap:12px;padding:18px;margin-top:12px;color:var(--accent)}.search-error strong{color:var(--ink);display:block;font-size:13.5px;margin-bottom:3px}.search-error p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.5}.search-intro{display:flex;gap:14px;padding:18px;margin-top:6px}.intro-mark{font-family:var(--font-gu);font-size:44px;line-height:1;color:var(--accent);opacity:.9;padding-top:2px}.search-intro h2{margin:0 0 6px;font-family:var(--font-gu);font-size:18px;font-weight:600}.search-intro p{margin:0 0 8px;font-size:12.5px;line-height:1.6;color:var(--ink-2)}.search-intro p.intro-note{margin:0;font-size:11.5px;color:var(--muted)}.search-intro em{font-style:normal;font-weight:600;color:var(--accent)}.search-section{margin-top:18px}.search-hint{padding:20px 4px;font-size:12.5px;color:var(--muted)}.results{margin-top:4px}.results-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 2px 10px;font-size:11.5px;color:var(--muted)}.results-mode{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);padding:3px 8px;border-radius:999px}.result-list{display:flex;flex-direction:column;gap:10px}.result{width:100%;display:block;text-align:left;padding:13px 14px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow-sm);transition:transform .15s ease,border-color .18s ease,box-shadow .18s ease}.result:hover{transform:translateY(-1px);border-color:var(--line-strong);box-shadow:var(--shadow)}.result-meta{display:flex;align-items:center;gap:8px;margin-bottom:7px}.ang-chip{font-size:10.5px;font-weight:700;letter-spacing:.02em;color:var(--accent);background:var(--accent-soft);padding:3px 8px;border-radius:999px}.result-raag{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.result-arrow{display:flex;margin-left:auto;color:var(--muted);opacity:.7}.result-gurmukhi{margin:0 0 2px;font-family:var(--font-gu);font-size:20px;line-height:1.85;color:var(--ink)}.result-translit{margin:0;font-size:11.5px;line-height:1.5;color:var(--muted)}mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 1px;font-weight:600}.load-more{width:100%;margin-top:14px}.results-footnote{margin:12px 0 0;text-align:center;font-size:11px;color:var(--muted)}.path-card{position:relative;overflow:hidden;padding:20px;border-radius:22px;border:1px solid rgba(226,189,114,.24);background:linear-gradient(140deg,#1e463c,#123028 58%,#0e241f);color:#f3e9d7;box-shadow:0 18px 44px #10241f47}.path-glow{position:absolute;inset:-30% -20% auto auto;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(226,189,114,.3),transparent 62%);pointer-events:none}.path-top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px}.eyebrow{font-size:9.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d8c39a}.path-date{font-size:10px;color:#f3e9d799}.path-main{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 4px}.path-ang{display:flex;align-items:baseline;gap:8px}.path-ang strong{font-family:var(--font-gu);font-size:40px;line-height:1;font-weight:600;color:#f8efdd;font-variant-numeric:tabular-nums}.path-ang span{font-size:11px;color:#f3e9d799}.path-sub{margin:4px 0 10px;font-size:11.5px;color:#d8c39a}.path-progress-track{height:6px;border-radius:999px;background:#ffffff21;overflow:hidden}.path-progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#cba052,#f3dfae);transition:width .35s ease}.path-metrics{display:flex;justify-content:space-between;gap:10px;margin-top:6px;font-size:10px;color:#f3e9d7a6}.ring{flex:0 0 auto}.ring-track{fill:none;stroke:#ffffff21;stroke-width:6}.ring-fill{fill:none;stroke:#e2bd72;stroke-width:6;stroke-linecap:round;transition:stroke-dasharray .4s ease}.ring-text{fill:#f3e9d7;font-size:16px;font-weight:650;font-family:var(--font-ui)}.path-actions{position:relative;display:flex;gap:8px;margin-top:18px}.path-actions .btn--gold{flex:1}.bookmark-list{display:flex;flex-direction:column;gap:8px}.bookmark-row{display:flex;align-items:stretch;gap:4px;padding-right:6px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow-sm)}.bookmark-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:9px 6px 9px 10px;border-radius:14px;text-align:left}.bookmark-ang{flex:0 0 auto;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-family:var(--font-gu);font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}.bookmark-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bookmark-info strong{font-size:13.5px;font-weight:650;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookmark-meta{font-size:10.5px;color:var(--muted)}.bookmark-note{font-style:normal;font-size:11.5px;line-height:1.4;color:var(--ink-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bookmark-actions{display:flex;flex-direction:column;justify-content:center;gap:2px}.history-strip{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.history-strip::-webkit-scrollbar{display:none}.history-card{flex:0 0 auto;min-width:122px;scroll-snap-align:start;display:flex;flex-direction:column;gap:3px;padding:11px 13px;text-align:left;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm)}.history-ang{font-size:13px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.history-raag{font-size:10.5px;color:var(--ink-2);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-time{font-size:9.5px;color:var(--muted)}.privacy-note{display:flex;align-items:center;justify-content:center;gap:6px;margin:26px 0 6px;font-size:10.5px;color:var(--muted);text-align:center}.more-section{margin-top:6px}.settings-card{padding:0 18px}.setting-block{padding:16px 0;border-bottom:1px solid var(--line)}.setting-block:last-child{border-bottom:0}.setting-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;font-weight:600;color:var(--ink-2)}.setting-value{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}input[type=range]{width:100%;height:24px;margin:0;accent-color:var(--accent);cursor:pointer}.font-preview{margin-top:10px;padding:12px 14px;border:1px dashed var(--line-strong);border-radius:12px;background:var(--card-2);font-family:var(--font-gu);text-align:center;color:var(--ink);line-height:1.6;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.theme-swatch{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 6px;border:1px solid transparent;border-radius:12px;font-size:11px;color:var(--muted)}.theme-swatch.is-active{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft);color:var(--accent)}.swatch{position:relative;width:100%;height:44px;border-radius:9px;overflow:hidden;padding:11px 10px;display:flex;flex-direction:column;gap:4px;border:1px solid rgba(0,0,0,.1)}.swatch-dot{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%}.swatch-line{width:64%;height:2px;border-radius:2px;opacity:.45}.swatch-line.short{width:42%}.setting-list{padding:2px 0}.toggle-row{width:100%;display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line);text-align:left}.toggle-row:last-child{border-bottom:0}.toggle-row:disabled{opacity:.45}.toggle-copy{flex:1;display:flex;flex-direction:column;gap:2px}.toggle-label{font-size:13px;font-weight:600;color:var(--ink-2)}.toggle-desc{font-size:10.5px;line-height:1.4;color:var(--muted)}.switch{position:relative;flex:0 0 auto;width:46px;height:27px;border-radius:999px;background:var(--line-strong);transition:background .2s ease}.switch.is-on{background:var(--green-2)}.switch-knob{position:absolute;top:3px;left:3px;width:21px;height:21px;border-radius:50%;background:#fffdf8;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.switch.is-on .switch-knob{transform:translate(19px)}.settings-panel--sheet .setting-block{padding:14px 0}.offline-card{display:flex;gap:13px;padding:16px}.row-icon{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.offline-copy{min-width:0;flex:1}.offline-copy strong{display:block;font-size:13.5px;color:var(--ink);margin-bottom:4px}.offline-copy p{margin:0;font-size:11.5px;line-height:1.55;color:var(--muted)}.cache-meter{display:flex;align-items:center;gap:8px;margin-top:9px;font-size:10px;color:var(--muted)}.cache-meter .progress-track{flex:1}.download-progress{margin-top:10px;padding:14px}.download-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--ink-2)}.download-meta{display:flex;justify-content:space-between;gap:10px;margin-top:8px;font-size:10.5px;color:var(--muted)}.stack-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.stack-actions .btn{flex:1}.hint-line{margin:8px 2px 0;font-size:10.5px;line-height:1.55;color:var(--muted)}.install-card{display:flex;gap:13px;padding:16px}.install-icon{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--card-2);color:var(--ink-2)}.install-card strong{display:block;font-size:13.5px;margin-bottom:4px}.install-card p{margin:0;font-size:11.5px;line-height:1.55;color:var(--muted)}.install-card em{font-style:normal;font-weight:600;color:var(--ink-2)}.install-button{margin-top:9px}.list-card{padding:0 16px}.list-row{width:100%;display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);text-align:left}.list-row:last-child{border-bottom:0}.list-row:disabled{opacity:.45}.list-row>svg{color:var(--muted)}.list-icon{flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--card-2);color:var(--accent)}.list-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.list-copy strong{font-size:13px;font-weight:600;color:var(--ink-2)}.list-copy span{font-size:10.5px;color:var(--muted)}.about-card{padding:18px}.about-brand{display:flex;align-items:center;gap:11px;margin-bottom:13px}.about-mark{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-family:var(--font-gu);font-size:27px;color:#e8c87e;background:linear-gradient(145deg,#265044,#10241f);padding-bottom:2px}.about-brand strong{display:block;font-size:15px;color:var(--ink)}.about-brand span{font-size:10.5px;color:var(--muted)}.about-card p{margin:0 0 10px;font-size:12px;line-height:1.65;color:var(--ink-2)}.about-card p:last-child{margin-bottom:0}.about-disclaimer{padding:10px 12px;border-radius:10px;background:var(--accent-soft);font-size:11.5px!important;color:var(--ink-2)}.about-privacy{font-size:10.5px!important;color:var(--muted)!important}.about-footer{padding:28px 0 4px;text-align:center;color:var(--muted)}.about-footer span{font-family:var(--font-gu);font-size:25px;color:var(--accent);opacity:.65}.about-footer p{margin:2px 0 0;font-size:10px;letter-spacing:.05em}.sheet-backdrop{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-end;justify-content:center;background:var(--backdrop);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .18s ease}.sheet{width:100%;max-width:760px;max-height:88dvh;display:flex;flex-direction:column;padding:8px 18px calc(16px + env(safe-area-inset-bottom));background:var(--sheet);border-radius:24px 24px 0 0;box-shadow:0 -18px 60px #00000047;animation:sheetUp .26s cubic-bezier(.2,.8,.2,1)}.sheet--tall{max-height:92dvh}.sheet-grab{flex:0 0 auto;width:38px;height:4px;margin:2px auto 8px;border-radius:999px;background:var(--line-strong)}.sheet-header{flex:0 0 auto;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:4px 2px 12px}.sheet-header h2{margin:0;font-family:var(--font-gu);font-size:21px;font-weight:600}.sheet-header p{margin:3px 0 0;font-size:11.5px;color:var(--muted)}.sheet-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2px 2px 10px}.sheet-footer{flex:0 0 auto;display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--line)}.sheet-copy{margin:4px 2px 10px;font-size:13px;line-height:1.6;color:var(--ink-2)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field>span{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.field>span em{font-style:normal;font-weight:400;letter-spacing:0;text-transform:none;opacity:.8}.field input,.field textarea{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font-size:16px;font-family:var(--font-ui);outline:none;resize:vertical}.field input:focus,.field textarea:focus{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 13%,transparent)}.sheet-body .chip-row{margin:-2px 0 14px}.bookmark-context{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 2px 0;font-size:10.5px;color:var(--muted)}.context-ang{font-family:var(--font-gu);font-size:16px;color:var(--accent)}.jump-form .jump-input{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 14px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.jump-input>span{font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.jump-input input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:24px;font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink)}.jump-meter{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:10.5px;color:var(--muted)}.jump-meter .progress-track{flex:1}.jump-quick{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 18px}.contents-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 2px 8px;border-top:1px solid var(--line);font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.contents-current{font-size:10px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--accent)}.contents-list{display:flex;flex-direction:column;gap:2px}.contents-item{display:grid;grid-template-columns:1fr auto;gap:1px 12px;padding:10px 12px;border-radius:12px;text-align:left}.contents-item:hover{background:var(--card-2)}.contents-gu{font-family:var(--font-gu);font-size:16px;color:var(--ink)}.contents-en{grid-column:1;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.contents-pages{grid-column:2;grid-row:1 / span 2;align-self:center;font-family:var(--font-gu);font-size:12px;color:var(--muted)}.contents-item.is-active{background:var(--accent-soft)}.contents-item.is-active .contents-gu{color:var(--accent)}.contents-loading{padding:24px;text-align:center;font-size:12px;color:var(--muted)}.toast{position:fixed;left:50%;bottom:calc(94px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:220;display:flex;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:12px 16px;border-radius:14px;background:var(--green);color:#f6ecd9;font-size:12.5px;box-shadow:0 16px 40px #00000042;animation:toastIn .22s ease}.toast-action{flex:0 0 auto;font-size:12px;font-weight:700;color:#e8c87e}@keyframes pageIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}@keyframes pageInBack{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheetUp{0%{transform:translateY(28px);opacity:.6}to{transform:none;opacity:1}}@keyframes rise{0%{transform:translate(-50%,8px);opacity:0}to{transform:translate(-50%);opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes lineFlash{0%,to{background:transparent;box-shadow:none}12%,70%{background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}}@media(min-width:900px){body{padding:22px 0}.app{min-height:calc(100dvh - 44px);border-radius:30px;overflow:hidden;border:1px solid rgba(0,0,0,.06)}.tabbar{bottom:22px;border-radius:0 0 30px 30px}.sheet{border-radius:24px;margin-bottom:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
