/* Frozen protected-module UI compatibility layer.
   This file exists only to preserve the existing auth/account/payment presentation.
   Public Picartica pages do not load it. Do not extend it for public design work. */

/* Picartica 2.0 canonical stylesheet — single source of truth.
   The public design is locked. Do not add parallel versioned design layers.
   Protected auth/payment flows retain their existing component structure. */

:root{
  --navy:#0d2f7f; --blue:#267df4; --coral:#ff626e; --coral2:#ff7d87;
  --cream:#fffdf9; --text:#17306a; --muted:#6076a6; --line:#dce8f6;
  --sky:#eaf5ff; --mint:#e9fbf0; --peach:#fff1e8; --lav:#f3edff; --blush:#fff0f2;
  --shadow:0 10px 30px rgba(31,85,145,.09); --radius:22px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:"Fredoka",ui-rounded,"Arial Rounded MT Bold",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--cream);color:var(--text);line-height:1.45}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,input,select{font:inherit}.container{width:min(1180px,calc(100% - 32px));margin:auto}
.site-header{position:sticky;top:0;z-index:30;padding:14px 0;background:rgba(255,253,249,.9);backdrop-filter:blur(18px)}
.nav-shell{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid #edf2f8;border-radius:18px;padding:10px 14px;box-shadow:0 4px 18px rgba(23,48,106,.06)}
.logo{width:148px;flex:0 0 auto}.main-nav{display:flex;gap:20px;font-size:14px;font-weight:700;white-space:nowrap}.main-nav a:hover,.main-nav a[aria-current="page"]{color:var(--blue)}
.search-top{margin-left:auto;display:flex;align-items:center;gap:8px;background:#f5f9ff;border:1px solid #e5edf8;border-radius:999px;padding:9px 14px;min-width:250px}.search-top input{border:0;background:transparent;outline:0;width:100%;color:var(--text)}
.nav-actions{display:flex;align-items:center;gap:14px;font-size:14px;font-weight:700}.nav-actions .bookmark-link{white-space:nowrap}.mobile-menu{display:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:12px 18px;font-weight:800;border:1px solid transparent;cursor:pointer;transition:.18s ease;min-height:44px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,var(--coral),var(--coral2));color:#fff;box-shadow:0 8px 18px rgba(255,98,110,.2)}.btn-secondary{background:#fff;color:var(--blue);border-color:#b8d6fb}.btn-blue{background:linear-gradient(135deg,#438cf6,#1772ed);color:#fff}.btn-ghost{background:#fff;border-color:var(--line)}
.hero{position:relative;overflow:hidden;padding:28px 0 18px}.hero:before,.soft-bg:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 24%,#eaf5ff 0 8%,transparent 8.3%),radial-gradient(circle at 88% 20%,#ebfaf1 0 10%,transparent 10.3%),radial-gradient(circle at 92% 78%,#fff0f2 0 9%,transparent 9.3%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;min-height:295px}.hero h1,.page-hero h1{font-size:clamp(44px,5.6vw,68px);line-height:.98;letter-spacing:-.045em;margin:0 0 22px;color:var(--navy)}.hero-art{justify-self:end;width:min(100%,570px);mix-blend-mode:multiply}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.section{padding:22px 0}.section h2{font-size:25px;margin:0;color:var(--navy);letter-spacing:-.02em}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.section-head p{margin:2px 0 0;color:var(--muted)}.view-all{color:var(--blue);font-weight:800;font-size:14px}
.subject-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.subject-card{border-radius:14px;padding:18px 10px;text-align:center;font-weight:800;min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(45,88,150,.06)}.subject-card .ico{font-size:31px}.subject-card:nth-child(1){background:var(--sky)}.subject-card:nth-child(2){background:var(--blush)}.subject-card:nth-child(3){background:#e9fbfa}.subject-card:nth-child(4){background:var(--mint)}.subject-card:nth-child(5){background:var(--lav)}.subject-card:nth-child(6){background:var(--peach)}
.worksheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.worksheet-card{background:#fff;border:1px solid #e7eef7;border-radius:14px;padding:11px;box-shadow:0 4px 14px rgba(32,78,135,.05);position:relative}.worksheet-card img{width:100%;aspect-ratio:1.75/1;object-fit:cover;border-radius:9px;background:#f7faff}.worksheet-card h3{font-size:15px;margin:9px 0 3px;color:var(--navy)}.meta{color:#6880ae;font-size:13px}.bookmark-btn{position:absolute;right:15px;top:15px;width:35px;height:35px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:10px;color:var(--navy);display:grid;place-items:center;cursor:pointer;font-size:17px}.bookmark-btn.is-bookmarked{background:#fff1f2;color:var(--coral);border-color:#ffd0d4}.bookmark-btn.is-bookmarked:after{content:"♥"}.bookmark-btn:not(.is-bookmarked):after{content:"♡"}
.bundle-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.bundle{position:relative;border-radius:16px;padding:22px 24px;border:1px solid #f2e6e7;background:linear-gradient(135deg,#fff8f5,#fff0f2);display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.bundle.blue{background:linear-gradient(135deg,#f1f8ff,#e8f3ff);border-color:#dcebf9}.bundle h3{margin:0;color:var(--navy);font-size:21px}.price-row{display:flex;gap:28px;margin:14px 0}.price strong{display:block;font-size:24px;color:#ef3145}.price.intl strong{color:#2279e9}.price small{color:var(--muted)}.checks{list-style:none;padding:0;margin:0}.checks li{margin:6px 0;color:#5371a4;font-size:14px}.checks li:before{content:"✓";color:#00a96b;font-weight:900;margin-right:8px}.badge{position:absolute;right:18px;top:-15px;background:#2d82ef;color:white;padding:7px 14px;border-radius:999px;font-size:12px;font-weight:800}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #e1ebf7;background:#f8fbff;border-radius:14px;margin-top:18px}.trust-item{padding:16px 20px;display:flex;gap:14px;align-items:center}.trust-item+.trust-item{border-left:1px solid #dbe8f7}.trust-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff}.trust-item strong{display:block;color:var(--navy)}.trust-item span{font-size:13px;color:var(--muted)}
.site-footer{margin-top:34px;background:linear-gradient(180deg,transparent,#edf7ff);padding:28px 0 30px}.footer-inner{display:flex;align-items:center;gap:22px;justify-content:space-between;flex-wrap:wrap}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:135px}.footer-brand span{color:#5474ac}.footer-links{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#5474ac}.copyright{font-size:12px;color:#7186ad}
.page-hero{position:relative;overflow:hidden;padding:44px 0 28px}.page-hero .hero-row{display:grid;grid-template-columns:1fr 1fr;align-items:center}.page-hero h1{font-size:58px;margin-bottom:8px}.page-hero p{font-size:19px;color:#5572a5;margin:0}.page-hero img{justify-self:end;width:520px;max-height:255px;object-fit:cover;object-position:center;border-radius:24px;mix-blend-mode:multiply}
.filters{display:grid;grid-template-columns:2fr repeat(3,1fr) 1fr;gap:12px;margin-bottom:18px}.field,.select{border:1px solid #dce8f6;background:#fff;border-radius:11px;padding:12px 13px;color:var(--text);min-height:46px}.field{width:100%}.select{width:100%}.library-count{color:#6079a8;margin:14px 0}.pagination{display:flex;justify-content:center;gap:8px;margin:28px 0}.page-pill{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line);background:#fff;font-weight:700;color:var(--text)}.page-pill.active{background:var(--blue);color:#fff}
.card-image-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.card-image-link img{width:100%;border-radius:18px;border:1px solid #e7edf6;box-shadow:0 6px 20px rgba(40,80,140,.05);transition:.18s}.card-image-link:hover img{transform:translateY(-3px);box-shadow:var(--shadow)}.grade-grid{grid-template-columns:repeat(4,1fr)}
.detail-wrap{display:grid;grid-template-columns:.92fr 1.08fr;gap:38px;padding:30px 0}.preview-panel{background:#f8fbff;border:1px solid var(--line);border-radius:18px;padding:24px}.preview-panel img{margin:auto;border-radius:12px;box-shadow:0 8px 24px rgba(30,65,115,.08)}.preview-count{text-align:center;font-weight:800;color:var(--navy);margin-top:8px}.detail h1{font-size:42px;letter-spacing:-.035em;line-height:1;margin:8px 0 22px;color:var(--navy)}.detail-intro{color:#6077a5;font-size:17px;max-width:680px}.meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.meta-box{background:#f4f8fd;border-radius:12px;padding:15px}.meta-box small{display:block;color:#6380af}.meta-box strong{color:var(--navy)}.download-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.download-row .btn{font-size:16px;padding:15px}
.auth-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:start;padding:54px 0 72px}.auth-art{min-width:0;padding-top:24px}.auth-art h1{font-size:58px;line-height:1.03;margin:0 0 18px;color:var(--navy);letter-spacing:-.04em}.auth-art p{font-size:22px;color:#5a74a5;margin:0 0 18px}.auth-illustration{overflow:hidden;border-radius:24px;background:#fffdf8;box-shadow:0 18px 44px rgba(19,55,113,.06)}.auth-illustration img{display:block;width:100%;height:auto;margin:0;border-radius:0;mix-blend-mode:multiply}.auth-card{background:#fff;border:1px solid #e5edf7;border-radius:20px;padding:28px;box-shadow:var(--shadow)}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#f5f9ff;border-radius:12px;margin-bottom:28px}.tab{padding:14px;text-align:center;font-weight:800;color:var(--navy);border-bottom:3px solid transparent}.tab.active{border-color:var(--blue);background:#fff;border-radius:12px}.form-group{margin:14px 0}.form-group label{display:block;font-weight:700;margin-bottom:6px}.form-control{width:100%;border:1px solid #cedff2;border-radius:9px;padding:13px 14px;outline:0}.form-control:focus{border-color:#77aef1;box-shadow:0 0 0 3px #e9f3ff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.auth-card .btn{width:100%;margin-top:10px}.or{text-align:center;color:#7085ad;margin:18px 0;position:relative}.or:before,.or:after{content:"";position:absolute;top:50%;height:1px;background:#e1eaf6;width:42%}.or:before{left:0}.or:after{right:0}.small-link{text-align:right;color:var(--blue);font-weight:700;font-size:13px}
.account-shell{display:grid;grid-template-columns:250px 1fr;gap:18px;padding:34px 0}.account-nav{background:#fff;border:1px solid #e5edf7;border-radius:17px;padding:16px;height:max-content}.account-nav a{display:flex;gap:12px;padding:13px;border-radius:10px;font-weight:700;color:var(--navy);margin:4px 0}.account-nav a.active{background:#eaf4ff;color:#1772ed}.account-panel{background:#fff;border:1px solid #e5edf7;border-radius:17px;padding:28px;min-height:560px}.account-panel h1{font-size:38px;margin:0 0 5px;color:var(--navy)}.account-panel>p{color:var(--muted);margin-top:0}.profile-section{position:relative;background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #e2ebf6;border-radius:14px;padding:22px;margin:22px 0}.profile-section h2{margin:0 0 12px;color:var(--navy)}.profile-section .profile-child{position:absolute;right:28px;top:4px;width:180px;opacity:.95;mix-blend-mode:multiply}.profile-section.with-art{padding-right:220px}.settings-list{display:grid;gap:10px}.settings-item{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:16px}.danger{color:#d63a4a}.empty-state{text-align:center;padding:70px 20px;color:#6078a6}.empty-state .big{font-size:52px}.order-card{border:1px solid var(--line);border-radius:13px;padding:18px;display:grid;grid-template-columns:1fr auto;align-items:center;margin:10px 0}
.legal{padding:42px 0}.legal article{max-width:820px;background:#fff;border:1px solid #e8eef6;border-radius:18px;padding:34px;box-shadow:0 6px 20px rgba(30,70,120,.04)}.legal h1{color:var(--navy);font-size:42px;margin-top:0}.notice{background:#fff8e7;border:1px solid #f4dfaa;color:#765b1d;border-radius:10px;padding:14px 16px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px}.checkout-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;padding:40px 0}.summary-card{background:#f7fbff;border:1px solid var(--line);border-radius:16px;padding:22px}.status-card{text-align:center;max-width:700px;margin:60px auto;background:#fff;border:1px solid var(--line);border-radius:20px;padding:38px;box-shadow:var(--shadow)}
@media (max-width:980px){.main-nav{display:none}.search-top{min-width:0}.nav-actions .bookmark-link{display:none}.subject-grid{grid-template-columns:repeat(3,1fr)}.worksheet-grid{grid-template-columns:repeat(2,1fr)}.bundle-grid{grid-template-columns:1fr}.hero-grid,.page-hero .hero-row,.auth-wrap,.detail-wrap,.checkout-grid{grid-template-columns:1fr}.hero-art,.page-hero img{justify-self:center}.page-hero h1,.auth-art h1{font-size:46px}.auth-art{padding-top:0}.auth-illustration{max-width:690px}.filters{grid-template-columns:1fr 1fr}.card-image-grid,.grade-grid{grid-template-columns:repeat(2,1fr)}.account-shell{grid-template-columns:1fr}.account-nav{display:flex;overflow:auto}.account-nav a{white-space:nowrap}.profile-section.with-art{padding-right:22px}.profile-section .profile-child{display:none}}
@media (max-width:640px){.container{width:min(100% - 22px,1180px)}.site-header{padding:8px 0}.nav-shell{gap:8px;padding:8px}.logo{width:118px}.search-top{display:none}.nav-actions{margin-left:auto}.nav-actions .login-link{display:none}.nav-actions .btn{padding:9px 11px;font-size:12px}.hero{padding-top:8px}.hero-grid{min-height:0}.hero h1{font-size:46px}.hero-art{order:-1;width:100%;max-height:240px;object-fit:cover}.subject-grid{grid-template-columns:repeat(2,1fr)}.worksheet-grid{grid-template-columns:1fr}.bundle{grid-template-columns:1fr}.trust-strip{grid-template-columns:1fr}.trust-item+.trust-item{border-left:0;border-top:1px solid #dbe8f7}.footer-inner{align-items:flex-start;flex-direction:column}.page-hero{padding-top:20px}.page-hero .hero-row{display:flex;flex-direction:column-reverse}.page-hero img{max-height:180px}.page-hero h1{font-size:44px}.filters{grid-template-columns:1fr}.card-image-grid,.grade-grid{grid-template-columns:1fr 1fr;gap:10px}.detail h1{font-size:36px}.meta-grid{grid-template-columns:1fr 1fr}.download-row{grid-template-columns:1fr}.auth-art h1{font-size:44px}.auth-art p{font-size:18px}.auth-illustration{display:none}.auth-card{padding:20px}.form-row{grid-template-columns:1fr}.account-panel{padding:18px}.contact-grid{grid-template-columns:1fr}}

/* Phase 1 production fixes */
.skip-link{position:fixed;left:12px;top:10px;z-index:1000;background:#fff;color:var(--navy);border:2px solid var(--blue);border-radius:8px;padding:8px 12px;transform:translateY(-150%)}
.skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(38,125,244,.35);outline-offset:3px}
.brand-link{flex:0 0 auto}.menu-toggle{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:9px;cursor:pointer}.menu-toggle span{display:block;height:2px;background:var(--navy);margin:4px 0;border-radius:2px}.mobile-menu{display:none;background:rgba(255,253,249,.98);border-top:1px solid var(--line);box-shadow:0 12px 24px rgba(23,48,106,.08)}.mobile-nav{padding:14px 0 18px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mobile-nav>a{background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 12px;font-weight:800;color:var(--navy);text-align:center}.mobile-nav form{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:4px}
.btn-disabled{background:#eef2f7;color:#72819e;border-color:#e1e7f0;cursor:default;box-shadow:none}.btn-disabled:hover{transform:none}.phase-note,.local-note,.availability-note{border:1px solid #dce8f6;background:#f7fbff;border-radius:12px;padding:14px 16px;color:#526f9f;margin:0 0 18px}.availability-note{margin-top:18px}.bundle-footnote{color:var(--muted);font-size:13px;margin:14px 2px 0}.policy-date{color:var(--muted);font-size:13px;margin-top:28px}.compact-hero{padding-bottom:8px}.compact-hero h1{font-size:48px}.library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 14px}.library-count{margin:0}.text-button{appearance:none;border:0;background:transparent;color:var(--blue);font-weight:800;cursor:pointer;padding:8px}.empty-state.compact{padding:48px 20px}.worksheet-card[hidden]{display:none!important}.subject-page-grid .subject-card{min-height:150px}.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#6880ae;font-size:13px;margin-bottom:4px}.breadcrumbs a{color:var(--blue)}.detail-bookmark{position:relative;float:right;right:auto;top:auto}.thumbnail-preview{display:grid;place-items:center;align-content:center;min-height:360px}.thumbnail-preview img{width:min(100%,480px);border:1px solid var(--line)}.centered{justify-content:center}.status-icon{font-size:48px}.legal article p,.legal article li{color:#405d91}.legal article h2{color:var(--navy);margin-top:26px}.contact-card h2{margin-top:0}.copyright{white-space:nowrap}
.grade-grid{grid-template-columns:repeat(4,1fr);justify-items:stretch}.grade-grid .card-image-link:nth-child(5){grid-column:2}.grade-grid .card-image-link:nth-child(6){grid-column:3}.grade-grid .card-image-link:nth-child(7){grid-column:4}
@media (max-width:980px){.menu-toggle{display:block}.mobile-menu:not([hidden]){display:block}.bundle-nav{display:inline-flex}.grade-grid .card-image-link:nth-child(n){grid-column:auto}.subject-page-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.bundle-nav{display:none}.bookmark-link{display:none!important}.nav-shell{justify-content:space-between}.nav-actions{gap:8px}.mobile-nav{grid-template-columns:1fr 1fr}.mobile-nav form{grid-template-columns:1fr}.mobile-nav form .btn{width:100%}.library-toolbar{align-items:flex-start;flex-direction:column}.card-image-grid,.grade-grid{grid-template-columns:1fr 1fr}.subject-page-grid{grid-template-columns:1fr 1fr}.compact-hero h1{font-size:42px}.thumbnail-preview{min-height:240px}.legal article{padding:24px}.legal h1{font-size:36px}.footer-links{gap:12px 16px}}
@media (max-width:420px){.logo{width:112px}.nav-shell{padding:8px 10px}.card-image-grid,.grade-grid,.subject-page-grid{grid-template-columns:1fr}.meta-grid{grid-template-columns:1fr}.hero h1{font-size:40px}.page-hero h1{font-size:40px}.price-row{gap:18px}.bundle{padding:20px}.footer-brand{align-items:flex-start;flex-direction:column}}
.card-image-link.unavailable{position:relative;opacity:.66;cursor:default}.card-image-link.unavailable span{position:absolute;right:10px;bottom:10px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--navy);font-size:12px;font-weight:800}.unavailable-subject{opacity:.68;cursor:default}.unavailable-subject small{display:block;font-size:11px;color:var(--muted);font-weight:700}
.grade-grid{display:flex;flex-wrap:wrap;justify-content:center}.grade-grid .card-image-link{flex:0 1 calc(25% - 12px)}
@media (max-width:980px){.grade-grid .card-image-link{flex-basis:calc(50% - 8px)}}
@media (max-width:420px){.grade-grid .card-image-link{flex-basis:100%}}
.card-image-link.unavailable:hover img{transform:none;box-shadow:0 6px 20px rgba(40,80,140,.05)}

/* Preliminary visual review fixes — 2026-09-12 */
.logo{width:164px;height:auto;object-fit:contain}
.footer-brand img{width:150px;height:auto;object-fit:contain}

/* Keep decorative hero shapes behind content and away from headings. */
.page-hero:before,.soft-bg:before{
  z-index:0;
  background:
    radial-gradient(circle at 95% 20%,#eaf5ff 0 10%,transparent 10.4%),
    radial-gradient(circle at 88% 76%,#ebfaf1 0 8%,transparent 8.4%),
    radial-gradient(circle at 99% 92%,#fff0f2 0 7%,transparent 7.4%);
}
.page-hero>.container,.page-hero .hero-row{position:relative;z-index:1}
.page-hero .hero-row{isolation:isolate}
.page-hero h1,.page-hero p{position:relative;z-index:2}

/* Worksheet thumbnails: always show the full artwork; never crop it. */
.worksheet-card{overflow:hidden}
.worksheet-card img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:contain;
  object-position:center;
  padding:8px;
  background:#fbfdff;
  border:1px solid #edf2f8;
  border-radius:10px;
}
.preview-panel{display:flex;flex-direction:column;justify-content:center;min-height:540px;overflow:hidden}
.preview-panel img{width:100%;height:auto;max-height:650px;object-fit:contain;object-position:center;background:#fff}
.thumbnail-preview{min-height:430px}
.thumbnail-preview img{width:auto;max-width:min(100%,320px);height:auto;max-height:320px;object-fit:contain;box-shadow:none}
.preview-count{margin-top:14px}

/* Browse cards get a deliberate white frame, including a visible lower edge. */
.card-image-grid{align-items:stretch}
.card-image-link{
  display:block;
  background:#fff;
  border:1px solid #e6eef8;
  border-radius:20px;
  padding:9px 9px 14px;
  box-shadow:0 7px 22px rgba(35,77,132,.055);
  overflow:hidden;
}
.card-image-link img{
  width:100%;
  height:auto;
  object-fit:contain;
  border:0;
  border-radius:14px;
  box-shadow:none;
}
.card-image-link:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(35,77,132,.09)}
.card-image-link:hover img{transform:none;box-shadow:none}
.card-image-link.unavailable{opacity:.82;background:#fbfcfe}
.card-image-link.unavailable img{opacity:.64}
.card-image-link.unavailable span{right:17px;bottom:18px;box-shadow:0 3px 10px rgba(23,48,106,.08)}

/* Give browse pages a clean white lower boundary before the footer. */
.page-hero + .section{padding-bottom:42px}
.page-hero + .section:after{content:"";display:block;height:8px;margin-top:30px;border-radius:999px;background:#fff;box-shadow:0 1px 0 #eef3f9}

/* Bundle plans are a primary commercial feature: stronger visual hierarchy, still calm. */
.bundle-section{padding-top:30px;padding-bottom:34px}
.bundle-stage{
  position:relative;
  border:1px solid #e6eef8;
  border-radius:26px;
  padding:30px;
  background:
    radial-gradient(circle at 96% 4%,rgba(225,241,255,.85),transparent 25%),
    radial-gradient(circle at 4% 96%,rgba(255,234,235,.72),transparent 23%),
    #fff;
  box-shadow:0 12px 36px rgba(35,77,132,.055);
}
.bundle-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.bundle-section-head h2{font-size:30px;line-height:1.08;margin:5px 0 7px;color:var(--navy)}
.bundle-section-head p{margin:0;color:var(--muted)}
.section-kicker{display:inline-block;font-size:11px;letter-spacing:.12em;font-weight:900;color:var(--coral);text-transform:uppercase}
.bundle-grid{gap:20px}
.bundle-card{
  position:relative;
  min-height:300px;
  border:1px solid #e4edf8;
  border-radius:22px;
  padding:24px;
  display:grid;
  grid-template-columns:150px 1fr;
  gap:22px;
  align-items:center;
  overflow:visible;
  box-shadow:0 8px 24px rgba(33,78,136,.06);
}
.bundle-warm{background:linear-gradient(145deg,#fff9f6 0%,#fff0f2 100%);border-color:#f4e2e5}
.bundle-blue{background:linear-gradient(145deg,#f8fbff 0%,#eaf5ff 100%);border-color:#d7e9fb}
.bundle-visual{height:160px;position:relative;display:grid;place-items:center}
.paper{position:absolute;width:112px;height:142px;border-radius:13px;border:1px solid rgba(35,77,132,.12);box-shadow:0 8px 18px rgba(35,77,132,.08)}
.paper-back{transform:rotate(-8deg) translate(-12px,4px);background:#ffe8e9}
.bundle-blue .paper-back{background:#e3f1ff}
.paper-mid{transform:rotate(6deg) translate(10px,0);background:#fff2d8}
.bundle-blue .paper-mid{background:#eef0ff}
.paper-front{background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--navy)}
.paper-front:before,.paper-front:after{content:"";position:absolute;left:18px;right:18px;height:5px;border-radius:999px;background:#e9f1fb}
.paper-front:before{top:24px;box-shadow:0 14px 0 #eef4fb,0 28px 0 #eef4fb}
.paper-front:after{bottom:24px;box-shadow:0 -14px 0 #eef4fb}
.paper-front strong{font-size:38px;line-height:1;position:relative;z-index:1}
.paper-front small{font-size:11px;font-weight:800;color:var(--muted);position:relative;z-index:1}
.bundle-copy{min-width:0}
.bundle-eyebrow{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#6f82a8}
.bundle-card h3{font-size:24px;line-height:1.1;margin:5px 0 14px;color:var(--navy)}
.bundle-prices{display:flex;gap:28px;margin-bottom:14px}
.bundle-price strong{display:block;font-size:29px;line-height:1;color:#eb394c}
.bundle-price.international strong{color:#2279e9}
.bundle-price span{display:block;margin-top:5px;color:var(--muted);font-size:12px}
.bundle-benefits{display:grid;grid-template-columns:1fr;gap:5px;list-style:none;margin:0 0 18px;padding:0}
.bundle-benefits li{font-size:13px;color:#526f9f}
.bundle-benefits li:before{content:"✓";color:#19a36e;font-weight:900;margin-right:8px}
.bundle-status{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#60759d;border:1px solid #dfe7f1;border-radius:10px;padding:9px 14px;font-size:13px;font-weight:900;box-shadow:0 3px 8px rgba(23,48,106,.03)}
.bundle-badge{position:absolute;top:-14px;right:20px;z-index:3;background:linear-gradient(135deg,#2f8aff,#2675e6);color:#fff;border:3px solid #fff;border-radius:999px;padding:7px 14px;font-size:12px;font-weight:900;box-shadow:0 8px 18px rgba(38,125,244,.2)}
.bundle-stage .trust-strip{margin-top:22px;background:rgba(248,251,255,.9)}
.bundle-hero{padding-bottom:20px}
.bundle-hero-inner{max-width:780px}
.bundle-hero h1{margin-top:8px}
.bundle-stage-page{padding:34px}
.bundle-launch-note{display:flex;align-items:center;gap:10px;margin-bottom:24px;padding:12px 15px;border:1px solid #e1ebf7;border-radius:12px;background:#f8fbff;color:#5a73a1;font-size:14px}
.bundle-launch-note strong{color:var(--navy)}
.launch-dot{width:9px;height:9px;border-radius:50%;background:#30b67a;box-shadow:0 0 0 5px rgba(48,182,122,.11)}
.bundle-reassurance{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}
.bundle-reassurance>div{padding:15px 16px;background:#fff;border:1px solid #e5edf7;border-radius:13px}
.bundle-reassurance strong{display:block;color:var(--navy);font-size:14px}
.bundle-reassurance span{display:block;margin-top:3px;color:var(--muted);font-size:12px}
.bundle-footnote{text-align:center;margin-top:18px}

@media (max-width:980px){
  .logo{width:152px}
  .bundle-card{grid-template-columns:125px 1fr}
  .paper{width:96px;height:124px}
  .bundle-reassurance{grid-template-columns:1fr}
}
@media (max-width:640px){
  .logo{width:130px}
  .page-hero:before,.soft-bg:before{background:radial-gradient(circle at 102% 15%,#eaf5ff 0 14%,transparent 14.4%)}
  .preview-panel{min-height:0;padding:16px}.thumbnail-preview{min-height:300px}.thumbnail-preview img{max-width:min(100%,280px)}
  .card-image-link{padding:7px 7px 11px;border-radius:16px}
  .bundle-stage{padding:20px 16px;border-radius:20px}
  .bundle-section-head{align-items:flex-start;flex-direction:column}
  .bundle-section-head h2{font-size:26px}
  .bundle-card{grid-template-columns:1fr;padding:22px 18px;gap:10px;text-align:left}
  .bundle-visual{height:130px}
  .paper{width:90px;height:116px}
  .bundle-prices{gap:24px}
  .bundle-price strong{font-size:27px}
  .bundle-stage-page{padding:22px 16px}
}

/* === Review round 2: worksheet previews + clean browse cards === */

/* Age cards: the arrow was part of the illustration itself. Crop only that
   decorative footer from the rendered card while keeping the age label. */
.age-grid .card-image-link{overflow:hidden}
.age-grid .card-image-link img{
  aspect-ratio:1 / .75;
  object-fit:cover;
  object-position:top center;
  display:block;
}
.age-grid .card-image-link.unavailable span{bottom:16px}

/* Grade cards are deliberately static image cards; no navigation arrows. */
.grade-grid .card-image-link:before,.grade-grid .card-image-link:after,
.age-grid .card-image-link:before,.age-grid .card-image-link:after{content:none!important}

/* Worksheet detail previews use one consistent paper presentation. */
.preview-panel{align-items:center;gap:0}
.preview-sheet-wrap{
  position:relative;
  width:min(100%,520px);
  aspect-ratio:210 / 297;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #e2ebf6;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(30,65,115,.08);
  overflow:hidden;
}
.preview-panel .detail-preview-image{
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  object-position:center;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#fff;
}
/* Temporary library thumbnails are landscape. Present the entire image on a
   portrait paper sheet rather than enlarging/cropping it. */
.thumbnail-preview .preview-sheet-wrap{padding:28px;background:#fff}
.thumbnail-preview .detail-preview-image{
  width:100%;
  height:auto;
  max-height:55%;
  object-fit:contain;
  align-self:flex-start;
  margin-top:12%;
  border:1px solid #e7eef8;
  border-radius:10px;
}
.preview-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid #dce8f5;
  background:rgba(255,255,255,.96);
  color:#176fe6;
  font-size:30px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 5px 16px rgba(31,75,135,.10);
}
.preview-prev{left:12px}.preview-next{right:12px}
.preview-nav:hover{background:#f6faff}
.preview-count{width:100%;text-align:center}

/* Subject browsing: same visual energy as age/grade while remaining calmer
   and more informational. */
.subject-browser-section{padding-top:30px}
.subject-browser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.subject-browser-card{
  position:relative;
  min-height:205px;
  padding:24px;
  border:1px solid #e4edf7;
  border-radius:22px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-end;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(35,77,132,.055);
  transition:transform .18s ease,box-shadow .18s ease;
}
.subject-browser-card:before,.subject-browser-card:after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.subject-browser-card:before{width:150px;height:150px;right:-55px;top:-55px;background:rgba(255,255,255,.46)}
.subject-browser-card:after{width:72px;height:72px;right:28px;top:54px;background:rgba(255,255,255,.28)}
.subject-browser-card.sky{background:linear-gradient(145deg,#f7fbff,#e7f4ff)}
.subject-browser-card.blush{background:linear-gradient(145deg,#fffafa,#ffedf0)}
.subject-browser-card.aqua{background:linear-gradient(145deg,#f7ffff,#e5f9f7)}
.subject-browser-card.mint{background:linear-gradient(145deg,#fbfffc,#e9f8ed)}
.subject-browser-card.lavender{background:linear-gradient(145deg,#fcfaff,#f0eaff)}
.subject-browser-card.peach{background:linear-gradient(145deg,#fffdf9,#fff0e5)}
.subject-browser-card:not(.unavailable):hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(35,77,132,.09)}
.subject-icon{
  position:absolute;
  z-index:1;
  top:22px;
  left:24px;
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:18px;
  background:rgba(255,255,255,.82);
  box-shadow:0 5px 14px rgba(34,75,133,.06);
  font-size:33px;
}
.subject-copy,.subject-action,.subject-coming{position:relative;z-index:1}
.subject-copy h2{margin:0 0 5px;font-size:24px;color:var(--navy)}
.subject-copy p{margin:0;color:#6079a6;font-size:14px}
.subject-action{margin-top:14px;color:var(--blue);font-size:13px;font-weight:900}
.subject-action:after{content:" →"}
.subject-coming{margin-top:14px;display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.85);border:1px solid #e2e9f3;color:#6c7ea1;font-size:12px;font-weight:900}
.subject-browser-card.unavailable{opacity:.76;cursor:default}

@media (max-width:980px){
  .subject-browser-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .preview-sheet-wrap{width:min(100%,420px)}
  .preview-nav{width:38px;height:38px;font-size:27px}
  .subject-browser-grid{grid-template-columns:1fr}
  .subject-browser-card{min-height:180px}
}

/* === Launch-readiness audit === */
/* Preserve the full worksheet thumbnail; never crop a worksheet preview. */
.worksheet-card img{object-fit:contain!important;object-position:center;background:#f8fbff}
.worksheet-card-coming{border-style:solid}
.worksheet-status-badge{position:absolute;left:16px;top:16px;z-index:3;display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.96);border:1px solid #dfe8f4;color:#667aa0;font-size:10px;font-weight:900;letter-spacing:.02em;box-shadow:0 3px 10px rgba(23,48,106,.06)}
.worksheet-card-coming img{opacity:.86}

.inventory-strip,.collection-summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding:10px 13px;background:#f8fbff;border:1px solid #e3edf8;border-radius:12px;color:#6078a4;font-size:13px}
.inventory-strip strong,.collection-summary strong{color:var(--navy)}
.inventory-strip span:before,.collection-summary span:before{content:"·";margin-right:12px;color:#9aaac5}

.filters{grid-template-columns:2fr repeat(4,1fr) 1fr;align-items:end}
.filter-control{min-width:0}.filter-control label{display:block;margin:0 0 6px 2px;color:#526e9e;font-size:12px;font-weight:800}.filter-control .field,.filter-control .select{margin:0}

.detail-status{display:inline-flex;margin-bottom:8px;padding:6px 10px;border-radius:999px;background:#f5f7fb;border:1px solid #e1e8f2;color:#687a9d;font-size:12px;font-weight:900}
.meta-link{transition:.16s ease}.meta-link:hover{background:#eef6ff;box-shadow:inset 0 0 0 1px #d4e7fb}.meta-link strong:after{content:" ↗";font-size:10px;color:#6f8bb8}
.usage-license{margin:10px 2px 0;color:#5e759f;font-size:13px}
.worksheet-guidance{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:16px;margin:4px 0 30px}.worksheet-guidance article{padding:20px;background:#fff;border:1px solid #e5edf7;border-radius:16px;box-shadow:0 5px 18px rgba(35,77,132,.04)}.worksheet-guidance h2{font-size:18px;margin:0 0 10px;color:var(--navy)}.worksheet-guidance p,.worksheet-guidance li{font-size:14px;color:#5e759f}.worksheet-guidance ul{margin:0;padding-left:19px}.worksheet-guidance li+li{margin-top:5px}.related-head{margin-top:8px}
.preview-nav:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.preview-nav:disabled:hover{background:rgba(255,255,255,.96)}

.compact-taxonomy-hero{padding:46px 0 34px;background:linear-gradient(135deg,#fffdf9,#f5faff)}.compact-taxonomy-hero h1{margin:7px 0 10px}.taxonomy-hero-inner{max-width:820px}.taxonomy-hero-inner p{max-width:720px}.collection-links{margin-top:30px;padding:22px;border-radius:16px;background:#f8fbff;border:1px solid #e3edf7}.collection-links h2{font-size:18px;margin:0 0 12px}.collection-links>div{display:flex;gap:9px;flex-wrap:wrap}.collection-links a{display:inline-flex;padding:8px 11px;border-radius:999px;background:#fff;border:1px solid #dfe9f5;color:#42679f;font-size:13px;font-weight:800}.collection-links a:hover{border-color:#b8d7fb;color:var(--blue)}

.preview-only-card{position:relative}.preview-only-card>span,.age-grid .preview-only-card>span,.grade-grid .preview-only-card>span{position:absolute;right:17px;bottom:18px;z-index:3;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--navy);font-size:12px;font-weight:800;box-shadow:0 3px 10px rgba(23,48,106,.08)}.preview-only-card img{opacity:.82}.subject-browser-card.preview-only-card{opacity:.9}.subject-browser-card.preview-only-card .subject-coming{position:relative;right:auto;bottom:auto;padding:6px 10px}
.subject-card.preview-only small{display:block;font-size:10px;color:#677da4}

.bundle-positioning{margin:0 0 13px;color:#6078a5;font-size:13px}.bundle-content-pending{margin:-2px 0 16px;padding:11px 12px;border-radius:11px;background:rgba(255,255,255,.58);border:1px solid rgba(220,232,246,.9)}.bundle-content-pending strong{display:block;color:var(--navy);font-size:12px}.bundle-content-pending span{display:block;margin-top:3px;color:#667ba3;font-size:11px}.bundle-samples{grid-column:1/-1;padding-top:18px;border-top:1px solid rgba(210,225,242,.9)}.bundle-samples-label{display:block;margin-bottom:8px;color:var(--navy);font-size:12px;font-weight:900}.bundle-sample-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.bundle-sample-row figure{margin:0;background:rgba(255,255,255,.7);border:1px solid rgba(220,232,246,.9);border-radius:10px;padding:6px}.bundle-sample-row img{width:100%;aspect-ratio:1.89/1;object-fit:contain;border-radius:6px;background:#fff}.bundle-sample-row figcaption{margin-top:4px;color:#546f9f;font-size:9px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bundle-samples>small{display:block;margin-top:7px;color:#7486a7;font-size:10px}
.bundle-stage-page .bundle-card{align-items:start}.bundle-stage-page .bundle-visual{margin-top:20px}

.not-found-links{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.not-found-links .text-button{padding:12px}

@media (max-width:1100px){.filters{grid-template-columns:repeat(3,1fr)}.filter-search{grid-column:span 2}}
@media (max-width:980px){.worksheet-guidance{grid-template-columns:1fr}.bundle-sample-row{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.filters{grid-template-columns:1fr}.filter-search{grid-column:auto}.inventory-strip,.collection-summary{align-items:flex-start;flex-direction:column;gap:3px}.inventory-strip span:before,.collection-summary span:before{content:none}.worksheet-status-badge{left:12px;top:12px}.bundle-sample-row{grid-template-columns:1fr 1fr}.meta-grid{grid-template-columns:1fr 1fr}.download-row{grid-template-columns:1fr}.detail h1{font-size:34px}}
@media (max-width:420px){.meta-grid{grid-template-columns:1fr}.bundle-sample-row{grid-template-columns:1fr}}

/* Phase 2: account + checkout */
[hidden]{display:none!important}.profile-menu{position:relative}.profile-toggle{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--navy);font-weight:800;cursor:pointer;padding:3px}.profile-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#c5a3ef,#8d61ca);color:#fff}.profile-dropdown{position:absolute;right:0;top:46px;width:190px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);z-index:50}.profile-dropdown a,.profile-dropdown button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;border-radius:8px;color:var(--navy);font-weight:700;cursor:pointer}.profile-dropdown a:hover,.profile-dropdown button:hover{background:#f4f8fd}.mobile-nav [data-auth-profile-mobile]{display:grid;gap:6px}.mobile-nav button{border:0;background:none;text-align:left;color:var(--navy);font-weight:800;padding:10px 0}
.auth-message{margin-top:14px;padding:12px 14px;border-radius:10px;background:#f5f9ff;color:#526f9f;border:1px solid #dbe8f7}.auth-message.error{background:#fff2f3;color:#9b2f3c;border-color:#ffd8dc}.auth-message.success{background:#effaf5;color:#277457;border-color:#cceede}.form-help{font-size:12px;color:var(--muted);margin-top:5px}.form-control[readonly]{background:#f6f8fb;color:#6d7d9b}.account-loading{padding:60px 20px;text-align:center;color:var(--muted)}.account-nav a,.account-nav button{border:0;background:transparent;font:inherit}.account-nav .logout-nav{display:flex;gap:12px;padding:13px;border-radius:10px;font-weight:700;color:var(--navy);margin:4px 0;width:100%;cursor:pointer}.account-nav .logout-nav:hover{background:#f5f9ff}
.checkout-product{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;margin:18px 0}.checkout-paper{height:110px;border-radius:14px;background:linear-gradient(145deg,#fff0f2,#eaf5ff);display:grid;place-items:center;color:var(--navy);font-size:32px;font-weight:900}.checkout-price{font-size:30px;font-weight:900;color:var(--navy);margin:8px 0}.checkout-security{display:flex;gap:9px;align-items:flex-start;background:#f7fbff;border:1px solid var(--line);border-radius:12px;padding:13px;margin-top:18px}.checkout-security strong{display:block;color:var(--navy)}.checkout-security span{display:block;font-size:12px;color:var(--muted)}.payment-badge{font-size:12px;font-weight:800;color:#5371a4}.bundle-buy{display:inline-flex}.bundle-unavailable{display:inline-flex;background:#fff;color:#7383a1;border:1px solid #dfe7f1;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:900}.order-card{gap:20px}.order-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px}.order-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.order-status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;text-transform:capitalize}.order-status.paid{background:#ebfaf3;color:#208058}.order-status.pending{background:#fff7e8;color:#8f6815}.order-status.failed,.order-status.refunded{background:#fff0f2;color:#9c3440}.receipt-table{display:grid;gap:12px;margin:22px 0}.receipt-row{display:flex;justify-content:space-between;gap:20px;padding-bottom:10px;border-bottom:1px solid #edf2f7}.receipt-row span{color:var(--muted)}.status-icon{width:70px;height:70px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#eaf9f1;color:#1a9a66;font-size:38px;font-weight:900}.secure-download-card{max-width:640px}.danger-zone{border-color:#ffd8dc;background:#fff9f9}.danger-zone h2{color:#a22c39}.modal-backdrop{position:fixed;inset:0;background:rgba(13,47,127,.25);display:grid;place-items:center;z-index:80;padding:20px}.modal-card{width:min(520px,100%);background:#fff;border-radius:18px;padding:24px;box-shadow:0 18px 60px rgba(13,47,127,.18)}
@media(max-width:640px){.profile-toggle>span:not(.profile-avatar){display:none}.profile-dropdown{right:-6px}.checkout-product{grid-template-columns:76px 1fr}.checkout-paper{height:90px}.order-card{grid-template-columns:1fr}.order-actions{justify-content:flex-start}.account-nav{gap:4px}.account-nav a,.account-nav .logout-nav{padding:10px 11px}}


/* Production audit fixes — 2026-09-22 */
.auth-title{font-size:34px;line-height:1.08;letter-spacing:-.025em;color:var(--navy);margin:7px 0 8px}
.auth-login-wrap{align-items:center;max-width:1100px}
.auth-login-art{padding-top:0}
.auth-login-illustration{width:min(100%,560px);aspect-ratio:4/3;margin:0 auto;background:#fffaf2;border-radius:28px}
.auth-login-illustration img{width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:normal}
.auth-login-card{width:100%;max-width:520px;justify-self:end}
.browse-card-copy{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:11px 5px 0}
.browse-card-copy strong{color:var(--navy);font-size:15px}
.browse-card-copy span{color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap}
@media(max-width:980px){
  .auth-login-card{justify-self:center;max-width:620px}
  .auth-login-art{width:100%;max-width:620px;margin:auto}
}
@media(max-width:640px){
  .auth-login-wrap{padding-top:18px;gap:18px}
  .auth-login-art{order:-1}
  .auth-login-illustration{display:block;width:100%;height:auto;aspect-ratio:4/3;border-radius:20px}
  .auth-login-illustration img{height:100%;object-fit:contain;object-position:center}
  .auth-title{font-size:29px}
  .browse-card-copy{align-items:flex-start;flex-direction:column;gap:2px;padding:9px 3px 0}
  .browse-card-copy span{white-space:normal}
}


/* Printable discovery + progression */
@media (min-width:981px){
  .filters{grid-template-columns:minmax(190px,1.6fr) repeat(6,minmax(100px,1fr));align-items:end}
}
.filter-control label{display:block;margin:0 0 6px;font-size:12px;font-weight:800;color:#506c9e}
.difficulty-pill{display:inline-flex;align-items:center;margin-top:9px;padding:4px 8px;border:1px solid #dfe9f6;border-radius:999px;background:#f7fbff;color:#5d77a6;font-size:11px;font-weight:850;line-height:1}
.worksheet-card h3{margin-top:7px}
.meta-link{transition:.16s ease}
.meta-link:hover{background:#eaf4ff;box-shadow:inset 0 0 0 1px #d7e8fb}
.skill-path{margin:30px 0 26px;padding:24px;border:1px solid #dfebf8;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fffaf7);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px;align-items:center}
.skill-path h2{margin:5px 0 6px;font-size:24px;color:var(--navy)}
.skill-path p{margin:0;color:var(--muted)}
.skill-path-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.skill-path-card{display:flex;flex-direction:column;gap:5px;min-height:112px;padding:16px;border:1px solid #dfe9f5;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(32,78,135,.05);transition:.16s ease}
.skill-path-card:hover{transform:translateY(-2px);border-color:#bfd9fa;box-shadow:0 9px 22px rgba(32,78,135,.08)}
.skill-path-card small{font-weight:900;color:var(--blue)}
.skill-path-card strong{color:var(--navy);line-height:1.2}
.skill-path-card span{margin-top:auto;color:var(--muted);font-size:12px}
.skill-path-card.next small{text-align:right}
@media (max-width:980px){
  .skill-path{grid-template-columns:1fr}
}
@media (max-width:640px){
  .skill-path{padding:18px}
  .skill-path-links{grid-template-columns:1fr}
}


/* Taxonomy hub filters */
.hub-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;margin:0 0 10px;border:1px solid var(--line);border-radius:16px;background:#f9fcff}.taxonomy-card[hidden],.subject-card[hidden]{display:none!important}.taxonomy-card p[data-tax-count],.subject-card small[data-tax-count]{color:#6076a6;font-size:12px;font-weight:800}.taxonomy-card{transition:.16s ease}.taxonomy-card:hover{transform:translateY(-2px)}@media(max-width:760px){.hub-filters{grid-template-columns:1fr 1fr}}@media(max-width:480px){.hub-filters{grid-template-columns:1fr}}


/* Monetisation protection — public samples only */
.locked-card-visual{width:100%;aspect-ratio:16/9;border:1px solid #e3ebf5;border-radius:10px;background:linear-gradient(135deg,#fff8f2,#edf6ff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--navy)}
.locked-card-visual .lock-symbol{font-size:34px}.locked-card-visual strong{font-size:14px}.locked-card-visual small{font-size:11px;color:var(--muted)}
.premium-lock-panel{background:#f9fbfe;border:1px solid var(--line);border-radius:18px;padding:24px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:520px}.premium-lock-panel img{width:min(100%,520px);box-shadow:none;border:0;background:transparent}.premium-lock-panel strong{margin-top:18px;font-size:18px;color:var(--navy)}.premium-lock-panel p{margin:6px 0 0;color:var(--muted)}
.bundle-coverage{margin:30px 0 14px;padding:24px;border:1px solid #eadfce;border-radius:20px;background:linear-gradient(135deg,#fffaf4,#f6fbff);display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr) auto;gap:22px;align-items:center}.bundle-coverage h2{margin:5px 0 7px;color:var(--navy)}.bundle-coverage p{margin:0;color:var(--muted)}.bundle-coverage-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.bundle-coverage-stats>div{border:1px solid #e3ebf5;background:#fff;border-radius:12px;padding:11px 12px;text-align:center}.bundle-coverage-stats strong{display:block;font-size:21px;color:var(--navy)}.bundle-coverage-stats span{font-size:11px;color:var(--muted)}.coverage-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.coverage-pills span{background:#fff;border:1px solid #e0e9f4;border-radius:999px;padding:5px 9px;font-size:11px;color:#5571a3;font-weight:750}.sample-policy-note{margin:12px 0 24px;padding:12px 14px;border-left:4px solid #267df4;background:#f5f9ff;border-radius:0 10px 10px 0;color:#54709f;font-size:13px}.sample-only-filters{grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(120px,1fr))}.library-bundle-coverage{margin-top:34px}.sample-library-filters{grid-template-columns:minmax(190px,1.6fr) repeat(6,minmax(100px,1fr))}
@media(max-width:1050px){.bundle-coverage{grid-template-columns:1fr}.bundle-coverage .btn{justify-self:start}.sample-only-filters,.sample-library-filters{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.bundle-coverage{padding:18px}.bundle-coverage-stats{grid-template-columns:repeat(2,1fr)}.bundle-coverage .btn{width:100%}.sample-only-filters,.sample-library-filters{grid-template-columns:1fr}.premium-lock-panel{min-height:340px}}

/* Premium taxonomy illustration restoration */
.illustrated-taxonomy-card{padding:9px 9px 15px;overflow:hidden;display:block}
.illustrated-taxonomy-card>img{width:100%;height:208px;object-fit:contain;border-radius:13px;background:#f8fbff;border:1px solid #edf2f8}
.illustrated-taxonomy-card .taxonomy-card-copy{padding:8px 7px 2px}
.illustrated-taxonomy-card h2{font-size:17px;margin:2px 0 3px}
.illustrated-taxonomy-card p{font-size:12px}
.page-hero .hero-row>img{border-radius:24px;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(31,85,145,.08))}
.compact-taxonomy-hero .hero-row{min-height:245px}
.compact-taxonomy-hero .hero-row>img{max-height:220px}
@media(max-width:640px){.page-hero .hero-row>img{width:100%;max-height:210px}.compact-taxonomy-hero .hero-row>img{max-height:190px}}

/* Restored Picartica illustrated browse cards */
.illustrated-subject-grid{align-items:stretch}
.illustrated-subject-card{padding:9px 9px 14px;display:flex;flex-direction:column;gap:7px;min-height:0;background:#fff!important;border:1px solid #e6eef8;box-shadow:0 7px 22px rgba(35,77,132,.055);overflow:hidden}
.illustrated-subject-card>img{width:100%;aspect-ratio:1.64/1;object-fit:cover;object-position:center;border-radius:12px;background:#f8fbff;border:1px solid #edf2f8}
.illustrated-subject-card>strong{display:block;color:var(--navy);font-size:15px;line-height:1.2;padding:0 3px}
.illustrated-subject-card>small{padding:0 3px 2px}
.illustrated-subject-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(35,77,132,.09)}
@media(max-width:640px){.illustrated-subject-card>img{aspect-ratio:1.75/1}}



/* =========================================================
   Picartica premium calm theme — 2026-09-27
   Warm ivory canvas, softened ink, restrained accents.
   ========================================================= */
:root{
  --navy:#2b3a4f;
  --blue:#6f8fae;
  --coral:#b97b78;
  --coral2:#c58c86;
  --cream:#f6f3ed;
  --text:#344155;
  --muted:#768195;
  --line:#ddd9d1;
  --sky:#f1f3f4;
  --mint:#f0f3ef;
  --peach:#f5f0ea;
  --lav:#f2f0f4;
  --blush:#f5efef;
  --shadow:0 14px 38px rgba(52,65,85,.055);
  --radius:20px;
}

html{background:var(--cream)}
body{
  background:var(--cream);
  color:var(--text);
  line-height:1.58;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.52),transparent 26%),
    radial-gradient(circle at 88% 22%,rgba(224,227,221,.32),transparent 29%),
    linear-gradient(180deg,#f7f4ef 0%,#f4f1eb 100%);
}
body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.15;
  background-image:radial-gradient(rgba(61,72,87,.10) .45px,transparent .45px);
  background-size:8px 8px;
}

h1,h2,h3,strong{color:var(--navy)}
h1,h2,h3{font-weight:650}
p{font-weight:400}
a{transition:color .16s ease,opacity .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}

.site-header{
  padding:12px 0;
  background:rgba(246,243,237,.88);
  border-bottom:1px solid rgba(221,217,209,.55);
  backdrop-filter:blur(20px) saturate(115%);
}
.nav-shell{
  background:rgba(251,249,245,.92);
  border-color:#e5e0d8;
  border-radius:16px;
  box-shadow:0 8px 28px rgba(52,65,85,.045);
}
.main-nav,.nav-actions{font-weight:600}
.main-nav a:hover,.main-nav a[aria-current="page"]{color:#526f8d}
.search-top{
  background:#f3f0ea;
  border-color:#e1ddd5;
}
.search-top input::placeholder{color:#939aa6}

.btn{
  border-radius:11px;
  font-weight:650;
  letter-spacing:.005em;
  box-shadow:none;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(52,65,85,.07)}
.btn-primary{
  background:#40566d;
  color:#fbfaf7;
  border-color:#40566d;
  box-shadow:0 8px 20px rgba(64,86,109,.12);
}
.btn-primary:hover{background:#34495f;border-color:#34495f}
.btn-secondary,.btn-ghost{
  background:#faf8f4;
  color:#52677d;
  border-color:#d9d5ce;
}
.btn-blue{
  background:#6f879e;
  color:#fff;
  border-color:#6f879e;
}
.text-button,.view-all,.small-link,.breadcrumbs a,.skill-path-card small{color:#66829e}

.hero{padding:34px 0 24px}
.hero:before,.soft-bg:before,.page-hero:before{
  background:
    radial-gradient(circle at 92% 18%,rgba(220,227,229,.38) 0 10%,transparent 10.4%),
    radial-gradient(circle at 84% 78%,rgba(225,229,221,.34) 0 8%,transparent 8.4%),
    radial-gradient(circle at 98% 90%,rgba(233,222,220,.28) 0 7%,transparent 7.4%);
}
.hero-grid{min-height:310px}
.hero h1,.page-hero h1{
  color:#29384b;
  font-weight:620;
  letter-spacing:-.035em;
}
.hero h1{font-size:clamp(40px,5vw,60px);line-height:1.02}
.page-hero h1{font-size:clamp(40px,4.7vw,54px);line-height:1.04}
.page-hero p,.hero-copy,.section-head p,.detail-intro,.auth-art p{color:var(--muted)}
.section{padding:28px 0}
.section h2{font-weight:620;font-size:24px}
.section-kicker{
  color:#9a6e6a;
  font-weight:700;
  letter-spacing:.14em;
}
.hero-art,.page-hero .hero-row>img{
  mix-blend-mode:normal;
  filter:drop-shadow(0 16px 28px rgba(52,65,85,.055));
}

.subject-card,
.illustrated-subject-card,
.worksheet-card,
.card-image-link,
.account-panel,
.account-nav,
.auth-card,
.legal article,
.contact-card,
.status-card,
.summary-card,
.worksheet-guidance article{
  background:#fbfaf7!important;
  border-color:#e3dfd8!important;
  box-shadow:0 10px 28px rgba(52,65,85,.04)!important;
}
.subject-card{font-weight:650}
.subject-card:nth-child(1){background:#f1f3f2!important}
.subject-card:nth-child(2){background:#f4efef!important}
.subject-card:nth-child(3){background:#eef3f2!important}
.subject-card:nth-child(4){background:#f0f3ee!important}
.subject-card:nth-child(5){background:#f2f0f3!important}
.subject-card:nth-child(6){background:#f5f0ea!important}
.subject-card .ico{filter:saturate(.78);opacity:.86}
.illustrated-subject-card>img,
.illustrated-taxonomy-card>img,
.worksheet-card img{
  background:#f4f2ed!important;
  border-color:#e4e0d8!important;
}
.illustrated-subject-card:hover,.card-image-link:hover,.worksheet-card:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 34px rgba(52,65,85,.06)!important;
}

.worksheet-card h3,
.illustrated-subject-card>strong,
.browse-card-copy strong{
  color:#334155;
  font-weight:620;
}
.meta,.browse-card-copy span,.difficulty-pill,.worksheet-access-badge{color:#7a8494}
.difficulty-pill{
  background:#f1efea;
  border-color:#dedad2;
  font-weight:650;
}
.bookmark-btn{
  background:rgba(250,248,244,.94);
  border-color:#dedad2;
  color:#5a687a;
}
.bookmark-btn.is-bookmarked{
  background:#f3eae8;
  color:#9d6562;
  border-color:#e4cac7;
}

.inventory-strip,.collection-summary,.hub-filters,.filters,
.collection-links,.skill-path,.preview-panel,.meta-box,
.premium-lock-panel,.bundle-coverage,.checkout-security,.phase-note,
.local-note,.availability-note,.auth-message{
  background:#f1efea!important;
  border-color:#dfdbd4!important;
}
.field,.select,.form-control{
  background:#fbfaf7;
  border-color:#d9d5ce;
  color:#3b485a;
}
.field:focus,.select:focus,.form-control:focus{
  border-color:#9aabbb;
  box-shadow:0 0 0 3px rgba(111,143,174,.12);
  outline:0;
}
.filter-control label,.form-group label{color:#5f6e7f;font-weight:600}
.library-count{color:#7a8494}

.compact-taxonomy-hero{
  background:linear-gradient(135deg,#f7f4ef,#f1f0ec);
}
.collection-links a,.coverage-pills span,.bundle-coverage-stats>div{
  background:#faf8f4;
  border-color:#dedad2;
  color:#66778b;
  font-weight:600;
}
.sample-policy-note{
  border-left-color:#8ea2b4;
  background:#efede8;
  color:#6d7888;
}

.bundle-stage{
  background:#f8f5f0;
  border-color:#e2ddd5;
  box-shadow:0 16px 44px rgba(52,65,85,.05);
}
.bundle-card{
  border-color:#e1ddd6;
  box-shadow:0 10px 30px rgba(52,65,85,.045);
}
.bundle-warm{
  background:linear-gradient(145deg,#faf7f2,#f3ece8);
  border-color:#e6dcd7;
}
.bundle-blue{
  background:linear-gradient(145deg,#f7f7f4,#edf1f2);
  border-color:#dfe4e4;
}
.bundle-badge{
  background:#61788e;
  border-color:#f8f5f0;
  box-shadow:0 7px 18px rgba(64,86,109,.10);
  font-weight:650;
}
.bundle-card h3{font-weight:620}
.bundle-price strong,.bundle-price.international strong{color:#445d75}
.bundle-eyebrow,.bundle-benefits li,.bundle-positioning{color:#768195}
.bundle-benefits li:before{color:#6f8b78}
.bundle-launch-note{
  background:#efede8;
  border-color:#dedad2;
  color:#697587;
}
.launch-dot{background:#78907c;box-shadow:0 0 0 5px rgba(120,144,124,.10)}
.paper-back{background:#eadeda}
.paper-mid{background:#eee7da}
.bundle-blue .paper-back{background:#dde6e8}
.bundle-blue .paper-mid{background:#e5e4ea}

.trust-strip{
  background:#f1efea!important;
  border-color:#dfdbd4;
}
.trust-item+.trust-item{border-color:#dedad2}
.trust-icon{background:#faf8f4}
.trust-item strong{font-weight:620}
.site-footer{
  background:linear-gradient(180deg,transparent,#ece9e3);
}
.footer-links,.footer-brand span,.copyright{color:#7c8490}

.auth-illustration{
  background:#f4f0e8;
  box-shadow:0 18px 42px rgba(52,65,85,.045);
}
.auth-title,.auth-art h1,.account-panel h1,.legal h1,.detail h1{font-weight:620}
.tabs{background:#efede8}
.tab{font-weight:620;color:#607083}
.tab.active{border-color:#8ca0b2;background:#faf8f4}
.profile-avatar{background:#788799}
.account-nav a.active{background:#ebe9e4;color:#526b83}
.profile-section{
  background:#f4f1eb;
  border-color:#dfdbd4;
}
.settings-item,.order-card,.receipt-row{border-color:#e1ddd6}
.modal-backdrop{background:rgba(52,65,85,.22)}
.modal-card{background:#f9f7f2}

.subject-browser-card{
  border-color:#e2ded7;
  box-shadow:0 10px 28px rgba(52,65,85,.04);
}
.subject-browser-card.sky{background:linear-gradient(145deg,#f6f5f1,#edf1f1)}
.subject-browser-card.blush{background:linear-gradient(145deg,#f7f4f1,#f1eae9)}
.subject-browser-card.aqua{background:linear-gradient(145deg,#f5f5f1,#eaf0ef)}
.subject-browser-card.mint{background:linear-gradient(145deg,#f6f5f1,#edf0e9)}
.subject-browser-card.lavender{background:linear-gradient(145deg,#f6f4f2,#efedf1)}
.subject-browser-card.peach{background:linear-gradient(145deg,#f7f4ef,#f1ebe5)}
.subject-browser-card:before,.subject-browser-card:after{background:rgba(255,255,255,.24)}
.subject-icon{
  background:rgba(250,248,244,.82);
  box-shadow:none;
  filter:saturate(.76);
}
.subject-copy h2{font-weight:620}
.subject-action{color:#657e96;font-weight:650}
.subject-coming{background:#f8f6f2;border-color:#dfdbd4;color:#7a8494;font-weight:650}

.preview-sheet-wrap{
  background:#fbfaf7;
  border-color:#dfdbd4;
  box-shadow:0 14px 34px rgba(52,65,85,.055);
}
.preview-panel .detail-preview-image{background:#fbfaf7}
.preview-nav{
  background:rgba(250,248,244,.95);
  border-color:#dedad2;
  color:#607b95;
  box-shadow:0 5px 15px rgba(52,65,85,.07);
}
.preview-nav:hover{background:#f1efea}
.preview-count{font-weight:600;color:#5c6979}

.locked-card-visual{
  background:linear-gradient(135deg,#f4f0ea,#ecefee);
  border-color:#dfdbd4;
  color:#526273;
}
.locked-card-visual .lock-symbol{filter:grayscale(.25);opacity:.78}
.premium-access-box{color:#657184}
.bundle-coverage h2{font-weight:620}
.bundle-coverage-stats strong{font-weight:620}

.notice{
  background:#f5f0e5;
  border-color:#e4dac2;
  color:#73664c;
}
.auth-message.error,.danger-zone{
  background:#f5eceb!important;
  border-color:#e7d3d0!important;
  color:#845755;
}
.auth-message.success{
  background:#edf2ed!important;
  border-color:#d6e1d7!important;
  color:#55705a;
}
.order-status.paid{background:#eaf0ea;color:#58715d}
.order-status.pending{background:#f3eee3;color:#76684b}
.order-status.failed,.order-status.refunded{background:#f3e9e8;color:#855b59}
.status-icon{background:#eaf0ea;color:#647f68}

a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{
  outline:2px solid rgba(95,123,149,.38);
  outline-offset:3px;
}
.skip-link{border-color:#7890a7;background:#faf8f4}

@media(max-width:640px){
  body:after{opacity:.10}
  .hero h1{font-size:42px}
  .page-hero h1{font-size:40px}
  .site-header{background:rgba(246,243,237,.94)}
  .mobile-menu{background:rgba(246,243,237,.98)}
  .mobile-nav>a{background:#faf8f4;border-color:#dfdbd4;font-weight:600}
}


/* =========================================================
   Premium refinement round 2 — 2026-09-27
   Picartica-matched typography, calmer taxonomy, no crop,
   compact worksheet samples, unobtrusive verification.
   ========================================================= */

body,
button,
input,
select,
textarea{
  font-family:"Fredoka",ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;
  font-weight:400;
}
.main-nav,
.nav-actions,
.btn,
.section-kicker,
.filter-control label,
.form-group label,
.tab,
.view-all,
.text-button{
  font-weight:500;
}
h1,h2,h3,
.auth-title,
.detail h1,
.account-panel h1,
.legal h1,
.bundle-card h3,
.worksheet-card h3,
.illustrated-subject-card>strong,
.illustrated-taxonomy-card h2{
  font-family:"Fredoka",ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;
  font-weight:600!important;
  letter-spacing:-.018em;
}
.hero h1,.page-hero h1{letter-spacing:-.028em}
.logo{filter:none}

/* Internal hero artwork: preserve the full composition and give it breathing room. */
.page-hero .hero-row{
  grid-template-columns:minmax(0,1fr) minmax(380px,.95fr);
  gap:46px;
}
.page-hero .hero-row>img{
  width:min(100%,560px)!important;
  height:auto!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:18px 22px;
  border-radius:26px;
  background:#f8f5ef;
  box-shadow:0 12px 30px rgba(52,65,85,.035);
  filter:none!important;
}
.compact-taxonomy-hero .hero-row>img{max-height:none!important}
@media(max-width:980px){
  .page-hero .hero-row{grid-template-columns:1fr;gap:20px}
  .page-hero .hero-row>img{width:min(100%,620px)!important;justify-self:center}
}
@media(max-width:640px){
  .page-hero .hero-row>img{max-height:none!important;padding:10px 12px;border-radius:20px}
}

/* Worksheet samples: fixed compact preview viewport, no large empty block. */
.worksheet-card{
  padding:12px 12px 14px;
  border-radius:16px;
}
.worksheet-card>a{display:block}
.worksheet-thumb{
  width:100%;
  height:245px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #e4e0d8;
  border-radius:12px;
  background:#f5f2ec;
  padding:10px;
}
.worksheet-thumb img,
.worksheet-card .worksheet-thumb img{
  width:100%!important;
  height:100%!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:8px;
  background:transparent!important;
}
.worksheet-access-badge{
  position:absolute;
  z-index:4;
  top:14px;
  left:14px;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(202,197,188,.9);
  background:rgba(249,247,242,.94);
  color:#697486!important;
  font-size:11px;
  font-weight:500;
  backdrop-filter:blur(8px);
}
.difficulty-pill{
  margin-top:10px;
  padding:3px 7px;
  font-size:10px;
}
.worksheet-card h3{font-size:16px;line-height:1.28;margin:8px 0 4px}
.worksheet-card .meta{font-size:12px;line-height:1.35}
@media(max-width:1100px){.worksheet-thumb{height:220px}}
@media(max-width:980px){.worksheet-thumb{height:280px}}
@media(max-width:640px){.worksheet-thumb{height:300px}}
@media(max-width:420px){.worksheet-thumb{height:270px}}

/* Browse cards: one premium neutral surface instead of six loud pastel blocks. */
.subject-grid.illustrated-subject-grid,
.subject-page-grid.illustrated-subject-grid{
  gap:16px;
}
.subject-card.illustrated-subject-card,
.subject-card.illustrated-subject-card:nth-child(n){
  background:#f9f7f2!important;
  border:1px solid #e3ded6!important;
  border-radius:18px;
  padding:10px 10px 14px;
  box-shadow:0 8px 24px rgba(52,65,85,.035)!important;
}
.illustrated-subject-card>img{
  width:100%;
  aspect-ratio:1.64/1;
  object-fit:contain!important;
  object-position:center!important;
  padding:8px;
  border:0!important;
  border-radius:12px;
  background:#f2efe9!important;
  filter:saturate(.72) contrast(.98);
}
.illustrated-subject-card>strong{
  color:#354255;
  padding:2px 5px 0;
}
.illustrated-subject-card>small{
  color:#89909a!important;
  padding:0 5px 2px;
  font-size:11px;
  font-weight:400;
}
.illustrated-subject-card:hover{
  transform:translateY(-2px);
  border-color:#d8d2c9!important;
  box-shadow:0 14px 30px rgba(52,65,85,.055)!important;
}

/* Age/grade taxonomy cards: full artwork, no clipping. */
.taxonomy-card.illustrated-taxonomy-card{
  background:#f9f7f2!important;
  border:1px solid #e3ded6;
  border-radius:18px;
  padding:10px 10px 14px;
  box-shadow:0 8px 24px rgba(52,65,85,.035);
}
.illustrated-taxonomy-card>img,
.age-grid .card-image-link img{
  width:100%;
  height:220px!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  padding:8px;
  border:0!important;
  border-radius:12px;
  background:#f2efe9!important;
  filter:saturate(.78);
}
.illustrated-taxonomy-card .taxonomy-card-copy{padding:9px 6px 2px}
.illustrated-taxonomy-card h2{color:#354255;font-size:17px}
.illustrated-taxonomy-card p[data-tax-count]{
  color:#89909a;
  font-size:11px;
  font-weight:400;
}
@media(max-width:640px){
  .illustrated-taxonomy-card>img,.age-grid .card-image-link img{height:200px!important}
}

/* Login: keep verification visually silent unless Cloudflare needs input. */
#login-turnstile:empty,
#forgot-turnstile:empty,
[id$="-turnstile"]:empty{
  margin:0!important;
  min-height:0!important;
}
#login-turnstile iframe,
#forgot-turnstile iframe{
  max-width:100%;
}
.auth-login-card{
  box-shadow:0 14px 38px rgba(52,65,85,.045)!important;
}
.auth-title{color:#334155}
.small-link a{color:#607c96}


/* =========================================================
   Approved premium illustration canon + structured practice
   2026-09-27
   ========================================================= */

/* Exact user-approved hero composites. */
.approved-art-hero .hero-row{
  grid-template-columns:minmax(0,.78fr) minmax(520px,1.22fr);
  gap:42px;
}
.approved-art-hero .hero-row>img{
  width:min(100%,720px)!important;
  max-height:none!important;
  aspect-ratio:1672/941;
  object-fit:contain!important;
  object-position:center!important;
  padding:0!important;
  background:transparent!important;
  border-radius:26px;
  box-shadow:0 18px 46px rgba(54,64,78,.055);
  filter:none!important;
}
@media(max-width:980px){
  .approved-art-hero .hero-row{grid-template-columns:1fr;gap:22px}
  .approved-art-hero .hero-row>img{width:min(100%,760px)!important;justify-self:center}
}

/* Age taxonomy: premium editorial typography rather than legacy chibi art. */
.premium-age-grid{grid-template-columns:repeat(4,1fr);gap:16px}
.premium-age-card{
  position:relative;
  min-height:218px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px;
  overflow:hidden;
  border:1px solid #dfdbd3;
  border-radius:22px;
  background:
    radial-gradient(circle at 90% 12%,rgba(223,231,226,.72),transparent 30%),
    linear-gradient(145deg,#fbf9f5,#f2eee7);
  box-shadow:0 10px 28px rgba(52,65,85,.04);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.premium-age-card:nth-child(3n+2){background:radial-gradient(circle at 88% 14%,rgba(234,220,218,.58),transparent 31%),linear-gradient(145deg,#fbf9f5,#f3eee9)}
.premium-age-card:nth-child(3n){background:radial-gradient(circle at 88% 14%,rgba(216,227,236,.56),transparent 31%),linear-gradient(145deg,#fbf9f5,#edf1f2)}
.premium-age-card:hover{transform:translateY(-3px);border-color:#d4cec4;box-shadow:0 16px 34px rgba(52,65,85,.065)}
.premium-age-mark{display:flex;align-items:baseline;gap:7px;color:#435269}
.premium-age-mark span{font-family:"Fredoka",ui-rounded,system-ui,sans-serif;font-size:56px;font-weight:500;line-height:1}
.premium-age-mark i{font-style:normal;font-size:26px;color:#a7a096}
.premium-age-card .taxonomy-card-copy{padding:0}
.premium-age-card .taxonomy-card-copy small{display:block;margin-bottom:4px;color:#9a9186;font-size:10px;letter-spacing:.15em;font-weight:500}
.premium-age-card .taxonomy-card-copy h2{margin:0 0 5px;color:#344155;font-size:18px;font-weight:500!important}
.premium-age-card .taxonomy-card-copy p{margin:0;color:#818895;font-size:12px}
@media(max-width:980px){.premium-age-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.premium-age-grid{grid-template-columns:1fr}.premium-age-card{min-height:190px}}

/* Six approved Grade cards are cropped from the two approved composite artworks.
   No regenerated substitutes are used. */
.premium-grade-art{
  width:100%;
  aspect-ratio:.745/1;
  border-radius:15px;
  background-repeat:no-repeat;
  background-color:#f5f1ea;
  box-shadow:inset 0 0 0 1px rgba(218,213,204,.72);
}
.premium-grade-art[data-grade-art="pre-k"]{
  background-image:url("/assets/premium/grade-a-approved.webp");
  background-size:345.45% 145.89%;
  background-position:6.9% 52.36%;
}
.premium-grade-art[data-grade-art="grade-1"]{
  background-image:url("/assets/premium/grade-a-approved.webp");
  background-size:337.10% 140.24%;
  background-position:50% 48.89%;
}
.premium-grade-art[data-grade-art="grade-3"]{
  background-image:url("/assets/premium/grade-a-approved.webp");
  background-size:352.74% 146.57%;
  background-position:92.15% 52.84%;
}
.premium-grade-art[data-grade-art="kindergarten"]{
  background-image:url("/assets/premium/grade-b-approved.webp");
  background-size:345.45% 145.89%;
  background-position:6.9% 52.36%;
}
.premium-grade-art[data-grade-art="grade-2"]{
  background-image:url("/assets/premium/grade-b-approved.webp");
  background-size:337.10% 140.24%;
  background-position:50% 48.89%;
}
.premium-grade-art[data-grade-art="grade-4"]{
  background-image:url("/assets/premium/grade-b-approved.webp");
  background-size:352.74% 146.57%;
  background-position:92.15% 52.84%;
}
.taxonomy-card-grid .illustrated-taxonomy-card{
  padding:10px 10px 14px;
  border:1px solid #dfdbd3!important;
  background:#faf8f4!important;
  border-radius:20px;
  box-shadow:0 10px 28px rgba(52,65,85,.04)!important;
}
.taxonomy-card-grid .illustrated-taxonomy-card:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(52,65,85,.06)!important}
.taxonomy-card-grid .illustrated-taxonomy-card .taxonomy-card-copy{padding:10px 5px 1px}
.taxonomy-card-grid .illustrated-taxonomy-card h2{margin:0 0 3px;font-size:17px;font-weight:500!important}
.taxonomy-card-grid .illustrated-taxonomy-card p{margin:0;font-size:11px;color:#89909a}

/* Brainzilla-inspired discovery is now visible, not merely encoded in metadata. */
.difficulty-discovery{
  margin:22px 0 26px;
  padding:26px;
  border:1px solid #dfdbd3;
  border-radius:22px;
  background:linear-gradient(145deg,#faf8f4,#f0eee8);
  box-shadow:0 12px 32px rgba(52,65,85,.04);
}
.difficulty-discovery-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:17px}
.difficulty-discovery-head h2{margin:4px 0 4px!important;font-size:26px!important}
.difficulty-discovery-head p{margin:0;color:#7d8591}
.difficulty-discovery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.difficulty-discovery-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
  min-height:142px;
  padding:18px;
  border:1px solid #e1ddd5;
  border-radius:17px;
  background:#fbfaf7;
  transition:.18s ease;
}
.difficulty-discovery-card:hover{transform:translateY(-2px);border-color:#d4cec5;box-shadow:0 10px 24px rgba(52,65,85,.05)}
.difficulty-step{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#efede8;color:#78828f;font-size:11px;font-weight:500}
.difficulty-discovery-card strong{display:block;color:#344155;font-size:18px;font-weight:500}
.difficulty-discovery-card p{min-height:40px;margin:5px 0 9px;color:#7c8490;font-size:12px;line-height:1.45}
.difficulty-discovery-card small{color:#607b95;font-size:11px;font-weight:500}
@media(max-width:760px){.difficulty-discovery{padding:20px}.difficulty-discovery-grid{grid-template-columns:1fr}}

/* Homepage progression strip. */
.progression-section{padding-top:30px}
.home-difficulty-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.home-difficulty-card{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:13px;
  padding:17px 18px;
  border:1px solid #dfdbd3;
  border-radius:17px;
  background:#faf8f4;
  box-shadow:0 7px 20px rgba(52,65,85,.03);
}
.home-difficulty-card>span{grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#efede8;color:#7e8793;font-size:11px}
.home-difficulty-card strong{color:#344155;font-size:17px;font-weight:500}
.home-difficulty-card small{margin-top:2px;color:#75889a;font-size:11px}
.home-difficulty-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(52,65,85,.05)}
.progression-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:14px;overflow:hidden;border:1px solid #e1ddd6;border-radius:16px;background:#e1ddd6}
.progression-proof>div{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#f7f4ee}
.progression-proof b{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;border-radius:50%;background:#ebe8e1;color:#7d8793;font-size:11px}
.progression-proof span{display:flex;flex-direction:column}
.progression-proof strong{color:#455264;font-size:13px;font-weight:500}
.progression-proof small{margin-top:2px;color:#8a9099;font-size:10px}
@media(max-width:760px){.home-difficulty-grid,.progression-proof{grid-template-columns:1fr}}

/* Answer-key/model metadata on public sample cards. */
.worksheet-card-pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:9px}
.worksheet-card-pills .difficulty-pill{margin-top:0}
.answer-key-pill{
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border:1px solid #dedad2;
  border-radius:999px;
  background:#f4f1eb;
  color:#778190;
  font-size:10px;
  font-weight:500;
  line-height:1;
}


/* Grade hero: both locked approved composites (#3 + #4). */
.approved-grade-hero-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  width:min(100%,760px);
  justify-self:end;
  align-items:center;
}
.approved-grade-hero-pair img{
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:1672/941;
  object-fit:contain!important;
  padding:0!important;
  margin:0!important;
  border-radius:18px;
  background:transparent!important;
  box-shadow:0 14px 34px rgba(52,65,85,.05);
  filter:none!important;
}
@media(max-width:980px){
  .approved-grade-hero-pair{justify-self:center;width:min(100%,820px)}
}
@media(max-width:640px){
  .approved-grade-hero-pair{grid-template-columns:1fr;gap:10px}
  .approved-grade-hero-pair img{border-radius:14px}
}


/* =========================================================
   Final approved illustration pass — 2026-09-28
   ========================================================= */

/* Homepage and internal heroes use the final approved text-free artwork. */
.final-approved-hero-art,
.final-grade-hero,
.approved-art-hero .hero-row>img{
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  filter:none!important;
  mix-blend-mode:normal!important;
}
.hero .final-approved-hero-art{
  width:min(100%,620px);
  max-height:430px;
  border-radius:26px;
  box-shadow:0 18px 42px rgba(52,65,85,.045);
}
.final-grade-hero{
  width:min(100%,720px)!important;
  height:auto!important;
  max-height:none!important;
  border-radius:26px;
  box-shadow:0 18px 42px rgba(52,65,85,.045);
  justify-self:end;
}
@media(max-width:980px){
  .hero .final-approved-hero-art,
  .final-grade-hero{justify-self:center;width:min(100%,760px)!important}
}
@media(max-width:640px){
  .hero .final-approved-hero-art{max-height:none;order:-1}
  .final-grade-hero{max-height:none!important}
}

/* Grade 1 + Grade 2: use the approved cleaned artwork crops. */
.premium-grade-art[data-grade-art="grade-1"]{
  background-image:url("/assets/premium/grade1-card-final.webp")!important;
  background-size:cover!important;
  background-position:center!important;
}
.premium-grade-art[data-grade-art="grade-2"]{
  background-image:url("/assets/premium/grade2-card-final.webp")!important;
  background-size:cover!important;
  background-position:center!important;
}

/* Subject cards: reduce the heavy outer frame and rely on subtle separation. */
.subject-card.illustrated-subject-card,
.subject-card.illustrated-subject-card:nth-child(n){
  padding:8px 8px 12px!important;
  border:1px solid rgba(213,208,199,.68)!important;
  background:rgba(250,248,244,.82)!important;
  box-shadow:0 7px 20px rgba(52,65,85,.028)!important;
}
.illustrated-subject-card>img{
  border:0!important;
  background:#f3f0ea!important;
  box-shadow:none!important;
  border-radius:14px;
}
.illustrated-subject-card:hover{
  border-color:#d5cfc6!important;
  box-shadow:0 12px 26px rgba(52,65,85,.05)!important;
}

/* Keep the approved artwork free of accidental crop pressure. */
.approved-art-hero .hero-row{
  grid-template-columns:minmax(0,.8fr) minmax(480px,1.2fr);
}
.approved-art-hero .hero-row>img{
  width:min(100%,700px)!important;
  aspect-ratio:auto!important;
}


/* =========================================================
   Catalogue integrity + richer worksheet guidance — 2026-09-29
   ========================================================= */
.age-band-box{align-items:flex-start}
.age-band-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.age-band-links a{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:4px 9px;
  border:1px solid #ddd8cf;
  border-radius:999px;
  background:#f8f5ef;
  color:#60778e;
  font-size:11px;
  font-weight:500;
}
.age-band-links a:hover{border-color:#cfc8bd;background:#f1eee8}

.pack-note{
  margin:22px 0;
  padding:18px 20px;
  border:1px solid #ded9d0;
  border-radius:17px;
  background:linear-gradient(145deg,#f8f5ef,#f1eee8);
  color:#687486;
}
.pack-note strong{display:block;margin-bottom:4px;color:#435166;font-weight:600}
.pack-note p{margin:0;line-height:1.55}

.worksheet-guidance.rich-guidance{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
.worksheet-guidance.rich-guidance article{
  min-height:100%;
  padding:20px;
  border:1px solid #e1ddd5;
  border-radius:18px;
  background:#faf8f4;
  box-shadow:0 8px 22px rgba(52,65,85,.025);
}
.worksheet-guidance.rich-guidance .guidance-wide{grid-column:1/-1}
.worksheet-guidance.rich-guidance h2{margin:0 0 9px;font-size:18px;font-weight:550!important}
.worksheet-guidance.rich-guidance p{margin:0;color:#697587;line-height:1.68}
.worksheet-guidance.rich-guidance ul{margin:0;padding-left:19px;color:#697587}
.worksheet-guidance.rich-guidance li+li{margin-top:6px}

@media(max-width:700px){
  .worksheet-guidance.rich-guidance{grid-template-columns:1fr}
  .worksheet-guidance.rich-guidance .guidance-wide{grid-column:auto}
}


/* =========================================================
   AdSense readiness — conservative manual placements
   2026-10-03
   ========================================================= */
.picartica-ad-shell{
  display:none;
  width:100%;
  margin:34px auto;
  padding:10px 0 0;
  border-top:1px solid rgba(215,210,202,.72);
  text-align:center;
  overflow:hidden;
  contain:layout paint;
}
.picartica-ad-shell.is-active{
  display:block;
}
.picartica-ad-label{
  display:block;
  margin:0 0 9px;
  color:#9a948b;
  font-size:10px;
  font-weight:500;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.picartica-ad-banner.is-active{
  min-height:132px;
}
.picartica-ad-rectangle.is-active{
  width:min(100%,620px);
  min-height:286px;
}
.picartica-ad-sidebar.is-active{
  min-height:286px;
}
.picartica-ad-shell .adsbygoogle{
  width:100%;
  min-height:90px;
}
.picartica-ad-rectangle .adsbygoogle,
.picartica-ad-sidebar .adsbygoogle{
  min-height:250px;
}
.privacy-choice-panel{
  margin:18px 0 28px;
  padding:18px 20px;
  border:1px solid #dfdbd3;
  border-radius:16px;
  background:#faf8f4;
}
.privacy-choice-panel h3{margin:0 0 7px;color:#344155;font-size:18px}
.privacy-choice-panel p{margin:0 0 12px}
@media(max-width:640px){
  .picartica-ad-shell{margin:28px auto}
  .picartica-ad-banner.is-active{min-height:112px}
  .picartica-ad-rectangle.is-active,.picartica-ad-sidebar.is-active{min-height:264px}
}
@media print{
  .picartica-ad-shell,[data-privacy-choices]{display:none!important}
}

/* =========================================================
   Picartica canonical site hero — audited 2026-10-03
   Isolated from legacy .hero and .page-hero selectors.
   ========================================================= */
.site-hero{
  position:relative;
  overflow:hidden;
  padding:32px 0;
  background:
    radial-gradient(circle at 94% 16%,rgba(225,238,242,.72) 0 10%,transparent 10.4%),
    radial-gradient(circle at 84% 84%,rgba(238,226,222,.56) 0 9%,transparent 9.4%),
    linear-gradient(180deg,#fbf9f5 0%,#f7f4ee 100%);
  border-bottom:1px solid rgba(219,214,205,.72);
}
.site-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.34),transparent 52%);
}
.site-hero__inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);
  gap:48px;
  align-items:center;
  height:324px;
  min-height:324px;
}
.site-hero__copy{min-width:0;max-width:580px}
.site-hero__kicker{
  display:block;
  margin:0 0 10px;
  color:#a76d68;
  font-size:11px;
  font-weight:600;
  letter-spacing:.13em;
  line-height:1.25;
  text-transform:uppercase;
}
.site-hero__title{
  margin:0;
  max-width:580px;
  color:#344155;
  font-family:"Fredoka",ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;
  font-size:clamp(46px,4.55vw,60px);
  font-weight:600!important;
  letter-spacing:-.03em;
  line-height:1.03;
  text-wrap:balance;
}
.site-hero__description{
  max-width:560px;
  margin:14px 0 0;
  color:#6f7987;
  font-size:17px;
  line-height:1.58;
}
.site-hero__actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:20px}
.site-hero__actions>div{display:contents}
.site-hero__media{
  width:100%;
  height:286px;
  min-width:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(219,214,205,.86);
  border-radius:24px;
  background:#f6f2eb;
  box-shadow:0 14px 36px rgba(52,65,85,.045);
}
.site-hero__image{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:10px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  object-fit:contain!important;
  object-position:center!important;
}
.site-hero + .section{padding-top:24px}
.site-hero + .section>.container>:first-child{margin-top:0}
@media(max-width:980px){
  .site-hero{padding:28px 0 30px}
  .site-hero__inner{grid-template-columns:1fr;gap:20px;height:auto;min-height:0}
  .site-hero__copy{max-width:720px}
  .site-hero__title{max-width:720px;font-size:clamp(42px,6.8vw,54px)}
  .site-hero__description{max-width:680px}
  .site-hero__media{width:min(100%,720px);height:280px;justify-self:center}
}
@media(max-width:640px){
  .site-hero{padding:22px 0 24px}
  .site-hero__inner{display:flex;flex-direction:column;align-items:stretch;gap:18px}
  .site-hero__copy{order:1}
  .site-hero__media{order:2;width:100%;height:214px;border-radius:19px}
  .site-hero__image{padding:8px!important}
  .site-hero__title{font-size:40px;line-height:1.04}
  .site-hero__description{margin-top:11px;font-size:16px;line-height:1.52}
  .site-hero__actions{margin-top:17px;width:100%}
  .site-hero__actions .btn{flex:1 1 190px}
  .site-hero + .section{padding-top:24px}
}
@media(max-width:420px){
  .site-hero__title{font-size:36px}
  .site-hero__media{height:188px}
}


/* Picartica accessibility and interaction hardening */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #0d5fd7;
  outline-offset:3px;
}
.skip-link{
  position:fixed;
  left:16px;
  top:12px;
  z-index:1000;
  transform:translateY(-180%);
  background:#0d2f7f;
  color:#fff;
  padding:10px 14px;
  border-radius:10px;
  font-weight:800;
  box-shadow:0 8px 24px rgba(13,47,127,.22);
}
.skip-link:focus{transform:translateY(0)}
.menu-toggle,.profile-toggle,.bookmark-btn,.text-button{min-width:44px;min-height:44px}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .btn:hover,.card-image-link:hover img{transform:none!important}
}
@media (forced-colors:active){
  .btn,.worksheet-card,.subject-card,.auth-card,.account-panel,.profile-section,.summary-card{border:1px solid CanvasText}
}


/* Picartica 2.0 — locked public-site canon
   This layer intentionally sits after site-v12.css. Protected auth/payment pages
   keep their existing structure and logic; these rules focus on public discovery. */

:root{
  --canon-navy:#10264b;
  --canon-blue:#1267e8;
  --canon-sky:#eaf7ff;
  --canon-cream:#fffdf8;
  --canon-pink:#fff1f3;
  --canon-mint:#edf9f0;
  --canon-lavender:#f3efff;
  --canon-yellow:#fff8dc;
  --canon-border:#e7edf5;
  --canon-muted:#6d7f9d;
}
body{background:#fff;color:var(--canon-navy)}
.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #edf1f6}
.nav-shell{min-height:72px;gap:22px}
.brand-link{flex:0 0 auto}.logo{width:172px;height:auto}
.main-nav{gap:20px}.main-nav a{font-weight:600;color:#172b50}
.main-nav a[aria-current="page"]{color:var(--canon-blue)}
.search-top{margin-left:auto;max-width:360px}
.search-top input{border-radius:999px;background:#f7f9fc}
.btn{border-radius:999px}
.btn-primary{background:var(--canon-blue);border-color:var(--canon-blue)}
.section{padding:38px 0}
.section-head{align-items:flex-end;margin-bottom:20px}
.section-head h2{font-size:30px;letter-spacing:-.025em;color:var(--canon-navy)}
.section-head p{margin-top:4px;color:var(--canon-muted)}
.view-all{font-weight:600;color:var(--canon-blue)}

/* Hero: short copy, scenic artwork, no marketing wall of text. */
.site-hero--home{background:linear-gradient(180deg,#eefaff 0%,#f9fdff 100%);overflow:hidden}
.site-hero--home .site-hero__inner{min-height:430px;position:relative}
.site-hero--home .site-hero__copy{position:relative;z-index:2;width:46%;padding:54px 0}
.site-hero--home .site-hero__title{font-size:54px;line-height:1.02;max-width:570px;letter-spacing:-.045em}
.site-hero--home .site-hero__description{max-width:440px;font-size:18px;line-height:1.55}
.site-hero--home .site-hero__media{position:absolute;right:0;top:0;bottom:0;width:62%;height:auto;display:flex;align-items:center;justify-content:flex-end}
.site-hero--home .site-hero__image{width:100%;height:100%;object-fit:contain!important;object-position:right center}
.site-hero--home .site-hero__copy:after{content:"";position:absolute;z-index:-1;inset:-25px -100px -25px -40px;background:linear-gradient(90deg,rgba(238,250,255,.98) 0%,rgba(238,250,255,.92) 58%,rgba(238,250,255,0) 100%);pointer-events:none}
.site-hero--browse{background:linear-gradient(180deg,#eefaff,#fff)}
.site-hero--browse .site-hero__title{font-size:46px}
.site-hero--browse .site-hero__description{max-width:560px}

/* Home subject cards */
.canon-discovery-section{background:var(--canon-cream)}
.canon-subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.canon-subject-card{display:grid;grid-template-columns:94px 1fr;align-items:center;gap:14px;min-height:126px;padding:16px 18px;background:#fff;border:1px solid var(--canon-border);border-radius:22px;text-decoration:none;box-shadow:0 7px 22px rgba(39,73,120,.05);transition:transform .16s ease,box-shadow .16s ease}
.canon-subject-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(39,73,120,.09)}
.canon-subject-card img{width:88px;height:76px;object-fit:cover;border-radius:18px}
.canon-subject-card strong{display:block;color:var(--canon-navy);font-size:18px}
.canon-subject-card span{display:block;color:var(--canon-muted);font-size:13px;line-height:1.35;margin-top:3px}

/* Theme/category discovery */
.canon-category-section{background:#fff}
.canon-category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.canon-category-card{min-height:118px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border:1px solid var(--canon-border);background:#fff;border-radius:20px;text-decoration:none}
.canon-category-card:nth-child(6n+1){background:var(--canon-pink)}
.canon-category-card:nth-child(6n+2){background:#eef7ff}
.canon-category-card:nth-child(6n+3){background:var(--canon-mint)}
.canon-category-card:nth-child(6n+4){background:var(--canon-yellow)}
.canon-category-card:nth-child(6n+5){background:var(--canon-lavender)}
.canon-category-card:nth-child(6n+6){background:#fff2e9}
.canon-category-icon{font-family:system-ui,sans-serif;font-size:34px;line-height:1;letter-spacing:-2px}
.canon-category-card strong{font-size:13px;line-height:1.25;color:var(--canon-navy)}

/* Grade hub */
.canon-grade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.canon-grade-card{display:grid;grid-template-columns:42% 58%;min-height:230px;overflow:hidden;border:1px solid var(--canon-border);border-radius:24px;text-decoration:none}
.canon-grade-card img{width:100%;height:100%;object-fit:cover}
.canon-grade-card>div{padding:26px 22px;display:flex;flex-direction:column;justify-content:center}
.canon-grade-card h2{margin:0 0 7px;font-size:25px;color:var(--canon-navy)}
.canon-grade-card p{margin:0;color:var(--canon-muted);line-height:1.45}
.canon-grade-card span{margin-top:16px;color:var(--canon-blue);font-weight:600;font-size:13px}
.canon-grade-card.tone-1{background:var(--canon-pink)}.canon-grade-card.tone-2{background:var(--canon-yellow)}.canon-grade-card.tone-3{background:#eef7ff}
.canon-grade-card.tone-4{background:var(--canon-mint)}.canon-grade-card.tone-5{background:var(--canon-lavender)}.canon-grade-card.tone-6{background:#fff3e9}

/* Subject hub */
.canon-subject-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.canon-subject-page-card{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:stretch;border:1px solid var(--canon-border);border-radius:24px;overflow:hidden;background:#fff;text-decoration:none;box-shadow:0 7px 22px rgba(39,73,120,.04)}
.canon-subject-page-card img{width:160px;height:100%;min-height:190px;object-fit:cover}
.canon-subject-page-copy{padding:22px 22px 18px 0;display:flex;flex-direction:column;justify-content:space-between}
.canon-subject-page-card h2{margin:0;font-size:23px;color:var(--canon-navy)}
.canon-subject-page-card p{margin:5px 0 0;color:var(--canon-muted);font-size:14px}
.canon-skill-pills{display:flex;gap:7px;flex-wrap:wrap;margin:14px 0}
.canon-skill-pills span{background:#f2f7fc;border:1px solid #e4edf7;color:#526987;border-radius:999px;padding:6px 9px;font-size:11px}
.canon-subject-page-card small{color:var(--canon-blue);font-weight:600}

/* Category page */
.canon-category-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.canon-category-page-card{display:grid;grid-template-columns:92px 1fr;gap:16px;align-items:center;min-height:154px;padding:18px;border:1px solid var(--canon-border);border-radius:24px;text-decoration:none}
.canon-category-page-card .large{display:grid;place-items:center;width:80px;height:80px;background:rgba(255,255,255,.75);border-radius:22px;font-size:40px}
.canon-category-page-card h2{margin:0;font-size:20px;color:var(--canon-navy)}
.canon-category-page-card p{margin:4px 0 8px;color:var(--canon-muted);font-size:13px;line-height:1.4}
.canon-category-page-card small{font-weight:600;color:var(--canon-blue)}
.canon-category-page-card.tone-1{background:var(--canon-pink)}.canon-category-page-card.tone-2{background:#eef7ff}.canon-category-page-card.tone-3{background:var(--canon-mint)}
.canon-category-page-card.tone-4{background:var(--canon-yellow)}.canon-category-page-card.tone-5{background:var(--canon-lavender)}.canon-category-page-card.tone-6{background:#fff3e9}

/* Catalogue shortcuts + cleaner filters */
.canon-library-shortcuts{display:flex;gap:8px;overflow:auto;padding:2px 0 16px;scrollbar-width:thin}
.canon-library-shortcuts a{white-space:nowrap;display:flex;align-items:center;gap:7px;padding:8px 11px;background:#fff;border:1px solid var(--canon-border);border-radius:999px;color:var(--canon-navy);text-decoration:none;font-size:12px}
.sample-library-filters{grid-template-columns:minmax(220px,2fr) repeat(4,minmax(130px,1fr))}
.worksheet-card{border-radius:20px}
.worksheet-thumb{background:#fafcff}
.meta-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.canon-redirect-card{max-width:720px;margin:70px auto;text-align:center;padding:48px;border:1px solid var(--canon-border);border-radius:28px;background:var(--canon-cream)}
.canon-redirect-card h1{font-size:38px;margin:8px 0}
.canon-redirect-card p{color:var(--canon-muted);margin-bottom:22px}

@media(max-width:1100px){
  .main-nav{gap:12px}.main-nav a{font-size:13px}.search-top{max-width:280px}
  .canon-category-grid{grid-template-columns:repeat(4,1fr)}
  .canon-subject-grid,.canon-grade-grid{grid-template-columns:repeat(2,1fr)}
  .sample-library-filters{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:780px){
  .site-hero--home .site-hero__inner{min-height:auto;display:block;padding-bottom:0}
  .site-hero--home .site-hero__copy{width:100%;padding:36px 0 22px}
  .site-hero--home .site-hero__copy:after{display:none}
  .site-hero--home .site-hero__title{font-size:42px;max-width:560px}
  .site-hero--home .site-hero__media{position:relative;width:100%;height:260px}
  .site-hero--home .site-hero__image{object-position:center bottom}
  .canon-subject-grid,.canon-grade-grid,.canon-subject-page-grid,.canon-category-page-grid{grid-template-columns:1fr}
  .canon-category-grid{grid-template-columns:repeat(3,1fr)}
  .sample-library-filters{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .section{padding:28px 0}.section-head h2{font-size:25px}
  .site-hero--home .site-hero__title{font-size:36px}
  .site-hero--home .site-hero__media{height:220px}
  .canon-subject-card{grid-template-columns:76px 1fr}.canon-subject-card img{width:72px;height:64px}
  .canon-category-grid{grid-template-columns:repeat(2,1fr)}
  .canon-grade-card{grid-template-columns:38% 62%;min-height:190px}.canon-grade-card>div{padding:20px 16px}.canon-grade-card h2{font-size:21px}
  .canon-subject-page-card{grid-template-columns:120px 1fr}.canon-subject-page-card img{width:120px}.canon-subject-page-copy{padding:18px 14px 14px 0}
  .canon-category-page-card{grid-template-columns:74px 1fr}.canon-category-page-card .large{width:66px;height:66px;font-size:34px}
  .sample-library-filters{grid-template-columns:1fr}
}


.canon-path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.canon-path-card{padding:28px;border:1px solid var(--canon-border);border-radius:24px;min-height:250px}
.canon-path-card.tone-1{background:var(--canon-pink)}.canon-path-card.tone-2{background:#eef7ff}.canon-path-card.tone-3{background:var(--canon-mint)}
.canon-path-number{font-weight:700;color:var(--canon-blue);font-size:13px}.canon-path-card h2{font-size:25px;margin:12px 0 8px}.canon-path-card p{color:var(--canon-muted);line-height:1.55}
.canon-path-card>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.canon-path-card a{padding:8px 11px;border-radius:999px;background:#fff;color:var(--canon-blue);text-decoration:none;font-size:12px;font-weight:600}
.canon-path-note{margin-top:22px;padding:28px;border:1px solid var(--canon-border);border-radius:24px;background:var(--canon-cream)}.canon-path-note h2{margin:0 0 8px}.canon-path-note p{color:var(--canon-muted);max-width:780px;line-height:1.55}.canon-path-note .btn{margin-top:10px}
.canon-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.canon-guide-card{padding:26px;border:1px solid var(--canon-border);border-radius:24px;background:#fff;box-shadow:0 7px 22px rgba(39,73,120,.04)}.canon-guide-card span{color:var(--canon-blue);font-weight:700;font-size:12px}.canon-guide-card h2{font-size:22px;margin:10px 0 8px}.canon-guide-card p{color:var(--canon-muted);line-height:1.55}
@media(max-width:780px){.canon-path-grid,.canon-guide-grid{grid-template-columns:1fr}}