:root{color-scheme:dark;--bg:#111214;--panel:#1c1e22;--text:#f5f6f8;--muted:#a0a4ad;--blue:#0059ff;--line:#2b2d33}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #71a5ff;outline-offset:5px}.skip{position:fixed;left:16px;top:-60px;background:var(--blue);padding:12px;z-index:10}.skip:focus{top:12px}.site-nav{height:88px;max-width:1440px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;font-size:24px;letter-spacing:-1px}.brand:first-letter{color:#70a5ff}.site-nav nav{display:flex;gap:30px;align-items:center;font-size:14px}.site-nav nav>a:not(.cta){color:var(--muted)}.site-nav nav>a[aria-current]{color:#fff}.cta{background:linear-gradient(#4b8aff,#0059ff);box-shadow:inset 0 1px 2px #ffffff70;border-radius:30px;padding:12px 22px;white-space:nowrap}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,4.7vw,64px);letter-spacing:-.045em;line-height:1.08;font-weight:600}h2{font-size:34px;letter-spacing:-.035em;line-height:1.2}h3{font-size:20px;font-weight:500;letter-spacing:-.02em}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--muted)}.library{max-width:1344px;margin:auto;padding:84px 48px}.library h1{margin:20px 0}.lede{font-size:22px;line-height:1.55;color:var(--muted);letter-spacing:-.025em}.library-bar{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:44px 0 20px;color:var(--muted);font-size:14px}.library-bar span:first-child{color:#fff}.featured{display:grid;grid-template-columns:1.35fr 1fr;gap:42px;align-items:center;margin-top:32px}.feature-art{position:relative;overflow:hidden;border-radius:20px}.cover{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:20px}.feature-art .cover{transition:transform .4s}.featured:hover .cover{transform:scale(1.025)}.sample-badge{position:absolute;top:20px;left:20px;background:#111214bf;border:1px solid #ffffff26;border-radius:20px;padding:8px 12px;font-size:12px;backdrop-filter:blur(12px)}.feature-copy h2{margin:18px 0;font-size:36px}.feature-copy>p{color:var(--muted);line-height:1.65;max-width:420px}.meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--muted)}.meta>*{padding:8px 13px;border-radius:30px;background:#212328}.meta .author{background:var(--blue);color:white;font-weight:500}.read-link{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;margin-top:28px;font-size:14px}.read-link>span{color:#79aaff}.coming{color:#717782;font-size:14px;text-align:center;margin:90px 0 10px}.article-layout{max-width:1440px;margin:auto;padding:60px 48px 100px;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:64px}.breadcrumb{display:flex;gap:12px;color:var(--muted);font-size:14px;margin:0 0 45px}.breadcrumb a{color:#777e89}.article-layout h1{margin-bottom:24px}.article-layout .meta{margin-bottom:38px}.intro{font-size:20px;color:#b9bec6;line-height:1.65;margin:42px 0 26px}.notice{display:flex;gap:13px;background:#172235;border:1px solid #283f61;border-radius:12px;padding:18px 20px;color:#bed0ea;font-size:13px;line-height:1.6}.notice-dot{width:7px;height:7px;border-radius:50%;background:#5d96ff;margin-top:7px;flex-shrink:0}.notice p{margin:4px 0 0}.notice a{color:#8cb8ff;text-decoration:underline;text-underline-offset:3px}.tutorial-section{border-top:1px solid var(--line);padding-top:42px;margin-top:54px;scroll-margin-top:32px}.tutorial-section h2{margin-bottom:28px}.tutorial-section>p{color:var(--muted);font-size:17px;line-height:1.75;max-width:760px}.prompt{background:#1b1d21;border:1px solid #30333a;border-radius:16px;margin-top:28px;overflow:hidden}.prompt-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-bottom:1px solid #30333a;gap:15px}.prompt-bar>span{font-size:10px;letter-spacing:1.8px;color:#929aa7}.prompt button{background:#2a2e36;color:#dfe9fb;border:1px solid #3b424e;border-radius:7px;padding:8px 11px;font-size:12px}.prompt button:hover{background:#0059ff;color:#fff}.prompt>p{font-family:ui-monospace,SFMono-Regular,monospace;font-size:14px;line-height:1.85;color:#c6cbd3;margin:0;padding:24px}.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.asset-grid>div{min-height:180px;border-radius:12px;border:1px solid #30333a;position:relative;overflow:hidden}.asset-grid span{position:absolute;bottom:14px;left:16px;font-size:11px;color:#dae3f1}.asset-scene{background:center/cover url('/assets/resource-space.svg')}.asset-palette{background:#1d2532;display:grid;place-items:center}.asset-palette>div{display:flex;gap:8px}.asset-palette i{width:48px;height:70px;border-radius:30px;background:#0059ff}.asset-palette i:nth-child(2){background:#97c8ff}.asset-palette i:nth-child(3){background:#e5b888}aside{position:sticky;top:40px;align-self:start}summary{list-style:none;font-size:16px;cursor:pointer;margin-bottom:24px}summary::-webkit-details-marker{display:none}aside nav{display:flex;flex-direction:column}aside nav a{padding:12px 0 12px 18px;border-left:1px solid #3a3d44;color:#8f949d;font-size:14px;line-height:1.4}aside nav a:hover{color:white}aside nav a.active{color:#79aaff;border-left:2px solid #3b80ff;background:linear-gradient(90deg,#0059ff16,transparent)}.article-end{border-top:1px solid var(--line);margin-top:60px;padding-top:30px;display:flex;justify-content:space-between;color:var(--muted);font-size:14px}.article-end a{color:#8bb5ff}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#e9f1ff;color:#142340;border-radius:30px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .2s}.toast.show{opacity:1}footer{max-width:1344px;margin:auto;border-top:1px solid var(--line);padding:32px 48px 44px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}footer .brand{font-size:18px;color:#e0e5ee}@media(max-width:900px){.article-layout{gap:30px;grid-template-columns:minmax(0,1fr) 175px;padding-inline:28px}.featured{gap:24px}.feature-copy h2{font-size:29px}.meta{font-size:11px}}@media(max-width:680px){.site-nav{height:76px;padding:0 20px}.site-nav nav{gap:16px}.site-nav .cta{display:none}.brand{font-size:22px}.library{padding:50px 20px}.lede{font-size:19px}.featured{grid-template-columns:1fr}.feature-copy h2{font-size:32px}.article-layout{display:flex;flex-direction:column;padding:28px 20px 70px;gap:28px}.article-layout aside{order:-1;position:static}.article-layout aside details{border:1px solid var(--line);border-radius:12px;padding:16px}summary{margin-bottom:0}details[open] summary{margin-bottom:16px}.breadcrumb{font-size:12px;margin-bottom:30px}.article-layout h1{font-size:40px}.cover{border-radius:14px}.intro{font-size:18px;margin-top:28px}h2{font-size:28px}.asset-grid{gap:10px}.asset-palette i{width:30px}.prompt-bar{padding:14px}.prompt>p{padding:18px;font-size:13px}footer{padding:25px 20px;gap:25px;flex-wrap:wrap}footer>span{display:none}.coming{margin-top:60px}.tutorial-section{scroll-margin-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.brand{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.brand-badge{width:24px;height:26px;object-fit:contain}.brand-wordmark{width:104px;height:auto;display:block}footer .brand-badge{width:20px;height:22px}footer .brand-wordmark{width:90px}

.newsletter{max-width:1248px;margin:0 auto 48px;padding:40px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:40px}.newsletter h2{font-size:28px;margin-bottom:10px}.newsletter p{color:var(--muted);font-size:15px;margin-bottom:0}.newsletter label{display:block;font-size:13px;margin-bottom:10px;color:#bdc4cf}.signup-row{display:flex;gap:10px}.signup-row input{min-width:0;flex:1;background:#1c1e22;border:1px solid #414650;border-radius:9px;padding:14px 16px;color:#fff;font:inherit}.signup-row input:focus{outline:2px solid #5f98ff;outline-offset:2px}.signup-row button{border:0;color:white;font:500 14px Inter,Arial,sans-serif}.signup-row button:disabled{opacity:.65;cursor:wait}.signup-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#newsletter-status{min-height:22px;margin-top:12px;font-size:13px;color:#a9c8ff}#newsletter-status.error{color:#ffb4b4}@media(max-width:1344px){.newsletter{margin-left:48px;margin-right:48px}}@media(max-width:680px){.newsletter{margin:0 20px 30px;grid-template-columns:1fr;gap:24px;padding-top:30px}.signup-row{flex-wrap:wrap}.signup-row input{min-width:160px}.signup-row button{padding:13px 18px}}
/* Compact charcoal styling shared with Adam's portfolio. */
:root{--bg:#191919;--panel:#282828;--text:#ededeb;--muted:#a1a1a1;--line:#343434}
.site-nav{height:108px;max-width:1120px;padding:0 32px;border:0;gap:24px}
.site-nav nav{gap:4px;padding:5px;background:#242424;border:1px solid #303030;border-radius:30px;font-size:12px}
.site-nav nav>a{padding:9px 15px;border-radius:22px}
.site-nav nav>a[aria-current]{background:#414141;color:#fff}
.cta{background:#0059ff;box-shadow:none;border:0}
.site-nav .cta{margin-left:5px;font-size:12px}
.brand-badge{width:20px;height:22px}.brand-wordmark{width:90px}
.library{max-width:1120px;padding:56px 32px 64px}
.library h1{font-size:40px;letter-spacing:-.045em;margin:0 0 12px;font-weight:550}
.lede{font-size:15px;line-height:1.6;letter-spacing:0}
.library-bar{padding:30px 0 16px;font-size:12px}
.featured{background:#252525;border:1px solid #303030;border-radius:22px;padding:16px;gap:28px;margin-top:22px;grid-template-columns:1.2fr 1fr}
.feature-art{border-radius:14px}.feature-copy{padding:8px 12px 8px 0}.feature-copy h2{font-size:28px;margin:0 0 14px;font-weight:550}
.feature-copy>p{font-size:14px;line-height:1.65;margin-bottom:20px}.feature-copy .eyebrow{display:none}
.read-link{font-size:12px;padding-top:18px;margin-top:22px}.read-link>span{color:#ddd}
.sample-badge{background:#252525e8;top:12px;left:12px;font-size:11px;padding:6px 10px}
.meta{font-size:11px;gap:7px}.meta>*{background:#282828;color:#aaa;padding:7px 11px}.meta .author{background:#303030;color:#ddd}
.article-layout{max-width:1120px;grid-template-columns:minmax(0,1fr) 180px;gap:56px;padding:30px 32px 64px}
.breadcrumb{font-size:12px;margin-bottom:28px;gap:10px}.breadcrumb a{color:#aaa}
.article-layout h1{font-size:42px;font-weight:550;letter-spacing:-.045em;margin-bottom:18px}
.article-layout .meta{margin-bottom:28px}.cover{border-radius:16px}
.intro{font-size:16px;line-height:1.7;margin-top:28px;color:#b8b8b8}
.notice{background:#242424;border:1px solid #343434;color:#aaa;border-radius:14px;font-size:12px;padding:15px 18px}
.notice strong{font-weight:500;color:#ddd}.notice a{color:#b4caff}.notice-dot{background:#78a4ee;width:5px;height:5px}
.tutorial-section{padding-top:32px;margin-top:40px}.tutorial-section h2{font-size:27px;font-weight:550;margin-bottom:20px}.tutorial-section h3{font-size:16px;font-weight:500;color:#ddd}.tutorial-section>p{font-size:15px;line-height:1.75}
.prompt{background:#242424;border-color:#343434;border-radius:16px;margin-top:22px}.prompt-bar{padding:12px 18px;border-color:#343434}.prompt-bar>span{font-size:9px;letter-spacing:1px}.prompt button{background:#303030;border-color:#414141;color:#d7d7d7;border-radius:16px;font-size:11px;padding:7px 11px}.prompt>p{font-size:12px;padding:20px;line-height:1.85}
.asset-grid{gap:12px}.asset-grid>div{border-color:#343434}.asset-palette{background:#282828}
aside{top:32px}summary{font-size:13px;color:#d4d4d4;margin-bottom:18px}aside nav a{font-size:12px;padding:10px 0 10px 14px;color:#8f8f8f;border-color:#353535}aside nav a.active{color:#ededeb;background:#ffffff04;border-color:#73a2ff}
.article-end{margin-top:40px;padding-top:24px;font-size:12px}.article-end a{color:#b6b6b6}
.newsletter{max-width:1056px;margin:0 auto 40px;padding:28px;background:#262626;border:1px solid #343434;border-radius:20px;gap:28px;align-items:center}
.newsletter h2{font-size:22px;font-weight:550;letter-spacing:-.03em;margin-bottom:8px}.newsletter p{font-size:13px}.newsletter label{font-size:11px;color:#aaa}.signup-row{gap:8px}.signup-row input{background:#202020;border-color:#414141;border-radius:24px;font-size:13px;padding:12px 16px}.signup-row button{font-size:12px;padding:12px 18px}.newsletter #newsletter-status{font-size:12px;min-height:0;margin-top:8px}.newsletter #newsletter-status:empty{display:none}
footer{max-width:1120px;padding:24px 32px 36px;font-size:12px;border:0}footer .brand-wordmark{width:80px}footer .brand-badge{width:18px;height:20px}
@media(max-width:1120px){.newsletter{margin-left:32px;margin-right:32px}}
@media(max-width:760px){.article-layout{gap:26px;grid-template-columns:minmax(0,1fr) 145px}.site-nav{gap:16px}.featured{gap:20px}.feature-copy h2{font-size:24px}}
@media(max-width:680px){.site-nav{height:88px;padding:0 20px;gap:12px}.site-nav nav{font-size:11px;padding:4px}.site-nav nav>a{padding:8px 11px}.site-nav .brand-wordmark{width:82px}.site-nav .brand-badge{width:18px;height:20px}.library{padding:32px 20px 44px}.library h1{font-size:34px}.featured{grid-template-columns:1fr;padding:12px;gap:22px}.feature-copy{padding:0 8px 8px}.feature-copy h2{font-size:26px}.article-layout{display:flex;padding:20px 20px 48px;gap:24px}.article-layout h1{font-size:34px}.article-layout aside details{background:#242424;border-color:#343434;padding:13px 16px;border-radius:18px}.breadcrumb{font-size:11px;margin-bottom:24px}.intro{font-size:15px}.tutorial-section h2{font-size:25px}.newsletter{margin:0 20px 24px;padding:22px;grid-template-columns:1fr;gap:22px}.signup-row input{min-width:130px}footer{padding:20px 20px 28px}.prompt>p{font-size:12px;padding:17px}}

/* Hackathon case study. */
.case-study{max-width:1120px;margin:auto;padding:28px 32px 64px}.case-back{font-size:12px;color:var(--muted)}.case-back:hover{color:var(--text)}.case-heading{margin:52px 0 32px;max-width:730px}.case-kicker{font-size:10px;letter-spacing:1.8px;color:var(--muted);margin-bottom:16px}.case-heading h1{font-size:clamp(36px,5.2vw,62px);margin-bottom:18px;max-width:680px}.case-heading>p:last-child{font-size:16px;line-height:1.6;color:var(--muted);margin:0}.case-hero{position:relative;display:block;overflow:hidden;border-radius:20px;background:#282828}.case-hero img{display:block;width:100%;height:auto;transition:transform .4s}.case-hero:hover img{transform:scale(1.015)}.case-hero>span{position:absolute;bottom:20px;right:20px;display:flex;gap:24px;align-items:center;padding:13px 18px;border-radius:24px;background:#191919ed;color:white;font-size:13px;border:1px solid #ffffff30}.case-project{display:grid;grid-template-columns:1fr 1fr;gap:44px;padding:40px 0 48px}.case-project h2{font-size:30px;margin:0}.case-project p:not(.case-kicker),.case-context,.lesson-grid p,.tool-card p{color:var(--muted);font-size:14px;line-height:1.7}.case-text-link{font-size:13px;display:inline-block;padding:5px 0;border-bottom:1px solid #777}.case-text-link:hover{border-color:white}.case-lessons,.case-tools{border-top:1px solid var(--line);padding:40px 0}.case-study section>h2{font-size:30px;margin-bottom:16px}.case-context{max-width:600px;margin-bottom:30px}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.lesson-number{font-family:ui-monospace,monospace;font-size:12px;color:var(--muted);display:block;margin-bottom:28px}.lesson-grid h3{font-size:18px;line-height:1.35;margin-bottom:12px}.lesson-grid p{margin-bottom:0}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.tool-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#242424;border-radius:18px;padding:28px}.tool-type{font-size:10px;color:var(--muted);letter-spacing:1.5px;margin-bottom:22px}.tool-card h3{font-size:27px;margin-bottom:12px}.tool-card p{margin-bottom:28px;max-width:360px}.tool-link{display:inline-flex;align-self:flex-start;align-items:center;gap:18px;max-width:100%;padding:13px 17px;border-radius:24px;background:#ededeb;color:#191919;font-size:13px;margin-top:auto;transition:background .2s}.tool-link:hover{background:#fff}.tool-card small{font-size:11px;color:var(--muted);margin-top:12px}.tool-source{font-size:11px;color:var(--muted);align-self:flex-start;margin-top:18px;text-decoration:underline;text-underline-offset:3px}.tool-source:hover{color:var(--text)}.case-closing{font-size:clamp(23px,3vw,34px);line-height:1.4;letter-spacing:-.03em;border-top:1px solid var(--line);padding-top:40px;margin:12px 0 0}.case-closing span{color:var(--muted)}
@media(max-width:680px){.case-study{padding:20px 20px 44px}.case-heading{margin:34px 0 26px}.case-heading h1{font-size:39px}.case-heading>p:last-child{font-size:14px}.case-hero{border-radius:14px}.case-hero>span{bottom:10px;right:10px;padding:9px 12px;font-size:11px;gap:14px}.case-project{grid-template-columns:1fr;gap:22px;padding:30px 0}.case-project h2,.case-study section>h2{font-size:26px}.case-lessons,.case-tools{padding:30px 0}.lesson-grid,.tool-grid{grid-template-columns:1fr;gap:24px}.lesson-grid article{display:grid;grid-template-columns:28px 1fr;column-gap:12px}.lesson-number{grid-row:1/3;margin-top:3px;margin-bottom:0}.lesson-grid h3{margin-bottom:8px}.lesson-grid p{grid-column:2}.tool-grid{gap:14px}.tool-card{padding:23px}.case-closing{padding-top:30px}.case-context{margin-bottom:24px}}

/* Share the homepage display face across Resources. */
@font-face{font-family:"Instrument Serif";src:url('/assets/mirror/fonts.gstatic.com/s/instrumentserif/v5/jizBRFtNs2ka5fXjeivQ4LroWlx-2zcZj1bIkNo.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
.library h1,.feature-copy h2,.article-layout h1,.tutorial-section h2,.tutorial-section h3,.newsletter h2,.case-heading h1,.case-study section h2,.lesson-grid h3,.tool-card h3,.case-closing{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.025em}
.library h1{font-size:52px}.feature-copy h2{font-size:36px}.case-heading h1{font-size:clamp(44px,6vw,72px);line-height:1.04}.case-study section h2{font-size:36px}.lesson-grid h3{font-size:26px}.tool-card h3{font-size:34px}.newsletter h2{font-size:30px}
@media(max-width:680px){.library h1{font-size:44px}.feature-copy h2{font-size:32px}.case-heading h1{font-size:48px}.case-study section h2{font-size:32px}.lesson-grid h3{font-size:25px}}

/* Charcoal window chrome, shared with the homepage desktop. */
.resource-window,.tool-card,.newsletter-window{border:1px solid #52545a;border-radius:14px;background:#252629;box-shadow:inset 0 0 0 1px #ffffff05,0 10px 28px #0002;overflow:hidden}
.resource-titlebar{display:flex;align-items:center;gap:10px;min-height:38px;padding:8px 14px;border-top:1px solid #77797e;border-bottom:1px solid #17181a;background:linear-gradient(#484a50,#37393e);color:#e1e1e3;font:11px/1.3 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.09em}
.window-mark{font-size:17px;line-height:1;letter-spacing:0;color:#ddd}.window-grip{height:8px;flex:1;margin-left:14px;background:repeating-linear-gradient(0deg,#ffffff12 0 1px,transparent 1px 3px)}
.resource-window{margin-top:28px}.resource-window .featured{margin:0;border:0;border-radius:0;background:transparent;padding:20px;box-shadow:none}.resource-window .feature-art{border:1px solid #111;border-radius:8px;box-shadow:0 1px 0 #ffffff18}.resource-window .cover{border-radius:7px;aspect-ratio:1814/1080}.resource-window .feature-copy{padding-right:4px}
.preview-toggle{margin-left:auto;flex-shrink:0;background:linear-gradient(#55575c,#3a3c42);border:1px solid #222429;border-radius:5px;box-shadow:inset 0 1px 0 #ffffff28,0 1px 0 #ffffff12;color:#ededeb;font:10px/1.4 ui-monospace,Menlo,monospace;padding:5px 10px;letter-spacing:0}.preview-toggle:hover{background:linear-gradient(#64666c,#44464c)}.preview-toggle:active{box-shadow:inset 0 1px 3px #0007}
.case-preview{margin-top:0}.case-preview .case-hero{border-radius:0;background:#171719}.resource-preview{display:block;width:100%;aspect-ratio:1814/1080;object-fit:cover}.preview-game-link{position:absolute;bottom:18px;right:18px;display:inline-flex;align-items:center;gap:20px;background:linear-gradient(#484a50f5,#2c2e33f5);border:1px solid #151619;border-radius:7px;box-shadow:inset 0 1px 0 #ffffff35,0 2px 5px #0004;color:#fff;padding:11px 16px;font-size:12px}.preview-game-link:hover{background:#505258}
.tool-card{padding:0 26px 26px}.tool-card .resource-titlebar{margin:0 -26px 26px}.tool-link{background:linear-gradient(#f3f3f1,#d3d3d0);border:1px solid #171819;border-radius:7px;box-shadow:inset 0 1px 0 #fff,0 1px 0 #ffffff20;color:#242424;padding:11px 15px}.tool-link:hover{background:linear-gradient(#fff,#e8e8e5)}.tool-link:active{box-shadow:inset 0 2px 4px #0003}
.newsletter-window{padding-top:0;gap:24px 28px}.newsletter-window .resource-titlebar{grid-column:1/-1;margin:0 -28px}.newsletter-window .signup-row input{border-radius:6px;background:#1c1d20;box-shadow:inset 0 2px 4px #0004;border-color:#111 #444 #4e4e52 #111}.newsletter-window .signup-row button{border-radius:6px;background:linear-gradient(#f3f3f1,#d3d3d0);color:#242424;box-shadow:inset 0 1px 0 #fff,0 1px 0 #ffffff20;border:1px solid #171819}
@media(max-width:680px){.resource-window .featured{padding:12px;gap:20px}.resource-titlebar{font-size:10px;min-height:36px;padding:7px 12px}.preview-game-link{bottom:10px;right:10px;font-size:11px;padding:9px 12px;gap:14px}.tool-card{padding:0 22px 22px}.tool-card .resource-titlebar{margin:0 -22px 22px}.newsletter-window .resource-titlebar{margin:0 -22px}.newsletter-window{gap:22px}.tool-link{font-size:12px;gap:12px}}

/* Homepage navigation: centered glass menu and separate blue action. */
.site-nav{max-width:1440px;display:grid;grid-template-columns:1fr auto 1fr;gap:24px;height:120px;padding:0 32px;position:relative;z-index:5}.site-nav>.brand{justify-self:start}.site-nav nav{gap:20px;padding:4px 32px;background:#fff3;box-shadow:inset 0 0 4px #ffffff40;backdrop-filter:blur(16px);border:0;border-radius:100px;font-size:15px;font-weight:500;line-height:18px}.site-nav nav>a{padding:8px 0;border-radius:0}.site-nav nav>a:not(.cta){color:#fff}.site-nav nav>a[aria-current]{background:transparent;color:#fff}.site-nav nav>a:hover{text-decoration:underline;text-underline-offset:5px}.site-nav>.nav-design{justify-self:end;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:12px 28px;border:1px solid #0059ff;border-radius:30px;background:linear-gradient(180deg,#4b8aff,#0059ff);box-shadow:0 6px 20px #0059ff99,inset 0 2px 4px #ffffffad;color:#f0f2f6;font-size:18px;font-weight:500;line-height:1.4;letter-spacing:-.02em;transition:filter .2s}.site-nav>.nav-design:hover{filter:brightness(1.12)}.resource-menu-toggle{display:none}
@media(min-width:810px){.site-nav nav .mobile-design{display:none}}

@font-face { font-family: "Inter"; src: url("/assets/mirror/framerusercontent.com/assets/UjlFhCnUjxhNfep4oYBPqnEssyo.woff2"); font-display: swap; font-style: normal; font-weight: 500; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2070, U+2074-207E, U+2080-208E, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
/* Match homepage hover and scroll variants. */
.resource-header{height:120px}.resource-header .site-nav{position:fixed;left:50%;top:0;transform:translateX(-50%);width:100%;margin:0;z-index:30;transition:width .4s ease,top .4s ease,height .4s ease,padding .4s ease,background-color .4s ease,border-radius .4s ease}
.site-nav nav{font-family:Inter,Arial,sans-serif;letter-spacing:-.01em}.site-nav nav>a:hover,.site-nav nav>a[aria-current]{text-decoration:none}.site-nav nav>a{cursor:pointer;transition:color .2s}.site-nav.is-scrolled{top:27px;width:811px;max-width:calc(100% - 40px);height:66px;padding:8px 16px;border:.2px solid #474747;border-radius:32px;background:#33333380;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.site-nav.is-scrolled nav{background:transparent;box-shadow:none;backdrop-filter:none;padding:4px 12px}
.resource-cursor{position:fixed;top:0;left:0;width:78px;height:78px;object-fit:contain;pointer-events:none;z-index:9999;display:none}.resource-cursor.is-visible{display:block}@media(pointer:fine){html.has-resource-cursor,html.has-resource-cursor *{cursor:none!important}}
/* Use the homepage mobile menu's sizing, surfaces, and action button. */
@media(max-width:809px){
 .resource-header{height:80px}
 .resource-header .site-nav,.resource-header .site-nav.is-scrolled{width:100%;max-width:none;height:80px;top:0;grid-template-columns:minmax(0,1fr) 44px;gap:16px;padding:18px 24px;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
 .site-nav>.nav-design{display:none}
 .site-nav .brand-badge{width:24px;height:26px}.site-nav .brand-wordmark{width:82px}
 .resource-menu-toggle{display:flex;position:relative;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:44px;height:44px;padding:0;margin:0;border:1px solid #ffffff26;border-radius:12px;background:#ffffff0d;box-shadow:none;color:#fff;z-index:20;pointer-events:auto}
 .resource-menu-toggle span{display:block;width:20px;height:2px;background:currentColor;transition:transform .18s,opacity .18s}
 .resource-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .resource-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
 .resource-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .site-nav nav,.site-nav.is-scrolled nav{display:none;position:absolute;top:calc(100% - 4px);left:20px;right:20px;flex-direction:column;align-items:stretch;gap:4px;padding:12px;border-radius:20px;border:1px solid #ffffff20;background:#20242b;box-shadow:0 16px 40px #0005;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:19;pointer-events:auto}
 .site-nav nav.menu-open{display:flex}
 .site-nav nav>a{padding:14px 16px;color:#f4f5f7!important;text-decoration:none;font:500 16px/1.4 Inter,Arial,sans-serif;border-radius:12px;letter-spacing:normal}
 .site-nav nav>a:hover{background:#ffffff0d}
 .site-nav nav>.mobile-design{background:linear-gradient(180deg,#4b8aff 0%,#2674ff 45%,#0059ff 100%);margin:10px 4px 6px;padding:14px 20px;border:1px solid #0059ff;border-radius:999px;color:#fff!important;text-align:center;font-size:20px;letter-spacing:-.4px;box-shadow:inset 0 2px 3px #ffffff80,inset 0 -2px 3px #0050e8,0 6px 22px #0059ff55;transition:filter .18s,box-shadow .18s}
 .site-nav nav>.mobile-design:hover{background:linear-gradient(180deg,#4b8aff 0%,#2674ff 45%,#0059ff 100%);filter:brightness(1.08);box-shadow:inset 0 2px 3px #ffffff80,inset 0 -2px 3px #0050e8,0 6px 26px #0059ff70}
 .resource-menu-toggle:focus-visible,.site-nav nav>a:focus-visible{outline:2px solid #7cabff;outline-offset:3px}
}

/* Compact author and illustrative readership row. */
.resource-social{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;margin-top:16px;color:var(--muted)}
.resource-author{display:inline-flex;align-items:center;gap:8px;min-width:0;font-size:12px;font-weight:400}
.resource-author:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.resource-views{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums}
.resource-views svg{width:16px;height:16px}
.resource-window>.resource-social{margin:0 20px;padding:12px 0}

.resource-author img{display:block;width:24px;height:24px;border-radius:50%;object-fit:cover}


/* Boiler Room result and reference walkthrough. */
.boiler-study .case-heading{max-width:900px}.boiler-study .case-heading h1{max-width:none}
.boiler-result{display:block;width:100%;max-height:75vh;aspect-ratio:4/3;object-fit:contain;background:#111}
.resource-window .boiler-preview{aspect-ratio:4/3;object-fit:contain}
.boiler-process,.boiler-prompt{padding:44px 0 20px}.reference-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.reference-step h3{font:400 30px/1.15 "Instrument Serif",Georgia,serif;letter-spacing:-.025em;margin:0 0 12px}.reference-step>p,.prompt-tip{color:var(--muted);font-size:14px;line-height:1.7}.reference-step .lesson-number{margin-bottom:16px}
.reference-step figure{margin:24px 0 0}.reference-step img{display:block;width:100%;height:auto;border-radius:10px}.reference-face{max-width:260px}.reference-outfit{max-width:440px}.reference-step figcaption{font-size:11px;line-height:1.5;color:var(--muted);margin-top:12px}
.boiler-prompt .lesson-number{margin-bottom:16px}.boiler-prompt .case-context{max-width:720px}.prompt-details{border:1px solid #52545a;border-radius:12px;background:#252629;overflow:hidden}.prompt-details summary{display:flex;justify-content:space-between;gap:16px;margin:0;padding:18px 20px;font-size:14px;color:var(--text)}.prompt-details[open] summary>span{transform:rotate(45deg)}.prompt-details .prompt{border:0;border-top:1px solid var(--line);border-radius:0;margin:0}.prompt-details .prompt>p{white-space:pre-wrap}.prompt-tip{margin:18px 0 0}
@media(max-width:680px){.boiler-process,.boiler-prompt{padding-top:30px}.reference-grid{grid-template-columns:1fr;gap:34px}.reference-face{max-width:210px}.reference-outfit{max-width:100%}.reference-step h3{font-size:28px}.prompt-details summary{padding:16px}.boiler-result{max-height:70svh}}

.resource-referral{text-decoration:underline;text-underline-offset:3px;color:var(--text)}.resource-referral:hover{color:#fff}.referral-note{font-size:11px;color:var(--muted)}

.character-sheet-result{margin:40px 0 0}.character-sheet-result .case-kicker{display:block;margin-bottom:12px}.character-sheet-result h3{font:400 30px/1.15 "Instrument Serif",Georgia,serif;letter-spacing:-.025em;margin:0 0 10px}.character-sheet-result figcaption p{color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 22px}.character-sheet-result a{display:block;border-radius:10px;overflow:hidden}.character-sheet-result img{display:block;width:100%;height:auto}

.reference-download{padding-bottom:32px}.download-meta{margin:12px 0 0;font-size:11px;color:var(--muted)}

.reference-credit{max-width:660px;margin:22px 0 0;color:var(--muted);font-size:13px;line-height:1.7}

.reference-video-window{max-width:760px;margin:0 0 24px}.reference-video{display:block;width:100%;height:auto;aspect-ratio:1362/1080;max-height:70svh;object-fit:contain;background:#111}

.boiler-preface{max-width:720px;margin:0 0 32px}.boiler-preface p{font-size:16px;line-height:1.75;color:var(--muted);margin:0 0 16px}.boiler-preface p:last-child{margin-bottom:0}@media(max-width:680px){.boiler-preface p{font-size:14px}.boiler-preface{margin-bottom:26px}}

.capcut-video-window{margin:0 0 24px}.capcut-video{display:block;width:100%;height:auto;aspect-ratio:1386/1080;max-height:80svh;object-fit:contain;background:#111}

.genjutsu-walkthrough{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start;margin-top:44px}.genjutsu-instructions h3{font:400 30px/1.15 "Instrument Serif",Georgia,serif;letter-spacing:-.025em;margin:0 0 16px}.genjutsu-instructions>p,.genjutsu-instructions ol{font-size:14px;line-height:1.75;color:var(--muted)}.genjutsu-instructions ol{padding-left:22px;margin:20px 0 28px}.genjutsu-instructions li{padding-left:5px;margin-bottom:14px}.genjutsu-instructions strong{font-weight:500;color:var(--text)}.genjutsu-video-window{margin:0}.genjutsu-video{display:block;width:100%;height:auto;aspect-ratio:676/1828;object-fit:contain;background:#111}.genjutsu-instructions .prompt-bar{flex-wrap:wrap}@media(max-width:760px){.genjutsu-walkthrough{grid-template-columns:1fr;gap:26px}.genjutsu-video-window{width:min(100%,340px);justify-self:center}}

.capcut-asset{display:flex;align-items:center;gap:20px;margin:24px 0}.capcut-asset>img{display:block;width:64px;height:64px;object-fit:contain}.capcut-asset p{margin:0 0 10px;font-size:14px;color:var(--text)}.capcut-asset .tool-link{font-size:12px;padding:9px 13px}

.boiler-closing{max-width:720px;padding:40px 0 12px}.boiler-closing p{font-size:15px;line-height:1.75;color:var(--muted);margin:0 0 16px}.boiler-closing p:last-child{margin-bottom:0}@media(max-width:680px){.boiler-closing{padding-top:30px}.boiler-closing p{font-size:14px}}

/* Portrait Backrooms cover and final result, without cropping. */
.backrooms-result-window{width:min(100%,440px);margin:0 auto}.backrooms-result{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#111}.backrooms-study>.resource-social{max-width:440px;margin:16px auto 0}.backrooms-card .feature-art{background:#111}.resource-window .backrooms-cover{display:block;width:100%;height:360px;aspect-ratio:auto;object-fit:contain}.backrooms-study .lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:680px){.backrooms-study .lesson-grid{grid-template-columns:1fr}.resource-window .backrooms-cover{height:320px}}

.backrooms-references{display:grid;grid-template-columns:1fr 1fr;gap:24px}.backrooms-references figure{margin:0;min-width:0}.backrooms-references img{display:block;width:100%;height:auto;border-radius:10px}.backrooms-references figcaption{margin-top:12px;font-size:12px;color:var(--muted)}@media(max-width:680px){.backrooms-references{grid-template-columns:1fr;gap:28px}}

.backrooms-inputs{margin:28px 0}.backrooms-inputs figure{margin:0;min-width:0}.backrooms-inputs img{display:block;width:100%;height:340px;object-fit:contain;background:#fff;border-radius:10px}.backrooms-inputs figcaption{margin-top:12px;font-size:12px;color:var(--muted)}.backrooms-study .prompt-tip+.prompt-details{margin-top:22px}@media(max-width:680px){.backrooms-inputs img{height:280px}}

.backrooms-setup ol{padding-left:22px;margin:20px 0 24px;font-size:15px;line-height:1.75;color:var(--muted)}.backrooms-setup li{margin-bottom:10px;padding-left:5px}

.resource-window video.backrooms-cover{height:auto;aspect-ratio:4/3;object-fit:contain}

.backrooms-shortcut{font-size:14px;line-height:1.7;color:var(--muted);margin:0 0 28px}.backrooms-shortcut a{display:inline-block}#ready-to-use{scroll-margin-top:110px}.backrooms-background-window{max-width:800px;margin:0 0 24px}.backrooms-background-preview{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#111}@media(max-width:680px){.backrooms-shortcut{font-size:13px}#ready-to-use{scroll-margin-top:80px}}
