/* DiscoveryVIP 2026 refresh. Shared PHP shell only; standalone labs keep their own UI. */
:root{--max:1240px;--bg:#fff;--surface:#fff;--surface2:#f1f5f4;--text:#152b2b;--muted:#526663;--line:#dce5e1;--blue:#136858;--cyan:#136858;--radius:16px;--shadow:0 14px 40px #183e3010;--ink:#112f2b;--lime:#d5f573;--paper:#f6f8f4}
html{scroll-padding-top:110px}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}h1,h2,h3{color:var(--ink);text-wrap:balance}p{max-width:75ch}button,input,select{font:inherit}button,a,input,select,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #207dcb;outline-offset:4px}a{transition:color .15s,background .15s}button{cursor:pointer}.skip-link:focus{z-index:10001}.section{padding:80px 0}.section.alt{background:var(--paper)}.section-head{margin-bottom:32px}.section-head h2{font-size:clamp(1.9rem,3.5vw,3rem);font-weight:730;line-height:1.12;letter-spacing:-.045em}.section-head p{max-width:600px}.overline{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:#3a6559;margin:0 0 14px}.button{border-radius:9px;background:white;border:1px solid #b9cbc4;color:var(--ink);font-size:.9rem;padding:13px 19px;min-height:48px;box-shadow:none}.button.primary{background:var(--ink);color:#fff;border:1px solid var(--ink)}.button:hover{transform:none;background:#e8efea;color:#102f28}.button.primary:hover{background:#245548;color:#fff}.text-link{font-size:.9rem;color:#136858}.tag{background:#ebf1ec;color:#325c4f;font-size:.71rem;font-weight:750}.actions{align-items:center;gap:14px}.modern-header{background:#fffffff5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.modern-header .nav-wrap{height:82px;gap:24px}.brand{letter-spacing:-.045em;font-weight:780;white-space:nowrap}.brand-mark{width:38px;height:38px;border-radius:10px;background:var(--ink);color:var(--lime);font-size:1.25rem;position:relative}.brand-mark>span{position:absolute;font-size:.7rem;top:2px;right:5px}.brand>span:last-child>span{color:#32735b}.modern-header .site-nav{gap:5px;display:flex;position:static;flex-direction:row;background:transparent;border:0;padding:0;box-shadow:none}.modern-header .site-nav>a,.nav-group>summary{padding:10px 12px;border-radius:7px;font-size:.86rem;color:#354d46;font-weight:650;cursor:pointer;white-space:nowrap}.modern-header .site-nav a:hover,.nav-group>summary:hover,.modern-header .site-nav>a[aria-current=page]{background:#edf3ec;color:#163a2d}.nav-group{position:relative}.nav-group summary{list-style:none;display:flex;gap:10px;align-items:center}.nav-group summary::-webkit-details-marker{display:none}.nav-group[open]>summary{background:#edf3ec}.nav-dropdown{position:absolute;top:calc(100% + 16px);left:-20px;width:320px;max-height:75vh;overflow:auto;background:#fff;padding:15px;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 50px #173c2526}.nav-caption{margin:3px 10px 8px;font-size:.69rem;text-transform:uppercase;letter-spacing:.13em;color:#61776c;font-weight:800}.nav-dropdown a{display:block!important;padding:10px!important;border-radius:7px!important;white-space:normal}.nav-dropdown strong{display:block;font-size:.87rem}.nav-dropdown small{display:block;color:#61756e;font-size:.74rem;font-weight:450;margin-top:2px}.nav-dropdown .dropdown-all{border-top:1px solid var(--line);border-radius:0!important;margin-top:7px}.resources-menu{width:250px}.modern-header .site-nav .nav-search{border:1px solid #ccd8d1;margin-left:10px}.nav-search>span{font-size:1.3rem;line-height:.5;margin-right:5px}.modern-header .nav-toggle{display:none;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 12px;gap:10px;align-items:center;background:#fff}.modern-header .nav-toggle>span{background:none!important;width:auto!important;height:auto!important;display:inline!important;margin:0!important;font-size:.88rem;font-weight:700}
.home-hero{background:#f4f6ef;padding:78px 0 70px;border-bottom:1px solid #e3e9dd;overflow:hidden}.home-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.hero-editorial h1{font-size:clamp(2.6rem,5.2vw,4.5rem);letter-spacing:-.065em;line-height:1.07;margin:20px 0 25px;font-weight:760}.hero-editorial h1>span{color:#3e755d}.hero-lead{font-size:1.09rem;color:#4c6256;max-width:530px}.hero-footnote{font-size:.74rem;color:#566951;margin-top:23px}.live-dot{display:inline-block;width:8px;height:8px;background:#337a51;border-radius:50%;margin-right:8px}.learning-canvas{background:#153c32;border:1px solid #14382e;border-radius:15px;box-shadow:12px 15px 0 #dce6cf;transform:rotate(-2deg);color:#e7efdf;overflow:hidden}.canvas-top{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #ffffff1a;font:11px ui-monospace,monospace;color:#b7cdb8}.canvas-top>span:first-child{display:flex;gap:5px}.canvas-top i{display:block;width:7px;height:7px;background:#577d63;border-radius:50%}.canvas-top i:first-child{background:#e7c98d}.canvas-code{display:grid;grid-template-columns:20px 1fr;gap:8px 15px;padding:30px 22px;font:clamp(.65rem,1.1vw,.88rem)/1.8 ui-monospace,SFMono-Regular,monospace}.line-number{color:#95b19c;font-size:.75em;text-align:right;align-self:center}.canvas-code code{white-space:nowrap}.canvas-code em{color:#d5f573;font-style:normal}.canvas-code b{font-weight:450;color:#e7c98d}.canvas-result{margin:0 20px 18px;padding:17px;background:#244f40;border:1px solid #547661;border-radius:9px;display:flex;gap:12px;align-items:center}.canvas-result>span{border-radius:50%;display:grid;place-items:center;background:#d5f573;color:#143826;width:28px;height:28px;flex-shrink:0}.canvas-result strong{font-size:.77rem;font-weight:600}.canvas-result small{display:block;color:#c6d8c3;font-size:.69rem;margin-top:4px}.canvas-label{background:#0d3026;padding:12px 20px;font-size:.66rem;letter-spacing:.04em;color:#bbd5b3}.topic-ribbon{border-bottom:1px solid var(--line)}.topic-ribbon>.container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:19px;flex-wrap:wrap;font-size:.8rem}.topic-ribbon span{color:#607166;font-size:.72rem}.topic-ribbon a{font-weight:650}.topic-ribbon a:hover{color:var(--blue);text-decoration:underline}.topic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.topic-card{border:1px solid var(--line);padding:24px 20px;border-radius:13px;position:relative;background:#fff;min-height:240px;transition:box-shadow .15s,transform .15s}.topic-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:#8da995}.topic-card h3{font-size:1.05rem;margin:25px 0 8px;line-height:1.3;letter-spacing:-.03em}.topic-card p{color:var(--muted);font-size:.81rem;margin:0;max-width:180px}.topic-symbol{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:5px;border-radius:10px;background:#f3e5a6;color:#524619;font:750 .9rem ui-monospace,monospace}.topic-apps-script .topic-symbol{background:#deeadb;color:#2c613b}.topic-ai .topic-symbol{background:#eee3f3;color:#654d87}.topic-web .topic-symbol{background:#e3eaf6;color:#355a84}.topic-vibe .topic-symbol{background:#f7e3d6;color:#8a5134}.topic-arrow{position:absolute;right:20px;top:25px;font-size:1.2rem;color:#668478}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.resource-tile{background:#fff;border:1px solid var(--line);border-radius:13px;padding:26px;display:flex;flex-direction:column;align-items:start;min-width:0;transition:border-color .15s,box-shadow .15s}.resource-tile:hover{border-color:#94afa0;box-shadow:var(--shadow)}.resource-tile h3{font-size:1.2rem;line-height:1.35;letter-spacing:-.035em;margin:20px 0 12px}.resource-tile h3 a:hover{text-decoration:underline;text-underline-offset:4px}.resource-tile p{color:var(--muted);font-size:.87rem;margin:0 0 24px}.tile-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.64rem;color:#62776a}.tile-meta .tag{font-size:.65rem}.tile-link{margin-top:auto;font-size:.81rem;color:#1c674f;font-weight:750;display:flex;justify-content:space-between;width:100%}.tile-link>span[aria-hidden]{font-size:1.2rem}.start-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:center;background:#183e31;color:#e5eddf;border-radius:18px;padding:48px 55px}.start-panel h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.05em;line-height:1.1;color:#f6f9ed;margin:12px 0 20px}.start-panel .overline{color:#d5f573}.start-panel p{color:#c5d6c8;font-size:.9rem}.starter-steps{list-style:none;padding:0;margin:0}.starter-steps li{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid #ffffff24;align-items:center}.starter-steps li:last-child{border:0}.starter-steps li>span{color:#cce87d;font:14px ui-monospace,monospace}.starter-steps a{display:block}.starter-steps strong{display:block;font-weight:650;font-size:1rem}.starter-steps small{display:block;margin-top:5px;color:#bdcfbf;font-size:.8rem}.starter-steps a:hover strong{text-decoration:underline}.author-panel{display:grid;grid-template-columns:.55fr 1fr;gap:65px;align-items:center;max-width:1000px}.author-panel h2{font-size:clamp(1.9rem,3vw,2.6rem);letter-spacing:-.04em;margin:12px 0}.author-panel p{color:var(--muted)}.author-monogram{aspect-ratio:1.3;display:grid;place-content:center;text-align:center;background:#edeedc;border-radius:16px;font-size:4.5rem;font-weight:650;letter-spacing:-.09em;color:#365943}.author-monogram span{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;margin-top:5px;font-weight:500}.page-hero{background:#f3f6ef;padding:44px 0 48px;border-bottom:1px solid #e1e8da}.page-hero h1{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.1;letter-spacing:-.055em;max-width:1000px;margin:18px 0 22px}.page-hero h1 span{color:#3e755d}.page-hero p{font-size:1rem}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:.76rem;margin-bottom:28px;color:#537062}.breadcrumbs a:hover{text-decoration:underline}.hub-overview{display:grid;grid-template-columns:1fr 1fr;gap:70px}.hub-overview h2{font-size:1.6rem;letter-spacing:-.035em}.hub-overview p,.skill-list{color:var(--muted);font-size:.93rem}.skill-list{padding-left:20px}.skill-list li{padding:6px 0}.byline{color:var(--muted);font-size:.8rem;margin-top:26px}.byline a{text-decoration:underline}.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.path-card{border:1px solid var(--line);border-radius:16px;padding:32px;scroll-margin-top:110px}.path-card h2{font-size:1.65rem;letter-spacing:-.035em;margin:22px 0 12px}.path-card p,.path-card li{color:var(--muted);font-size:.93rem}.path-card ul{padding-left:20px;margin-bottom:25px}.resource-search{max-width:920px;margin-top:30px}.resource-search>label{font-size:.83rem;font-weight:700;display:block;margin-bottom:10px}.search-controls{display:grid;grid-template-columns:1fr 180px auto;gap:10px}.search-controls input{width:100%;min-width:0;background:#fff;border:1px solid #bdcfc3;border-radius:8px;padding:13px 16px;color:#18362b}.search-controls select{margin:0;background:#fff;color:#18362b;border:1px solid #bdcfc3}.empty-state{padding:32px;border:1px solid var(--line);border-radius:12px}.empty-state a{margin-right:20px}.resume-learning{margin-bottom:35px;border:1px solid #aecba6;border-radius:12px;padding:20px 24px;background:#edf5e8;color:#274d36}.resume-learning a{font-weight:750;text-decoration:underline}.resume-learning small{display:block;color:#506b54;font-size:.75rem;margin-top:6px}.modern-footer{background:#102e27;color:#c5d6c8;border:0;padding:55px 0 0}.footer-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px}.modern-footer .brand{color:#f7f9ef}.modern-footer .brand>span:last-child>span{color:#d5f573}.modern-footer .brand-mark{background:#d5f573;color:#153b2c}.footer-intro p{font-size:.93rem;color:#abc4b1}.footer-intro .button{background:transparent;border-color:#728e7a;color:#f2f7e6}.footer-intro .button:hover{background:#264e3e}.footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;border-block:1px solid #ffffff24;padding:35px 0 45px}.footer-columns h2{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#e5f1dc;margin:0 0 17px}.footer-columns a{display:block;margin:11px 0;font-size:.8rem;color:#c1d5c7}.footer-columns a:hover{color:#d5f573;text-decoration:underline}.modern-footer .footer-bottom{border:0;color:#a7c0ae;padding:24px 0;font-size:.7rem}.modern-header+.page-hero{border:0}.library-card{box-shadow:none!important;border-color:var(--line)!important}.library-hero{background:#f3f6ef!important}.library-hero h1{font-size:clamp(2.4rem,4.5vw,4rem)!important;line-height:1.1!important;letter-spacing:-.055em!important}.library-hero h1 span{color:#3e755d!important}.article-body p,.article-body li{color:#405c51}.lesson-reading{max-width:820px}.lesson-reading h2{font-size:1.7rem;letter-spacing:-.035em;margin-top:40px}.lesson-reading pre{color:#e0eee1;background:#163a30;border-radius:12px;white-space:pre;overflow:auto}.lesson-reading code{font-size:.86rem}.lesson-reading .practice-box{background:#f0f5e9;padding:25px;border-radius:12px;margin:30px 0}.lesson-reading .practice-box h2{margin-top:0}.lesson-links{display:flex;gap:20px;justify-content:space-between;flex-wrap:wrap}.lesson-links a{font-weight:700;color:#186548}.discovery-guide-links{max-width:70rem;margin:1rem auto;padding:16px;display:flex;gap:16px;flex-wrap:wrap;font:14px/1.5 system-ui}.discovery-guide-links a{color:#1a5f4a;text-decoration:underline}
@media(min-width:981px){.modern-header .nav-toggle{display:none!important}}
@media(max-width:1180px) and (min-width:981px){.modern-header .site-nav{display:flex}.modern-header .site-nav>a,.nav-group>summary{font-size:.8rem;padding:10px 8px}.home-hero-grid{gap:40px}}
@media(max-width:980px){.modern-header .nav-wrap{height:auto;min-height:72px;flex-wrap:wrap;padding-block:16px}.modern-header .nav-toggle:not([hidden]){display:flex}.modern-header .site-nav{width:100%;flex-direction:column;align-items:stretch;gap:4px}.modern-header .site-nav.enhanced:not(.open){display:none}.modern-header .site-nav>a,.nav-group>summary{font-size:.95rem;padding:12px}.modern-header .nav-dropdown{position:static;box-shadow:none;max-height:none;width:100%;margin:5px 0;border-radius:8px;background:#f7f9f4}.modern-header .site-nav .nav-search{margin-left:0}.home-hero-grid{grid-template-columns:1fr 1fr;gap:32px}.hero-editorial h1{font-size:3rem}.topic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topic-card{min-height:215px}.start-panel{gap:35px;padding:35px}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.author-panel{gap:35px}.footer-columns{gap:24px}.hero-footnote{max-width:330px}}
@media(max-width:700px){.container{width:min(calc(100% - 36px),var(--max))}.section{padding:55px 0}.home-hero{padding:44px 0 48px}.home-hero-grid{grid-template-columns:1fr;gap:38px}.hero-editorial h1{font-size:clamp(2.7rem,10.5vw,4.1rem);max-width:600px}.hero-lead{font-size:1rem}.hero-footnote{max-width:none}.learning-canvas{max-width:470px;transform:rotate(-1deg);margin:0 10px 0 0}.canvas-code{font-size:.78rem;padding:24px 15px;gap:7px 10px}.topic-ribbon>.container{justify-content:flex-start;gap:13px 22px;padding-block:18px}.topic-ribbon span{width:100%}.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-card{padding:20px 17px;min-height:215px}.topic-card:last-child{grid-column:1/-1;min-height:160px}.topic-card:last-child p{max-width:none}.topic-card h3{margin-top:20px}.section-head{align-items:flex-start;gap:12px}.resource-grid,.path-grid,.hub-overview{grid-template-columns:1fr}.resource-tile{padding:24px}.start-panel{grid-template-columns:1fr;padding:30px 25px;gap:10px}.author-panel{grid-template-columns:1fr;gap:25px}.author-monogram{width:100%;max-width:270px;font-size:3.5rem;aspect-ratio:1.6}.footer-intro{align-items:flex-start;flex-direction:column}.footer-columns{grid-template-columns:1fr 1fr;gap:25px}.search-controls{grid-template-columns:1fr auto}.search-controls input{grid-column:1/-1}.path-card{padding:25px}.modern-footer .footer-bottom{align-items:flex-start}.page-hero{padding:34px 0 38px}.page-hero h1{font-size:2.6rem}.topic-grid .topic-symbol{width:36px;height:36px;font-size:.8rem}.topic-arrow{right:17px}.hub-hero h1{font-size:clamp(2.1rem,8vw,3rem)}.hub-overview{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.topic-card:hover{transform:none}}
.search-pagination{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:35px;font-size:.87rem}

@media(max-width:980px){.modern-header .site-nav{max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain}}
