/* A focused working surface, extending the Publishers.Studio identity. */
.page-curriculum .closing-cta,.page-curriculum .footer-grid{display:none}.page-curriculum .footer-bottom{margin-top:0;padding-top:24px}.page-curriculum .site-footer{padding-top:10px}.cs-app{max-width:1600px;margin:0 auto;padding:36px 4% 26px;--cs-line:#dce5df;--cs-soft:#f4f7f3;--cs-dim:#57695e;font-size:1rem}.cs-app button,.cs-app input,.cs-app textarea,.cs-app select{font-size:.9375rem}.cs-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}.cs-kicker,.cs-mini-label{font-size:.75rem;letter-spacing:.12em;font-weight:700;color:var(--cs-dim)}.cs-kicker{margin:0 0 9px}.cs-topbar h1{font-size:2.45rem;line-height:1.15;margin:0;display:flex;gap:13px;align-items:center}.cs-version{font:600 .75rem/1 var(--sans);border:1px solid #ccd8c8;border-radius:5px;padding:7px 8px;background:#edf3e6}.cs-file-actions{display:flex;flex-wrap:wrap;gap:9px}.cs-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:10px 16px;background:#fff;border:1px solid #cedbd1;color:var(--ink);border-radius:7px;font-weight:600;line-height:1.35}.cs-btn:hover{background:#edf3e7;border-color:#a7b9a7}.cs-primary{background:var(--ink);color:#fff;border-color:var(--ink)}.cs-primary:hover{background:#294c3b;color:#fff}.cs-lime{background:#c0f17a;border-color:#c0f17a}.cs-btn:disabled{opacity:.5}.cs-text-btn{border:0;background:none;color:inherit;text-align:left;padding:8px 0;min-height:40px;text-decoration:underline;text-underline-offset:4px}.cs-shell{display:grid;grid-template-columns:222px minmax(0,1fr);border:1px solid var(--cs-line);border-radius:12px;overflow:clip;min-height:790px;background:#fff}.cs-rail{background:#f4f7f2;border-right:1px solid var(--cs-line);padding:25px 16px 20px;display:flex;flex-direction:column}.cs-project{padding:0 10px 22px;border-bottom:1px solid var(--cs-line);display:flex;flex-direction:column;gap:8px}.cs-project strong{font-size:1rem;line-height:1.45;overflow-wrap:anywhere}.cs-project>span:not(.cs-mini-label){font-size:.8125rem;color:var(--cs-dim)}.cs-project .cs-text-btn{font-size:.875rem}.cs-tabs{padding:20px 0;display:flex;flex-direction:column;gap:7px}.cs-tabs button{display:flex;gap:11px;align-items:center;width:100%;min-height:52px;text-align:left;border:0;background:transparent;padding:12px 10px;border-radius:7px;color:#4e6357;line-height:1.35;font-size:.875rem}.cs-tabs button[aria-selected=true]{background:#152c25;color:#fff;font-weight:600}.cs-tabs button:hover:not([aria-selected=true]){background:#e4eddc}.cs-tab-number{font-size:.75rem;opacity:.8;min-width:20px;font-variant-numeric:tabular-nums}.cs-count{background:#dde7d6;color:#284934;display:inline-block;min-width:20px;text-align:center;font-size:.75rem;border-radius:5px;padding:1px 4px;margin-left:7px}.cs-rail-bottom{margin-top:auto;padding:24px 10px 0;border-top:1px solid var(--cs-line)}.cs-device{display:flex;gap:9px;align-items:flex-start;font-size:.875rem;line-height:1.45}.cs-device input{accent-color:#294c3b;margin-top:4px}.cs-rail-bottom p{font-size:.8125rem;line-height:1.55;margin:12px 0 5px;color:var(--cs-dim)}.cs-rail-bottom .cs-text-btn{font-size:.8125rem}.cs-mode{display:block;margin-top:20px;font-size:.75rem;font-weight:600;letter-spacing:.08em;color:var(--cs-dim)}.cs-panel{padding:32px;min-width:0;outline-offset:-5px!important}.cs-panel h2{font-size:2rem;line-height:1.2;margin:0 0 12px}.cs-panel h3{font-size:1.125rem;line-height:1.4;margin:0 0 12px}.cs-panel p{color:var(--cs-dim);line-height:1.65}.cs-section-top{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:25px}.cs-section-top p{max-width:650px;margin:0}.cs-section-top>div:first-child{min-width:0}.cs-section-top .cs-label{white-space:nowrap}.cs-label{font-size:.75rem;line-height:1.4;font-weight:600;padding:6px 9px;border:1px solid var(--cs-line);border-radius:5px;background:#f7faf5;display:inline-block}.cs-label.amber{color:#775011;background:#fff6e4;border-color:#efdfbb}.cs-label.forest{color:#244f34;background:#eaf2e4;border-color:#d3e3c9}.cs-design-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);gap:28px;align-items:start}.cs-fields{display:grid;gap:20px}.cs-field{display:flex;flex-direction:column;gap:7px;min-width:0}.cs-field>label,.cs-field>span:first-child{font-size:.875rem;font-weight:600;line-height:1.4}.cs-field input,.cs-field textarea,.cs-field select{width:100%;padding:11px 12px;border:1px solid #cbd8ce;border-radius:6px;background:#fff;color:var(--ink);line-height:1.5;min-height:46px}.cs-field textarea{resize:vertical;min-height:96px}.cs-field input:focus,.cs-field textarea:focus,.cs-field select:focus{border-color:#558447}.cs-help{font-size:.8125rem;line-height:1.55;color:var(--cs-dim);font-weight:400}.cs-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.cs-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.cs-preview{background:#eff5e9;border:1px solid #dce7d3;border-radius:8px;padding:24px;position:sticky;top:20px}.cs-preview h3{font:1.7rem/1.25 var(--serif);margin:14px 0}.cs-preview p{font-size:.9375rem}.cs-preview .cs-mini-label{font-size:.75rem}.cs-relationship{display:grid;gap:0;margin:24px 0}.cs-step{display:flex;justify-content:space-between;gap:14px;padding:17px 0;border-top:1px solid #d1dfc7;align-items:center}.cs-step span{font-size:.875rem;line-height:1.4;max-width:65%}.cs-step strong{font:1.5rem/1.2 var(--serif);font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.cs-step:last-child{border-bottom:1px solid #d1dfc7}.cs-preview-note{font-size:.8125rem!important;margin:20px 0 0}.cs-fieldset{padding:20px;border:1px solid var(--cs-line);border-radius:8px;margin:0;min-width:0}.cs-fieldset legend{padding:0 6px;font-weight:600;font-size:.875rem}.cs-fieldset p:last-child{margin-bottom:0}.cs-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px}.cs-actions p{margin:0;font-size:.875rem}.cs-card{padding:24px;border:1px solid var(--cs-line);border-radius:8px;min-width:0}.cs-card+.cs-card{margin-top:20px}.cs-card.soft{background:#f5f8f2}.cs-toggle{display:flex;justify-content:space-between;gap:20px;align-items:start;padding:16px 0;border-bottom:1px solid var(--cs-line)}.cs-toggle:first-child{padding-top:0}.cs-toggle:last-child{border:0;padding-bottom:0}.cs-toggle label{font-size:1rem;display:block;font-weight:600}.cs-toggle small{display:block;color:var(--cs-dim);font-size:.875rem;line-height:1.5;margin-top:5px}.cs-toggle input{width:19px;height:19px;accent-color:#294c3b;flex:none;margin-top:4px}.cs-notice{border-left:3px solid #91ad70;background:#f3f7ed;padding:16px 18px;font-size:.9375rem;line-height:1.6;margin:20px 0;color:#374e3e}.cs-notice.amber{border-color:#c59b46;background:#fff8ec;color:#755622}.cs-context-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);gap:25px}.cs-invitation{padding:26px;border:1px solid #ccdfbe;border-radius:9px;background:#f0f7e9}.cs-invitation h3{font:1.5rem/1.25 var(--serif)}.cs-rehearsal-banner{display:flex;gap:16px;justify-content:space-between;align-items:center;background:#152c25;color:white;border-radius:8px;padding:15px 18px;margin-bottom:24px;font-size:.875rem}.cs-rehearsal-banner>span{line-height:1.5}.cs-rehearsal-banner .cs-text-btn{color:#c0f17a;white-space:nowrap}.cs-world-params{margin-top:23px}.cs-outcome{padding:18px;border:1px solid #cfddc5;border-radius:7px;background:#eff6e8;margin:20px 0}.cs-outcome strong{display:block;font-size:1rem;margin-bottom:7px}.cs-outcome p{font-size:.9375rem;margin:0}.cs-outcome.incorrect{background:#fff8ee;border-color:#ead9b9}.cs-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.cs-chip{border:1px solid #d4dfd0;border-radius:99px;padding:8px 12px;background:white;font-size:.875rem!important;min-height:42px}.cs-chip[aria-pressed=true]{background:#e6f0dd;border-color:#79965f}.cs-prompt{padding:20px;background:#f4f7f2;border-radius:7px;font-size:1.0625rem;line-height:1.6;margin-bottom:22px}.cs-prompt .cs-mini-label{display:block;margin-bottom:8px}.cs-reference{font-family:var(--serif);font-size:1.2rem!important;line-height:1.6!important;border-left:2px solid #a4b89a;padding-left:18px}.cs-runtime-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);gap:24px;align-items:start}.cs-runtime-grid .cs-preview{position:static}.cs-ai-grid{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1fr);gap:25px}.cs-prompt-output{width:100%;min-height:365px;resize:vertical;border:1px solid var(--cs-line);border-radius:8px;padding:18px;background:#f7f9f5;font: .875rem/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;color:#284534}.cs-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.cs-metric{border:1px solid var(--cs-line);border-radius:8px;padding:20px}.cs-metric strong{font:2.2rem/1.2 var(--serif);display:block;margin-bottom:7px}.cs-metric span{font-size:.875rem;color:var(--cs-dim)}.cs-empty{border:1px dashed #c5d4c0;border-radius:9px;padding:48px 30px;text-align:center;background:#fafcf8}.cs-empty h3{font:1.8rem/1.2 var(--serif)}.cs-empty p{max-width:480px;margin:0 auto 22px}.cs-table-wrap{overflow:auto;max-width:100%;border:1px solid var(--cs-line);border-radius:8px}.cs-table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem;min-width:570px}.cs-table th{background:#f4f7f1;color:#53634c;font-size:.8125rem;font-weight:600}.cs-table th,.cs-table td{padding:14px 16px;border-bottom:1px solid var(--cs-line);vertical-align:top}.cs-table tr:last-child td{border-bottom:0}.cs-table .cs-text-btn{font-size:.875rem;min-height:36px;padding:0}.cs-table td small{display:block;font-size:.75rem;color:var(--cs-dim);margin-top:5px}.cs-checks{list-style:none;padding:0;margin:0}.cs-checks li{padding:13px 0;border-bottom:1px solid var(--cs-line);display:flex;gap:12px;font-size:.9375rem;align-items:start}.cs-checks li:last-child{border:0}.cs-check-icon{width:22px;min-width:22px;height:22px;border-radius:50%;background:#e5efda;text-align:center;color:#40632e;font-weight:700;line-height:22px}.cs-check-icon.pending{background:#fff1d9;color:#7f601e}.cs-review-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.8fr);gap:24px}.cs-check-summary{font:1.6rem/1.3 var(--serif);margin:20px 0 10px}.cs-version-row{padding:16px 0;border-bottom:1px solid var(--cs-line);display:flex;justify-content:space-between;gap:15px}.cs-version-row strong{font-size:.9375rem;display:block}.cs-version-row span{display:block;font-size:.8125rem;color:var(--cs-dim);margin-top:5px}.cs-version-row .cs-text-btn{font-size:.875rem}.cs-status{min-height:50px;margin-top:14px;padding:10px 0;color:var(--cs-dim);font-size:.875rem;line-height:1.5}.cs-status.error{color:#8d3d21}.cs-dialog{max-width:min(700px,calc(100% - 32px));width:700px;max-height:85vh;overflow:auto;padding:28px;border:1px solid #bfd0b9;border-radius:12px;color:var(--ink)}.cs-dialog::backdrop{background:#10251966}.cs-dialog h2{font:2rem/1.2 var(--serif)}.cs-dialog dl{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;font-size:.9375rem}.cs-dialog dt{color:var(--cs-dim)}.cs-dialog dd{margin:0;overflow-wrap:anywhere}.cs-dialog p{font-size:.9375rem;line-height:1.65}.cs-dialog form{margin-top:25px}.cs-error{border:1px solid #dcb7a4;background:#fff6ee;padding:16px;border-radius:7px;color:#863e20}.cs-subtle{font-size:.8125rem!important;color:var(--cs-dim)}
@media(min-width:1321px){.site-header nav{gap:17px}.site-header{gap:18px}.header-actions{gap:12px}.header-demo{display:none}}
@media(max-width:1320px){.site-header .desktop-nav{display:none}.site-header .mobile-toggle{display:inline-flex}.header-demo{display:none}.cs-app{padding-inline:3%}.cs-shell{grid-template-columns:205px minmax(0,1fr)}.cs-panel{padding:26px}.cs-design-grid,.cs-runtime-grid{grid-template-columns:minmax(0,1fr) minmax(230px,.7fr);gap:20px}.cs-preview{padding:20px}.cs-tabs button{padding-inline:8px;gap:8px}}
@media(max-width:1100px){.cs-design-grid,.cs-runtime-grid,.cs-context-grid,.cs-ai-grid,.cs-review-grid{grid-template-columns:minmax(0,1fr)}.cs-preview{position:static}.cs-preview .cs-relationship{margin-block:16px}.cs-topbar h1{font-size:2.1rem}.cs-file-actions .cs-btn{padding-inline:12px}.cs-shell{min-height:720px}}
@media(max-width:760px){.cs-app{padding:25px 18px}.cs-topbar{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:24px}.cs-file-actions{width:100%}.cs-file-actions .cs-btn{flex:1;font-size:.875rem}.cs-topbar h1{font-size:2.2rem}.cs-shell{display:flex;flex-direction:column;overflow:visible}.cs-rail{border:0;border-bottom:1px solid var(--cs-line);padding:18px 16px;border-radius:12px 12px 0 0}.cs-project{padding:0;border:0;display:grid;grid-template-columns:1fr auto;gap:5px 12px}.cs-project strong{grid-column:1}.cs-project>.cs-text-btn{grid-column:2;grid-row:1/3}.cs-project .cs-mini-label{font-size:.75rem}.cs-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 0 0;gap:6px}.cs-tabs button{font-size:.875rem;min-height:48px}.cs-rail-bottom{margin:18px 0 0;padding:16px 0 0;display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}.cs-rail-bottom p{display:none}.cs-rail-bottom .cs-mode{margin:0;font-size:.75rem}.cs-rail-bottom .cs-text-btn{margin-left:auto}.cs-panel{padding:25px 18px}.cs-panel h2{font-size:1.8rem}.cs-section-top{gap:12px;flex-wrap:wrap}.cs-card,.cs-preview,.cs-invitation{padding:20px}.cs-three{grid-template-columns:minmax(0,1fr)}.cs-two{gap:12px}.cs-rehearsal-banner{align-items:start;flex-wrap:wrap}.cs-metrics{gap:8px}.cs-metric{padding:14px 10px}.cs-metric strong{font-size:1.9rem}.cs-metric span{font-size:.8125rem}.cs-empty{padding:32px 18px}.cs-dialog{padding:22px}.cs-dialog dl{grid-template-columns:minmax(0,1fr);gap:4px}.cs-dialog dd{margin-bottom:13px}}
@media(max-width:420px){.cs-two{grid-template-columns:minmax(0,1fr)}.cs-topbar h1{font-size:1.95rem}.cs-file-actions .cs-btn{flex:1 1 auto;gap:8px}.cs-tabs button{font-size:.875rem;gap:6px}.cs-metrics{grid-template-columns:minmax(0,1fr)}.cs-metric{display:flex;align-items:center;gap:18px}.cs-metric strong{margin:0;min-width:35px}}
@media(prefers-reduced-motion:reduce){.cs-app *{scroll-behavior:auto;transition:none!important}}
