:root{--paper:#f7f4eb;--ink:#173f38;--muted:#63706a;--red:#b64d36;--line:#d9d8c9;--olive:#818d70;--serif:"Songti SC","SimSun","Noto Serif CJK SC",serif;--sans:"Microsoft YaHei","PingFang SC",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{display:block;max-width:100%}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.wrap{width:calc(100% - 112px);max-width:1328px;margin-inline:auto}.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}.skip-link{position:fixed;top:-70px;left:16px;padding:8px 18px;background:var(--ink);color:white;z-index:100}.skip-link:focus{top:12px}:focus-visible{outline:3px solid var(--red);outline-offset:5px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--serif)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 26px;border:1px solid transparent;border-radius:5px;line-height:1.5;font-size:17px;font-weight:600;transition:background .16s,transform .16s}.button:hover{transform:translateY(-1px)}.button-primary{color:#fffaf1;background:var(--red);border-color:var(--red)}.button-primary:hover{background:#a5412d;border-color:#a5412d}.button-outline{color:var(--red);border-color:var(--red)}.button-outline:hover{background:#f1e5db}.text-link{display:inline-flex;gap:12px;align-items:center;color:#697961;font-weight:600}.text-link:hover{text-decoration:underline;text-underline-offset:6px}.brand{display:inline-flex;align-items:center;gap:13px;font:700 28px/1.2 var(--serif);white-space:nowrap}.site-header{display:flex;align-items:center;min-height:104px;gap:36px;border-bottom:1px solid var(--line)}.site-header nav{display:flex;gap:32px;margin-left:auto;font-size:16px}.site-header nav a:hover{color:var(--red)}
.hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:50px;padding-block:80px 76px;min-height:680px}.hero h1{font-size:clamp(38px,4.5vw,67px);font-weight:700;line-height:1.45;letter-spacing:-.04em;white-space:nowrap}.hero-copy>p{font-size:18px;line-height:2.05;margin-top:27px;color:#5e6a63}.hero-actions{display:flex;gap:26px;align-items:center;margin-top:38px}.hero-actions .button{font-size:19px;padding:16px 25px}.hero-copy>small{display:block;margin-top:14px;font-size:14px;color:#7d8278}.hero-media{position:relative;padding:32px 22px 30px 32px}.hero-media:before{content:"";position:absolute;inset:0;background:#daddca;border-radius:9px;transform:rotate(-2deg);z-index:-1}.product-window{background:#faf8f0;border:1px solid #adb09f;border-radius:8px;box-shadow:0 15px 28px #34453520;overflow:hidden}.window-heading{padding:23px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px}.window-heading>span:first-child{display:flex;align-items:center;gap:10px;font:700 22px var(--serif)}.window-round{font:17px var(--serif);white-space:nowrap}.hero-unit{padding:25px 22px 0}.unit-summary{display:flex;align-items:center;gap:14px}.portrait{width:56px;height:56px;object-fit:cover;border-radius:50%;background:#e4e7db;box-shadow:0 0 0 1px #d1d6c5}.unit-summary h3{font-size:25px;line-height:1.4}.unit-school{font-size:12px;color:var(--muted)}.rage{margin-left:auto;font-size:13px;color:var(--muted);white-space:nowrap}.rage b{color:#8c6b28;font-size:13px;margin-left:5px;background:#f2e6c8;padding:3px 7px;border-radius:3px}.hp-label{display:flex;justify-content:space-between;font-size:13px;margin-top:18px;color:#78816d}.hp-label b{color:#987531;font-size:14px}.hp-track{height:7px;border-radius:4px;background:#e4e3d8;overflow:hidden;margin:5px 0 19px}.hp-track>span{height:100%;display:block;background:#ad9260;border-radius:4px}.skill-grid{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.skill{flex:1 1 130px;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:36px;border:1px solid transparent;border-left-width:3px;border-radius:4px;padding:6px 7px;font-size:13px;white-space:nowrap}.skill>span{display:flex;gap:5px;align-items:center;min-width:0;font-weight:600}.skill i{font-size:10px;font-style:normal;background:#ffffff44;padding:1px 2px}.skill b{font-size:12px;margin-left:auto}.skill.cooling{background:#e3e6df;border-color:#bfc6b8;border-left-color:#929c8a;color:#5c6556}.skill.near{background:#fff1c7;border-color:#d0ac54;border-left-color:#c79b32;color:#785414}.skill.ready{background:#e5f2df;border-color:#82ac71;border-left-color:#4f8849;color:#285e38}.pet-row{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);margin-top:23px;padding:20px 0}.pet-symbol{display:grid;place-items:center;width:38px;height:38px;background:#e1e6d8;color:#758069;border-radius:50%;flex-shrink:0}.pet-symbol svg{width:23px;height:23px;stroke-width:1.35}.pet-name{font-size:14px}.pet-row small{display:block;font-size:11px;color:#7d856e;margin-top:3px}.pet-hp{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;font-size:12px;color:var(--muted)}.pet-hp b{font-size:13px;color:#957435}.window-note{padding:12px 22px;background:#eeece1;font-size:12px;color:#7a8072}.promise-strip{display:flex;justify-content:space-around;border-top:1px solid var(--line);padding-block:30px;font:21px/1.8 var(--serif)}.promise-strip span{flex:1;text-align:center}.promise-strip span+span{border-left:1px solid var(--line)}
.preview-section{padding-block:100px 105px}.section-intro h2{font-size:clamp(29px,3.4vw,48px);line-height:1.4}.section-intro>p{margin-top:18px;font-size:19px;color:var(--muted)}.battle-demo{margin-top:40px;background:#fbf9f3;border:1px solid var(--line);border-radius:7px;overflow:hidden}.demo-toolbar{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line);gap:15px}.demo-title{display:flex;align-items:center;gap:15px}.demo-title h3{font-size:23px;white-space:nowrap}.demo-title>span{font-size:13px;color:#899082;border-left:1px solid var(--line);padding-left:20px;margin-left:5px}.demo-controls{display:flex;gap:12px;align-items:center}.demo-controls select{background:#f6f3eb;border:1px solid var(--line);border-radius:5px;padding:11px 14px;color:var(--ink);font-size:15px;min-height:47px}.demo-controls .button{min-height:47px;font-size:15px;padding:11px 18px}.demo-teams{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px}.demo-team h4{font-size:21px;font-weight:600;padding:10px 16px;border-radius:5px 5px 0 0;background:#f2e7df;color:#934431}.demo-team.ally h4{background:#e9ecde;color:#556c44}.demo-team+.demo-team{border-left:1px solid var(--line);padding-left:30px}.demo-unit{padding:20px 14px 0}.demo-unit .skill{flex-basis:140px}.demo-note{border-top:1px solid var(--line);padding:14px 20px;text-align:center;font-size:13px;color:#75806d;min-height:51px}.feature-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:34px}.feature-notes article+article{border-left:1px solid var(--line);padding-left:30px}.feature-number{display:block;font:700 40px/1.2 var(--serif);color:#9a9e82}.feature-notes h3{font-size:23px;line-height:1.5;margin-top:7px}.feature-notes p{font-size:14px;margin-top:10px;color:var(--muted)}
.get-started{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:start;padding-block:32px 70px}.get-started h2{font-size:clamp(28px,3vw,42px);line-height:1.4}.plans{padding-top:20px}.plans table{width:100%;margin-top:32px;border:1px solid var(--line);border-spacing:0;border-radius:6px;overflow:hidden;text-align:center;font-size:16px}.plans th,.plans td{padding:17px 13px;border-bottom:1px solid var(--line)}.plans thead{background:#e8e5d8;font-family:var(--serif);font-size:19px}.plans th:first-child{text-align:left;padding-left:22px}.plans tbody th{font-weight:500;font-size:16px}.plans tbody tr:last-child>*{border-bottom:0}.plans th+th,.plans td{border-left:1px solid var(--line)}.check{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#8a9477;color:white;vertical-align:middle}.check svg{width:18px;height:18px;stroke-width:2.5}.purchase-row{display:flex;gap:20px;align-items:center;margin-top:27px}.purchase-row p{font-size:13px;color:var(--muted)}.download-panel{background:#daddca;border-radius:8px;padding:35px 24px 29px;text-align:center}.download-panel>p{margin-top:12px;font-size:18px}.download-brand{width:140px;height:140px;margin:26px auto 24px}.download-panel>.button{min-width:260px}.download-panel>.version-line{display:block;font-size:13px;color:#5d6b52;margin-top:15px}.download-panel>small{display:block;font-size:14px;margin-top:4px;color:#64705c}.download-panel .download-hint{font-size:13px;margin-top:17px;color:#64705c}.guide{display:grid;grid-template-columns:240px 1fr;border-top:1px solid var(--line);padding-block:35px 39px;gap:36px}.guide h2{font-size:40px}.guide ol{border-left:1px solid var(--line);padding-left:38px;margin:0;list-style:none;counter-reset:steps}.guide li{display:flex;gap:14px;align-items:baseline;font-size:15px;color:#59665e;line-height:1.8;counter-increment:steps}.guide li+li{margin-top:12px}.guide li:before{content:counter(steps);display:inline-grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#989f85;color:#fffdf3;font:17px/25px var(--serif)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:24px 30px}.site-footer .brand{font-size:23px}.site-footer p{font-size:12px;color:#7a8275}
@media(min-width:1500px){.hero{min-height:760px}.hero h1{font-size:68px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.site-header{gap:24px}.site-header nav{gap:22px}.hero{gap:26px;min-height:620px;padding-block:60px}.hero h1{font-size:clamp(36px,4.45vw,52px)}.hero-copy>p{font-size:16px}.hero-actions{gap:18px;flex-wrap:wrap}.hero-actions .button{font-size:16px;padding:13px 18px}.hero-media{padding:22px 13px 22px 20px}.hero-unit{padding:20px 16px 0}.window-heading{padding:18px 16px}.window-heading>span:first-child{font-size:19px}.window-round{font-size:15px}.get-started{gap:30px}.feature-notes h3{font-size:21px}.guide{grid-template-columns:190px 1fr}.demo-unit .skill{flex-basis:130px}.hero .skill{flex-basis:140px}.hero .skill:last-child{max-width:calc(50% - 4px)}.purchase-row{flex-wrap:wrap;gap:12px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.site-header{min-height:88px;flex-wrap:wrap;padding-block:18px;gap:17px;justify-content:space-between}.brand{font-size:25px;gap:10px}.brand img{width:36px;height:36px}.site-header nav{order:3;margin:0;width:100%;justify-content:center;gap:40px;font-size:14px;border-top:1px solid var(--line);padding-top:14px}.nav-download{min-height:40px;padding:8px 14px;font-size:14px}.hero{grid-template-columns:1fr;gap:40px;padding-block:48px 45px}.hero h1{font-size:clamp(36px,7.4vw,57px);line-height:1.4;letter-spacing:-.025em}.hero-copy>p{font-size:16px;margin-top:20px}.desktop-break{display:none}.hero-actions{margin-top:25px;gap:25px}.hero-copy>small{font-size:12px}.hero-media{max-width:590px;width:100%;justify-self:center;padding:25px}.hero .skill{flex-basis:130px}.hero .skill:last-child{max-width:none}.hero-unit{padding:23px 20px 0}.window-heading{padding:20px}.window-heading>span:first-child{font-size:22px}.promise-strip{font-size:16px;padding-block:23px}.promise-strip span{padding-inline:6px}.preview-section{padding-block:60px}.section-intro h2{font-size:31px}.section-intro>p{font-size:16px}.demo-toolbar{padding:15px;flex-wrap:wrap}.demo-controls{margin-left:auto}.demo-title>span{padding-left:13px;font-size:12px}.demo-title h3{font-size:21px}.demo-teams{gap:15px;padding:15px}.demo-team+.demo-team{padding-left:15px}.demo-unit{padding:15px 2px 0}.demo-unit .portrait{width:43px;height:43px}.demo-unit .unit-summary{gap:9px;flex-wrap:wrap}.demo-unit .rage{font-size:12px}.demo-unit .unit-summary h3{font-size:21px}.demo-unit .pet-row{gap:7px}.demo-unit .pet-symbol{display:none}.feature-notes{gap:18px}.feature-notes article+article{padding-left:18px}.feature-notes h3{font-size:19px}.feature-notes p{font-size:13px}.feature-number{font-size:33px}.get-started{grid-template-columns:1fr;gap:40px;padding-block:20px 40px}.get-started h2{font-size:32px}.plans{padding-top:0}.plans table{margin-top:22px}.purchase-row{gap:20px}.download-panel{padding:30px 20px}.download-brand{width:110px;height:110px}.guide{grid-template-columns:1fr;gap:20px;padding-block:30px}.guide h2{font-size:31px}.guide ol{padding:0;border:0}.guide li{font-size:14px}.site-footer{align-items:flex-start;flex-direction:column;gap:12px}.site-footer .brand img{width:30px;height:30px}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.hero h1{font-size:clamp(30px,8.8vw,41px)}.hero-media{padding:18px 10px 18px 16px}.hero-copy>p{font-size:15px;line-height:1.9}.hero-actions{gap:20px}.hero-actions .button{font-size:15px;padding:13px 15px}.text-link{font-size:14px;gap:8px}.promise-strip{font-size:14px}.promise-strip span{max-width:110px}.section-intro h2{font-size:27px}.section-intro>p{font-size:14px}.battle-demo{margin-top:28px}.demo-title{gap:10px}.demo-title h3{font-size:20px}.demo-controls{width:100%;justify-content:space-between}.demo-controls select{flex:1}.demo-teams{grid-template-columns:1fr;gap:22px}.demo-team+.demo-team{border-left:0;padding-left:0}.demo-unit{padding:14px 9px 0}.demo-unit .pet-symbol{display:grid}.demo-unit .skill{flex-basis:140px}.demo-title>span{margin-left:0}.demo-note{font-size:12px;padding:12px}.feature-notes{grid-template-columns:1fr;gap:21px;margin-top:27px}.feature-notes article{display:grid;grid-template-columns:42px 1fr;column-gap:14px}.feature-notes article+article{border:0;padding-left:0}.feature-number{grid-row:span 2;font-size:31px}.feature-notes h3{margin:0;font-size:21px}.feature-notes p{margin-top:6px;font-size:14px}.plans th,.plans td{padding:14px 8px}.plans th:first-child{padding-left:13px}.plans tbody th{font-size:14px}.plans thead{font-size:17px}.purchase-row .button{font-size:16px}.download-panel h2{font-size:29px}.download-panel>.button{min-width:0;width:100%;max-width:290px}.hero .skill{flex-basis:140px}.hero .skill:last-child{max-width:calc(50% - 4px)}}
.hero-media{isolation:isolate}.pet-skills{display:flex;align-items:center;flex-wrap:wrap;gap:9px 12px;padding-bottom:18px;margin-top:-5px}.pet-skills>.skill,.pet-skills>[data-skills]{flex:0 0 182px;max-width:100%}.pet-skills p{font-size:11px;color:#75806d}.hero .pet-skills .skill{max-width:100%;flex-basis:182px}
@media(max-width:360px){.hero .skill:last-child{max-width:100%}.hero-actions{gap:16px}.hero-actions .button{font-size:14px;padding-inline:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Landing-page refinements: preserve the paper, ink and seal-red brand system. */
:root { --muted: #536158; }
[hidden] { display: none !important; }
.wrap { max-width: 1200px; }
.site-header { min-height: 92px; }
.site-header nav a { display: inline-flex; align-items: center; min-height: 44px; }
.hero { gap: 38px; padding-block: 48px 54px; min-height: 630px; }
.hero h1 { font-size: clamp(38px, 4.25vw, 60px); line-height: 1.45; }
.hero-copy > .product-context { margin: 0 0 14px; color: #596849; font: 600 14px/1.7 var(--sans); }
.hero-copy > .hero-description { margin-top: 22px; font-size: 16px; line-height: 2; color: var(--muted); }
.hero-actions { margin-top: 28px; gap: 20px; }
.hero-actions .button { font-size: 17px; }
.hero-copy > small { color: #58624f; }
.hero-media { padding: 25px 17px 25px 24px; }
.mobile-copy, .mobile-copy-note, .mobile-direct { display: none; }
.promise-strip { padding-block: 24px; font-size: 19px; }
.promise-strip > span { border-left: 0; }
.promise-strip > span + span { border-left: 1px solid var(--line); }
.promise-strip > span > span { border: 0; padding: 0; }
.promise-short { display: none; }
.preview-section { padding-block: 66px 72px; }
.section-intro h2 { font-size: clamp(29px, 3.4vw, 42px); }
.section-intro > p { margin-top: 12px; font-size: 17px; }
.battle-demo { margin-top: 28px; }
.window-note, .pet-skills p, .demo-note, .pet-row small,
.hp-label, .download-panel > .version-line, .download-panel > small,
.download-panel .download-hint, .site-footer p { color: #536148; }
.window-note, .pet-skills p, .pet-row small { font-size: 13px; }
.demo-title > span { color: #5c6653; }
.hp-label b, .pet-hp b { color: #775715; }
.feature-number { color: #697354; }
.demo-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 22px; padding: 14px 22px 0; font-size: 13px; color: #536148; }
.demo-legend > span { display: inline-flex; align-items: center; gap: 7px; }
.demo-legend > span::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: #7b8772; }
.demo-legend .legend-near::before { background: #a87c1a; }
.demo-legend .legend-ready::before { background: #4f8849; }
.demo-legend > small { margin-left: auto; font-size: 13px; }
.team-switch { display: none; }
.skill { min-height: 39px; font-size: 13px; }
.skill b { font-size: 13px; }
.demo-unit .skill { flex-basis: 150px; }
.skill.is-changed { animation: skill-change 1.3s ease-out; }
@keyframes skill-change { from { box-shadow: 0 0 0 3px #b64d3655; } to { box-shadow: 0 0 0 0 transparent; } }
.demo-note { text-align: left; padding: 15px 22px; font-size: 14px; min-height: 55px; background: #f2f1e7; }
.feature-notes h3 { font-size: 22px; }
.get-started { gap: 38px; padding-block: 20px 64px; }
.get-started h2 { font-size: clamp(28px, 2.8vw, 37px); }
.plan-intro { margin-top: 15px; font-size: 15px; color: var(--muted); line-height: 1.9; }
.plans table { margin-top: 24px; }
.plans thead th:not(:first-child) { width: 27%; }
.purchase-row { flex-wrap: wrap; gap: 16px 22px; margin-top: 23px; }
.purchase-row > .button { font-size: 16px; padding-inline: 20px; }
.purchase-note { margin-top: 14px; font-size: 13px; color: var(--muted); }
.download-panel { padding-block: 34px; }
.download-panel .download-hint { font-size: 14px; line-height: 1.8; }
.download-brand { margin-block: 24px; }
.guide { grid-template-columns: 190px 1fr; gap: 32px; padding-block: 38px 44px; }
.guide h2, .faq h2 { font-size: 34px; line-height: 1.5; }
.guide li { align-items: flex-start; gap: 15px; }
.guide li::before { margin-top: 2px; background: #6a7759; }
.guide li + li { margin-top: 20px; }
.guide li strong { color: var(--ink); font-size: 16px; font-weight: 600; }
.guide li p { margin-top: 3px; font-size: 14px; }
.verification { display: grid; grid-template-columns: 1fr 1.08fr; gap: 56px; align-items: start; padding-block: 44px 56px; border-top: 1px solid var(--line); }
.verification h2 { font-size: 34px; line-height: 1.5; }
.verification-intro { max-width: 430px; margin-top: 14px; color: var(--muted); font-size: 16px; line-height: 1.9; }
.verification-reminder { margin-top: 23px; padding: 16px 18px; border-left: 3px solid var(--red); background: #f1e9dd; }
.verification-reminder strong { color: #983d2b; font-size: 18px; }
.verification-reminder p { margin-top: 5px; color: #5c604f; font-size: 14px; line-height: 1.9; }
.verification-steps { list-style: none; counter-reset: verification-step; padding: 0; margin: 25px 0 0; }
.verification-steps li { position: relative; padding-left: 39px; counter-increment: verification-step; }
.verification-steps li + li { margin-top: 20px; }
.verification-steps li::before { content: counter(verification-step); position: absolute; top: 1px; left: 0; display: grid; place-items: center; width: 25px; height: 25px; border: 1px solid #a4ab97; border-radius: 50%; color: #536148; font: 16px/1 var(--serif); }
.verification-steps strong { font-size: 16px; font-weight: 600; }
.verification-steps p { margin-top: 4px; color: var(--muted); font-size: 14px; line-height: 1.9; }
.verification-note { margin-top: 23px; color: var(--muted); font-size: 13px; line-height: 1.9; }
.verification-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; }
.verification-gallery figure { min-width: 0; margin: 0; }
.verification-gallery figure > a { display: block; overflow: hidden; border: 1px solid #bfc4b3; border-radius: 7px; background: #e5e6da; }
.verification-gallery img { width: 100%; height: auto; }
.verification-gallery figcaption { margin-top: 12px; font-size: 14px; color: var(--ink); }
.verification-gallery figcaption span { margin-right: 5px; color: #647152; font-family: var(--serif); }
.verification-image-hint { grid-column: 1 / -1; color: var(--muted); font-size: 13px; }
.faq { display: grid; grid-template-columns: .85fr 1.15fr; gap: 52px; padding-block: 44px 64px; border-top: 1px solid var(--line); }
.faq > div > p { color: var(--muted); margin-top: 14px; font-size: 15px; }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list details:first-child { border-top: 1px solid var(--line); }
.faq-list summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0; list-style: none; cursor: pointer; font-size: 16px; font-weight: 600; line-height: 1.7; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; font: 24px/1 var(--sans); font-weight: 400; color: #6a7759; flex-shrink: 0; }
.faq-list details[open] summary::after { content: '−'; }
.faq-list details p { font-size: 14px; color: var(--muted); padding: 0 24px 20px 0; line-height: 1.9; }
.site-footer { flex-wrap: wrap; }
.site-footer p { font-size: 13px; }
.footer-help { font-size: 14px; padding-block: 10px; text-decoration: underline; text-underline-offset: 5px; }
.no-script-note { margin-top: 15px; color: var(--muted); font-size: 14px; }
dialog { max-width: min(440px, calc(100% - 32px)); width: 100%; color: var(--ink); background: var(--paper); border: 1px solid var(--line); padding: 28px; border-radius: 8px; }
dialog::backdrop { background: #173f3866; }
dialog h2 { margin-top: 20px; font-size: 25px; }
dialog p { color: var(--muted); font-size: 14px; margin-block: 12px 18px; }
dialog input { display: block; width: 100%; min-height: 48px; background: #fffdf7; color: var(--ink); border: 1px solid #9ba48d; border-radius: 4px; padding: 10px; font: 14px var(--sans); }
dialog .button { margin-top: 20px; width: 100%; }
.dialog-close { display: block; margin-left: auto; min-height: 44px; min-width: 44px; background: transparent; border: 0; color: var(--ink); font-size: 14px; text-decoration: underline; }

@media (min-width: 1500px) {
  .hero { min-height: 650px; }
  .hero h1 { font-size: 60px; }
}
@media (min-width: 801px) and (max-width: 1150px) {
  .hero { gap: 24px; }
  .hero h1 { font-size: clamp(35px, 4.2vw, 48px); }
  .hero-copy > .hero-description { font-size: 15px; }
  .hero-actions { gap: 18px; }
  .hero-actions .button { font-size: 16px; padding-inline: 17px; }
  .hero-actions .text-link { font-size: 14px; }
  .hero-media { padding-inline: 17px 10px; }
  .get-started { gap: 28px; }
  .feature-notes h3 { font-size: 20px; }
  .demo-legend > small { margin-left: 0; }
  .verification { gap: 30px; }
}
@media (max-width: 800px) {
  .site-header { min-height: 0; padding-block: 14px 8px; gap: 9px; }
  .site-header nav { padding-top: 6px; gap: 32px; }
  .site-header nav a { min-height: 40px; }
  .nav-download { min-height: 44px; }
  .hero { display: block; min-height: 0; padding-block: 34px 32px; }
  .hero-media { display: none; }
  .hero h1 { font-size: clamp(33px, 6vw, 46px); line-height: 1.45; }
  .hero-copy > .product-context { font-size: 13px; margin-bottom: 12px; }
  .hero-copy > .hero-description { font-size: 15px; margin-top: 18px; line-height: 1.9; max-width: 480px; }
  .hero-actions { margin-top: 24px; gap: 20px; }
  .hero-actions .button { font-size: 16px; min-height: 50px; padding: 12px 18px; }
  .js-enabled .mobile-copy { display: inline-flex; }
  .js-enabled .desktop-download { display: none; }
  .js-enabled .mobile-copy-note { display: inline; }
  .js-enabled .mobile-direct { display: block; font-size: 13px; margin-top: 16px; text-decoration: underline; text-underline-offset: 4px; }
  .hero-copy > small { font-size: 12px; margin-top: 12px; }
  .promise-strip { font-size: 15px; padding-block: 18px; }
  .promise-strip .promise-long { display: none; }
  .promise-strip .promise-short { display: inline; white-space: nowrap; }
  .preview-section { padding-block: 36px 45px; }
  .section-intro h2 { font-size: 30px; }
  .section-intro > p { font-size: 15px; margin-top: 10px; }
  .battle-demo { margin-top: 23px; }
  .demo-toolbar { padding: 15px; gap: 15px; }
  .demo-title > span { font-size: 13px; }
  .demo-controls { width: 100%; justify-content: space-between; }
  .demo-controls select { flex: 1; }
  .demo-legend { padding: 14px 15px 0; gap: 8px 17px; }
  .demo-legend > small { width: 100%; margin-left: 0; font-size: 12px; }
  .team-switch:not([hidden]) { display: flex; gap: 0; padding: 4px; margin: 15px 15px 0; border-radius: 5px; background: #eeece1; }
  .team-switch button { flex: 1; min-height: 44px; padding: 8px 6px; color: var(--muted); border: 1px solid transparent; border-radius: 4px; background: transparent; font-size: 14px; }
  .team-switch button[aria-pressed='true'] { color: var(--ink); background: #fffdf7; border-color: var(--line); font-weight: 600; box-shadow: 0 1px 3px #173f380a; }
  .demo-teams { grid-template-columns: 1fr; gap: 22px; padding: 15px; }
  .demo-team + .demo-team { border: 0; padding: 0; }
  .demo-teams[data-view='enemy'] .ally, .demo-teams[data-view='ally'] .enemy { display: none; }
  .demo-unit { padding: 16px 8px 0; }
  .demo-unit .portrait { width: 48px; height: 48px; }
  .demo-unit .unit-summary { flex-wrap: nowrap; }
  .demo-unit .pet-symbol { display: grid; }
  .demo-unit .skill-grid { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .demo-unit .skill { min-height: 40px; font-size: 14px; padding-inline: 9px; }
  .demo-unit .skill b { font-size: 13px; }
  .pet-skills p { font-size: 12px; }
  .demo-note { font-size: 13px; line-height: 1.8; padding: 14px 15px; }
  .feature-notes { grid-template-columns: 1fr; gap: 20px; margin-top: 26px; }
  .feature-notes article { display: grid; grid-template-columns: 40px 1fr; gap: 0 14px; }
  .feature-notes article + article { border: 0; padding: 0; }
  .feature-number { grid-row: span 2; font-size: 30px; }
  .feature-notes h3 { margin: 0; font-size: 21px; }
  .feature-notes p { font-size: 14px; margin-top: 5px; }
  .get-started { padding-block: 5px 38px; gap: 32px; }
  .get-started h2 { font-size: 30px; }
  .plan-intro { font-size: 14px; }
  .plans th, .plans td { padding-block: 14px; }
  .purchase-row { gap: 15px; }
  .download-panel { padding: 27px 20px; }
  .download-panel > .button { max-width: 310px; width: 100%; }
  .guide { grid-template-columns: 1fr; gap: 22px; padding-block: 30px; }
  .guide h2, .faq h2 { font-size: 29px; }
  .guide ol { padding: 0; border: 0; }
  .verification { grid-template-columns: 1fr; gap: 27px; padding-block: 30px 35px; }
  .verification h2 { font-size: 29px; }
  .verification-intro { font-size: 15px; margin-top: 10px; }
  .verification-reminder { margin-top: 19px; padding: 14px 15px; }
  .verification-reminder strong { font-size: 17px; }
  .verification-gallery { gap: 12px 16px; }
  .verification-gallery figcaption { font-size: 13px; margin-top: 9px; }
  .faq { grid-template-columns: 1fr; padding-block: 30px 36px; gap: 24px; }
  .faq > div > p { font-size: 14px; margin-top: 10px; }
  .faq-list summary { font-size: 15px; padding-block: 18px; }
  .site-footer { padding-block: 23px; gap: 12px; }
}
@media (max-width: 480px) {
  .site-header nav { gap: clamp(12px, 4vw, 20px); }
}
@media (max-width: 360px) {
  .hero h1 { font-size: 31px; }
  .hero-actions { gap: 13px; }
  .hero-actions .button { font-size: 14px; padding-inline: 13px; }
  .hero-actions .text-link { font-size: 13px; gap: 5px; }
  .demo-unit .unit-summary { gap: 8px; }
  .rage b { margin-left: 3px; padding-inline: 5px; }
  .demo-legend { gap: 8px 12px; font-size: 12px; }
  .section-intro h2 { font-size: 28px; }
  .promise-strip { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; }
}
