:root{--ink:#172028;--blue:#2045cb;--pale:#edf2ff;--red:#c74c34;--paper:#faf9f6;--line:#dce0e5;--muted:#68737c;--font:'Nirmala UI','Noto Sans Devanagari','Mangal',system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);line-height:1.6}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b0bef5;outline-offset:4px}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:white;z-index:50;padding:10px}.site-header{max-width:1280px;margin:auto;display:flex;align-items:center;gap:32px;padding:23px 44px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:baseline;gap:15px}.brand-en{font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:-1.8px;font-weight:900;line-height:1}.dot{color:var(--red)}.brand-mr{font-size:17px;border-left:1px solid var(--line);padding-left:16px}.site-header nav{display:flex;gap:27px;margin-left:auto;font-size:15px;align-items:center}.edition{font-size:13px;border:1px solid var(--line);padding:7px 12px;background:white}.edition span{color:var(--blue);margin-left:8px}.plain{padding:7px 2px;font-size:14px}.muted{color:var(--muted)}main{max-width:1192px;margin:0 auto;padding:36px 0 0}.issue-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:4px 0 26px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.7px;color:var(--muted);display:flex;align-items:center;gap:8px}.separator{color:#b9bec5;margin:0 5px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--red);border-radius:50%}h1{font-size:41px;font-weight:700;line-height:1.4;margin:10px 0 3px;letter-spacing:-.5px}.lede{font-size:15px;color:var(--muted);margin:0}.share-button{border:1px solid var(--line);padding:10px 17px;background:white;font-size:14px;white-space:nowrap}.share-button span{margin-right:7px;color:var(--blue)}.play-layout{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(350px,1fr);gap:38px;align-items:start}.grid-panel{min-width:0}.grid-topline,.grid-caption{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:9px}.grid-topline{font-size:13px}.grid-scroll{overflow:auto;overscroll-behavior:contain;padding-bottom:2px}#grid{display:grid;grid-template-columns:repeat(15,minmax(0,1fr));background:var(--ink);gap:1px;border:2px solid var(--ink);aspect-ratio:1;width:100%;min-width:0}#grid.zoom{min-width:690px}.cell{position:relative;aspect-ratio:1;background:white;min-width:0;padding:0;display:flex;align-items:center;justify-content:center;font-size:22px;line-height:1;color:#222;overflow:hidden;border-radius:0}.cell.block{background:var(--ink)}.cell.active-run{background:#e7edff}.cell.selected{background:var(--blue);color:white}.cell.filled{font-weight:500}.cell small{position:absolute;left:3px;top:3px;font:9px/1 system-ui;color:#5e646f}.cell.selected small{color:#e1e8ff}.cell .glyph{padding-top:8px}.grid-caption{margin-top:10px;margin-bottom:19px}.progress-track{height:3px;background:#e0e4e9}#progress-fill{height:3px;background:var(--blue);width:0}.progress-summary{display:flex;justify-content:space-between;gap:12px;margin:15px 0 10px;align-items:baseline}.progress-summary strong{font-family:system-ui;font-size:22px;margin-right:9px;font-weight:600}.progress-summary span{font-size:12px;color:var(--muted)}#save-state{font-size:11px;text-align:right}.grid-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.outline{border:1px solid var(--line);padding:9px 14px;background:white;font-size:13px}.verification{font-size:14px;color:var(--blue);min-height:20px;margin:8px 0}.editor-note{display:flex;gap:17px;align-items:center;padding:19px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.editor-note p{margin:0}.editor-note strong{color:var(--ink)}.tiny-square{flex-shrink:0;border:1px solid #b1b9ca;width:31px;height:31px;display:grid;place-items:center;color:var(--blue);font:20px Georgia}.entry-editor{background:white;border:1px solid var(--line);padding:22px 24px 15px}.clue-header{display:flex;justify-content:space-between;align-items:center;gap:10px}#active-meta{font-size:12px;color:var(--blue);font-weight:600}.clue-header>div{display:flex;gap:6px}.arrow{width:31px;height:31px;border:1px solid var(--line);font:18px system-ui}#active-clue{font-size:20px;font-weight:500;line-height:1.65;margin:12px 0 16px;min-height:60px}.input-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:17px}.input-tabs button{flex:1;padding:8px;font-size:13px;color:var(--muted);border-bottom:2px solid transparent}.input-tabs button[aria-pressed=true]{color:var(--blue);border-color:var(--blue)}label{display:block;font-size:12px;font-weight:600;margin:10px 0 6px}.label-note{font-weight:400;color:var(--muted);margin-left:6px}input:not([type=checkbox]),textarea{display:block;width:100%;background:#fcfcfb;border:1px solid #bfc7d0;border-radius:2px;padding:11px 13px;color:var(--ink);font-size:20px;line-height:1.45}input::placeholder{color:#a4a9b1;font-size:15px}#roman{font-family:system-ui}.candidates{display:flex;gap:6px;min-height:4px;flex-wrap:wrap;margin:7px 0}.candidate{border:1px solid var(--line);padding:4px 11px;border-radius:2px;font-size:15px;min-height:34px}.candidate[aria-pressed=true]{border-color:var(--blue);color:var(--blue);background:var(--pale)}.preview-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;min-height:33px}.tokens{display:flex;gap:4px;flex-wrap:wrap}.token{border:1px solid #d9dfe7;min-width:29px;height:31px;display:grid;place-items:center;font-size:17px;padding:0 3px}.token.empty{color:#aab1bd}.preview-line>span{font-size:11px;color:var(--muted);white-space:nowrap}.draft-status{font-size:12px;color:var(--muted);min-height:23px;margin:10px 0}.place-actions{display:flex;gap:13px;align-items:center}.primary{background:var(--blue);color:white;padding:10px 16px;border:1px solid var(--blue);font-size:14px;line-height:1.6}.primary span{margin-left:14px}.place-actions .plain{font-size:12px}.assist{display:flex;gap:8px;border-top:1px solid var(--line);margin-top:17px;padding-top:14px}.assist button{padding:5px 12px;border:1px solid var(--line);font-size:12px;min-height:35px}.assist .reveal{color:var(--red)}.help-message{font-size:13px;color:var(--blue);margin:8px 0 0;min-height:0}.assist-counts{font-size:11px;color:var(--muted);margin:9px 0 0}.draft-tools{margin-top:8px;font-size:11px;color:var(--muted)}.draft-tools summary{cursor:pointer}.draft-tools button{font-size:12px}.clue-browser{margin-top:19px;background:white;border:1px solid var(--line)}.clue-tabs{display:flex;border-bottom:1px solid var(--line)}.clue-tabs button{flex:1;text-align:left;padding:12px 20px;font-size:14px;color:var(--muted);border-bottom:2px solid transparent}.clue-tabs button span{float:right}.clue-tabs button[aria-pressed=true]{color:var(--blue);border-color:var(--blue)}.clue-list{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto}.clue-list button{display:grid;grid-template-columns:24px 1fr 24px;gap:9px;padding:13px 18px;width:100%;text-align:left;border-bottom:1px solid #eef0f3;font-size:13px;line-height:1.6}.clue-list button span:first-child{font-size:11px;color:var(--blue);padding-top:3px}.clue-list button.active{background:var(--pale);box-shadow:inset 3px 0 var(--blue)}.clue-list button .count{font-size:11px;color:var(--muted);align-self:center;text-align:right}.book-teaser{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:40px 0 0;padding:29px 0;display:grid;grid-template-columns:160px 1fr 150px;gap:25px;align-items:center}.book-type{font-size:13px;color:var(--muted)}.book-teaser h2{font-size:23px;margin:0 0 8px}.book-teaser p{font-size:14px;color:var(--muted);margin:0 0 9px;max-width:530px}.text-link{font-size:13px;color:var(--blue)}.paper-mark{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;align-items:center;height:65px;color:var(--red);border:1px solid #cfb7af;font-size:27px;transform:rotate(-4deg);background:white}.paper-mark span{border-left:1px solid #cfb7af;border-right:1px solid #cfb7af}footer{max-width:1192px;margin:25px auto 0;display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:0 0 25px;color:var(--muted);font-size:12px}.footer-brand{font-size:24px;font-weight:700;color:var(--ink)}footer>div{margin-left:auto;display:flex;gap:22px}footer>p{width:100%;font-size:10px;margin:0}.loading{padding:90px;text-align:center;color:var(--muted)}.notice{background:#fff4de;border:1px solid #e6c58c;padding:12px 16px;font-size:13px;margin:0 0 20px}.notice button{color:var(--blue);text-decoration:underline;margin-left:12px}.secondary-page{min-height:65vh;max-width:1000px;margin:10px auto 60px}.secondary-page h1{font-size:46px;margin-bottom:10px}.secondary-page p{max-width:800px}.archive-item{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:22px 0;align-items:center}.archive-item .number{font:35px Georgia;color:var(--red);width:70px}.archive-item h2{font-size:22px;margin:0}.archive-item p{font-size:13px;color:var(--muted);margin:5px 0}.archive-item>a{margin-left:auto}.book-page-layout{display:grid;grid-template-columns:310px 1fr;gap:65px;margin-top:40px;align-items:start}.book-concept{background:#fff;border:1px solid var(--line);padding:24px;height:425px;box-shadow:8px 9px 0 #e7e6e1;transform:rotate(-2deg);display:flex;flex-direction:column}.book-concept>span{font-size:24px;color:var(--blue)}.book-concept strong{font-size:35px;line-height:1.5;margin-top:28px}.book-concept small{font-size:10px;margin-top:auto;color:var(--muted)}.chair{color:var(--red);font:60px/0.75 Georgia;margin:30px auto 0}.consent{display:flex;gap:9px;font-weight:400;align-items:flex-start;margin:16px 0}.consent input{margin-top:4px;width:16px;height:16px}.small{font-size:12px}.book-page-layout p{font-size:15px;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:3px;padding:31px;max-width:530px;width:calc(100% - 30px);max-height:90dvh;overflow:auto;box-shadow:0 18px 70px #0003;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#10192d88;backdrop-filter:blur(2px)}dialog h2{font-size:26px;padding-right:15px}dialog p{font-size:15px}dialog .close{position:absolute;right:11px;top:6px;font:29px system-ui;min-width:38px;min-height:38px}.rule-example{display:flex;align-items:center;gap:10px;padding:12px 0;font-size:24px}.rule-example b{border:1px solid var(--line);background:white;padding:8px 12px;font-weight:400}.share-dialog{max-width:500px;text-align:center}.share-dialog h2{font-size:23px;margin-top:5px}.share-dialog canvas{width:216px;height:384px;max-width:100%;display:block;margin:17px auto;border:1px solid var(--line)}.share-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.studio-box{max-width:900px;margin:40px auto}.studio-box textarea{font-family:monospace;font-size:12px;min-height:240px}.studio-box pre{white-space:pre-wrap;word-break:break-word;font:12px/1.8 monospace}.studio-box table{width:100%;border-collapse:collapse;font-size:13px}.studio-box th,.studio-box td{border-bottom:1px solid var(--line);padding:10px;text-align:left}.studio-login{max-width:450px;margin:70px auto}.studio-login button{margin-top:15px}.error{color:#ad3625}
@media(max-width:1280px){main,footer{margin-left:36px;margin-right:36px}.site-header{padding-left:36px;padding-right:36px}.play-layout{gap:28px}.cell{font-size:20px}}@media(max-width:950px){.site-header{gap:15px}.brand-mr{display:none}.site-header nav{gap:18px}.play-layout{grid-template-columns:minmax(0,1fr) minmax(310px,.95fr);gap:20px}.cell{font-size:16px}.cell small{font-size:8px}.entry-editor{padding:17px}h1{font-size:34px}.progress-summary{flex-direction:column;gap:3px}.grid-actions{gap:9px}.book-teaser{grid-template-columns:130px 1fr}.paper-mark{display:none}}
@media(max-width:720px){.site-header{padding:18px 18px;flex-wrap:wrap;gap:13px}.brand-en{font-size:30px}.site-header nav{font-size:13px;gap:17px;order:3;width:100%;justify-content:space-between}.site-header nav button{font-size:13px}.edition{margin-left:auto;font-size:12px;padding:5px 8px}main{margin:0 18px;padding-top:25px}.issue-heading{align-items:flex-start;margin-bottom:17px}.issue-heading h1{font-size:32px;margin-top:8px}.issue-heading .lede{font-size:12px;max-width:250px}.eyebrow{font-size:10px;gap:5px}.share-button{font-size:0;width:38px;height:38px;padding:0;margin-top:27px}.share-button span{font-size:23px;margin:0}.play-layout{display:flex;flex-direction:column;gap:20px}.grid-panel,.solve-panel{width:100%}.cell{font-size:clamp(12px,3.6vw,22px)}.cell small{font-size:7px;left:2px;top:2px}.cell .glyph{padding-top:7px}.grid-caption{font-size:10px;margin-bottom:12px}.grid-topline{font-size:11px;margin-bottom:7px}.grid-topline button{font-size:11px}.progress-summary{flex-direction:row;align-items:center}.progress-summary strong{font-size:18px}.progress-summary span{display:block;font-size:10px}#save-state{font-size:10px;max-width:95px}.grid-actions{justify-content:flex-start}.grid-actions .outline{padding:8px 10px;font-size:12px}.grid-actions .plain{font-size:11px}.editor-note{display:none}.verification{margin-bottom:0;min-height:0}.entry-editor{padding:17px 17px 14px}#active-clue{min-height:0;margin:13px 0 15px;font-size:19px}.input-tabs button{min-height:40px}.primary{min-height:44px}.candidate{min-height:40px}.clue-list{max-height:310px}.book-teaser{grid-template-columns:1fr;gap:10px;margin-top:28px;padding:24px 0}.book-teaser h2{font-size:21px}.book-type{font-size:11px}footer{margin:20px 18px;gap:15px}footer>div{margin-left:0;gap:19px}footer>span{font-size:11px}.secondary-page h1{font-size:35px}.book-page-layout{grid-template-columns:1fr;gap:32px}.book-concept{width:270px;margin:0 auto}.archive-item{gap:12px}.archive-item .number{width:42px;font-size:25px}.archive-item h2{font-size:18px}.archive-item .outline{font-size:12px;padding:7px}.secondary-page{margin-bottom:40px}.studio-box{margin:30px 18px;overflow:auto}.studio-login{margin:50px 20px}.loading{padding:70px 15px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.site-header nav,.entry-editor,.book-teaser,footer,.grid-actions,.share-button,.notice,.editor-note,.progress-summary,.progress-track{display:none!important}main{margin:0}.play-layout{display:block}#grid{max-width:140mm}.clue-list{max-height:none;overflow:visible}.clue-tabs{display:none}body{background:white}.cell{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
