@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";.black-fox-app-shell{min-height:100vh}.black-fox-legal-footer{display:flex;align-items:center;justify-content:center;min-height:64px;padding:1rem clamp(1.2rem,5vw,5rem);background:#151311;color:#d8d0c8;text-align:center}.black-fox-legal-footer p{margin:0;font-size:.82rem;font-weight:600;letter-spacing:.01em}:root{font-family:DM Sans,Arial,sans-serif;color:#211e1b;background:#f4efe7;font-synthesis:none;--ink:#1d1b19;--charcoal:#2a2724;--cream:#f4efe7;--orange:#d36428;--copper:#a94921;--line:#d8cfc3}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:3px solid #f3995d;outline-offset:3px}.welcome{min-height:100vh;background:var(--ink);color:#fff}.welcome-nav,.topbar{height:76px;padding:0 clamp(1.2rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff20}.welcome-nav>strong{margin-right:auto;margin-left:.75rem}.welcome-nav>span{color:#cfc6bc;font-size:.85rem}.fox-mark{display:inline-grid;place-items:center;width:42px;height:42px;border:2px solid var(--orange);border-radius:50%;font-weight:800;color:inherit}.welcome-main{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,7vw,8rem);align-items:center;padding:clamp(4rem,9vw,8rem) clamp(1.2rem,5vw,5rem)}.kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--orange);font-weight:800;font-size:.78rem}.welcome-copy h1{font:700 clamp(3.2rem,6vw,6.6rem)/.92 "Fraunces",Georgia,serif;max-width:920px;margin:.25em 0}.intro{font-size:clamp(1.1rem,2vw,1.4rem);color:#d8d0c8;max-width:700px}.welcome-actions,.toolbar-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0}.primary,.secondary{border:0;border-radius:7px;padding:.9rem 1.2rem;font-weight:700}.primary{background:var(--orange);color:#fff;box-shadow:0 5px #7f3517}.primary:active{transform:translateY(2px);box-shadow:0 3px #7f3517}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.secondary.light{background:transparent;color:#fff;border-color:#ffffff50}.privacy{color:#bfb6ad;font-size:.9rem}.journey{border-left:1px solid #ffffff25;padding-left:clamp(1.5rem,4vw,4rem)}.journey h2{font:600 1.5rem Fraunces,serif;margin-bottom:2rem}.journey-step{display:grid;grid-template-columns:48px 1fr;gap:1rem;margin:1.7rem 0}.journey-step>span{color:var(--orange);font-weight:800}.journey-step p{color:#bfb6ad;margin:.25rem 0;font-size:.9rem}.builder{min-height:100vh}.topbar{background:var(--ink);color:#fff;position:sticky;top:0;z-index:20}.topbar>div{display:flex;align-items:center;gap:.75rem}.save-status{font-size:.85rem;color:#b8d8bf}.save-status.saving{color:#ecd2a4}.save-status.error{color:#ff9e96}.builder-grid{display:grid;grid-template-columns:290px minmax(0,1fr);max-width:1400px;margin:auto;min-height:calc(100vh - 76px)}aside{background:#eae2d7;padding:3rem 2rem;border-right:1px solid var(--line)}.step-count{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:800}.progress{height:6px;background:#d1c6b8;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--orange);transition:width .3s}aside ol{padding:0;list-style:none;margin:2rem 0}aside li button{width:100%;display:flex;align-items:center;gap:.8rem;text-align:left;background:none;border:0;padding:.65rem 0;color:#736b63}aside li button span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #b9aea2;font-size:.75rem;flex:0 0 auto}aside li.active button{color:var(--ink);font-weight:800}aside li.active span{background:var(--orange);border-color:var(--orange);color:#fff}aside li.done span{background:var(--ink);color:#fff}.start-over,.text-danger{border:0;background:none;color:#97391f;text-decoration:underline;padding:.5rem 0}.interview{background:#fff;max-width:900px;width:100%;margin:0 auto;padding:clamp(2.5rem,6vw,5rem)}.interview-head{border-bottom:1px solid var(--line);padding-bottom:2rem}.interview h1,.preview-toolbar h1{font:700 clamp(2.3rem,5vw,4.2rem)/1 "Fraunces",Georgia,serif;margin:.2em 0}.interview-head>p:last-child{color:#6e665f}.form-body{padding:2rem 0}.field{display:grid;gap:.45rem;margin:1.25rem 0;font-weight:700}.field small{font-weight:400;color:#8b837a}.field em{font-weight:400;color:#756d65;font-size:.84rem}.field input,.field textarea{width:100%;border:1px solid #bdb3a8;border-radius:7px;padding:.85rem;background:#fff;color:var(--ink);resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px #d3642825;outline:0}.two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:1.5rem}.entry-title{display:flex;justify-content:space-between;align-items:center;gap:1rem}.entry-card{border:1px solid var(--line);border-radius:9px;padding:1.5rem;margin:1.5rem 0;background:#faf7f2}.entry-card legend{font-weight:800;padding:0 .5rem}.empty-note{padding:1rem;background:#faf7f2}.design-choice{display:grid;gap:2rem}.template-card{border:3px solid var(--orange);border-radius:12px;overflow:hidden}.template-card>div:last-child{padding:1.25rem}.mini-template{min-height:210px;background:var(--ink);color:#fff;padding:2rem}.mini-template span{display:block;width:30px;height:30px;border:2px solid var(--orange);border-radius:50%}.mini-template h3{font:700 2.8rem Fraunces,serif;margin:2rem 0 .5rem}.color-field{display:flex;align-items:center;gap:1rem;font-weight:700}.color-field input{width:58px;height:44px;border:0;background:none}.review{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;overflow:hidden}.review>div{padding:1rem;border-bottom:1px solid var(--line)}.review span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#7d746b;font-weight:800}.review p{margin:.3rem 0}.preview-page{max-width:1500px;margin:auto;padding:clamp(1.5rem,4vw,4rem)}.preview-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}.device-switch{display:flex;justify-content:center;margin:1rem}.device-switch button{border:1px solid var(--line);padding:.65rem 1rem;background:#fff}.device-switch button:first-child{border-radius:7px 0 0 7px}.device-switch button:last-child{border-radius:0 7px 7px 0}.device-switch .selected{background:var(--ink);color:#fff}.preview-frame{margin:auto;background:#3b3733;padding:12px;border-radius:12px;box-shadow:0 25px 70px #30271d30;transition:max-width .3s}.preview-frame.desktop{max-width:1300px}.preview-frame iframe{display:block;width:100%;height:72vh;border:0;background:#fff;border-radius:5px}@media(max-width:850px){.welcome-main{grid-template-columns:1fr}.journey{border-left:0;border-top:1px solid #ffffff25;padding:2rem 0 0}.builder-grid{grid-template-columns:1fr}aside{padding:1rem 1.25rem;border-right:0}aside ol{display:none}.start-over{float:right;margin-top:-2rem}.preview-toolbar{align-items:flex-start;flex-direction:column}.topbar strong{display:none}}@media(max-width:600px){.welcome-nav>span{display:none}.two,.review{grid-template-columns:1fr}.interview{padding:2rem 1.2rem}.entry-title{align-items:flex-start;flex-direction:column}.form-actions{gap:.75rem}.form-actions button{flex:1}.toolbar-actions,.toolbar-actions button{width:100%}.preview-page{padding:1rem}.preview-frame iframe{height:68vh}}.editor-page,.publish-page{max-width:1400px;margin:auto;padding:clamp(2rem,5vw,5rem)}.editor-top{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.editor-top h1,.publish-page>h1{font:700 clamp(2.6rem,6vw,5rem)/.95 "Fraunces",Georgia,serif;margin:.2em 0}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.editor-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:clamp(1.2rem,3vw,2rem);box-shadow:0 12px 40px #3c302315}.editor-panel h2{font:700 1.7rem Fraunces,serif}.field select{border:1px solid #bdb3a8;border-radius:7px;padding:.85rem;background:#fff}.upload-box{border:1px dashed #a99c90;border-radius:8px;padding:1rem;margin:1rem 0;background:#faf7f2}.upload-box p{color:#756d65;font-size:.85rem}.upload-box small{display:block;color:#496b50;margin-top:.5rem}.toggle-list{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.toggle-list label{display:flex;align-items:center;gap:.65rem;background:#f7f2eb;padding:.8rem;border-radius:7px}.toggle-list input{width:20px;height:20px;accent-color:var(--orange)}.publish-page{max-width:1000px}.publish-intro{font-size:1.2rem;color:#655e57}.website-address{margin:2.5rem 0 1rem;padding:clamp(1.25rem,4vw,2.25rem);background:#1b1917;color:#fff;border-radius:14px;border-top:6px solid var(--orange);box-shadow:0 16px 45px #2d211729}.website-address h2{font:700 clamp(1.8rem,4vw,2.7rem) "Fraunces",serif;margin:.2rem 0 1.25rem}.website-address .field{color:#fff}.website-address .field input,.copy-field input{width:100%;border:1px solid #a59b91;border-radius:8px;padding:.9rem 1rem;font:inherit;color:#191817;background:#fff}.copy-field{display:grid;gap:.45rem;margin-top:1rem;font-weight:700}.copy-row{display:grid;grid-template-columns:1fr auto;gap:.65rem}.copy-row .primary{white-space:nowrap}.copy-status{min-height:1.5rem;margin:.65rem 0 0;color:#f1c6a7}.url-error{color:#ffd1c5;font-weight:700}.publish-steps{list-style:none;padding:0;margin:3rem 0}.publish-steps li{display:grid;grid-template-columns:58px 1fr;gap:1.2rem;padding:2rem 0;border-top:1px solid var(--line)}.publish-steps li>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--ink);color:#fff;font-weight:800}.publish-steps h2{margin:0;font:700 1.6rem Fraunces,serif}.publish-link{display:inline-block;text-decoration:none;margin-top:.5rem}.safety-note{background:#fff3e8;border-left:5px solid var(--orange);padding:1.25rem;margin-top:2rem}.safety-note p{margin-bottom:0}@media(max-width:800px){.editor-grid{grid-template-columns:1fr}.editor-top{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.toggle-list,.copy-row{grid-template-columns:1fr}.copy-row .primary{width:100%}.publish-steps li{grid-template-columns:44px 1fr}.publish-steps li>span{width:38px;height:38px}}.featured-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:1.25rem}.featured-card{background:#fff;border:1px solid #d8cfc3;border-radius:.6rem;padding:1.4rem;box-shadow:0 10px 30px #332a2112}.featured-card h3{font-size:1.5rem;margin:.8rem 0}.artifact-logo{width:100%;height:180px;object-fit:contain;background:#f7f3ed;border-radius:.35rem}.video-wrap{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:.4rem;background:#191817}.video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.pdf-preview{width:100%;height:360px;border:1px solid #d8cfc3;margin:1rem 0}.text-link{display:inline-block;margin:.8rem;color:var(--accent);font-weight:700}.artifact-editor{border-top:1px solid var(--line);padding-top:1.4rem;margin-top:1.4rem}.artifact-editor h3{font:700 1.35rem Fraunces,serif}.artifact-preview{max-width:220px;max-height:150px;object-fit:contain;background:#f5efe5;padding:.5rem;border-radius:.4rem}.artifact-actions{display:flex;gap:.6rem;flex-wrap:wrap}.location-checks{display:flex;gap:.8rem;flex-wrap:wrap}.location-checks label{display:flex;gap:.35rem;align-items:center}.youtube-preview{aspect-ratio:16/9;width:100%;border:0;border-radius:.4rem;background:#191817}.artifact-order{display:grid;gap:.6rem}.artifact-order>div{display:flex;align-items:center;justify-content:space-between;background:#f7f2eb;padding:.75rem;border-radius:.4rem}.artifact-order button{margin-left:.35rem}.style-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.style-choice{display:grid;border:2px solid var(--line);border-radius:10px;overflow:hidden;cursor:pointer;background:#fff;position:relative}.style-choice.selected{border-color:var(--orange);box-shadow:0 0 0 3px #d3642824}.style-choice input{position:absolute;top:1rem;right:1rem;width:22px;height:22px;accent-color:var(--orange)}.style-sample{min-height:190px;padding:1.25rem;display:flex;flex-direction:column;justify-content:flex-end}.style-sample span{display:block;width:34px;height:34px;border-radius:50%;border:3px solid var(--sample-accent);margin-bottom:auto}.style-sample h3{font-size:1.65rem;margin:.5rem 0}.style-sample p{margin:0}.sample-classic{background:#1d1b19;color:#fff}.sample-classic h3{font-family:Georgia,serif}.sample-bold{background:linear-gradient(145deg,var(--sample-accent) 0 38%,#1d1b19 38%);color:#fff}.sample-bold h3{font-family:Arial,sans-serif;text-transform:uppercase}.sample-minimal{background:#fff;color:#1d1b19;border-bottom:1px solid var(--line)}.sample-minimal h3{font-family:Trebuchet MS,sans-serif;font-weight:500}.style-copy{padding:1rem}.style-copy strong{display:block;font-size:1.05rem}.style-copy p{color:#6c655f;font-size:.88rem}.design-controls{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background:#faf7f2;border:1px solid var(--line);border-radius:10px;padding:1.25rem}.design-controls .field{margin:0}.color-row{display:flex;gap:1rem}.color-control{display:flex;align-items:center;gap:.6rem;font-weight:700}.color-control input{width:52px;height:44px;border:0;background:none}.selected-note{color:#87501f;font-weight:700;margin:.5rem 0 0}@media(max-width:900px){.style-options{grid-template-columns:1fr}.style-sample{min-height:150px}}@media(max-width:600px){.design-controls{grid-template-columns:1fr}.color-row{flex-direction:column}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.inline-course{margin-top:3rem;padding-top:3rem;border-top:2px solid var(--line)}.inline-course-heading h2{font:700 clamp(2rem,4vw,3.3rem)/1 "Fraunces",Georgia,serif;margin:.25rem 0}.inline-course-heading>p:last-child{color:#6e665f;max-width:700px}.inline-status{background:#edf6ef;border-left:4px solid #52825d;padding:.8rem 1rem}.inline-artifact-grid{display:grid;gap:1.25rem;margin-top:2rem}.inline-artifact{position:relative;background:#faf7f2;border:1px solid var(--line);border-radius:12px;padding:clamp(1.25rem,3vw,2rem)}.inline-artifact h3{font:700 1.65rem Fraunces,Georgia,serif;margin:.25rem 0}.artifact-number{color:var(--orange);font-weight:800;letter-spacing:.12em}.artifact-file{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:#fff;padding:.8rem;border-radius:.4rem}.video-preview-block{max-width:640px}.inline-artifact input[type=file]{background:#fff}@media(min-width:1100px){.inline-artifact-grid{grid-template-columns:repeat(3,1fr);align-items:start}.inline-artifact{height:100%}}.preview-page{width:100%;max-width:none}.preview-toolbar{max-width:1500px;margin-inline:auto}.preview-frame.desktop{width:100%;max-width:none;padding:0;overflow:hidden;border-radius:0;background:#fff;box-shadow:none}.preview-frame.desktop iframe{min-height:100vh;overflow:hidden;border-radius:0}.preview-frame.mobile{max-width:420px}@media(max-width:600px){.preview-frame.mobile iframe{height:68vh}}.public-site-shell{position:relative;min-height:100vh;background:#fff}.public-site-frame{display:block;width:100%;height:100vh;border:0;background:#fff}.public-return-link{position:fixed;z-index:20;left:1rem;bottom:1rem;display:inline-flex;align-items:center;min-height:44px;padding:.65rem .9rem;border:2px solid #d36428;border-radius:999px;background:#1d1b19;box-shadow:0 8px 24px #0003;color:#fff;font-size:.82rem;font-weight:900;text-decoration:none}.public-return-link:hover,.public-return-link:focus-visible{background:#d36428}.public-site-message{min-height:100vh;display:grid;place-content:center;text-align:center;padding:2rem;background:#f5efe5}.public-site-message h1{font:700 clamp(2.4rem,7vw,5rem) / .95 "Fraunces",Georgia,serif;margin:.5rem 0}.submission-form,.submission-status,.download-backup{margin:2rem 0;padding:clamp(1.3rem,4vw,2.4rem);border:1px solid var(--line);border-radius:16px;background:#fff}.submission-form h2,.submission-status h2,.download-backup h2{font:700 clamp(1.6rem,3vw,2.4rem) "Fraunces",Georgia,serif}.consent-check{display:flex;align-items:flex-start;gap:.8rem;margin:1.4rem 0;font-weight:700;line-height:1.45}.consent-check input{width:1.2rem;height:1.2rem;margin-top:.15rem;accent-color:var(--orange)}.submit-button{width:100%;justify-content:center}.published-student-url{margin:1.5rem 0;padding:clamp(1.2rem,3vw,1.8rem);border:2px solid #2f7c59;border-radius:14px;background:#fff}.published-student-url h3{margin:.25rem 0 1rem;font:700 clamp(1.45rem,3vw,2rem) "Fraunces",Georgia,serif}.published-open-button{display:inline-flex;margin-top:1rem;text-decoration:none}.published-admin-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.75rem}.published-admin-actions .secondary{min-height:40px;padding:.55rem .8rem}.submit-message{font-weight:700;color:#743410}.status-approved{border-color:#4a7c59;background:#f2fbf4}.status-rejected{border-color:#b35c3b;background:#fff6f1}.status-pending{border-color:#d18a43;background:#fffaf1}.instructor-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:#1b1917}.instructor-login{width:min(620px,100%);padding:clamp(2rem,6vw,4rem);border-radius:18px;background:#f5efe5}.instructor-login h1,.instructor-heading h1{font:700 clamp(2.5rem,6vw,5rem) / .95 "Fraunces",Georgia,serif;margin:.4rem 0 1rem}.instructor-login-help{margin:1.25rem 0 0;padding:1rem;border-left:4px solid var(--orange);background:#fff9f1;color:#5e554d}.instructor-page{max-width:1500px;margin:auto;padding:clamp(2rem,5vw,5rem)}.instructor-heading,.review-preview-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.instructor-access-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr) auto;align-items:center;gap:clamp(1rem,3vw,2.5rem);margin:2rem 0;padding:clamp(1.25rem,3vw,2rem);border:2px solid #9bc7aa;border-radius:16px;background:#f2fbf4}.instructor-access-summary h2{margin:.25rem 0 .5rem;font:700 clamp(1.7rem,3vw,2.5rem) / 1 "Fraunces",Georgia,serif}.instructor-access-summary p{margin:0}.instructor-access-summary dl{display:grid;gap:.75rem;margin:0}.instructor-access-summary dl div{display:grid;gap:.15rem}.instructor-access-summary dt{color:#57635a;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.instructor-access-summary dd{margin:0;font-weight:800}.class-admin{margin:2rem 0 3rem;padding:clamp(1.5rem,4vw,2.5rem);border-radius:18px;background:#1d1b19;color:#fff}.class-admin-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:clamp(1.5rem,4vw,4rem);align-items:end}.class-admin h2,.portfolio-queue-heading h2{margin:.2rem 0 .7rem;font:700 clamp(2rem,4vw,3.2rem) / 1 "Fraunces",Georgia,serif}.create-class-form{padding:1.2rem;border:1px solid #ffffff2b;border-radius:12px;background:#ffffff0c}.add-class-details{align-self:start}.add-class-details summary{width:fit-content;margin-left:auto;padding:.8rem 1rem;border:1px solid #ffffff40;border-radius:8px;background:#ffffff0c;color:#fff;font-weight:800;cursor:pointer;list-style:none}.add-class-details summary::-webkit-details-marker{display:none}.add-class-details[open] summary{margin-bottom:.75rem;border-color:var(--orange)}.create-class-form .field{margin-top:0}.create-class-form .primary{width:100%}.class-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:2rem}.class-card{display:flex;flex-direction:column;justify-content:space-between;gap:1rem;min-height:190px;padding:1.25rem;border:1px solid #ffffff2b;border-radius:12px;background:#2a2724}.class-card.current{border-color:var(--orange);box-shadow:inset 0 0 0 2px var(--orange)}.class-card h3{margin:.3rem 0;font:700 1.5rem Fraunces,Georgia,serif}.class-state{width:fit-content;margin:0;padding:.25rem .55rem;border-radius:999px;background:#ffffff17;color:#f5c39f;font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.class-card.current .class-state{background:var(--orange);color:#fff}.portfolio-queue-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-top:3rem}.class-filter{display:grid;gap:.35rem;min-width:min(330px,100%);font-weight:800}.class-filter select{padding:.8rem;border:1px solid var(--line);border-radius:7px;background:#fff;font:inherit}.submission-list{display:grid;gap:1.2rem;margin-top:2rem}.submission-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}.inline-portfolio-preview{min-height:430px;display:grid;place-items:center;overflow:hidden;border-right:1px solid var(--line);background:#34312e}.inline-portfolio-preview iframe{display:block;width:100%;height:430px;border:0;background:#fff}.inline-portfolio-preview p{max-width:30rem;margin:0;padding:2rem;color:#fff;text-align:center}.submission-review-panel{display:flex;flex-direction:column;gap:1.25rem;padding:1.5rem}.submission-card h2{margin:.2rem 0;font:700 1.8rem Fraunces,Georgia,serif}.submission-actions{display:flex;align-items:flex-start;flex-wrap:wrap;gap:.65rem}.review-status{width:fit-content;margin:0;padding:.3rem .65rem;border-radius:999px;background:#efe9df;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.review-status-approved{background:#dff3e4;color:#245c33}.review-status-rejected,.review-status-unpublished{background:#fbe4db;color:#81391f}.review-note{display:grid;grid-template-columns:1fr;gap:1rem}.review-preview-overlay{position:fixed;inset:0;z-index:1000;display:grid;padding:clamp(.5rem,2vw,1.5rem);background:#11100fe8}.review-preview{display:flex;flex-direction:column;width:min(1600px,100%);height:100%;min-height:0;margin:auto;padding:clamp(.65rem,1.5vw,1rem);border:1px solid #ffffff38;border-radius:14px;background:#34312e;box-shadow:0 24px 80px #0009}.review-preview-toolbar{align-items:center;padding:.25rem 0 .85rem;color:#fff}.review-preview h2,.review-preview p{margin:0;color:#fff}.review-featured-work-preview{display:block;flex:1;width:100%;min-height:0;overflow:auto;border-radius:8px;background:#fff}@media(max-width:980px){.add-class-details summary{margin-left:0}.instructor-access-summary{grid-template-columns:1fr 1fr}.instructor-access-summary>div:first-child{grid-column:1 / -1}.class-admin-heading,.submission-card{grid-template-columns:1fr}.inline-portfolio-preview{min-height:340px;border-right:0;border-bottom:1px solid var(--line)}.inline-portfolio-preview iframe{height:340px}}@media(max-width:760px){.instructor-access-summary{grid-template-columns:1fr}.instructor-access-summary>div:first-child{grid-column:auto}.instructor-heading,.portfolio-queue-heading{flex-direction:column;align-items:stretch}.review-preview-toolbar{align-items:stretch}}.classroom-page{min-height:100vh;background:linear-gradient(#d8cfc366 1px,transparent 1px),linear-gradient(90deg,#d8cfc366 1px,transparent 1px),#f4efe7;background-size:34px 34px}.classroom-topbar{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 clamp(1.2rem,5vw,5rem);background:#1d1b19;color:#fff}.classroom-topbar>div{display:flex;align-items:center;gap:.8rem}.classroom-topbar-actions{justify-content:flex-end}.topbar-back{color:#fff;font-size:.86rem;font-weight:800;text-decoration:none}.topbar-back:hover,.topbar-back:focus-visible{color:#f08a50;text-decoration:underline}.cloud-ready{padding:.55rem .9rem;border:1px solid #6a9f8e;border-radius:999px;background:#e7f4ef;color:#176f59;font-size:.8rem;font-weight:900}.classroom-shell{width:min(1500px,calc(100% - 2rem));margin:1rem auto;padding:clamp(1.5rem,4vw,3rem);border:1px solid #d8cfc3;border-radius:18px;background:#fffdf9f2;box-shadow:0 20px 60px #30271d1a}.classroom-heading h1{max-width:1100px;margin:.15em 0;font:700 clamp(2.5rem,5vw,5.2rem) / .95 "Fraunces",Georgia,serif}.classroom-heading>p:last-child{max-width:850px;color:#6e665f;font-size:1.1rem}.my-website-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);align-items:center;gap:1.5rem;margin:2rem 0;padding:clamp(1.4rem,3vw,2.2rem);border:2px solid #d36428;border-radius:16px;background:#fff8f1}.my-website-panel.is-published{border-color:#2f7c59;background:#effaf3}.my-website-panel h2{margin:.3rem 0 .6rem;font:700 clamp(1.8rem,3vw,2.8rem) / 1 "Fraunces",Georgia,serif}.my-website-panel p:not(.kicker){margin-bottom:0;color:#615a53;line-height:1.5}.student-url-box{display:grid;gap:.65rem}.student-url-box label{font-weight:900}.student-url-box input{width:100%;min-height:48px;padding:.75rem;border:1px solid #8cae9b;border-radius:8px;background:#fff;font:inherit}.student-url-actions{display:flex;flex-wrap:wrap;gap:.7rem}.student-url-actions .classroom-button{margin-top:0}.my-website-message{grid-column:1 / -1;font-weight:800}.classroom-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:2rem 0 3rem}.classroom-action-card{padding:clamp(1.4rem,3vw,2.2rem);border:1px solid #d8cfc3;border-radius:14px;background:#fff}.classroom-action-card h2,.class-gallery h2{margin:.3rem 0 .8rem;font:700 clamp(1.7rem,3vw,2.7rem) / 1 "Fraunces",Georgia,serif}.classroom-action-card>p:not(.kicker){max-width:650px;color:#615a53;line-height:1.55}.teacher-card{border-color:#d36428;background:#fff8f1}.classroom-buttons{display:flex;flex-wrap:wrap;gap:.8rem}.classroom-button{display:inline-flex;align-items:center;justify-content:center;margin-top:1rem;text-decoration:none}.teacher-card small{display:block;margin-top:1rem;color:#756d65;line-height:1.45}.teacher-class-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;margin-top:1.2rem}.teacher-class-form .field{margin:0}.teacher-class-form .primary{grid-column:1 / -1;margin-top:1rem}.class-gallery{padding-top:2rem;border-top:1px solid #d8cfc3}.gallery-heading{display:flex;align-items:end;gap:1rem}.gallery-heading>div:first-child{margin-right:auto}.gallery-count{display:grid;text-align:right}.gallery-count strong{font-size:1.4rem}.gallery-count span{color:#756d65;font-size:.78rem;font-weight:800;text-transform:uppercase}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;margin-top:1.5rem}.gallery-card{overflow:hidden;border:1px solid #d8cfc3;border-radius:14px;background:#fff}.gallery-card iframe{display:block;width:100%;height:360px;border:0;border-bottom:1px solid #d8cfc3;background:#f4efe7;pointer-events:none}.gallery-card>div{padding:1.25rem}.gallery-card h3{margin:0;font:700 1.5rem Fraunces,Georgia,serif}.gallery-card p{margin:.3rem 0;color:#176f59;font-weight:800}.gallery-empty,.gallery-message{margin-top:1.5rem;padding:2rem;border:1px dashed #bdb3a8;border-radius:12px;background:#faf7f2;text-align:center}.topbar-actions{margin-left:auto}.topbar-actions .classroom-button{margin-top:0}.welcome-nav-actions{display:flex;align-items:center;gap:.8rem}.welcome-nav-actions>span{color:#cfc6bc;font-size:.85rem}.admin-link{display:inline-flex;align-items:center;min-height:38px;padding:.55rem .8rem;border:1px solid #ffffff45;border-radius:7px;color:#fff;font-size:.8rem;font-weight:800;text-decoration:none}.admin-link:hover{border-color:#d36428;background:#ffffff0d}@media(max-width:800px){.classroom-actions-grid{grid-template-columns:1fr}.gallery-heading{align-items:stretch;flex-direction:column}.gallery-count{text-align:left}.teacher-class-form{grid-template-columns:1fr;gap:1rem}.teacher-class-form .primary{grid-column:auto;margin-top:0}.my-website-panel{grid-template-columns:1fr}}@media(max-width:600px){.classroom-shell{width:100%;margin:0;border-width:0;border-radius:0}.classroom-topbar strong,.save-status{display:none}.classroom-topbar-actions{gap:.5rem}.topbar-back{font-size:.74rem}.welcome-nav-actions>span{display:none}.admin-link{padding:.5rem .65rem;font-size:.75rem}}
