.hb-1{flex:1 1 0}.hb-2{flex:2 1 0}.hb-3{flex:3 1 0}.hb-4{flex:4 1 0}.hb-5{flex:5 1 0}.hb-6{flex:6 1 0}.hb-7{flex:7 1 0}.hb-8{flex:8 1 0}.hb-9{flex:9 1 0}.hb-10{flex:10 1 0}.hb-11{flex:11 1 0}.hb-12{flex:12 1 0}.hb-13{flex:13 1 0}.hb-14{flex:14 1 0}.hb-15{flex:15 1 0}.hb-16{flex:16 1 0}.hb-17{flex:17 1 0}.hb-18{flex:18 1 0}.hb-19{flex:19 1 0}.hb-20{flex:20 1 0}.hb-21{flex:21 1 0}.hb-22{flex:22 1 0}.hb-23{flex:23 1 0}.hb-24{flex:24 1 0}.hb-25{flex:25 1 0}.hb-26{flex:26 1 0}.hb-27{flex:27 1 0}.hb-28{flex:28 1 0}.hb-29{flex:29 1 0}.hb-30{flex:30 1 0}.hb-31{flex:31 1 0}.hb-32{flex:32 1 0}.hb-33{flex:33 1 0}.hb-34{flex:34 1 0}.hb-35{flex:35 1 0}.hb-36{flex:36 1 0}.hb-37{flex:37 1 0}.hb-38{flex:38 1 0}.hb-39{flex:39 1 0}.hb-40{flex:40 1 0}.hb-41{flex:41 1 0}.hb-42{flex:42 1 0}.hb-43{flex:43 1 0}.hb-44{flex:44 1 0}.hb-45{flex:45 1 0}.hb-46{flex:46 1 0}.hb-47{flex:47 1 0}.hb-48{flex:48 1 0}.hb-49{flex:49 1 0}.hb-50{flex:50 1 0}.hb-51{flex:51 1 0}.hb-52{flex:52 1 0}.hb-53{flex:53 1 0}.hb-54{flex:54 1 0}.hb-55{flex:55 1 0}.hb-56{flex:56 1 0}.hb-57{flex:57 1 0}.hb-58{flex:58 1 0}.hb-59{flex:59 1 0}.hb-60{flex:60 1 0}.c-math{background:var(--yellow-deep)}.c-bio{background:#2f8f5b}.c-earth{background:#7a5a2e}.c-reading{background:#7b4fb8}.c-history{background:#8f4212}.in-short{border:2.5px solid var(--ink);box-shadow:8px 8px 0 var(--yellow);background:#fff;border-radius:22px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;padding:28px;display:grid}.goal-list{flex-direction:column;gap:8px;padding:0;font-weight:700;list-style:none;display:flex}.goal-list li{align-items:flex-start;gap:8px;display:flex}.goal-list svg{flex:none;margin-top:4px}@media (width<=800px){.in-short{box-shadow:6px 6px 0 var(--yellow);grid-template-columns:1fr;padding:22px}}.shop{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:28px;display:grid}.shop-filters{flex-direction:column;gap:18px;padding:20px;display:flex;position:sticky;top:16px}.search-box{position:relative}.search-box svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-box .input{padding-left:42px}.filter-group{border:0;flex-direction:column;gap:2px;margin:0;padding:0;display:flex}.filter-group legend{margin-bottom:6px;padding:0;font-weight:800}.filter-group label{cursor:pointer;align-items:center;gap:10px;min-height:36px;font-weight:600;display:flex}.filter-group input{width:18px;height:18px;accent-color:var(--blue);flex:none}.p-card-art .p-card-new{left:auto;right:12px}@media (width<=900px){.shop{grid-template-columns:1fr}.shop-filters{position:static}.shop-filters .filter-group{flex-flow:wrap;gap:4px 16px}}.lead-cover{border:1px solid var(--line);background:#fff;border-radius:6px;max-width:280px;margin:0 auto;display:block}.vote-btn{border:1.5px solid var(--ink);min-height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:800;display:inline-flex}.vote-btn:hover{background:var(--yellow-bg)}.vote-btn[aria-pressed=true]{background:var(--green-bg);border-color:var(--green);color:var(--green);cursor:default}.vote-count:not(:empty){background:var(--ink);color:#fff;border-radius:999px;padding:0 8px;font-size:13px;line-height:20px}.vote-btn[aria-pressed=true] .vote-count:not(:empty){background:var(--green)}.desk-hero{gap:12px;min-height:0;padding:32px}.desk-hero .desk-status{margin-top:0}.desk-hero .lede{color:inherit}.desk-lesson img{border:1px solid var(--line);border-radius:6px;width:100%;max-width:200px}.pillar-hero{border:2.5px solid var(--ink);background:#fff;border-radius:24px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding:36px;display:flex}.pillar-hero>.stack{flex:380px;min-width:0}.pillar-hero--green{box-shadow:10px 10px 0 var(--green)}.pillar-hero--orange{box-shadow:10px 10px 0 var(--orange)}.postcard-solo{border:2.5px solid var(--ink);box-shadow:8px 8px 0 var(--green);background:#fff;border-radius:14px;flex-direction:column;flex:0 300px;gap:6px;padding:14px;display:flex;transform:rotate(4deg)}.postcard-solo .pc-place{font-size:34px}.postcard-solo .pc-label{font-size:12px}.postcard-solo .pc-stamp{font-size:10px}.postcard-solo--yellow{background:var(--yellow);box-shadow:8px 8px 0 var(--orange);text-align:center;align-items:center;transform:rotate(-3deg)}.postcard-solo--yellow .pc-home-q{font-size:24px}.mini-lab .numbered li{align-items:flex-start}.mini-lab .supplies{columns:2}@media (width<=600px){.pillar-hero{box-shadow:6px 6px 0 var(--green);padding:22px}.pillar-hero--orange{box-shadow:6px 6px 0 var(--orange)}.postcard-solo{flex-basis:100%;transform:none}}.passport-book{background:var(--ink);border-radius:26px;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:16px;padding:16px;display:grid}.passport-cover{background:#fff;border-radius:16px;flex-direction:column;gap:10px;padding:24px;display:flex}.passport-line{align-items:flex-end;gap:8px;margin-top:auto;font-weight:800;display:flex}.passport-line .blank{border-bottom:2px solid var(--ink);min-width:80px;min-height:1.4em;font-family:var(--display);flex:1;font-weight:600}.stamp-grid{background:#fff;border-radius:16px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;padding:20px;display:grid}.stamp-slot{color:var(--muted);flex-direction:column;align-items:center;gap:8px;text-decoration:none;display:flex}.stamp-ring{aspect-ratio:1;border:3px dashed var(--rule);text-align:center;width:140px;max-width:100%;font-family:var(--mono);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:12px;font-size:12px;font-weight:700;line-height:1.15;display:flex}.stamp-place{font-size:13px}.stamp-name{font-family:var(--display);font-size:17px;font-weight:600;line-height:1.05}.stamp-kind{letter-spacing:.06em;font-size:10px}.stamp-state{font-size:14px;font-weight:800}.stamp-slot.is-earned .stamp-ring{border:4px solid;transform:rotate(-10deg)}.stamp-slot.is-earned .stamp-state{color:var(--green)}.stamp-slot--blue.is-earned{color:var(--blue)}.stamp-slot--green.is-earned{color:var(--green)}.stamp-slot--orange.is-earned{color:var(--orange-text)}.stamp-slot--soon .stamp-ring{opacity:.6}.stamp-slot--empty .stamp-ring{font-family:var(--display)}@media (width<=700px){.passport-book{grid-template-columns:1fr}}@media print{.site-header,.site-footer,.welcome,.skip-link,.no-print,.announce{display:none!important}body{background:#fff}.passport-book{background:#fff;border:2px solid #000}.stamp-slot .stamp-state{display:none}}.textarea{resize:vertical;min-height:120px;padding:12px 14px;line-height:1.5}.desk-picks--light label{background:var(--bg);border:1.5px solid var(--line)}.danger-zone{border-color:#e2a28c}.stars{color:var(--yellow-deep);letter-spacing:2px;font-size:18px}.review-avg{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.review-card{background:var(--bg);border-radius:16px;flex-direction:column;gap:6px;margin:0;padding:18px;display:flex}.review-card blockquote{color:var(--text-2);margin:0}.review-card figcaption{font-size:15px;font-weight:800}.review-reply{background:#fff;border-radius:12px;padding:10px 12px;font-size:15px}.stars-pick{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.stars-pick legend{margin-bottom:4px}.stars-pick label{border:1.5px solid var(--line);cursor:pointer;min-height:40px;color:var(--yellow-deep);background:#fff;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:18px;display:inline-flex}.stars-pick input{accent-color:var(--blue)}.review-form .label{flex-direction:column;gap:6px;display:flex}.lib-extras{flex-wrap:wrap;align-items:flex-start;gap:12px 24px;padding:4px 4px 0;display:flex}.lib-action{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lib-review{flex:320px;min-width:0}@media (width>=901px) and (width<=1120px){.main-nav{gap:4px 16px;font-size:15px}.header-cta{display:none}}.checkout-soon{background:var(--orange-bg);border:2px solid var(--orange-soft);border-radius:16px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.checkout-soon p{color:var(--text-2);margin:0}.checkout-soon-title{font-family:var(--display);color:var(--orange-text);align-items:center;gap:8px;font-size:22px;font-weight:600;line-height:1.2;display:flex}.checkout-soon-title svg{flex:none}.checkout-soon .label{font-size:15px}
