:root{--wall:#e6eefb;--plate:#fffdf8;--ink:#0d1c2e;--ink-soft:#55657c;--line:#dbe2ea;--navy:#0b3a8c;--navy-deep:#062a63;--gold:#f2c230;--gold-light:#ffe27a;--gold-deep:#b8870b;--ruby:#bd2a40;--emerald:#16a34a;--green:#16a34a;--green-soft:#e4f4ec;--sky:#2b8fd0;--blue:#2b8fd0;--amber:#f0a81e;--red:#bd2a40;--slot:28px;--font-title:"El Messiri","Amiri",serif;--font-ui:"IBM Plex Sans Arabic","Cairo",system-ui,sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{min-height:100%}html{-webkit-text-size-adjust:100%;touch-action:manipulation;background:var(--wall)}body{font-family:var(--font-ui);color:var(--ink);background:var(--wall) linear-gradient(180deg,#d6e3f8,var(--wall) 460px) no-repeat;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:contain;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.app{flex-direction:column;min-height:100dvh;display:flex}.page{width:100%;max-width:920px;margin:0 auto;padding:18px 16px 40px}.sheet{background:var(--plate);border:1px solid #102a4614;border-radius:22px;padding:26px;position:relative;box-shadow:inset 0 1px #fff,0 24px 48px -28px #08152359}.no-select{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #2b8fd08c}.cover{text-align:center;color:#f4ead2;isolation:isolate;background:radial-gradient(110% 80% at 100% 0,#f5c23042,#0000 55%),radial-gradient(90% 80% at 0 100%,#22c55e66,#0000 60%),linear-gradient(155deg,#1555c0,#0b3a8c 55%,#062a66);border-radius:28px;flex-direction:column;align-items:center;margin:8px 0 12px;padding:34px 24px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #f5c23080,0 30px 60px -30px #07121fd9}.cover:before{content:"";z-index:-1;background-image:radial-gradient(#ffffff14 1px,#0000 1.5px);background-size:20px 20px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 80%);mask-image:radial-gradient(#000 30%,#0000 80%)}.cover:after{content:"";pointer-events:none;border:1px solid #f5c2304d;border-radius:20px;position:absolute;inset:10px}.cover-book{border-radius:4px 10px 10px 4px;width:132px;height:auto;position:static;transform:perspective(800px)rotateY(-14deg)rotate(2deg);box-shadow:0 28px 36px -16px #000000b3,0 0 0 1px #ffffff24}.cover .avatar{box-shadow:0 0 0 3px var(--gold),0 12px 22px -8px #0009;background:#fffaf0;border-radius:50%;margin:-34px 0 0 -150px;padding:6px}.cover-kicker{color:var(--gold-light);border:1px solid #f5c23080;border-radius:999px;order:5;margin:18px 0 0;padding:3px 16px;font-size:14px;font-weight:600}.cover h1{font-family:var(--font-title);background:linear-gradient(#fff6c8,#ffe27a 38%,#f2c230 72%,#b8870b);color:#0000;filter:drop-shadow(0 4px 12px #00000059);-webkit-background-clip:text;background-clip:text;margin:6px 0 0;padding-block:.05em;font-size:84px;font-weight:700;line-height:1.1}.cover p{color:#f4ead2d9;margin:4px 0 0}.cover .unit-badge{display:none}.ornament{background:linear-gradient(90deg,transparent,var(--gold),transparent);width:120px;height:1px;margin:14px auto 0}.unit2-banner{box-shadow:none;color:var(--navy);text-align:center;background:0 0;justify-content:center;align-items:center;gap:16px;margin:40px 0 16px;padding:0;display:flex}.unit2-banner:before,.unit2-banner:after{content:"";flex:1;height:1px}.unit2-banner:before{background:linear-gradient(90deg,var(--gold),transparent)}.unit2-banner:after{background:linear-gradient(270deg,var(--gold),transparent)}.unit2-icon{display:none}.unit2-title{font-family:var(--font-title);font-size:26px;font-weight:700}.unit2-sub{color:var(--ink-soft);opacity:1;font-size:14px}.part{margin:18px 0 0;padding:10px 12px 12px}.section-title{font-family:var(--font-title);color:var(--navy);align-items:center;gap:14px;margin:0;padding:10px 6px 12px;font-size:24px;font-weight:700;line-height:1.2;display:flex}.section-title:before{display:none}.part-icon{background:linear-gradient(160deg,#1d63d8,#0e3f94);border-radius:14px;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid;box-shadow:inset 0 0 0 1px #f5c230a6}.toc{margin:0;padding:0;list-style:none}.toc>li+li{border-top:1px solid var(--line)}.toc-row{border-radius:14px;align-items:center;gap:14px;padding:14px 12px;transition:background .18s;display:flex;position:relative}.toc-row:hover{background:#f3f6f9}.toc-row:before{content:"";background:var(--gold);opacity:0;border-radius:3px;width:3px;transition:opacity .18s;position:absolute;inset-block:12px;inset-inline-start:0}.toc-row:hover:before{opacity:1}.toc-row>span[aria-hidden]{color:var(--gold-deep);font-size:22px}.toc-num{width:36px;height:36px;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--gold);background:#fff;border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.toc-title{flex:1;min-width:0;font-size:17px;font-weight:700;line-height:1.35}.toc-title small{color:var(--ink-soft);font-size:13px;font-weight:400;display:block}.toc-meta{text-align:center;color:var(--ink-soft);font-variant-numeric:tabular-nums;flex:none;font-size:13px}.soon{text-align:center;color:var(--ink-soft);background:#f3f6f9;border-radius:14px;margin:6px 0 0;padding:18px}.back-link{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:999px;align-items:center;gap:6px;margin-bottom:14px;padding:5px 16px;font-size:14px;font-weight:600;display:inline-flex}.chapter{align-items:center;gap:12px;margin:0 0 6px;display:flex}.chapter-mark{background:linear-gradient(180deg,var(--gold-light),var(--gold-deep));border-radius:3px;flex:none;width:5px;height:34px}.chapter h1{font-family:var(--font-title);color:var(--navy);flex:1;margin:0;font-size:30px;font-weight:700;line-height:1.25}.chapter-count{background:var(--navy);color:var(--gold-light);font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 14px;font-size:16px;font-weight:700}.sub-hint{color:var(--ink-soft);margin:0 0 14px;font-size:15px}.toc-row--split{border:1px solid var(--line);background:#fff;border-radius:18px;flex-wrap:wrap;margin:10px 0;padding:12px}.toc>li+li:has(.toc-row--split){border-top:0}.toc-row--split:hover{border-color:#f5c230b3;box-shadow:0 14px 28px -20px #08152380}.toc-row--split:before{display:none}.toc-thumb{width:104px;height:74px;box-shadow:inset 0 0 0 1px var(--line);background:#fff;border-radius:12px;flex:none;place-items:center;padding:4px;display:grid}.toc-thumb img{object-fit:contain;max-width:100%;max-height:100%}.toc-modes{gap:8px;margin-inline-start:auto;display:flex}.mode-btn{border:1.5px solid var(--navy);color:var(--navy);background:#fff;border-radius:12px;padding:7px 16px;font-size:14.5px;font-weight:700;transition:background .15s,color .15s}.mode-btn:hover{background:var(--navy);color:#f6ecd0}.toc-typed{color:var(--ink-soft);font-size:12px}.stars{letter-spacing:2px;line-height:1}.star{color:#d3dae3}.star--on{color:#e6a817;text-shadow:0 1px #96640059}.hdr{z-index:30;background:linear-gradient(#0f45a3,#0a2f73);border-bottom:1px solid #f5c23099;position:sticky;top:0;box-shadow:0 10px 24px -14px #050f1eb3}.hdr-inner{align-items:center;gap:10px;max-width:920px;margin:0 auto;padding:8px 14px;display:flex}.back-btn{color:#f6ecd0;background:#ffffff14;border:1px solid #ffffff40;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:19px;font-weight:700;display:grid}.avatar{flex:none}.bubble{color:#0b2a63;background:#fffaf0;border-radius:14px;flex:1;min-width:0;margin:0;padding:8px 14px;font-size:14.5px;font-weight:600;line-height:1.45;position:relative}.bubble:before{content:"";background:#fffaf0;border-radius:2px;width:12px;height:12px;position:absolute;top:50%;right:-5px;transform:translateY(-50%)rotate(45deg)}.hdr-actions{flex-direction:column;flex:none;gap:5px;display:flex}.pill-btn{color:#f6ecd0;font-variant-numeric:tabular-nums;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff47;border-radius:999px;padding:2px 12px;font-size:13px;font-weight:600}.pill-btn--off{opacity:.55}.pill-btn--hint{color:var(--navy-deep);background:linear-gradient(#ffe27a,#f2c230);border-color:#0000;font-weight:700}.pill-btn--hint.is-urgent{animation:.9s ease-in-out infinite pulse}@keyframes pulse{50%{transform:scale(1.1)}}.mode-switch{box-shadow:inset 0 0 0 1px var(--line);background:#eaeff4;border-radius:14px;gap:4px;margin:4px 0 10px;padding:4px;display:inline-flex}.mode-switch button{color:var(--ink-soft);background:0 0;border:0;border-radius:10px;padding:6px 18px;font-size:14.5px;font-weight:700}.mode-switch button.is-on{background:var(--navy);color:#f6ecd0;box-shadow:0 6px 14px -8px #081523b3}.progress{background:#e6ebf1;border-radius:999px;height:8px;margin-bottom:20px;overflow:hidden}.progress>i{background:linear-gradient(90deg,#12805a,#3cc58f);border-radius:999px;height:100%;transition:width .5s;display:block}.figure{margin:0}.figure figcaption{display:none}.board{-webkit-user-select:none;user-select:none;contain:layout style;box-shadow:0 0 0 1px var(--line),0 0 0 7px #fbf7ec,0 0 0 8px #f5c23099,0 24px 40px -28px #08152380;background:#fff;border-radius:12px;margin:0 auto;position:relative;container-type:inline-size}.board img{object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.slot{width:0;height:0;position:absolute}.slot-hit{left:calc(var(--slot)/-2);top:calc(var(--slot)/-2);width:var(--slot);height:var(--slot);cursor:default;position:absolute}.slot-hit:before{content:"";border-radius:50%;position:absolute;inset:-9px}.slot-ring{border:2px solid var(--ruby);background:#fffffff5;border-radius:50%;transition:transform .15s,background .15s,border-color .15s;position:absolute;inset:0;box-shadow:0 0 0 3px #bd2a4029,0 3px 8px #08152347}.slot-ring:after{content:"";background:var(--ruby);border-radius:50%;position:absolute;inset:32%}.slot.is-over .slot-ring{border-color:var(--sky);background:#e8f5fd;transform:scale(1.35);box-shadow:0 0 0 5px #2b8fd040}.slot.is-over .slot-ring:after{background:var(--sky)}.slot.is-hint .slot-ring{border-color:var(--amber);background:#fff4cf}.slot.is-hint .slot-ring:after{background:var(--amber)}.slot.is-wrong .slot-ring{background:#ffe1e5}.slot-ping{background:#f0a81e80;border-radius:50%;animation:1s cubic-bezier(0,0,.2,1) infinite ping;position:absolute;inset:-7px}@keyframes ping{75%,to{opacity:0;transform:scale(1.8)}}.slot-ring--num{color:#0b2a63;cursor:pointer;place-items:center;font-size:13px;font-weight:800;line-height:1;display:grid}.slot-ring--num:after{display:none}.slot.is-armed .slot-ring{border-color:var(--sky);cursor:pointer;animation:.9s ease-in-out infinite armed-pulse}.slot.is-armed .slot-ring:after{background:var(--sky)}@keyframes armed-pulse{50%{transform:scale(1.18)}}.slot-pos{pointer-events:none;width:max-content;transition:translate .3s;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.slot-pos.is-start{transform:translate(-14px,-50%)}.slot-pos.is-end{transform:translate(calc(14px - 100%),-50%)}.slot-label{white-space:nowrap;color:#fff;font-weight:700;line-height:1.35;font-size:calc(clamp(9px,2.1cqw,16px)*var(--ls,1)*var(--fit,1));background:linear-gradient(#1b9d52,#0f7a3b);border:1.5px solid #fff;border-radius:999px;align-items:center;gap:5px;padding:2px 10px 2px 5px;display:inline-flex;position:relative;box-shadow:0 0 0 1.5px #0c6430,0 6px 12px -5px #06281499}.slot-label:before{content:"";background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f7a3b' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 12.5l4.2 4.2L18.5 8'/%3E%3C/svg%3E") 50%/74% no-repeat;border-radius:50%;flex:none;width:clamp(11px,2.2cqw,18px);height:clamp(11px,2.2cqw,18px)}.slot-label.is-wide{white-space:normal;text-align:center;font-size:calc(clamp(8px,1.45cqw,14px)*var(--ls,1)*var(--fit,1));border-radius:12px;padding:3px 6px;line-height:1.35;display:block}.slot-label.is-wide:before{display:none}.leaders{z-index:15;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.leaders line{stroke:#0f7a3b;stroke-width:1.6px;stroke-linecap:round}.leaders circle{fill:#0f7a3b;stroke:#fff;stroke-width:1.2px}.leaders .ring-leader line{stroke:var(--ruby);stroke-width:1.5px}.leaders .ring-leader circle{fill:var(--ruby);stroke:#fff;stroke-width:1px}.calib{z-index:60;color:#fff;background:#000000d1;border-radius:6px;padding:4px 12px;font-family:monospace;font-size:14px;position:fixed;bottom:120px;left:12px}.tray{z-index:25;padding-bottom:max(10px,env(safe-area-inset-bottom));background:linear-gradient(#0f45a3,#06285f);border-top:1px solid #f5c23099;margin-top:auto;position:sticky;bottom:0;box-shadow:0 -14px 28px -16px #050f1eb3}.tray-inner{max-width:920px;margin:0 auto;padding:10px 14px 4px}.tray-head{color:#f4ead2d9;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13.5px;font-weight:600;display:flex}.tray-head b{background:var(--gold);min-width:28px;color:var(--navy-deep);text-align:center;border-radius:999px;padding:0 9px}.tray-list{flex-wrap:wrap;justify-content:center;gap:10px;max-height:31vh;padding:4px 2px 8px;display:flex;overflow-y:auto}.tray-done{color:var(--gold-light);margin:6px 0;font-weight:700}.chip-drag{cursor:grab;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.chip-drag:active{cursor:grabbing}.chip{border:1px solid #e3d6b2;border-bottom:4px solid var(--gold);color:#0b2a63;-webkit-user-select:none;user-select:none;background:linear-gradient(#fffdf7,#f6efde);border-radius:12px;padding:7px 18px;font-size:17px;font-weight:700;line-height:1.3;display:inline-block;box-shadow:0 8px 14px -8px #0009}.chip--hint{border-color:var(--amber);box-shadow:0 0 0 4px #f0a81e8c}.chip--lifted{border-color:var(--sky);border-bottom-color:var(--sky);transform:scale(1.1)rotate(-2deg);box-shadow:0 18px 26px -10px #0009}.chip--selected{border-color:var(--sky);border-bottom-color:var(--sky);background:#e8f5fd;transform:translateY(-3px)}.type-panel{border:1px solid var(--line);background:#f6f8fb;border-radius:18px;margin-top:22px;padding:18px}.type-head{color:var(--ink-soft);margin:0 0 14px;font-size:14px;line-height:1.7}.type-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px 16px;margin:0;padding:0;list-style:none;display:grid}.type-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.type-num{background:var(--navy);color:#f6ecd0;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:13px;font-weight:700;display:grid}.type-row.is-active .type-num{background:var(--gold);color:var(--navy-deep)}.type-row.is-done .type-num{background:var(--emerald);color:#fff}.type-field{flex:1;position:relative}.type-field input{width:100%;color:var(--ink);background:#fff;border:1.5px solid #cfd8e3;border-radius:12px;padding:8px 40px 8px 12px;font-family:inherit;font-size:16px;font-weight:600;transition:border-color .2s,box-shadow .2s,background .2s}.type-field input:focus{border-color:var(--sky);outline:none;box-shadow:0 0 0 3px #2b8fd033}.type-row.is-done input{border-color:var(--emerald);background:var(--green-soft)}.type-check,.type-ok{border:0;border-radius:8px;place-items:center;width:30px;font-weight:900;display:grid;position:absolute;inset-block:4px;inset-inline-start:4px}.type-check{background:var(--navy);color:#f6ecd0}.type-ok{color:var(--emerald);font-size:18px}.type-hint{color:#8a6212;flex-basis:100%;margin:0;padding:3px 38px 0 0;font-size:14px;font-weight:700}.type-hint small{color:var(--ink-soft);font-weight:400}.type-hint.is-new{animation:.45s hint-pop}@keyframes hint-pop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.result{text-align:center;max-width:480px;margin:0 auto}.result h1{font-family:var(--font-title);color:var(--navy);margin:8px 0 0;font-size:32px}.verdict{color:var(--ink-soft);margin:4px 0 18px;font-weight:600}.stat-list{text-align:start;border:1px solid var(--line);background:#fff;border-radius:16px;margin:0 0 22px;padding:0;list-style:none;overflow:hidden}.stat-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:12px 18px;display:flex}.stat-row:last-child{border-bottom:0}.stat-row span{color:var(--ink-soft)}.btn{border:1.5px solid var(--navy);color:var(--navy);text-align:center;background:#fff;border-radius:14px;padding:13px 18px;font-size:16.5px;font-weight:700;transition:transform .12s;display:block}.btn--primary{color:#f6ecd0;background:linear-gradient(#1d63d8,#0a2f73);box-shadow:inset 0 0 0 1px #f5c2308c,0 14px 24px -14px #081523cc}.btn:active,.pill-btn:active,.mode-switch button:active{transform:scale(.96)}.btn-stack{gap:12px;display:grid}.btn-quiet{color:var(--ink-soft);text-align:center;padding:8px;font-weight:600}.footnote{text-align:center;color:var(--ink-soft);margin:26px 0 0;font-size:13px}.site-footer{text-align:center;margin:30px auto 8px}.site-footer-lead{color:var(--ink-soft);margin:10px 0;font-size:15px}.site-footer-link{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:8px 18px;font-size:14px;font-weight:600;transition:transform .15s,border-color .15s;display:inline-flex}.site-footer-link:hover{border-color:var(--gold);transform:translateY(-2px)}@media (width<=560px){:root{--slot:24px}.slot-ring--num{font-size:12px}body{font-size:15.5px}.page{padding:12px 12px 32px}.sheet{padding:16px 14px 20px}.cover{padding:26px 16px 30px}.cover h1{font-size:64px}.cover-book{width:112px}.cover .avatar{margin-left:-124px}.chapter h1{font-size:24px}.slot-label{padding:2px 6px 2px 5px}.chip{padding:6px 15px;font-size:16px}.bubble{padding:6px 10px;font-size:13px}.toc-thumb{width:80px;height:58px}.toc-modes{width:100%}.mode-btn{text-align:center;flex:1;padding:9px}.unit2-title{font-size:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.avatar,.slot.is-armed .slot-ring{animation:none}}.avatar{will-change:transform}.avatar--happy{animation:1.6s ease-in-out infinite av-happy}.avatar--puzzled{animation:1.2s ease-in-out infinite av-puzzled}.avatar--angry{animation:1.5s linear infinite av-angry}.avatar--furious{animation:.35s linear infinite av-furious}@keyframes av-happy{50%{transform:translateY(-4px)}}@keyframes av-puzzled{50%{transform:rotate(-6deg)}}@keyframes av-angry{8%{transform:translate(-2px)}17%{transform:translate(2px)}25%,to{transform:translate(0)}}@keyframes av-furious{0%{transform:translate(-3px)rotate(-3deg)}25%{transform:translate(3px)rotate(3deg)}50%{transform:translate(-3px)rotate(-3deg)}75%{transform:translate(3px)rotate(3deg)}to{transform:translate(0)rotate(0)}}@media (pointer:coarse){.tray-list--many{grid-auto-flow:column;grid-template-rows:repeat(var(--rows,3), auto);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;justify-content:start;gap:8px;max-height:none;padding-bottom:10px;display:grid;overflow:auto hidden}.tray-list--many .chip-drag{touch-action:pan-x;justify-self:center}.tray-list--many .chip{white-space:nowrap;border-bottom-width:4px;padding:5px 13px;font-size:15px}}.slides{margin:22px 0 6px}.slides-track{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:14px;padding:6px 4px 10px;display:flex;overflow-x:auto}.slides-track::-webkit-scrollbar{display:none}.slide{scroll-snap-align:center;aspect-ratio:16/9;background:#0a2f73;border-radius:20px;flex:0 0 100%;display:block;overflow:hidden;box-shadow:0 0 0 1px #f5c2308c,0 22px 36px -22px #081523b3}.slide img{object-fit:cover;width:100%;height:100%;display:block}.slides-dots{justify-content:center;gap:8px;margin-top:2px;display:flex}.slides-dots button{background:#c3ccd8;border:0;border-radius:999px;width:9px;height:9px;padding:0;transition:width .2s,background .2s}.slides-dots button.is-on{background:var(--gold);width:26px}.part .section-title{margin:0;padding:0}.part-toggle{width:100%;color:var(--navy);font:inherit;text-align:start;background:0 0;border:0;align-items:center;gap:14px;padding:12px 6px;display:flex}.part-name{font-family:var(--font-title);flex:1;font-size:24px;font-weight:700;line-height:1.2}.part-count{color:var(--navy);font-family:var(--font-ui);font-variant-numeric:tabular-nums;background:#e8f0fd;border-radius:999px;padding:2px 12px;font-size:13px;font-weight:600}.part-chev{font-family:var(--font-ui);color:var(--gold-deep);font-size:30px;line-height:1;transition:transform .2s}.part-chev.is-open{transform:rotate(-90deg)}.part .toc{margin-top:6px}.cover{margin:20px 0 4px;padding:26px 24px 28px}.cover h1{font-size:72px}@media (width<=560px){.cover h1{font-size:56px}.part-name{font-size:21px}}.gate{z-index:100;background:radial-gradient(90% 70% at 50% 0,#1e63d88c,#0000 70%),#04122e;place-items:center;padding:14px;display:grid;position:fixed;inset:0;overflow-y:auto}.gate-card{color:#fff;background:linear-gradient(#0b2f7a,#06173d 60%,#030c22);border-radius:26px;width:100%;max-width:520px;margin:auto;overflow:hidden;box-shadow:0 0 0 1px #f5c23099,0 30px 60px -20px #000c}.gate-img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.gate-text{padding:18px 20px 4px}.gate-text h2{font-family:var(--font-title);color:#ffe27a;margin:0 0 8px;font-size:24px}.gate-text h3{margin:16px 0 8px;font-size:16px;font-weight:700}.gate-text p{color:#ffffffeb;margin:0;line-height:1.8}.gate-text ul{background:#ffffff0d;border:1px solid #508cff99;border-radius:16px;margin:0;padding:12px 16px;list-style:none}.gate-text li{padding:3px 0;font-size:15px}.gate-actions{gap:10px;padding:16px 20px 20px;display:grid}.gate-join,.gate-go{min-height:52px;font:inherit;border:0;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-size:17px;font-weight:700;display:flex}.gate-join{color:#fff;background:linear-gradient(90deg,#16a34a,#1d63d8);box-shadow:0 12px 24px -12px #1d63d8e6}.gate-go{color:#062a63;background:#f2c230}.gate-go:disabled{color:#fff9;cursor:not-allowed;background:#ffffff1f}@media (width<=560px){.gate{padding:8px}.gate-text h2{font-size:21px}}.site-footer-links{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:6px;display:flex}.site-footer-lead+.site-footer-links+.site-footer-lead{margin-top:18px}.paper-entry{color:#111;background:#fff;border:1.5px dashed #1b1b1b;border-radius:16px;align-items:center;gap:14px;margin:18px 0 0;padding:14px 16px;transition:transform .15s;display:flex;box-shadow:5px 5px #1b1b1b24}.paper-entry:hover{transform:translateY(-2px)}.paper-entry-icon{background:#fff;border:1.5px solid #111;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.paper-entry-text{flex:1;min-width:0;line-height:1.4}.paper-entry-text b{font-family:var(--font-title);font-size:20px;display:block}.paper-entry-text small{color:var(--ink-soft);font-size:13px;display:block}.paper-entry-arrow{color:#111;font-size:26px}.paper-app{--ink:#161616;--ink-soft:#555;--line:#cfcabb;color:#161616;background:#ebe7da repeating-linear-gradient(0deg,#0000 0 31px,#00000009 31px 32px)}.paper-app .sheet{background:#fff;border:1.5px solid #1b1b1b;border-radius:6px;box-shadow:5px 5px #1b1b1b1f}.paper-app .chapter-mark{background:#111}.paper-app .chapter h1{color:#111}.paper-app .back-link{color:#111;border-color:#1b1b1b;border-radius:6px}.paper-app .toc-row:hover{background:#f4f2ea}.paper-app .toc-row:before{background:#111}.paper-app .toc-num{color:#111;box-shadow:inset 0 0 0 1.5px #111}.paper-app .toc-row>span[aria-hidden]{color:#111}.paper-app .part-icon{background:#fff;box-shadow:inset 0 0 0 1.5px #111}.paper-app .part-name,.paper-app .section-title{color:#111}.paper-app .part-count{color:#111;background:#eee}.paper-app .part-chev{color:#111}.paper-app .soon{background:#f4f2ea}.paper-app .btn{color:#111;border-color:#111;border-radius:8px}.paper-app .btn--primary{color:#fff;box-shadow:none;background:#111}.paper-app .stat-row{border-color:#cfcabb}.paper-random{background:#faf8f1;border:1.5px dashed #111;border-radius:10px;margin:6px 0 0;padding:16px 16px 18px}.paper-random h2{font-family:var(--font-title);color:#111;margin:0 0 4px;font-size:22px}.paper-random p{color:var(--ink-soft);margin:0 0 12px;font-size:14.5px}.paper-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.paper-chip{color:#111;background:#fff;border:1.5px solid #111;border-radius:999px;padding:6px 14px;font-size:14px;font-weight:600}.paper-chip.is-on{color:#fff;background:#111}.paper-go{color:#fff;background:#111;border:0;border-radius:8px;width:100%;padding:12px 18px;font-size:17px;font-weight:700;transition:transform .12s;display:block}.paper-go:active{transform:scale(.97)}.paper-lesson{margin-top:10px}.paper-lesson h3{font-family:var(--font-title);color:#111;border-bottom:1.5px solid #111;margin:12px 6px 2px;padding-bottom:4px;font-size:19px}.paper-thumb img{filter:grayscale()contrast(1.1)}.paper-start{color:#111;background:#fff;border:1.5px solid #111;border-radius:8px;flex:none;padding:6px 14px;font-size:14px;font-weight:700}.paper-row:hover .paper-start{color:#fff;background:#111}.paper-bar{z-index:30;background:#fff;border-bottom:1.5px solid #111;position:sticky;top:0}.paper-bar-inner{align-items:center;gap:12px;max-width:920px;margin:0 auto;padding:8px 14px;display:flex}.paper-app .paper-bar .back-btn{color:#111;background:#fff;border:1.5px solid #111;border-radius:8px}.paper-bar-title{font-family:var(--font-title);color:#111;flex:1;font-size:19px;font-weight:700}.paper-timer{color:#111;font-variant-numeric:tabular-nums;background:#fff;border:1.5px solid #111;border-radius:8px;padding:3px 14px;font-size:15px;font-weight:700}.paper-timer.is-off{opacity:.55}.paper-meta{color:#111;border-bottom:1px solid #111;justify-content:space-between;gap:10px;margin:0 0 12px;padding-bottom:6px;font-size:14px;font-weight:600;display:flex}.paper-stamp{color:#1a3a9a;border:2px solid #1a3a9a;border-radius:6px;margin-bottom:6px;padding:2px 16px;font-weight:800;display:inline-block;transform:rotate(-3deg)}.paper-app .board{background:#fff;border-radius:0;box-shadow:0 0 0 1.5px #111}.paper-app .board img.is-gray{filter:grayscale()contrast(1.2)}.paper-app .slot-ring{box-shadow:none;background:#fff;border:2px solid #111}.paper-app .slot-ring--num{color:#111;font-weight:700}.paper-app .slot.is-hint .slot-ring{background:#e4e4e4;border-color:#000;box-shadow:0 0 0 3px #0000002e}.paper-app .slot.is-wrong .slot-ring{background:#d6d6d6}.paper-app .slot-label{box-shadow:none;color:#1a3a9a;background:#fffffff0;border:0;border-bottom:1.5px solid #1a3a9a;border-radius:0}.paper-app .slot-label:before{display:none}.paper-app .leaders line{stroke:#1a3a9a}.paper-app .leaders circle{fill:#1a3a9a}.paper-app .type-panel{background:0 0;border:0;border-top:1.5px dashed #111;border-radius:0;padding:18px 0 0}.paper-app .type-head{color:#444}.paper-app .type-num{color:#111;background:#fff;border:1.5px solid #111}.paper-app .type-row.is-active .type-num{color:#fff;background:#111}.paper-app .type-row.is-done .type-num{color:#1a3a9a;background:#fff;border-color:#1a3a9a}.paper-app .type-field input{color:#111;background:0 0;border:0;border-bottom:1.5px solid #111;border-radius:0}.paper-app .type-field input:focus{box-shadow:none;background:#f7f6ef;border-bottom-color:#1a3a9a;outline:none}.paper-app .type-row.is-done input{color:#1a3a9a;-webkit-text-fill-color:#1a3a9a;opacity:1;background:0 0;border-bottom-color:#1a3a9a}.paper-app .type-check{color:#fff;background:#111;border-radius:6px}.paper-app .type-ok{color:#1a3a9a}.paper-app .result h1{color:#111}.paper-app .stat-list{border-color:#111;border-radius:8px}.site-credit{letter-spacing:.3px;color:var(--ink-soft);opacity:.4;-webkit-user-select:none;user-select:none;margin:22px 0 0;font-size:11px}.cd{color:#f4ead2;background:radial-gradient(110% 90% at 100% 0,#f5c23038,#0000 55%),linear-gradient(155deg,#1555c0,#0b3a8c 55%,#062a66);border-radius:22px;margin:12px 0 4px;padding:14px 14px 12px;box-shadow:0 0 0 1px #f5c23080,0 20px 36px -24px #07121fd9}.cd-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 12px;margin-bottom:10px;display:flex}.cd-title{font-family:var(--font-title);color:var(--gold-light);margin:0;font-size:19px;font-weight:700;line-height:1.3}.cd-date{color:#f4ead2eb;white-space:nowrap;border:1px solid #f5c23080;border-radius:999px;padding:1px 12px;font-size:12.5px;font-weight:600}.cd-grid{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.cd-unit{flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.cd-ring-wrap{aspect-ratio:1;width:min(100%,60px);position:relative}.cd-ring{width:100%;height:100%;display:block;transform:rotate(-90deg)}.cd-ring circle{fill:none;stroke-width:3.6px}.cd-track{stroke:#ffffff24}.cd-arc{stroke:var(--gold);stroke-linecap:round}.cd-num{font-variant-numeric:tabular-nums;color:#fff;place-items:center;font-size:18px;font-weight:700;line-height:1;display:grid;position:absolute;inset:0}.cd-label{color:#f4ead2d1;font-size:12px;font-weight:600}.cd-done{text-align:center;color:var(--gold-light);margin:6px 0 4px;font-weight:700}@media (width<=380px){.cd{padding:12px 10px 10px}.cd-title{font-size:17px}.cd-num{font-size:16px}.cd-label{font-size:11px}}.cd-card{margin:18px 0 0}.cd-entry{color:#f4ead2;width:100%;font:inherit;text-align:start;background:linear-gradient(155deg,#1555c0,#0b3a8c 60%,#062a66);border:1.5px solid #f5c230bf;border-radius:16px;align-items:center;gap:14px;margin:0;padding:14px 16px;transition:transform .15s,box-shadow .2s;display:flex;box-shadow:5px 5px #0b3a8c2e}.cd-entry:hover{transform:translateY(-2px)}.cd-entry-icon{background:#ffffff14;border:1.5px solid #f5c230cc;border-radius:12px;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid}.cd-entry-text{flex:1;min-width:0;line-height:1.4}.cd-entry-text b{font-family:var(--font-title);color:var(--gold-light);font-size:20px;display:block}.cd-entry-text small{color:#f4ead2d9;font-variant-numeric:tabular-nums;font-size:13px;display:block}.cd-entry-arrow{color:var(--gold-light);font-size:26px;line-height:1;transition:transform .25s}.cd-card.is-open .cd-entry-arrow{transform:rotate(-90deg)}.cd-panel{overflow:hidden}.cd-card .cd{margin:10px 0 0}.theme-toggle{z-index:90;left:max(14px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));width:48px;height:48px;color:var(--gold-light);background:linear-gradient(160deg,#1d63d8,#0a2f73);border:1.5px solid #f5c230bf;border-radius:50%;place-items:center;padding:0;transition:transform .15s;display:grid;position:fixed;overflow:hidden;box-shadow:0 10px 22px -8px #050f28bf}.theme-toggle:active{transform:scale(.92)}.theme-icon{grid-area:1/1;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .3s}.theme-icon--moon{opacity:0;transform:translateY(130%)rotate(-60deg)}[data-theme=dark] .theme-icon--sun{opacity:0;transform:translateY(-130%)rotate(60deg)}[data-theme=dark] .theme-icon--moon{opacity:1;transform:none}.theme-fade,.theme-fade *,.theme-fade :before,.theme-fade :after{transition:background-color .4s,border-color .4s,color .3s,box-shadow .4s!important}[data-theme=dark]{--wall:#050b1a;--plate:#0d1830;--ink:#e9eefb;--ink-soft:#9aa9c7;--line:#21314f;--navy:#9cbcff;--navy-deep:#062a63;--gold-deep:#e0aa24;--green-soft:#0f2b25;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] body{background:var(--wall) radial-gradient(70% 380px at 50% 0,#2563eb38,transparent 70%) no-repeat}[data-theme=dark] body:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(1.2px 1.2px at 12% 18%,#ffffffb3,#0000),radial-gradient(1px 1px at 78% 12%,#fff9,#0000),radial-gradient(1.4px 1.4px at 36% 62%,#ffe27a8c,#0000),radial-gradient(1px 1px at 88% 70%,#ffffff80,#0000),radial-gradient(1.2px 1.2px at 56% 34%,#ffffff73,#0000),radial-gradient(1px 1px at 22% 88%,#ffffff73,#0000);position:fixed;inset:0}[data-theme=dark] .sheet{border-color:#78a0ff24;box-shadow:inset 0 1px #ffffff0a,0 24px 48px -26px #000000d9}[data-theme=dark] .cover{background:radial-gradient(110% 80% at 100% 0,#f5c23033,#0000 55%),radial-gradient(90% 80% at 0 100%,#22c55e38,#0000 60%),linear-gradient(155deg,#0f3a86,#082a66 55%,#041a42);box-shadow:0 0 0 1px #f5c23073,0 0 60px -18px #3b82f68c,0 30px 60px -30px #000}[data-theme=dark] .back-link{border-color:var(--line);background:#13213d}[data-theme=dark] .toc-row:hover{background:#78a0ff14}[data-theme=dark] .toc-num{color:var(--gold-light);background:#13213d}[data-theme=dark] .soon{background:#13213d}[data-theme=dark] .toc-row--split{background:#101d38}[data-theme=dark] .toc-row--split:hover{box-shadow:0 14px 28px -20px #000}[data-theme=dark] .toc-thumb{background:#fff;box-shadow:0 0 0 1px #78a0ff40}[data-theme=dark] .mode-btn{color:var(--navy);background:#13213d;border-color:#5b86d6}[data-theme=dark] .mode-btn:hover{color:#fff;background:#2f64c9}[data-theme=dark] .chapter-count{color:var(--gold-light);background:#13213d;box-shadow:inset 0 0 0 1px #f5c23080}[data-theme=dark] .mode-switch{background:#101d38}[data-theme=dark] .mode-switch button.is-on{color:#fff;background:#2f64c9}[data-theme=dark] .progress{background:#16253f}[data-theme=dark] .star{color:#2b3a56}[data-theme=dark] .hdr{background:linear-gradient(#0b2d6e,#061a42);box-shadow:0 10px 24px -14px #000}[data-theme=dark] .tray{background:linear-gradient(#0b2d6e,#041636);box-shadow:0 -14px 28px -16px #000}[data-theme=dark] .board{box-shadow:0 0 0 1px #78a0ff4d,0 0 0 7px #0a1428,0 0 0 8px #f5c2308c,0 0 50px -10px #3b82f673}[data-theme=dark] .type-panel{background:#101d38}[data-theme=dark] .type-num{color:#fff;background:#2f64c9}[data-theme=dark] .type-row.is-active .type-num{background:var(--gold);color:var(--navy-deep)}[data-theme=dark] .type-field input{color:var(--ink);background:#0a1428;border-color:#2b3f66}[data-theme=dark] .type-field input:focus{border-color:#5b9bff;box-shadow:0 0 0 3px #5b9bff40}[data-theme=dark] .type-row.is-done input{background:var(--green-soft);border-color:var(--emerald);color:#b9f3cf}[data-theme=dark] .type-check{color:#fff;background:#2f64c9}[data-theme=dark] .type-hint{color:var(--gold-light)}[data-theme=dark] .stat-list{background:#101d38}[data-theme=dark] .btn{color:var(--navy);background:#13213d;border-color:#5b86d6}[data-theme=dark] .btn--primary{color:#fff;background:linear-gradient(#2f64c9,#14397f);border-color:#0000}[data-theme=dark] .site-footer-link{border-color:var(--line);color:var(--navy);background:#13213d}[data-theme=dark] .part-count{color:var(--navy);background:#17274a}[data-theme=dark] .part-icon{box-shadow:inset 0 0 0 1px #f5c23099,0 0 18px -4px #3b82f699}[data-theme=dark] .slides-dots button{background:#2b3a56}[data-theme=dark] .slides-dots button.is-on{background:var(--gold)}[data-theme=dark] .slide{aspect-ratio:3/2;background:#050b1a;box-shadow:0 0 0 1px #f5c23080,0 0 40px -14px #3b82f68c,0 22px 36px -22px #000}[data-theme=dark] .unit2-sub{color:var(--ink-soft)}[data-theme=dark] .theme-toggle{background:linear-gradient(160deg,#16294f,#070f24);border-color:#f5c23099;box-shadow:0 0 22px -4px #f5c23073,0 10px 22px -8px #000}[data-theme=dark] .cd-entry{background:linear-gradient(155deg,#0f3a86,#082a66 60%,#041a42);border-color:#f5c23099;box-shadow:0 0 28px -12px #3b82f6b3}[data-theme=dark] .cd{background:radial-gradient(110% 90% at 100% 0,#f5c23029,#0000 55%),linear-gradient(155deg,#0f3a86,#082a66 55%,#041a42);box-shadow:0 0 0 1px #f5c23066,0 0 40px -16px #3b82f699}[data-theme=dark] .cd-arc{filter:drop-shadow(0 0 3px #f5c230b3)}[data-theme=dark] .site-footer-lead,[data-theme=dark] .footnote{color:var(--ink-soft)}[data-theme=dark] .paper-entry{color:#f2f2f2;background:#0f1218;border-color:#d9d9d9;box-shadow:5px 5px #ffffff12}[data-theme=dark] .paper-entry-icon{background:#181c24;border-color:#d9d9d9}[data-theme=dark] .paper-entry-arrow{color:#f2f2f2}[data-theme=dark] .paper-entry-text small{color:#a9afbb}[data-theme=dark] .paper-app{--ink:#ececec;--ink-soft:#a9afbb;--line:#2e333d;color:#ececec;background:#0b0d12 repeating-linear-gradient(0deg,#0000 0 31px,#ffffff08 31px 32px)}[data-theme=dark] body:has(.paper-app){background:#0b0d12}[data-theme=dark] .paper-app .sheet{background:#13161d;border-color:#d9d9d9;box-shadow:5px 5px #ffffff12}[data-theme=dark] .paper-app .chapter-mark{background:#f2f2f2}[data-theme=dark] .paper-app .chapter h1,[data-theme=dark] .paper-app .part-name,[data-theme=dark] .paper-app .section-title,[data-theme=dark] .paper-app .result h1,[data-theme=dark] .paper-random h2,[data-theme=dark] .paper-lesson h3,[data-theme=dark] .paper-bar-title,[data-theme=dark] .paper-meta{color:#f2f2f2}[data-theme=dark] .paper-app .back-link{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-app .toc-row:hover{background:#1b1f28}[data-theme=dark] .paper-app .toc-row:before{background:#f2f2f2}[data-theme=dark] .paper-app .toc-num{color:#f2f2f2;background:#13161d;box-shadow:inset 0 0 0 1.5px #d9d9d9}[data-theme=dark] .paper-app .toc-row>span[aria-hidden],[data-theme=dark] .paper-app .part-chev{color:#f2f2f2}[data-theme=dark] .paper-app .part-icon{background:#181c24;box-shadow:inset 0 0 0 1.5px #d9d9d9}[data-theme=dark] .paper-app .part-count{color:#f2f2f2;background:#232833}[data-theme=dark] .paper-app .soon{background:#1b1f28}[data-theme=dark] .paper-app .btn{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-app .btn--primary{color:#111;background:#f2f2f2}[data-theme=dark] .paper-app .stat-row{border-color:#2e333d}[data-theme=dark] .paper-app .stat-list{background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-random{background:#181c24;border-color:#d9d9d9}[data-theme=dark] .paper-chip{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-chip.is-on,[data-theme=dark] .paper-go{color:#111;background:#f2f2f2}[data-theme=dark] .paper-lesson h3{border-color:#d9d9d9}[data-theme=dark] .paper-start{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-row:hover .paper-start{color:#111;background:#f2f2f2}[data-theme=dark] .paper-bar{background:#0f1218;border-color:#d9d9d9}[data-theme=dark] .paper-app .paper-bar .back-btn,[data-theme=dark] .paper-timer{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-meta{border-color:#d9d9d9}[data-theme=dark] .paper-stamp{color:#8fb0ff;border-color:#8fb0ff}[data-theme=dark] .paper-app .board{box-shadow:0 0 0 1.5px #d9d9d9}[data-theme=dark] .paper-app .type-panel{background:0 0;border-color:#d9d9d9}[data-theme=dark] .paper-app .type-head{color:#a9afbb}[data-theme=dark] .paper-app .type-num{color:#f2f2f2;background:#13161d;border-color:#d9d9d9}[data-theme=dark] .paper-app .type-row.is-active .type-num{color:#111;background:#f2f2f2}[data-theme=dark] .paper-app .type-row.is-done .type-num{color:#8fb0ff;background:#13161d;border-color:#8fb0ff}[data-theme=dark] .paper-app .type-field input{color:#f2f2f2;background:0 0;border-bottom-color:#d9d9d9}[data-theme=dark] .paper-app .type-field input:focus{background:#1b1f28;border-bottom-color:#8fb0ff}[data-theme=dark] .paper-app .type-row.is-done input{color:#8fb0ff;-webkit-text-fill-color:#8fb0ff;background:0 0;border-bottom-color:#8fb0ff}[data-theme=dark] .paper-app .type-check{color:#111;background:#f2f2f2}[data-theme=dark] .paper-app .type-ok{color:#8fb0ff}[data-theme=dark] .paper-thumb img{filter:grayscale()contrast(1.1)}.ico{vertical-align:-.2em;flex:none;display:inline-block}.pill-btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.mode-switch button,.mode-btn,.paper-start{justify-content:center;align-items:center;gap:7px;display:inline-flex}.btn,.paper-go{justify-content:center;align-items:center;gap:8px;display:flex}.back-btn,.part-chev,.cd-entry-arrow,.paper-entry-arrow{place-items:center;display:grid}.part-chev{width:30px;height:30px}.part-icon{color:var(--gold-light)}.part-icon .ico,.cd-entry-icon .ico,.paper-entry-icon .ico{vertical-align:0}.cd-entry-icon{color:var(--gold-light)}.paper-app .part-icon,.paper-entry-icon{color:#111}[data-theme=dark] .paper-app .part-icon,[data-theme=dark] .paper-entry-icon{color:#f2f2f2}.stars{letter-spacing:0;gap:.12em;display:inline-flex}.star svg{display:block}.gate-text h2,.gate-text h3{align-items:center;gap:8px;display:flex}.gate-text h2 .ico{color:#ffe27a}.gate-text li{align-items:flex-start;gap:8px;display:flex}.gate-text li .ico{color:#6fb1ff;margin-top:.3em}.cd-done .ico,.tray-done .ico{color:var(--gold-light)}.type-hint .ico{vertical-align:-.25em}
