:root{--bg: #fcfbf8;--paper: #ffffff;--ink: #1c2824;--muted: #5c6b66;--line: #e8e4dc;--ask: #086038;--ask-deep: #064e2e;--accent-ink: #f4fbf8;--max: 760px;font-family:Noto Sans JP,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.75}*{box-sizing:border-box}body{margin:0}a{color:inherit}img{max-width:100%;height:auto}button,input{font:inherit}h1,h2,h3{line-height:1.35;letter-spacing:-.02em;font-weight:700}h1{font-size:clamp(1.8rem,4vw,2.35rem);margin:0 0 .8rem}h2{font-size:1.25rem;margin:0 0 .8rem}h3{font-size:1.05rem;margin:0 0 .35rem}p{margin:.35rem 0}.wrap{width:min(1160px,calc(100% - 1.5rem));margin:0 auto}.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header-inner{min-height:64px;display:flex;align-items:center;gap:1.25rem}.logo{display:flex;margin-right:auto;line-height:0}.logo img,.footer-logo img{height:52px;width:auto;display:block}.nav-links{display:none;gap:1.15rem}.nav-links a{text-decoration:none;font-size:.92rem;color:#31403c}.nav-links a[aria-current=page]{color:var(--ask);font-weight:700}.check-main,.result-main{width:min(var(--max),calc(100% - 2rem));margin:0 auto;padding:4.5rem 0 3.5rem}.lede{font-size:1.05rem;margin-bottom:1.5rem}form,.auth-form{display:grid;gap:.7rem}input{width:100%;padding:.85rem .9rem;border:1px solid #d9e3df;border-radius:8px;background:#fff;color:var(--ink)}button{width:100%;min-height:3rem;border:0;border-radius:8px;background:var(--ask);color:var(--accent-ink);font-weight:700;cursor:pointer}button:hover{background:var(--ask-deep)}button:disabled{cursor:wait;opacity:.7}.hint{margin:.85rem 0 .2rem;color:var(--muted)}.support,.fine,.evidence{color:var(--muted);font-size:.92rem}.form-error{color:#8a3d32}.text-link,.text-button{display:inline-block;width:auto;margin-top:.8rem;padding:0;border:0;background:transparent;color:var(--ask);font-weight:700;text-decoration:none;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.progress h1,.report section{margin-top:2.4rem}.report section:first-child{margin-top:0}.stages{list-style:none;margin:1.2rem 0;padding:0;display:grid;gap:.55rem}.stages li{display:flex;gap:.7rem;color:var(--muted)}.stages .done{color:var(--ink)}.stages .active{color:var(--ask);font-weight:700}.stages .failed{color:#8a3d32}.progress-count{font-weight:700}.report-url{color:var(--muted);margin-bottom:.4rem}.score{display:flex;align-items:baseline;gap:.45rem;margin:.2rem 0 .4rem}.score strong{font-size:clamp(3rem,8vw,4.2rem);letter-spacing:-.04em;line-height:1}.score span,.interpretation{color:#31403c}.compare{display:flex;flex-wrap:wrap;gap:1.2rem;margin:1rem 0 0}.compare div{min-width:4.5rem}.compare dt{color:var(--muted);font-size:.85rem}.compare dd{margin:0;font-size:1.35rem;font-weight:700}.dimensions,.findings,.questions,.actions-list,.history,.save-points,.checked-pages ul{list-style:none;margin:0;padding:0}.dimensions{display:grid;gap:.95rem}.dimension-row,.history li{display:flex;justify-content:space-between;gap:1rem}.bar{display:block;height:2px;margin:.25rem 0 .15rem;background:#e7e2d8}.bar span{display:block;height:100%;background:var(--ask)}.findings,.questions{display:grid;gap:1.3rem}.findings{list-style:decimal;padding-left:1.2rem}.actions-list{list-style:decimal;padding-left:1.2rem;display:grid;gap:.45rem}.priority{font-weight:700}.answer.yes{color:var(--ask)}.answer.partial{color:#6d5b32}.answer.no{color:#8a3d32}.history{display:grid;gap:.35rem;max-width:16rem}.save-panel{margin-top:2.8rem;padding-top:1.6rem;border-top:1px solid var(--line)}.save-points{margin:.4rem 0 1rem}.save-points li:before{content:"✓ ";color:var(--ask)}.checked-pages{margin-top:2rem}.checked-pages a{color:var(--ask)}.site-footer{border-top:1px solid var(--line);padding:2.2rem 0 2.6rem;background:var(--bg)}.footer-brand{display:grid;gap:.6rem;margin-bottom:1.3rem}.footer-logo{line-height:0}.footer-nav{display:grid;gap:1.15rem}.footer-label{margin:0 0 .3rem;font-size:.78rem;font-weight:700;letter-spacing:.06em;color:var(--muted)}.footer-nav a{display:block;text-decoration:none;font-size:.92rem;padding:.1rem 0}@media(min-width:800px){.wrap{width:min(1160px,calc(100% - 3rem))}.nav-links{display:flex}.logo img{height:64px}.check-main{padding-top:6.5rem}form button,.save-panel>button,.auth-form button{width:fit-content;min-width:14rem;padding:0 1.3rem}.footer-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem 2rem}}
