.target{font-weight:1000}body.plot-points-page,body.plot-series-page,body.function-machines-page,body.number-puzzles-page,body.ul-page,body.pictorial-fractions-page{background:radial-gradient(circle at 0 100%,#d9d2ff 0,#0000 32%),radial-gradient(circle at 100% 20%,#cfe6ff 0,#0000 30%),linear-gradient(#eef5ff,#e8efff);min-height:100vh}.pp-shell{width:min(1280px,100% - 32px);margin:0 auto;padding:6px 0 14px}.pp-titlebar{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;min-height:76px;display:grid}.pp-back{color:#0b1026;background:#d9e9ff;border-radius:14px;justify-self:start;align-items:center;gap:8px;padding:11px 18px;font-weight:800;text-decoration:none;display:inline-flex}.pp-title{text-align:center}.pp-title h1{color:#0b1026;margin:0;font-size:clamp(30px,3.4vw,44px);line-height:1.05}.pp-title p{color:#4d5671;margin:3px 0 0;font-size:15px}.pp-badge{text-align:center;color:#0b1026;clip-path:polygon(2% 12%,98% 0,100% 88%,96% 100%,4% 92%,0 60%);background:#ffe600;justify-self:end;padding:9px 30px 8px;line-height:1.15;transform:rotate(-2deg)}.pp-badge strong{font-size:21px;font-weight:1000;display:block}.pp-badge span{color:#0a9a93;letter-spacing:.5px;font-size:13px;font-weight:900}.pp-body{height:calc(100vh - var(--header-h) - 100px);grid-template-columns:minmax(0,1fr) 380px;gap:14px;min-height:560px;display:grid}.pp-graph{background:#fff;border-radius:24px;place-items:center;min-height:0;padding:8px;display:grid;box-shadow:0 12px 32px #0b10261a;container-type:size}.pp-graph canvas{aspect-ratio:1;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:min(100cqw,100cqh);height:auto;display:block}.pp-side{flex-direction:column;gap:10px;min-height:0;display:flex}.pp-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 26px #0b10261a}.pp-question{flex-direction:column;flex:1.3;min-height:0;display:flex}.pp-q-head{background:#d8f7f3;justify-content:space-between;align-items:center;padding:12px 18px;font-size:17px;font-weight:900;display:flex}.pp-q-body{text-align:center;background:linear-gradient(#f0fffd,#fff);flex-direction:column;flex:1;justify-content:center;padding:8px 12px;display:flex}.pp-q-label{margin:0;font-size:22px;font-weight:900}.pp-question .target{background:linear-gradient(90deg,#7b2cfb,#3d5bff);color:#0000;-webkit-background-clip:text;background-clip:text;margin:2px 0 0;font-size:clamp(48px,6vh,66px);line-height:1.1}.pp-tip{background:#fff6dc;border-radius:16px;align-items:center;gap:12px;padding:10px 14px;display:flex;box-shadow:0 6px 16px #0b10260f}.pp-tip p{margin:0;font-size:14px;line-height:1.35}.pp-bulb{background:#ffe600;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-size:22px;display:grid}.pp-new{color:#fff;cursor:pointer;background:#26b4ff;border:0;border-radius:16px;justify-content:center;align-items:center;gap:12px;padding:14px;font-size:22px;font-weight:900;display:flex;box-shadow:0 6px #1690d4}.pp-new:active{transform:translateY(3px);box-shadow:0 3px #1690d4}.pp-streak{padding:12px 18px}.pp-streak-head{justify-content:space-between;font-size:18px;display:flex}.pp-dots{gap:8px;margin:10px 0 8px;display:flex}.pp-dot{aspect-ratio:1;color:#fff;background:#dfe3ec;border-radius:50%;flex:1;place-items:center;max-width:30px;font-size:14px;font-weight:900;display:grid}.pp-dot.ok{background:#1fb865}.pp-dot.bad{background:#f0134d}.pp-dot.now{background:#fff;box-shadow:inset 0 0 0 3px #9adfb8}.pp-bar{background:#dfe3ec;border-radius:9px;height:14px;overflow:hidden}.pp-bar span{background:linear-gradient(90deg,#39d353,#7ed321);border-radius:9px;width:0;height:100%;transition:width .3s;display:block}.pp-streak-note{text-align:center;color:#0b1026;margin:8px 0 0;font-size:14px}.pp-cheer{background:linear-gradient(135deg,#e7dcff,#f3e9ff);border-radius:20px;align-items:center;gap:14px;padding:10px 20px;display:flex;box-shadow:0 10px 26px #0b10261a}.pp-cheer[data-state=good]{background:linear-gradient(135deg,#d6f7e4,#eafcf1)}.pp-cheer[data-state=try]{background:linear-gradient(135deg,#ffe6d1,#fff1e6)}.pp-cheer[data-state=done]{background:linear-gradient(135deg,#ffe98a,#fff6c8)}.pp-trophy{font-size:44px;line-height:1}.pp-cheer b{color:#6a1fe0;font-size:22px;display:block}.pp-cheer p{color:#3d4360;margin:2px 0 0;font-size:15px}.m-only,.pp-tick,.pp-footer{display:none}@media (width<=850px){body.plot-points-page{background:linear-gradient(#eef5ff,#e9f0ff 60%,#f3ecff);flex-direction:column;height:100dvh;display:flex}.d-only{display:none}.m-only{display:inline}.pp-shell{flex-direction:column;flex:1;width:min(100% - 16px,640px);min-height:0;padding:8px 0 10px;display:flex}.pp-titlebar{flex:none;justify-content:space-between;align-items:center;min-height:0;padding:0 0 8px;display:flex}.pp-title{display:none}.pp-back{border-radius:12px;padding:8px 14px;font-size:15px}.pp-badge{padding:6px 22px 5px}.pp-badge strong{font-size:16px}.pp-badge span{font-size:12px}.pp-body{flex-direction:column;flex:1;gap:8px;height:auto;min-height:0;display:flex}.pp-side{display:contents}.pp-question{border-radius:16px;flex:none;order:1}.pp-q-head{display:none}.pp-q-body{background:#fff;padding:8px 10px 4px}.pp-q-label{font-size:18px}.pp-question .target{font-size:44px;line-height:1.2}.pp-cheer{order:1}.pp-cheer[data-state=go]{display:none}.pp-tip{box-shadow:none;background:#dcefff;border-radius:14px;flex:none;order:2;padding:6px 12px}.pp-tip p.m-only{font-size:13px;line-height:1.3;display:block}.pp-bulb{background:0 0;width:auto;height:auto;font-size:26px}.pp-graph{border-radius:16px;flex:1;order:3;min-height:240px;padding:4px;container-type:size}.pp-graph canvas{width:min(100cqw,100cqh)}.pp-streak{background:#fde8f3;border-radius:16px;flex:none;order:4;padding:8px 14px}.pp-streak-head{font-size:16px}.pp-bar,.pp-streak-note{display:none}.pp-dots{gap:5px;margin:6px 0 0}.pp-dot{max-width:30px;font-size:12px}.pp-new{background:#ff1a8c;flex:none;order:5;padding:11px;font-size:20px;box-shadow:0 4px #c40e69}.pp-new:active{box-shadow:0 1px #c40e69}.pp-footer{text-align:center;color:#5b1fd6;flex:none;order:5;margin:0;font:italic 700 20px Brush Script MT,Segoe Script,cursive;display:block}.pp-footer span{color:#ffc400;font-size:18px;font-style:normal}.pp-footer span:last-child{color:#f0186f}.pp-body[data-state=go] .pp-new,.pp-body:not([data-state=go]) .pp-footer,.pp-body:not([data-state=go]) .pp-question,.pp-body:not([data-state=go]) .pp-tip{display:none}.pp-cheer{border-radius:16px;flex:none;gap:12px;padding:10px 14px;position:relative;overflow:hidden}.pp-cheer .pp-trophy{display:none}.pp-cheer b{color:#0b1026;font-size:22px}.pp-cheer p{color:#0b1026;font-size:15px}.pp-tick{color:#fff;background:#1fb865;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:28px;font-weight:900;display:grid}.pp-cheer[data-state=good] .pp-tick:before,.pp-cheer[data-state=go] .pp-tick:before{content:"✓"}.pp-cheer[data-state=try] .pp-tick{background:#ff8a1f}.pp-cheer[data-state=try] .pp-tick:before{content:"!"}.pp-cheer[data-state=done] .pp-tick{background:#ffc400}.pp-cheer[data-state=done] .pp-tick:before{content:"★"}.pp-cheer:after{content:"★ ✦ ★";letter-spacing:5px;color:#ffc400;opacity:.9;font-size:16px;position:absolute;top:6px;right:12px}}.pp-badge strong span{font-size:inherit;color:inherit;letter-spacing:0}
