:root{--bg:#f2f0e8;--paper:#fffdf8;--ink:#111512;--muted:#69716b;--accent:#b9ff32;--accent-2:#2a5cff;--line:rgba(17,21,18,0.16);--soft:rgba(17,21,18,0.055);--display:Arial,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.reading-progress{position:fixed;inset:0 auto auto 0;z-index:100;width:0;height:3px;background:var(--accent);box-shadow:0 0 20px color-mix(in srgb,var(--accent) 65%,transparent)}.full-head{position:relative;z-index:20;height:76px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px)}.full-head,.full-hero,.full-footer{color:var(--hero-ink,var(--ink))}body[data-sport="padel"] .full-head,body[data-sport="padel"] .full-hero,body[data-sport="padel"] .full-footer,body[data-sport="squash"] .full-head,body[data-sport="squash"] .full-hero,body[data-sport="squash"] .full-footer,body[data-sport="pickleball"] .full-head,body[data-sport="pickleball"] .full-hero,body[data-sport="pickleball"] .full-footer{--hero-ink:var(--paper)}body[data-sport="padel"] .hero-intro,body[data-sport="padel"] .hero-kicker,body[data-sport="padel"] .hero-note,body[data-sport="squash"] .hero-intro,body[data-sport="squash"] .hero-kicker,body[data-sport="squash"] .hero-note,body[data-sport="pickleball"] .hero-intro,body[data-sport="pickleball"] .hero-kicker,body[data-sport="pickleball"] .hero-note{color:color-mix(in srgb,var(--paper) 76%,transparent)}.full-logo{display:flex;align-items:center;gap:10px;font:800 13px var(--display);letter-spacing:-.03em}.full-logo i{width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:var(--accent);color:#111512;font-style:normal}.head-status{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.head-status::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--accent)}.full-back{margin-left:auto;padding:11px 15px;border:1px solid var(--line);border-radius:99px;font-size:10px;transition:.2s ease}.full-back:hover{transform:translateY(-2px);background:var(--ink);color:var(--paper)}.full-hero{min-height:720px;padding:clamp(76px,9vw,135px) clamp(18px,7vw,110px) 80px;display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center;position:relative;overflow:hidden}.full-hero::after{content:'';position:absolute;width:440px;height:440px;right:-180px;top:-180px;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 70px color-mix(in srgb,var(--accent) 5%,transparent),0 0 0 140px color-mix(in srgb,var(--accent) 3%,transparent)}.hero-kicker{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.14em}.hero-kicker::before{content:'';width:34px;height:1px;background:var(--accent)}.full-hero h1{margin:36px 0 28px;max-width:900px;font:800 clamp(64px,8.6vw,138px)/.8 var(--display);letter-spacing:-.08em;text-transform:uppercase}.full-hero h1 em{display:block;color:var(--accent-2);font-style:normal}.hero-intro{max-width:680px;font-size:15px;line-height:1.75;color:var(--muted)}.hero-note{margin-top:30px;padding:16px 18px;max-width:650px;border-left:3px solid var(--accent);background:var(--soft);font-size:11px;line-height:1.65}.hero-card{position:relative;min-height:480px;padding:32px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:30px;background:var(--paper);overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.08)}.hero-card{--line:rgba(17,21,18,.16);color:var(--ink)}.hero-card::before{content:'';position:absolute;width:260px;height:260px;border-radius:50%;right:-70px;top:-80px;background:var(--accent);opacity:.9}.sport-mark{position:relative;z-index:1;margin:auto 0;font:800 clamp(62px,8vw,116px)/.75 var(--display);letter-spacing:-.08em;color:var(--ink);text-transform:uppercase;transform:rotate(-4deg)}.hero-edition{position:relative;z-index:1;display:flex;justify-content:space-between;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.hero-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.hero-metrics div{min-height:92px;padding:16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.hero-metrics span,.hero-metrics strong{display:block}.hero-metrics span{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.hero-metrics strong{margin-top:17px;font:700 18px var(--display)}.rules-summary{padding:70px clamp(18px,7vw,110px);background:var(--ink);color:var(--paper)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-left:1px solid rgba(255,255,255,.18)}.summary-card{min-height:205px;padding:22px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.summary-card span{color:var(--accent);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.summary-card strong{margin:auto 0 12px;font:700 24px/1 var(--display)}.summary-card p{margin:0;color:color-mix(in srgb,var(--paper) 62%,transparent);font-size:10px;line-height:1.55}.rule-shell{--line:rgba(17,21,18,.16);--soft:rgba(17,21,18,.055);display:grid;grid-template-columns:285px minmax(0,1fr);align-items:start;max-width:1560px;margin:0 auto;padding:90px clamp(18px,5vw,76px) 130px;background:var(--paper);color:var(--ink)}.toc{position:sticky;top:24px;padding-right:35px}.toc-label{margin-bottom:20px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.toc a{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.3;transition:.2s ease}.toc a span{font-variant-numeric:tabular-nums;color:color-mix(in srgb,var(--muted) 55%,transparent)}.toc a:hover,.toc a.active{color:var(--ink);transform:translateX(5px)}.toc a.active span{color:var(--accent-2)}.toc-source{margin-top:26px;padding:16px;border-radius:14px;background:var(--soft);font-size:9px;line-height:1.55;color:var(--muted)}.rule-content{min-width:0;border-left:1px solid var(--line);padding-left:clamp(28px,5vw,80px)}.content-head{padding-bottom:60px;border-bottom:1px solid var(--line)}.content-head span{color:var(--accent-2);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.content-head h2{max-width:900px;margin:18px 0 20px;font:800 clamp(42px,5.6vw,82px)/.9 var(--display);letter-spacing:-.06em}.content-head p{max-width:760px;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.chapter{padding:78px 0;border-bottom:1px solid var(--line)}.chapter-head{display:grid;grid-template-columns:74px 1fr;gap:22px;align-items:start;margin-bottom:34px}.chapter-number{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#111512;font:700 11px var(--display)}.chapter h2{margin:0;font:800 clamp(32px,4vw,58px)/.95 var(--display);letter-spacing:-.05em}.chapter-lead{max-width:780px;margin:16px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.chapter-body{padding-left:96px}.chapter-body h3{margin:38px 0 14px;font:700 21px/1.15 var(--display);letter-spacing:-.025em}.chapter-body h3:first-child{margin-top:0}.chapter-body p,.chapter-body li{color:#333a35;font-size:13px;line-height:1.75}.chapter-body p{max-width:850px;margin:0 0 16px}.chapter-body ul,.chapter-body ol{max-width:870px;margin:12px 0 26px;padding-left:20px}.chapter-body li + li{margin-top:8px}.chapter-body strong{color:var(--ink)}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin:28px 0;background:var(--line);border:1px solid var(--line)}.fact{min-height:150px;padding:22px;background:var(--paper)}.fact span{display:block;color:var(--accent-2);font-size:8px;text-transform:uppercase;letter-spacing:.12em}.fact strong{display:block;margin-top:38px;font:700 22px/1.05 var(--display)}.fact small{display:block;margin-top:8px;color:var(--muted);font-size:9px;line-height:1.4}.callout{margin:30px 0;padding:24px 26px;display:grid;grid-template-columns:120px 1fr;gap:24px;border-radius:18px;background:var(--accent);color:#111512}.callout>span{font:700 10px var(--display);text-transform:uppercase;letter-spacing:.08em}.callout p{margin:0;color:#111512;font-size:12px;line-height:1.65}.callout.danger{background:var(--ink);color:var(--paper)}.callout.danger p{color:color-mix(in srgb,var(--paper) 80%,transparent)}.score-flow{display:flex;align-items:stretch;gap:8px;margin:28px 0;overflow-x:auto}.score-step{min-width:120px;flex:1;padding:20px 16px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.score-step span{color:var(--muted);font-size:8px;text-transform:uppercase}.score-step strong{display:block;margin-top:18px;font:700 22px var(--display)}.score-arrow{align-self:center;color:var(--accent-2)}.mini-table{width:100%;max-width:900px;margin:26px 0;border-collapse:collapse;font-size:11px}.mini-table th,.mini-table td{padding:15px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.55}.mini-table th{color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.mini-table td:first-child{width:28%;font-weight:700;color:var(--ink)}.term-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:25px}.term{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.term strong{display:block;font:700 14px var(--display)}.term p{margin:7px 0 0;font-size:10px;line-height:1.55;color:var(--muted)}.source-panel{margin-top:70px;padding:clamp(28px,5vw,60px);border-radius:28px;background:var(--accent-2);color:#fff}.source-panel span{color:rgba(255,255,255,.65);font-size:9px;text-transform:uppercase;letter-spacing:.12em}.source-panel h2{max-width:750px;margin:20px 0;font:800 clamp(35px,5vw,68px)/.92 var(--display);letter-spacing:-.055em}.source-panel p{max-width:760px;color:rgba(255,255,255,.75);font-size:12px;line-height:1.65}.source-panel a{display:inline-flex;margin-top:18px;padding:14px 18px;border:1px solid rgba(255,255,255,.4);border-radius:99px;font-size:10px;transition:.2s ease}.source-panel a:hover{background:#fff;color:var(--accent-2)}.full-footer{padding:44px clamp(18px,5vw,72px);display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}body[data-sport="padel"] .sport-mark{font-size:clamp(70px,9vw,130px)}body[data-sport="tennis"] .hero-card::after{content:'';position:absolute;inset:17% 20%;border:1px solid var(--line);border-radius:50% 50% 45% 45%;transform:rotate(21deg)}body[data-sport="table-tennis"] .hero-card{border-radius:4px}body[data-sport="table-tennis"] .hero-card::before{border-radius:0;transform:rotate(12deg)}body[data-sport="badminton"] .hero-card{border-radius:55% 55% 28px 28px}body[data-sport="squash"] .hero-card{border-radius:0;box-shadow:inset 0 0 0 12px color-mix(in srgb,var(--accent) 12%,transparent)}body[data-sport="pickleball"] .hero-card{border-width:5px;box-shadow:12px 12px 0 var(--accent-2)}body[data-sport="beach-tennis"] .hero-card{border-radius:120px 120px 28px 28px}@media (max-width:1050px){.full-hero{grid-template-columns:1fr}.hero-card{min-height:390px}.summary-grid{grid-template-columns:repeat(2,1fr)}.rule-shell{grid-template-columns:1fr;max-width:100%;overflow:hidden}.toc{position:relative;top:0;width:100%;min-width:0;max-width:100%;padding:0 0 34px;overflow-x:auto;display:flex;gap:8px}.toc-label,.toc-source{display:none}.toc a{min-width:165px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.rule-content{border-left:0;padding-left:0}}@media (max-width:620px){.full-head{height:64px}.head-status{display:none}.full-back{padding:9px 12px;font-size:8px}.full-hero{min-height:auto;padding:76px 18px 64px;gap:50px}.full-hero h1{font-size:clamp(53px,16vw,74px)}.hero-intro{font-size:13px}.hero-card{min-height:360px;padding:22px;border-radius:22px}.sport-mark{font-size:58px}.hero-metrics strong{font-size:15px}.rules-summary{padding:55px 18px}.summary-grid{grid-template-columns:1fr 1fr}.summary-card{min-height:165px;padding:17px}.summary-card strong{font-size:19px}.rule-shell{padding:55px 18px 85px}.content-head{padding-bottom:45px}.chapter{padding:60px 0}.chapter-head{grid-template-columns:48px 1fr;gap:12px}.chapter-number{width:40px;height:40px}.chapter h2{font-size:34px}.chapter-body{padding-left:0}.chapter-body p,.chapter-body li{font-size:12px}.fact-grid{grid-template-columns:1fr}.fact{min-height:120px}.fact strong{margin-top:25px}.callout{grid-template-columns:1fr;gap:12px;padding:20px}.term-list{grid-template-columns:1fr}.mini-table{display:block;overflow-x:auto}.source-panel{margin-top:50px;border-radius:20px}.full-footer{display:block}.full-footer span{display:block;margin-top:12px}}@media print{.reading-progress,.full-head,.toc{display:none}.full-hero{min-height:auto;padding:40px}.rules-summary{break-after:page}.rule-shell{display:block;padding:30px}.rule-content{border:0;padding:0}.chapter{break-inside:avoid}.source-panel{background:#eee;color:#111}}.rules-mobile-actions{display:none}@media(max-width:640px){body{padding-bottom:76px;-webkit-text-size-adjust:100%}.rules-mobile-actions{position:fixed;z-index:950;inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 10px calc(9px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:rgba(11,15,12,.97);box-shadow:0 -12px 35px rgba(0,0,0,.25);backdrop-filter:blur(16px)}.rules-mobile-actions a{display:grid;place-items:center;min-height:50px;border:1px solid var(--line);color:#fff;font-size:12px;font-weight:900;text-decoration:none;text-transform:uppercase}.rules-mobile-actions a:last-child{border-color:transparent;background:var(--accent);color:#111}.full-head a,.toc a,.source-panel a{min-height:44px}.hero-kicker,.hero-note,.hero-edition span,.summary-card>span,.toc-label,.toc a,.toc-source,.content-head>span,.fact span,.fact small,.callout span,.source-panel>span,.full-footer,.mini-table{font-size:12px!important;line-height:1.45!important}.source-panel a{display:inline-flex;align-items:center;font-size:12px!important}}@media(max-width:640px),(prefers-reduced-motion:reduce){body *{animation:none!important;transition-duration:.15s!important;scroll-behavior:auto!important}}
