@font-face{font-family:Playfair;src:url(/fonts/playfair-400.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:Playfair;src:url(/fonts/playfair-italic.woff2)format("woff2");font-weight:400 500;font-style:italic;font-display:swap}.tms{--paper:#f6f3ec;--paper2:#fff;--ink:#141a2e;--ink-soft:#4c5165;--indigo:#1b1178;--blue:#0060aa;--green:#3e9b44;--green-l:#8fbf5e;--green-d:#0b7a3f;--line:#141a2e1f;--serif:"Playfair", "Times New Roman", Georgia, serif;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--pad:clamp(20px, 6vw, 96px);background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.tms ::selection{background:var(--green-l);color:var(--ink)}.tms .kicker{font-family:var(--mono);letter-spacing:.34em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.tms .serif{font-family:var(--serif);font-weight:400}.tms em.accent{color:var(--green);font-style:italic}.tms .bar{padding:16px var(--pad);border-bottom:1px solid var(--line);background:#f6f3ecf7;justify-content:space-between;align-items:center;gap:16px;display:flex}.tms .brand{align-items:center;gap:12px;display:flex}.tms .brand img{width:34px;height:auto}.tms .brand b{font-size:14px;font-weight:700;line-height:1;display:block}.tms .brand small{letter-spacing:.32em;color:var(--ink-soft);margin-top:3px;font-size:9px;font-weight:400;display:block}.tms .wrap{max-width:980px;padding:clamp(28px, 6vw, 64px) var(--pad) 96px;margin:0 auto}.tms .hero h1{font-family:var(--serif);letter-spacing:-.01em;margin-top:14px;font-size:clamp(34px,6vw,62px);font-weight:400;line-height:1.02}.tms .hero .sub{color:var(--ink-soft);max-width:52ch;margin-top:16px;font-size:clamp(14px,1.4vw,16px);line-height:1.6}.tms .card{background:var(--paper2);border:1px solid var(--line);border-radius:14px;padding:clamp(18px,3vw,28px)}.tms .grid{gap:16px;display:grid}@media (min-width:720px){.tms .grid.two{grid-template-columns:1fr 1fr}}.tms .sec{margin-top:clamp(34px,6vw,64px)}.tms .sec h2{font-family:var(--serif);margin-top:10px;margin-bottom:18px;font-size:clamp(24px,3.4vw,36px);font-weight:400;line-height:1.1}.tms .score{align-items:baseline;gap:10px;display:flex}.tms .score .big{font-family:var(--serif);font-size:clamp(40px,6vw,60px);line-height:1}.tms .score .of{color:var(--ink-soft);font-size:15px}.tms .provisional{border:1px solid var(--line);font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);border-radius:30px;margin-top:10px;padding:5px 13px;font-size:10px;display:inline-block}.tms .topic{align-items:center;gap:12px;padding:9px 0;display:flex}.tms .topic+.topic{border-top:1px solid var(--line)}.tms .topic .name{flex:1;font-size:14px}.tms .topic .track{background:#141a2e14;border-radius:4px;width:clamp(80px,22vw,160px);height:6px;display:block;overflow:hidden}.tms .topic .fill{background:var(--green);border-radius:4px;height:100%;display:block}.tms .topic .fill.low{background:var(--ink-soft)}.tms .topic .val{text-align:right;width:52px;font-family:var(--mono);color:var(--ink-soft);font-size:11px}.tms .letter p{font-size:clamp(15px,1.6vw,17px);line-height:1.75}.tms .langs{gap:8px;display:flex}.tms .langs button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:24px;padding:7px 16px;font-size:12.5px;transition:all .25s}.tms .langs button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.tms ol.actions{counter-reset:a;margin-top:6px;list-style:none}.tms ol.actions li{counter-increment:a;border-top:1px solid var(--line);padding:14px 0 14px 44px;font-size:15px;line-height:1.55;position:relative}.tms ol.actions li:before{content:counter(a);background:var(--green);color:#fff;width:26px;height:26px;font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;top:13px;left:0}.tms .note{border-left:2px solid var(--green);color:var(--ink-soft);padding:4px 0 4px 16px;font-size:13.5px;line-height:1.6}.tms .gate{justify-content:center;align-items:center;min-height:72vh;display:flex}.tms .gate .card{text-align:center;width:min(440px,100%)}.tms .gate input{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font-family:var(--mono);letter-spacing:.34em;text-align:center;text-transform:uppercase;border-radius:10px;outline:none;margin-top:18px;padding:15px 16px;font-size:20px}.tms .gate input:focus{border-color:var(--green)}.tms .gate button.go{background:var(--green);color:#fff;border:1px solid var(--green);cursor:pointer;border-radius:26px;width:100%;margin-top:12px;padding:14px;font-size:14px;transition:all .25s}.tms .gate button.go:hover{background:var(--green-d);border-color:var(--green-d)}.tms .gate button.go:disabled{opacity:.55;cursor:default}.tms .err{color:#a3262b;margin-top:12px;font-size:13px}.tms footer.foot{border-top:1px solid var(--line);padding:26px var(--pad);color:var(--ink-soft);font-size:12.5px;line-height:1.7}.tms .practice .lead{color:var(--ink-soft);margin-top:8px;font-size:14px;line-height:1.6}.tms ol.qlist{counter-reset:q;margin-top:10px;list-style:none}.tms ol.qlist>li{counter-increment:q;border-top:1px solid var(--line);padding:18px 0 18px 44px;position:relative}.tms ol.qlist>li:before{content:counter(q);border:1px solid var(--line);width:26px;height:26px;color:var(--ink-soft);font-family:var(--mono);border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;top:18px;left:0}.tms ol.qlist .q{white-space:pre-wrap;font-size:15px;line-height:1.6}.tms ol.qlist .opts{margin-top:8px;list-style:none}.tms ol.qlist .opts li{font-family:var(--mono);color:var(--ink-soft);padding:2px 0;font-size:13px}.tms ol.qlist details{margin-top:10px}.tms ol.qlist summary{cursor:pointer;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--green);border:1px solid var(--line);border-radius:30px;padding:5px 13px;font-size:10px;display:inline-block}.tms ol.qlist .ans{background:var(--paper);white-space:pre-wrap;border-radius:8px;margin-top:10px;padding:12px 14px;font-size:14px;line-height:1.65}.tms .gatetitle{margin-top:12px;font-size:clamp(26px,4vw,38px);line-height:1.1}.tms .gatelead{color:var(--ink-soft);margin-top:12px;font-size:14.5px;line-height:1.6}.tms .linkish{cursor:pointer;color:var(--ink-soft);text-underline-offset:3px;background:0 0;border:none;margin-top:14px;font-size:13px;text-decoration:underline}.tms .linkish:hover{color:var(--green)}.tms .picklist{gap:10px;margin-top:18px;display:grid}.tms .picklist button{text-align:left;border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:baseline;gap:12px;width:100%;padding:16px 18px;transition:all .2s;display:flex}.tms .picklist button:hover{border-color:var(--green)}.tms .picklist button b{font-size:16px;font-weight:600}.tms .picklist button span{font-family:var(--mono);color:var(--ink-soft);font-size:11px}.tms .paper .paperhead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.tms .paper .lead{color:var(--ink-soft);max-width:54ch;margin-top:8px;font-size:14px;line-height:1.6}.tms .papertotal{font-family:var(--serif);white-space:nowrap;font-size:34px;line-height:1}.tms .papertotal span{font-family:var(--mono);color:var(--ink-soft);font-size:13px}.tms ol.qrows{list-style:none}.tms ol.qrows>li+li{border-top:1px solid var(--line)}.tms ol.qrows button{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:14px;padding:13px 6px;transition:all .15s;display:flex}.tms ol.qrows button:hover{background:var(--paper)}.tms ol.qrows .qn{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-soft);flex:none;width:34px;font-size:11px}.tms ol.qrows .qt{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;font-size:14.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.tms .qm{font-family:var(--mono);border:1px solid var(--line);white-space:nowrap;border-radius:30px;flex:none;padding:5px 12px;font-size:12px}.tms .qm em{color:var(--ink-soft);font-style:normal}.tms .qm.full{border-color:var(--green);color:var(--green-d)}.tms .qm.part{border-color:var(--green-l)}.tms .qm.none{color:#a3262b;border-color:#a3262b59}.tms .viewer{z-index:40;background:var(--paper);flex-direction:column;display:flex;position:fixed;inset:0}.tms .viewer .vbar{padding:16px var(--pad);border-bottom:1px solid var(--line);background:var(--paper2);justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.tms .viewer .vq{max-width:70ch;margin-top:8px;font-size:15px;line-height:1.55}.tms .viewer .vclose{border:1px solid var(--line);cursor:pointer;width:38px;height:38px;color:var(--ink-soft);background:0 0;border-radius:50%;flex:none;font-size:14px}.tms .viewer .vclose:hover{border-color:var(--green);color:var(--green-d)}.tms .viewer .vbody{flex:1;gap:0;display:grid;overflow:auto}@media (min-width:900px){.tms .viewer .vbody{grid-template-columns:1fr 1fr;overflow:hidden}.tms .viewer .vscan,.tms .viewer .vmark{height:100%;overflow:auto}}.tms .viewer .vscan{padding:20px var(--pad);background:#141a2e0a;flex-direction:column;gap:14px;display:flex}.tms .viewer .vscan img{border:1px solid var(--line);background:#fff;border-radius:10px;width:100%;height:auto}.tms .viewer .vmark{padding:22px var(--pad);flex-direction:column;gap:22px;display:flex}.tms .viewer .vmark section{flex-direction:column;gap:10px;display:flex}.tms .viewer .vmarks{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tms .viewer .vmarks .qm{padding:8px 16px;font-size:15px}.tms .viewer .vwho{color:var(--ink-soft);font-size:12.5px}.tms .wrote{font-family:var(--mono);white-space:pre-wrap;word-break:break-word;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.7}.tms .opt{color:var(--ink-soft);font-size:14px}.tms .exp{font-size:14.5px;line-height:1.7}.tms ul.expsteps,.tms ul.whysteps{flex-direction:column;list-style:none;display:flex}.tms ul.expsteps li{border-top:1px solid var(--line);gap:12px;padding:9px 0;font-size:14px;line-height:1.6;display:flex}.tms ul.expsteps li span{font-family:var(--mono);color:var(--ink-soft);flex:none;font-size:11px}.tms ul.whysteps li{border-top:1px solid var(--line);gap:12px;padding:11px 0;font-size:14px;line-height:1.6;display:flex}.tms ul.whysteps li em{color:var(--ink-soft);margin-top:5px;font-size:13px;font-style:italic;display:block}.tms ul.whysteps .sm{font-family:var(--mono);border:1px solid var(--line);height:fit-content;color:var(--ink-soft);border-radius:30px;flex:none;padding:3px 9px;font-size:11px}.tms ul.whysteps li.got .sm{border-color:var(--green);color:var(--green-d)}.tms ul.whysteps li.lost .sm{color:#a3262b;border-color:#a3262b59}.tms .viewer .vfoot{padding:12px var(--pad);border-top:1px solid var(--line);background:var(--paper2);justify-content:space-between;align-items:center;gap:12px;display:flex}.tms .viewer .vfoot span{font-family:var(--mono);color:var(--ink-soft);font-size:11px}.tms .viewer .vfoot button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;border-radius:26px;padding:9px 18px;font-size:13px}.tms .viewer .vfoot button:hover:not(:disabled){border-color:var(--green);color:var(--green-d)}.tms .viewer .vfoot button:disabled{opacity:.35;cursor:default}.tms .qm.checking{border-color:var(--line);color:var(--ink-soft);border-style:dashed}
