.subject{--finder-h:104px;--margin:84px;--name-w:118px;--cell-w:196px}.board-edexcel{--name-w:172px;--cell-w:262px}.cover{border-bottom:2px solid var(--outline)}.cover-in{padding-block:clamp(22px,4vw,44px) clamp(22px,3.4vw,36px);padding-left:calc(var(--gutter) + clamp(18px, 4.6vw, 56px));justify-content:space-between;align-items:flex-end;gap:24px 40px;display:flex}.cover-text{min-width:0}.crumbs{font-family:var(--pm-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--pm-ink-3);gap:8px;margin-bottom:12px;font-size:13px;font-weight:700;display:flex}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--pm-pink-text);text-decoration:underline}.cover h1{letter-spacing:-.038em;max-width:16ch;font-size:clamp(38px,6.2vw,72px);line-height:.98}.code-tag{border:2px solid var(--pm-on-pencil);border-radius:var(--pm-radius-full);background:var(--pm-pencil);color:var(--pm-on-pencil);letter-spacing:0;vertical-align:.6em;white-space:nowrap;margin-left:.25em;padding:.3em .75em;font-size:clamp(14px,1.5vw,18px);font-weight:700;line-height:1.2;display:inline-block;rotate:-3deg}.facts{color:var(--pm-ink-2);margin-top:16px;font-size:14px;font-weight:700}.retired{border-radius:var(--pm-radius-full);background:var(--pm-surface-sunken);color:var(--pm-ink-3);margin-left:10px;padding:2px 9px}.to-revise{border:2px solid var(--pm-on-pencil);border-radius:var(--pm-radius-full);background:var(--pm-pencil);min-height:46px;color:var(--pm-on-pencil);box-shadow:0 3px 0 var(--pm-on-pencil);align-items:center;gap:9px;margin-top:16px;padding:0 8px 0 14px;font-weight:800;text-decoration:none;transition:translate 80ms,box-shadow 80ms;display:inline-flex}.to-revise:active{box-shadow:0 1px 0 var(--pm-on-pencil);translate:0 2px}.to-revise .mono{border-radius:var(--pm-radius-full);background:var(--pm-on-pencil);color:var(--pm-pencil);padding:3px 10px;font-size:12.5px;font-weight:700}.exam-dates{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:14px;font-size:14.5px;display:flex}.exam-dates b{margin-right:2px;font-weight:800}.exam-dates a{border:2px solid var(--outline);border-radius:var(--pm-radius-full);background:var(--pm-surface-raised);padding:3px 11px;font-weight:700;text-decoration:none}.exam-dates a:hover{background:var(--pm-pink-soft)}.meter{color:var(--pm-ink-2);align-items:center;gap:12px;margin-top:14px;font-size:14.5px;display:flex}.meter-track{border:2px solid var(--outline);border-radius:var(--pm-radius-full);background:var(--pm-surface-raised);width:min(240px,44vw);height:12px;overflow:hidden}.meter-track span{background:var(--pm-otto);width:0;height:100%;transition:width .4s cubic-bezier(.2,.9,.3,1);display:block}.meter b{color:var(--pm-ink)}.stickies{flex-wrap:wrap;gap:14px;margin-top:22px;display:flex}.stickies li{background:var(--pm-pencil);width:min(100%,250px);color:var(--pm-on-pencil);border-radius:2px 2px 16px;padding:16px 14px 14px;font-size:14px;font-weight:600;line-height:1.38;position:relative;rotate:-1.4deg;box-shadow:3px 4px #0a0e1e33}.stickies li:nth-child(2n){background:var(--pm-otto-light);rotate:1.2deg}.stickies li:nth-child(3n){background:#bcd3ff;rotate:-.6deg}.stickies li:before{content:"";background:#ffffff8c;width:62px;height:18px;position:absolute;top:-8px;left:50%;translate:-50%;rotate:-2deg;box-shadow:0 1px #0a0e1e14}.cover-otto{flex:none;margin-bottom:-6px}.cover-otto.is-chomping .otto-sticker{animation:.5s cubic-bezier(.3,1.4,.5,1) chomp}@keyframes chomp{30%{rotate:-4deg;scale:1.1 .9}60%{rotate:8deg;scale:.95 1.07}}.finder{top:var(--header-h);z-index:20;background:var(--header-bg);backdrop-filter:saturate(1.4)blur(10px);border-bottom:2px solid var(--outline);position:sticky}.finder-row{scrollbar-width:none;align-items:center;gap:8px;margin-inline:-2px;padding:10px 2px 7px;display:flex;overflow-x:auto}.finder-row+.finder-row{padding-top:3px;padding-bottom:10px}.chip{border:2px solid var(--outline);border-radius:var(--pm-radius-full);background:var(--key);height:40px;box-shadow:0 3px 0 var(--outline);white-space:nowrap;flex:none;align-items:center;gap:7px;padding:0 16px;font-size:15px;font-weight:800;transition:translate 80ms,box-shadow 80ms,background-color .12s;display:inline-flex}.chip .mono{opacity:.65;font-size:12px;font-weight:700}.chip:hover{background:var(--pm-pink-soft)}.chip:active,.chip[aria-pressed=true]{box-shadow:0 1px 0 var(--outline);translate:0 2px}.chip[aria-pressed=true]{background:var(--pm-otto);color:var(--pm-on-otto)}.seg,.tool{border:2px solid var(--outline);border-radius:var(--pm-radius-full);background:var(--pm-surface-raised);white-space:nowrap;flex:none;align-items:center;height:36px;font-size:14px;font-weight:700;display:inline-flex}.seg{overflow:hidden}.seg>span{font-family:var(--pm-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--pm-ink-3);padding:0 4px 0 12px;font-size:12px}.seg button{background:0 0;border:0;min-width:34px;height:100%;padding:0 11px;font-weight:700}.seg button:hover{background:var(--pm-surface-sunken)}.seg button[aria-pressed=true]{background:var(--pm-ink);color:var(--pm-surface-raised)}.tool{gap:7px;padding:0 14px}button.tool:hover{background:var(--pm-surface-sunken)}.tool.jump{padding:0;position:relative}.jump select{border-radius:inherit;appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1.5 1.5 6 6l4.5-4.5' fill='none' stroke='%237D8499' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") right 12px center/10px no-repeat;border:0;height:100%;padding:0 30px 0 14px;font-weight:700}.tool.lucky{background:var(--pm-pencil);color:var(--pm-on-pencil);border-color:var(--pm-on-pencil);margin-left:auto;padding-left:8px}.tool.lucky:hover{background:#ffdc66}.tool.lucky img{transition:rotate .3s cubic-bezier(.3,1.6,.5,1)}.tool.lucky:hover img{rotate:-14deg}.switch{color:var(--pm-ink-2);white-space:nowrap;cursor:pointer;flex:none;align-items:center;gap:8px;font-size:14px;font-weight:700;display:inline-flex}.switch input{border-radius:var(--pm-radius-full);background:var(--pm-control-border);appearance:none;cursor:pointer;width:38px;height:22px;margin:0;transition:background-color .15s;position:relative}.switch input:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:translate .15s;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--pm-pink-text)}.switch input:checked:after{translate:16px}.shelf{padding-top:clamp(20px,3vw,32px)}.ledger{border:2px solid var(--outline);background:var(--paper-recent);box-shadow:6px 6px 0 var(--pop);border-radius:22px;overflow:clip}.era+.era{border-top:2px solid var(--outline)}.era-past{background:var(--paper-past)}.era-ancient{background:var(--paper-ancient)}.era-head{border-bottom:2px solid var(--outline);background:var(--pm-pink-soft);flex-wrap:wrap;align-items:baseline;gap:2px 12px;padding:14px 18px 12px;display:flex}.era-past .era-head{background:var(--pm-mug-soft)}.era-ancient .era-head{background:color-mix(in oklab, var(--pm-pencil) 55%, var(--paper-ancient));color:var(--pm-on-pencil)}.era-head h2{font-size:24px}.era-head .mono{opacity:.75;font-size:13px;font-weight:700}.era-head p{opacity:.85;flex-basis:100%;font-size:14.5px}.year{grid-template-columns:var(--margin) minmax(0, 1fr);scroll-margin-top:calc(var(--header-h) + var(--finder-h) + 8px);display:grid}.year+.year{border-top:1px solid var(--pm-ruled-line)}.year-num{top:calc(var(--header-h) + var(--finder-h) + 6px);font-family:var(--pm-font-mono);letter-spacing:0;align-self:start;padding:15px 10px 12px 18px;font-size:15.5px;font-weight:700;position:sticky}.year-sits{border-left:2px solid var(--pm-ruled-margin);min-width:0}.sit{scroll-margin-top:calc(var(--header-h) + var(--finder-h) + 8px)}.sit+.sit{border-top:1px solid var(--pm-ruled-line)}.sit>summary{cursor:pointer;align-items:center;gap:10px;padding:13px 16px;list-style:none;transition:background-color .12s;display:flex}.sit>summary::-webkit-details-marker{display:none}.sit>summary:hover{background:color-mix(in oklab, var(--pm-otto) 9%, transparent)}.sit>summary b{font-family:var(--pm-font-display);letter-spacing:-.02em;font-size:18px;font-weight:800}.sit-tag{color:var(--pm-ink-3);font-size:12.5px;font-weight:700}.sit-count{color:var(--pm-ink-3);margin-left:auto;font-size:13.5px}.sit>summary:after{content:"";border-right:2.5px solid var(--pm-ink-2);border-bottom:2.5px solid var(--pm-ink-2);flex:none;width:9px;height:9px;transition:rotate .15s,translate .15s;translate:0 -2px;rotate:45deg}.sit[open]>summary:after{translate:0 2px;rotate:225deg}.sit[open]>summary{border-bottom:1px dashed var(--pm-ruled-margin)}.sit-docs{color:var(--pm-ink-2);flex-wrap:wrap;gap:2px 16px;padding:9px 16px 2px;font-size:13.5px;font-weight:700;display:flex}.sit-docs a:hover{color:var(--pm-pink-text)}.sit-docs .locked{color:var(--pm-ink-3)}.sit-locked p{color:var(--pm-ink-3);flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding:11px 16px;font-size:14px;display:flex}.sit-locked b{color:var(--pm-ink-2)}.sit-out{color:var(--pm-pink-text);white-space:nowrap;margin-left:auto;font-weight:800}.sit-locked b:before,.doc-locked:before{content:"";background:currentColor;flex:none;width:10px;height:12px;margin-right:7px;display:inline-block;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 12'%3E%3Cpath d='M2.5 5V3.5a2.5 2.5 0 0 1 5 0V5' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3Crect x='1' y='5' width='8' height='6.5' rx='1.6'/%3E%3C/svg%3E") 50%/contain no-repeat}.doc-locked:before{margin-right:0}.row{grid-template-columns:var(--name-w) minmax(0, 1fr);padding-left:16px;display:grid}.row+.row{border-top:1px solid var(--pm-ruled-line)}.row-name{flex-direction:column;justify-content:center;padding:9px 10px 9px 0;line-height:1.25;display:flex}.row-name b{font-size:14.5px}.row-name span{color:var(--pm-ink-3);margin-top:2px;font-size:12.5px}.row-when{display:none}.cells{grid-template-columns:repeat(auto-fill, minmax(var(--cell-w), 1fr));gap:0 6px;padding:4px 8px 4px 0;display:grid}.cell{min-height:44px;scroll-margin-top:calc(var(--header-h) + var(--finder-h) + 90px);border-radius:12px;align-items:center;gap:6px;padding:4px 8px 4px 2px;transition:background-color .2s;display:flex}.cell-code{min-width:2.6ch;color:var(--pm-ink-2);margin-right:4px;font-size:14px;font-weight:700}.board-edexcel .cell-code{min-width:9.4ch}.cell-code i{font-style:normal}.cell.has-notes .cell-code{background:linear-gradient(transparent 55%, var(--pm-pencil) 55%);color:var(--pm-ink)}.doc{white-space:nowrap;border:2px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:5px;min-width:46px;height:34px;padding:0 11px;font-size:13.5px;font-weight:800;line-height:1;text-decoration:none;transition:background-color .12s,color .12s,translate .1s;display:inline-flex}a.doc:active{translate:0 1px}.doc-qp{border-color:var(--pm-ink);background-color:var(--pm-ink);color:var(--pm-surface-raised)}a.doc-qp:visited{border-color:var(--pm-ink-3);background-color:var(--pm-ink-3)}a.doc-qp:hover{border-color:var(--pm-ink);background-color:var(--pm-otto);color:var(--pm-on-otto)}.doc-ms{border-color:var(--pm-pink-text);color:var(--pm-pink-text)}a.doc-ms:visited{border-color:var(--pm-otto-light)}a.doc-ms:hover{border-color:var(--pm-pink-text);background-color:var(--pm-pink-soft)}.doc-extra{background-color:color-mix(in oklab, var(--pm-ink) 8%, transparent);min-width:0;height:28px;color:var(--pm-ink-2);border-radius:8px;padding:0 9px;font-size:12.5px}a.doc-extra:hover{color:var(--pm-ink);background-color:color-mix(in oklab, var(--pm-ink) 16%, transparent)}.doc-none{border:2px dashed var(--pm-line);color:var(--pm-ink-3);opacity:.7;background:0 0;text-decoration:line-through}.doc-locked{background-color:color-mix(in oklab, var(--pm-ink) 8%, transparent);color:var(--pm-ink-3);cursor:help;border-color:#0000}.is-flat .sit>summary,.is-flat .sit-docs,.is-flat .sit-locked,.is-flat .row-what,.is-flat .row-name span{display:none}.is-flat .row-when{font-family:var(--pm-font-display);letter-spacing:-.015em;font-size:16px;font-weight:800;display:block}.is-flat .row{--name-w:100px}.munch,.munch-gap{flex:none;width:36px;height:36px}.munch{color:var(--pm-control-border);background:0 0;border:0;border-radius:50%;padding:0;transition:color .12s,background-color .12s;position:relative}.munch:before{content:"";background:currentColor;position:absolute;inset:8px;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect x='4.4' y='2.4' width='11.2' height='15.2' rx='2' fill='none' stroke='%23000' stroke-width='1.8'/%3E%3Cpath d='M7.6 8h4.8M7.6 11.6h4.8' stroke='%23000' stroke-width='1.7' stroke-linecap='round'/%3E%3C/svg%3E") 50%/contain no-repeat}.munch:hover{color:var(--pm-pink-text);background-color:var(--pm-pink-soft)}.munch[aria-pressed=true]{color:var(--pm-otto)}.munch[aria-pressed=true]:before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cdefs%3E%3Cmask id='b'%3E%3Crect width='20' height='20' fill='%23fff'/%3E%3Ccircle cx='15.6' cy='3.4' r='3.1'/%3E%3Ccircle cx='11.6' cy='1.9' r='1.9'/%3E%3Ccircle cx='16.6' cy='7.6' r='1.9'/%3E%3Cpath d='M7 11.2l2.3 2.3 4-4.6' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/mask%3E%3C/defs%3E%3Crect x='3.6' y='1.6' width='12.8' height='16.8' rx='2.4' mask='url(%23b)'/%3E%3C/svg%3E")}.munch.is-chomping:before{animation:.34s cubic-bezier(.3,1.5,.5,1) bite}@keyframes bite{40%{rotate:-12deg;scale:.7}}.cell[data-munched]{background-color:color-mix(in oklab, var(--pm-otto) 16%, transparent)}.cell[data-munched] .cell-code{color:var(--pm-pink-text)}.cell:target,.cell.is-target{background-color:color-mix(in oklab, var(--pm-pencil) 50%, transparent);box-shadow:0 0 0 2px var(--pm-pencil)}.sit:target>summary,.sit.is-target>summary{background-color:color-mix(in oklab, var(--pm-pencil) 45%, transparent)}.blank{text-align:center;color:var(--pm-ink-2);justify-items:center;gap:14px;padding:clamp(48px,9vw,96px) 24px;display:grid}.blank .mono{letter-spacing:.22em;color:var(--pm-ink);font-size:15px;font-weight:700}.the-end{letter-spacing:.03em;text-align:center;color:var(--pm-ink-3);margin-top:40px;font-size:12.5px;font-weight:700}.elsewhere{margin-top:52px}.elsewhere h2{font-size:24px}.elsewhere ul{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:16px;display:grid}.elsewhere a{border:2px solid var(--outline);background:var(--pm-surface-raised);height:100%;box-shadow:4px 4px 0 var(--pop);border-radius:16px;grid-template-columns:auto 1fr;align-items:center;gap:0 12px;padding:12px 14px;line-height:1.3;text-decoration:none;transition:translate .1s,box-shadow .1s;display:grid}.elsewhere a:hover{box-shadow:6px 6px 0 var(--pop);translate:-1px -1px}.elsewhere .mono{background:var(--pm-pencil);color:var(--pm-on-pencil);border-radius:8px;grid-row:span 2;padding:5px 9px;font-size:13px;font-weight:700}.elsewhere a span:last-child{color:var(--pm-ink-3);font-size:13.5px}.toast{z-index:40;border:2px solid var(--pm-on-pencil);border-radius:var(--pm-radius-full);background:var(--pm-pencil);max-width:calc(100vw - 32px);color:var(--pm-on-pencil);box-shadow:0 4px 0 var(--pm-on-pencil);padding:11px 18px;font-size:14.5px;font-weight:700;animation:.25s cubic-bezier(.2,.9,.3,1.2) toast-in;position:fixed;bottom:22px;left:50%;translate:-50%}@keyframes toast-in{0%{opacity:0;translate:-50% 12px}}@media (width<=860px){.cover-in{flex-direction:column;align-items:flex-start}.cover-otto{align-self:flex-end}.tool.lucky{margin-left:0}}@media (width<=700px){.subject{--cell-w:100%;--margin:0px}.cover-in{padding-left:calc(var(--gutter) + 26px)}.ruled.cover{--margin-x:18px}.cover-otto .otto-sticker{width:104px!important}.ledger{box-shadow:4px 4px 0 var(--pop);border-radius:18px}.year{grid-template-columns:minmax(0,1fr)}.year-num{border-bottom:2px solid var(--pm-ruled-margin);padding:9px 16px 7px;font-size:14px;position:static}.year-sits{border-left:0}.row{grid-template-columns:minmax(0,1fr);padding-left:12px}.row-name{flex-direction:row;justify-content:flex-start;align-items:baseline;gap:8px;padding:11px 10px 0 4px}.cells{grid-template-columns:minmax(0,1fr)}.cell{flex-wrap:wrap;min-height:50px}.doc{min-width:54px;height:40px}.doc-extra{height:34px}.munch,.munch-gap{width:42px;height:42px}.munch:before{inset:10px}.is-flat .row-name{align-items:center;padding:0 6px 0 4px}.is-flat .row-when{font-size:14.5px}.is-flat .cell-code i{display:none}.board-edexcel .is-flat .cell-code{min-width:3.2ch}.is-flat .cell{flex-wrap:nowrap;gap:5px}.is-flat .row{grid-template-columns:76px minmax(0,1fr)}.is-flat .doc{min-width:46px;padding-inline:9px}.is-flat .munch,.is-flat .munch-gap{width:36px}}@media (width<=720px){.toast{bottom:calc(78px + env(safe-area-inset-bottom))}}.sit-own{color:var(--pm-ink-3);padding:10px 0 4px;font-size:13.5px;font-weight:700}.sit-own a:hover{color:var(--pm-pink-text)}.sitting-page .shelf{padding-top:clamp(18px,3vw,30px)}.sitting-page .sit>summary{pointer-events:none}.sitting-about{max-width:68ch;color:var(--pm-ink-2);margin-top:clamp(22px,4vw,36px)}.sitting-about h2{color:var(--pm-ink);font-size:clamp(21px,2.5vw,26px)}.sitting-about p{margin-top:8px}.sitting-about a{color:var(--pm-pink-text);font-weight:700}.subject-about{margin-top:clamp(30px,5vw,48px)}.sitting-refs{flex-wrap:wrap;gap:6px 8px;margin-top:12px;display:flex}.sitting-refs li{border:2px solid var(--pm-line);border-radius:var(--pm-radius-full);background:var(--pm-surface-raised);font-family:var(--pm-font-mono);padding:3px 10px;font-size:13px;font-weight:700}.sitting-refs b{font-weight:700}.sitting-refs.with-files{gap:4px;display:grid}.sitting-refs.with-files li{background:0 0;border-width:0 0 1.5px;border-radius:0;padding:5px 10px}.sitting-refs.with-files span{color:var(--pm-ink-3);font-weight:400}.sitting-nav{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:clamp(24px,4vw,40px);display:flex}.sitting-nav a{border:2px solid var(--outline);background:var(--pm-surface-raised);box-shadow:3px 3px 0 var(--pop);border-radius:16px;flex-direction:column;gap:2px;padding:10px 16px;font-weight:800;line-height:1.2;text-decoration:none;display:flex}.sitting-nav a:hover{background:var(--pm-pink-soft)}.sitting-nav a span{font-family:var(--pm-font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--pm-ink-3);font-size:12px}.sitting-nav .newer{text-align:right;margin-left:auto}.doc-worked{border-color:var(--pm-on-pencil);background:var(--pm-pencil);color:var(--pm-on-pencil);flex:none}.cell:has(.doc-worked){grid-column:span 2}@media (width<=700px){.cell:has(.doc-worked){flex-wrap:wrap;grid-column:auto}}a.doc-worked:hover{background:#ffdf70}
