/* CP Pickleball — The Kitchen Atlas. Original procedural art; no app UI. */
:root{--night:#070d13;--paper:#eeeae0;--quiet:#aab6ba;--gold:#e4c18c;--mint:#c9ee9e;--max:1320px}
html{scroll-padding-top:100px}body{background:var(--night);color:var(--paper)}::selection{background:#c9ee9e;color:#070d13}a:focus-visible,button:focus-visible,canvas:focus-visible,input:focus-visible{outline:2px solid var(--mint);outline-offset:6px}button{font:inherit}button:disabled{cursor:not-allowed}.skip-link{position:fixed;top:-80px;left:20px;z-index:1000;padding:14px;background:var(--mint);color:#070d13}.skip-link:focus{top:12px}.container{width:min(var(--max),calc(100% - 96px))}.site-header{background:#070d13e8;border-bottom:1px solid #b8c9cc22;backdrop-filter:blur(18px)}.nav{height:88px;gap:24px}.brand{gap:13px}.brand img{width:43px;height:43px;border-radius:50%}.brand span{font-size:13px;letter-spacing:.12em}.brand span:after{content:none}.nav-links{gap:25px}.nav-links a{font-size:13px;color:#c3c9c9}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--mint)}.nav-links a[aria-current=page]{box-shadow:none}.nav-links .download-mini{background:transparent;border:1px solid #c2cebd55;color:var(--paper);padding:10px 17px;border-radius:3px}.menu-button{color:var(--paper)}.nav-app{display:none;align-items:center;justify-content:center;background:var(--mint);color:#0c1710;padding:10px 14px;border-radius:2px;font-size:13px;font-weight:700;min-height:42px;min-width:92px}.hero-art canvas,.scene canvas{touch-action:none}
.cosmos{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 82% 15%,#27343970,transparent 46%),radial-gradient(ellipse at 14% 80%,#19333240,transparent 45%),#070d13}.cosmos:after{content:'';position:absolute;inset:0;opacity:.35;background-image:radial-gradient(#dce9d8 1px,transparent 1px),radial-gradient(#b2c6e2 1px,transparent 1px);background-size:137px 163px,211px 251px;background-position:33px 45px,98px 111px}.cinema-main{overflow:hidden}.atlas-meta{display:flex;justify-content:space-between;padding:24px 0 12px;color:#99a9ad;font:10px/1.8 monospace;letter-spacing:.18em}.atlas-meta span:first-child{color:var(--mint)}.atlas-meta i{display:inline-block;background:var(--mint);width:5px;height:5px;border-radius:50%;margin-right:10px}.hero-atlas{position:relative;min-height:650px;display:grid;grid-template-columns:.95fr 1.1fr;align-items:center;gap:0;padding-top:34px;padding-bottom:70px}.hero-copy{z-index:2;position:relative}.overline{display:block;color:var(--gold);font:11px/1.8 monospace;letter-spacing:.23em;text-transform:uppercase;margin-bottom:24px}.hero-atlas h1{font-size:clamp(48px,5.5vw,84px);line-height:1.23;letter-spacing:-.035em;font-weight:650;margin:0 0 30px}.hero-atlas h1 em{font-style:normal;color:var(--mint)}.hero-atlas p{max-width:440px;color:#b9c3c4;font-size:16px;line-height:1.95}.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:35px}.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;background:var(--mint);color:#0c1710;border:1px solid var(--mint);padding:16px 23px;border-radius:2px;font-size:14px;font-weight:600;min-height:52px;transition:background .2s,transform .2s}.cta:hover{background:#e2f7c8;transform:translateY(-2px)}.text-cta{font-size:14px;color:#e4e6dc;padding:12px 0;border-bottom:1px solid #97a39d66}.text-cta span{margin-left:20px}.hero-footnote{display:flex;gap:17px;margin-top:29px;color:#849498;font-size:11px}.hero-footnote span+span:before{content:'·';margin-right:17px}.hero-art{position:relative;min-width:0;margin-left:-28px;margin-right:-45px}.hero-art:before{content:'';position:absolute;inset:9% 4%;background:radial-gradient(ellipse,#6985761f,transparent 66%);filter:blur(20px)}.scene{position:relative;min-width:0;color:var(--gold)}.scene canvas{display:block;width:100%;height:450px;cursor:grab;touch-action:none}.scene canvas:active{cursor:grabbing}.hero-art canvas{height:520px}.scene-corner{position:absolute;top:12px;left:22px;font:10px monospace;letter-spacing:.13em;color:#9caaa9;pointer-events:none}.scene-corner:before{content:'+';margin-right:10px;color:var(--gold)}.scene-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #aabfba22;padding:14px 20px;color:#b4beb9;font:10px/1.8 monospace;letter-spacing:.08em}.scene-tools{display:flex;align-items:center;gap:6px}.scene-tools button{width:36px;height:36px;min-width:36px;border:1px solid #b5c4bb33;background:#0e191eee;color:#d7dfd6;border-radius:50%;cursor:pointer;font-size:16px}.scene-tools button:hover{border-color:var(--gold);color:var(--gold)}.scene-tools output{width:42px;text-align:center;font-size:10px}.scene-note{margin:8px 20px 0;color:#88999c;font-size:11px;line-height:1.7}.motion-control{position:fixed;right:22px;bottom:20px;z-index:60;display:flex;align-items:center;gap:9px;background:#0b151ef2;color:#e2e8dd;border:1px solid #a6b9a754;border-radius:30px;padding:11px 16px;font-size:11px;cursor:pointer;box-shadow:0 3px 30px #0005}.motion-control:before{content:'Ⅱ';color:var(--mint)}.motion-control[aria-pressed=true]:before{content:'▷'}.atlas-index{border-top:1px solid #b5c3be35;border-bottom:1px solid #b5c3be35;display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:100px}.atlas-index a{position:relative;padding:27px 20px 28px;border-right:1px solid #b5c3be22;transition:background .2s}.atlas-index a:first-child{padding-left:0}.atlas-index a:last-child{border:0}.atlas-index a:hover{background:#c8e8b60b}.atlas-index small{display:block;color:#829195;font:10px monospace;letter-spacing:.12em;margin-bottom:12px}.atlas-index strong{font-size:16px;font-weight:500}.atlas-index b{float:right;color:var(--gold);font-weight:400}.intro-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:0 0 50px}.intro-heading h2{font-weight:500;line-height:1.5;font-size:32px;margin:0}.intro-heading p{max-width:370px;font-size:14px;line-height:1.9;color:#99abaf}.chapter{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8%;padding:65px 0 85px;border-top:1px solid #b5c3be25;position:relative}.chapter:nth-of-type(even) .chapter-copy{order:2}.chapter-copy{padding:20px 0}.chapter-number{font:11px monospace;letter-spacing:.15em;color:var(--accent,var(--gold));display:flex;align-items:center;gap:16px;margin-bottom:22px}.chapter-number:before{content:'';width:38px;height:1px;background:currentColor}.chapter h2{font-weight:500;font-size:clamp(32px,3.6vw,49px);letter-spacing:-.025em;line-height:1.45;margin:0 0 23px}.chapter-copy>p{font-size:15px;line-height:2;color:#aebdc0;max-width:440px}.chapter-steps{display:flex;gap:0;margin:30px 0 28px;padding:0;list-style:none}.chapter-steps li{font-size:11px;color:#b4c4c5;display:flex;align-items:center}.chapter-steps li:not(:last-child):after{content:'—';color:#566e73;margin:0 16px}.chapter .text-cta{display:inline-block}.chapter .scene{background:radial-gradient(ellipse,var(--glow,#46663a20),transparent 68%)}.scene-word{font-family:Georgia,serif;font-size:70px;font-style:italic;color:#a4bfa710;position:absolute;bottom:60px;right:5%;pointer-events:none;letter-spacing:-.04em}.download-finale{position:relative;text-align:center;padding:100px 32px 110px;margin:50px 0 70px;border:1px solid #b6cfb236;background:radial-gradient(ellipse at 50% 100%,#718f4230,transparent 65%)}.download-finale:before{content:'';position:absolute;inset:15% 12%;border:1px solid #bfdaa312;border-radius:50%;transform:rotate(-12deg);pointer-events:none}.download-finale h2{font-size:clamp(32px,4vw,54px);line-height:1.4;letter-spacing:-.02em;font-weight:500;margin:20px 0}.download-finale p{color:#aebbbb;font-size:15px}.download-finale .cta{margin-top:25px}.public-note{font-size:12px!important;color:#94a598!important;margin-top:24px!important}.site-footer{background:#070d13;border-top:1px solid #b2c1c033;padding:60px 0 35px;color:#cad0c8}.site-footer a:hover{color:var(--mint)}.footer-grid{gap:40px}.footer-grid h4{color:var(--gold);font-size:12px;font-weight:400}.footer-grid a{color:#a4b2b5;font-size:13px;margin-bottom:12px}.footer-grid .brand{color:var(--paper)}.fine-print{border-color:#b2c1c022;color:#859599;font-size:11px;gap:20px;padding-bottom:20px}.detail-intro{font-size:14px;color:#aab8bb;max-width:760px;padding:0 0 60px;line-height:2}.detail-path{display:flex;gap:25px;flex-wrap:wrap;padding:30px 0 55px;border-top:1px solid #b2c1c025}.detail-path a{color:#b8c6c3;font-size:13px}.detail-path a:hover{color:var(--mint)}
/* Existing public documentation and Auth remain fully readable. */
body:not(.cinematic){--ink:#eeeae0;--muted:#a6b7ba;--bg:#070d13;--surface:#101e27;--surface-2:#0e1820;--line:#bacccc30;--dark:#071018;--blue:#9ec6e7}body:not(.cinematic) .page-hero{background:radial-gradient(ellipse at 80% 30%,#29433477,transparent 65%);border-bottom:1px solid var(--line)}body:not(.cinematic) .page-hero h1{font-size:clamp(36px,5vw,64px);font-weight:550;letter-spacing:-.03em}body:not(.cinematic) .page-hero:after{color:#d8e8c40a}body:not(.cinematic) .lead{color:#b2c3c4}body:not(.cinematic) .section{background:transparent}body:not(.cinematic) .section.alt{background:#0b161c}body:not(.cinematic) .auth-card,body:not(.cinematic) .auth-aside,body:not(.cinematic) .doc,body:not(.cinematic) .step{background:#101c24;border-color:#a4b7ba33;color:var(--paper)}body:not(.cinematic) .auth-input{background:#071018;color:var(--paper);border-color:#84989866}body:not(.cinematic) .auth-btn{background:#14252c;color:var(--paper);border-color:#b9cbb94d}body:not(.cinematic) .auth-btn:hover:not(:disabled){background:#253c3e}body:not(.cinematic) .button.primary{background:var(--mint);color:#0b1910}body:not(.cinematic) .button.secondary{color:var(--paper);border-color:#a7bbb94d}body:not(.cinematic) .notice{background:#20302a;color:#dce5ca}body:not(.cinematic) .auth-error{background:#401c20;color:#ffd0ce}body:not(.cinematic) .auth-msg{background:#183928;color:#c5f5d9}body:not(.cinematic) .auth-note{color:#a8b9bb}.auth-note a{text-decoration:underline}.auth-status{padding:0 28px}[hidden]{display:none!important}
@media(min-width:1500px){.hero-atlas{min-height:740px}.hero-art canvas{height:590px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.nav-links{gap:17px}.brand span{font-size:11px}.hero-atlas h1{font-size:55px}.hero-art{margin-right:-30px}.hero-art canvas{height:480px}.hero-atlas{min-height:630px}.scene canvas{height:400px}.nav{gap:16px}.chapter{gap:5%}.chapter-steps li:not(:last-child):after{margin:0 9px}}
@media(max-width:850px){.container{width:calc(100% - 44px)}.nav{height:76px;justify-content:space-between}.nav-app{display:inline-flex;margin-left:auto;margin-right:8px}.menu-button{display:block;border:1px solid #aec2b74d;border-radius:3px;min-height:42px;min-width:44px;background:transparent}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;padding:20px 22px;background:#0b151efc;flex-direction:column;align-items:stretch;gap:5px;border-bottom:1px solid #acc3b53d}.nav-links.open{display:flex}.nav-links a{padding:12px;font-size:15px}.nav-links .download-mini{margin-top:8px}.hero-atlas{grid-template-columns:1fr;min-height:0;padding:50px 0 45px}.hero-atlas h1{font-size:clamp(45px,8vw,65px);max-width:600px}.hero-atlas p{max-width:530px}.hero-art{margin:35px -15px 0}.hero-art canvas{height:460px}.atlas-meta{font-size:9px}.atlas-meta span:last-child{letter-spacing:0}.atlas-index{margin-bottom:70px}.atlas-index a{padding:23px 12px}.atlas-index strong{font-size:14px}.atlas-index small{font-size:9px}.atlas-index b{display:none}.intro-heading{display:block}.intro-heading p{max-width:500px;margin-top:22px}.chapter{gap:20px;padding:45px 0 55px}.chapter h2{font-size:32px}.chapter-copy>p{font-size:14px}.chapter-steps{display:block}.chapter-steps li{margin-bottom:8px}.chapter-steps li:after{display:none}.scene canvas{height:350px}.scene-caption{padding:12px 8px;gap:6px;flex-wrap:wrap}.scene-note{margin-left:8px}.scene-word{font-size:55px}.footer-grid{grid-template-columns:2fr 1fr}.motion-control{right:12px;bottom:12px}}
@media(max-width:560px){.brand span{font-size:12px}.hero-atlas{padding-top:35px}.overline{font-size:10px;margin-bottom:23px}.hero-atlas h1{font-size:47px;margin-bottom:22px;line-height:1.3}.hero-atlas p{font-size:15px}.hero-actions{gap:20px;margin-top:28px}.cta{padding:15px 19px;gap:19px}.hero-footnote{gap:10px;font-size:10px}.hero-footnote span+span:before{margin-right:10px}.hero-art{margin-top:28px}.hero-art canvas{height:355px}.scene-corner{font-size:9px;left:12px}.atlas-meta span:last-child{display:none}.atlas-index{grid-template-columns:repeat(5,1fr);margin-bottom:58px}.atlas-index a{padding:20px 6px;text-align:center}.atlas-index a:first-child{padding-left:6px}.atlas-index small{font-size:9px;letter-spacing:0;margin-bottom:8px}.atlas-index strong{font-size:12px}.intro-heading h2{font-size:27px}.chapter{grid-template-columns:1fr;gap:8px;padding-top:28px}.chapter:nth-of-type(even) .chapter-copy{order:0}.chapter h2{font-size:34px}.chapter-copy{padding:15px 0}.chapter-copy>p{font-size:15px}.chapter-steps{display:flex}.chapter-steps li{font-size:11px}.chapter-steps li:not(:last-child):after{display:block;margin:0 12px}.scene canvas{height:340px}.scene-caption{flex-wrap:nowrap}.scene-caption>span{font-size:9px}.scene-note{font-size:10px}.scene-tools button{width:34px;height:34px;min-width:34px}.scene-tools{gap:4px}.download-finale{padding:65px 20px 70px;margin-top:30px}.download-finale h2{font-size:33px}.download-finale p{font-size:14px}.site-footer{padding-top:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.fine-print{display:block;line-height:2;padding-bottom:48px}.fine-print>span{display:block}.auth-layout{grid-template-columns:1fr}body:not(.cinematic) .page-hero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.cta:hover{transform:none}}
html[data-paused=true]{scroll-behavior:auto}html[data-paused=true] *,html[data-paused=true] *:before,html[data-paused=true] *:after{animation-play-state:paused!important;transition:none!important}
body.cinematic .page-hero{background:transparent;border-bottom:1px solid #b5c3be25;padding:48px 0 28px}body.cinematic .page-hero h1,body.cinematic .rules-hero h1{color:var(--paper);font-weight:550;letter-spacing:-.03em}body.cinematic .lead,body.cinematic .legal,body.cinematic .guide-section,body.cinematic .rule-row p,body.cinematic .auth-note{color:#b2c3c4}body.cinematic .section,body.cinematic .section.alt{background:transparent}body.cinematic .legal h2,body.cinematic .guide-section h2,body.cinematic .guide-section h3,body.cinematic .rule-row h2,body.cinematic .content-title{color:var(--gold)}body.cinematic .legal a,body.cinematic .guide-section a{color:var(--mint);text-decoration:underline}body.cinematic .auth-card,body.cinematic .auth-aside,body.cinematic .step,body.cinematic .download-panel,body.cinematic .guide-toc,body.cinematic .guide-section,body.cinematic .rule-row,body.cinematic .rules-aside,body.cinematic .rules-close{background:#101c24;border:1px solid #a4b7ba33;color:var(--paper);padding:28px;border-radius:8px}body.cinematic .auth-input{background:#071018;color:var(--paper);border:1px solid #84989866;width:100%;padding:12px}body.cinematic .auth-btn{background:#14252c;color:var(--paper);border:1px solid #b9cbb94d}body.cinematic .button.primary,body.cinematic .cta{background:var(--mint);color:#0b1910}body.cinematic .button.secondary{color:var(--paper);border-color:#a7bbb94d}body.cinematic .notice{background:#20302a;color:#dce5ca;padding:12px 16px}body.cinematic .auth-error{background:#401c20;color:#ffd0ce}body.cinematic .auth-msg{background:#183928;color:#c5f5d9}body.cinematic .guide-label,body.cinematic .app-bar span{background:#1c2c28;color:var(--mint);padding:2px 8px;border-radius:4px}body.cinematic .guide-note{color:#94a598}body.cinematic .bullet-list li{color:#b2c3c4}body.cinematic .callout{background:#101c24;border:1px solid #a4b7ba33}body.cinematic .phone-stage{display:none}
