:root{--page:#eef6fc;--card:#fff;--ink:#102033;--muted:#52657a;--line:#cfe0ed;--blue:#145f91;--accent:#e99016;--shadow:0 16px 42px rgba(24,69,101,.09);--radius:22px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;overflow-x:hidden;background:var(--page);color:var(--ink);font:17px/1.7 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
a{color:#075f99;text-underline-offset:3px}a:hover{color:#934f00}
button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #0b6fae;outline-offset:3px;border-radius:6px}
.skip-link{position:fixed;z-index:200;top:10px;left:10px;padding:12px 18px;background:#fff;color:var(--ink);transform:translateY(-160%);box-shadow:var(--shadow)}.skip-link:focus{transform:none}
.guide-header{background:#f9fcff;border-bottom:1px solid var(--line)}
.header-inner{width:min(1600px,calc(100% - 32px));margin:auto;padding:30px 0;display:grid;grid-template-columns:auto 190px minmax(0,1fr) minmax(220px,270px);align-items:center;gap:30px}
.menu-button,.mobile-toc-button,.button,.back-to-top{min-height:44px;border:1px solid #b7d0e2;border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;padding:10px 16px}.menu-button{align-self:start}.menu-button span:first-child{font-size:1.35rem}.button:hover,.menu-button:hover,.mobile-toc-button:hover{background:#eaf5fc;border-color:#77a9c9}.button.primary{color:#fff;background:#ba6707;border-color:#ba6707}.button.primary:hover{background:#995205}
.tool-logo{display:block;width:min(190px,100%);height:auto;object-fit:contain}.eyebrow{margin:0 0 5px;color:#a45700;font-size:.83rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.title-block h1{font-size:clamp(2.35rem,3.2vw,3rem);line-height:1.08;letter-spacing:-.035em;margin:0}.lead{max-width:780px;margin:14px 0;color:var(--muted);font-size:1.08rem}.version{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0;font-size:.9rem;color:var(--muted)}.version strong{color:#8b4a00}.quick-actions{display:grid;gap:10px}
.mobile-toc-wrap{display:none}.guide-layout{width:min(1600px,calc(100% - 32px));margin:34px auto 60px;display:grid;grid-template-columns:minmax(290px,330px) minmax(0,1fr);gap:32px;align-items:start}.toc-shell{position:sticky;top:18px;max-height:calc(100vh - 36px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.toc{padding:22px 18px}.toc h2{margin:0 8px 14px;font-size:1.18rem}.toc p{margin:18px 8px 5px;padding-top:13px;border-top:1px solid #e2edf4;color:#64798c;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.toc a{display:block;min-height:42px;padding:7px 10px;border-left:3px solid transparent;border-radius:8px;color:#334e64;text-decoration:none;font-size:.9rem;line-height:1.5}.toc a:hover{background:#f0f7fc}.toc a[aria-current="location"]{background:#fff3df;border-left-color:var(--accent);color:#753d00;font-weight:800}
main{display:grid;gap:28px;min-width:0}.card{padding:clamp(28px,3vw,36px);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);scroll-margin-top:24px}.card h2{margin:0 0 15px;font-size:clamp(1.75rem,2.4vw,2.1rem);line-height:1.2;letter-spacing:-.02em}.card h3{font-size:1.25rem;line-height:1.35;margin:1.35em 0 .4em}.card p{max-width:84ch}.card p:last-child{margin-bottom:0}.card-grid,.comparison,.settings-grid{display:grid;gap:18px;margin-top:24px}.card-grid.three,.comparison{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid article,.comparison article,.settings-grid article{padding:22px;background:#f6faff;border:1px solid #d8e7f1;border-radius:16px}.card-grid h3,.comparison h3,.settings-grid h3{margin:0 0 8px}.card-grid p,.comparison p,.settings-grid p{margin:0}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid article{scroll-margin-top:20px}
.notice{margin:24px 0 0;padding:20px 22px;border:1px solid;border-radius:15px}.notice strong{display:block;font-size:1.02rem}.notice p{margin:4px 0 0}.notice.info{background:#eaf6ff;border-color:#acd5ee}.notice.tip{background:#ecf8ef;border-color:#abd8b6}.notice.important{background:#fff3df;border-color:#edc681}.notice.risk{background:#fff0f0;border-color:#efbaba}
.calculation-flow{margin-top:24px;padding:24px;background:#f6faff;border:1px solid #cfe0ed;border-radius:16px}.calculation-flow h3{margin-top:0}.calculation-flow ol{list-style:none;counter-reset:calculation;margin:18px 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.calculation-flow li{counter-increment:calculation;position:relative;padding:16px 16px 16px 56px;background:#fff;border:1px solid #d8e7f1;border-radius:12px}.calculation-flow li::before{content:counter(calculation);position:absolute;left:16px;top:16px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#c66d08;color:#fff;font-weight:850}.calculation-flow li strong,.calculation-flow li span{display:block}.calculation-flow li span{margin-top:3px;color:var(--muted)}.calculation-example{padding:14px 16px;background:#fff3df;border-left:4px solid var(--accent);border-radius:8px}.technical-calculation{margin-top:18px;border-top:1px solid #d5e4ee;padding-top:14px}.technical-calculation summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:800;color:#075f99}.technical-calculation dl{margin:10px 0 0}.technical-calculation dl div{display:grid;grid-template-columns:minmax(130px,180px) minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid #dbe7ef}.technical-calculation dt{font-weight:800}.technical-calculation dd{margin:0;color:var(--muted)}
.steps{counter-reset:guide-step;list-style:none;margin:25px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.steps li{counter-increment:guide-step;position:relative;padding:22px 22px 22px 72px;background:#f7fbfe;border:1px solid #d5e5ef;border-radius:16px}.steps li::before{content:counter(guide-step);position:absolute;left:20px;top:22px;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#c66d08;color:#fff;font-weight:850}.steps h3{margin:0 0 7px}.steps p{margin:0 0 9px}.steps small{display:block;color:#40576b;font-size:.88rem;line-height:1.55}
.table-wrap{max-width:100%;overflow-x:auto;margin-top:22px;border:1px solid #cfdfeb;border-radius:15px}table{border-collapse:collapse;width:100%;min-width:720px;font-size:.93rem}th,td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid #dbe7ef}thead th{background:#eaf3f9;color:#173951}tbody th{background:#f8fbfd}tbody tr:last-child>*{border-bottom:0}
.faq-list{display:grid;gap:12px;margin-top:22px}.faq-list details{border:1px solid #d3e2ec;border-radius:14px;background:#f9fcfe}.faq-list summary{cursor:pointer;min-height:52px;padding:13px 48px 13px 18px;font-weight:800;position:relative}.faq-list summary::after{content:"+";position:absolute;right:18px;font-size:1.25rem}.faq-list details[open] summary::after{content:"−"}.faq-list details p{padding:0 18px 18px;margin:0;color:var(--muted)}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:20;box-shadow:0 8px 22px rgba(20,60,90,.2);opacity:0;visibility:hidden;transform:translateY(12px);transition:.2s}.back-to-top.visible{opacity:1;visibility:visible;transform:none}footer{padding:30px 16px;text-align:center;color:#5c7082;border-top:1px solid var(--line);background:#f9fcff}
@media(max-width:1100px){.header-inner{grid-template-columns:auto 140px 1fr}.tool-logo{width:140px}.quick-actions{grid-column:2/-1;grid-template-columns:repeat(3,1fr)}.guide-layout{grid-template-columns:minmax(260px,290px) minmax(0,1fr);gap:24px}.steps{grid-template-columns:1fr}.card-grid.three,.comparison{grid-template-columns:1fr}}
@media(max-width:800px){body{font-size:16px;line-height:1.68}.header-inner{padding:20px 0;grid-template-columns:auto 95px minmax(0,1fr);gap:16px}.menu-button span:last-child{display:none}.menu-button{padding:9px 13px}.tool-logo{width:95px}.title-block h1{font-size:clamp(1.75rem,7vw,2.35rem)}.lead{font-size:1rem}.quick-actions{grid-column:1/-1;grid-template-columns:1fr}.mobile-toc-wrap{display:block;width:min(100% - 32px,1600px);margin:20px auto 0}.mobile-toc-button{width:100%;justify-content:space-between}.guide-layout{display:block;margin-top:14px}.toc-shell{display:none;position:static;max-height:none;margin-bottom:18px}.toc-shell.open{display:block}.toc{padding:16px}.toc a{min-height:44px}.settings-grid,.calculation-flow ol{grid-template-columns:1fr}.card{padding:24px 20px}.back-to-top{right:12px;bottom:12px}}
@media(max-width:480px){.header-inner{grid-template-columns:auto minmax(0,1fr)}.tool-logo{grid-column:2;width:110px}.title-block{grid-column:1/-1}.version{display:grid}.card-grid article,.comparison article,.settings-grid article{padding:18px}.steps li{padding:20px 18px 20px 64px}.steps li::before{left:16px;top:20px}.calculation-flow{padding:18px}.technical-calculation dl div{grid-template-columns:1fr;gap:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{@page{margin:16mm}body{background:#fff;color:#000;font-size:11pt}.guide-header{background:#fff;border:0}.header-inner{display:block;width:100%;padding:0 0 10mm}.tool-logo{width:35mm;margin-bottom:5mm}.menu-button,.quick-actions,.mobile-toc-wrap,.toc-shell,.back-to-top,footer{display:none!important}.guide-layout{display:block;width:100%;margin:0}.card{box-shadow:none;border:1px solid #bbb;border-radius:4px;padding:7mm;margin:0 0 6mm;break-inside:avoid}.card h2{font-size:18pt}.card-grid,.comparison,.settings-grid,.steps{display:block}.card-grid article,.comparison article,.settings-grid article,.steps li,.notice{background:#fff!important;break-inside:avoid;margin:0 0 4mm}a{color:#000;text-decoration:underline}a[href^="http"]::after{content:" (" attr(href) ")";font-size:8pt}.table-wrap{overflow:visible}table{min-width:0;font-size:9pt}}
