:root{--green:#155b49;--deep:#123e33;--mint:#eaf2eb;--gold:#b59457;--ink:#20352d;--muted:#7b857e;--line:#e3e8df;--bg:#f5f6f0}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Noto Sans JP',sans-serif;background:var(--bg);font-size:14px;line-height:1.7}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}button{cursor:pointer;border:0}a{color:var(--green)}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}aside{width:238px;background:#fff;position:fixed;inset:0 auto 0 0;border-right:1px solid var(--line);padding:30px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:750;font-size:17px;padding:0 7px}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:.06em;color:var(--muted)}.brandmark{display:grid;place-items:center;background:var(--green);color:white;border-radius:13px;width:42px;height:42px;font-size:22px}.navlabel{font-size:10px;letter-spacing:.1em;color:var(--muted);margin:44px 12px 14px}nav a{display:flex;gap:13px;align-items:center;color:#68756e;text-decoration:none;padding:12px 15px;border-radius:9px;margin:4px 0;font-size:13px}nav a.active{background:var(--mint);color:var(--green);font-weight:700}nav a:hover{background:var(--bg)}.ico{font-size:17px;width:22px;text-align:center}.asidebottom{margin-top:auto;font-size:11px;color:var(--muted);padding:24px 10px 0}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#459577;margin-right:5px}.shell{margin-left:238px}header{height:90px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.eyebrow{font-size:10px;letter-spacing:.14em;color:var(--muted)}#breadcrumb{font-weight:600;font-size:15px}.headeractions{display:flex;align-items:center;gap:18px}.avatar{background:var(--mint);border:1px solid var(--line);border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:12px}.rolelabel{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.rolelabel select{width:90px;padding:5px;border:0;background:var(--bg);margin:0}.chip{font-size:10px;letter-spacing:.05em;background:#f8f0dd;color:#876931;padding:5px 10px;border-radius:5px}main{max-width:1350px;margin:auto;padding:36px 42px 55px;min-height:78vh}.hero{background:var(--deep);color:white;border-radius:16px;padding:38px 42px;position:relative;overflow:hidden}.hero:after{content:'';width:320px;height:320px;position:absolute;border:1px solid #ffffff13;border-radius:50%;right:-55px;top:-55px;box-shadow:0 0 0 50px #ffffff05,0 0 0 100px #ffffff03;pointer-events:none}.hero .eyebrow{color:#c4d6cb}h1{font-size:32px;line-height:1.5;letter-spacing:.01em;margin:9px 0 13px;font-weight:650}h2{font-size:20px;margin:0;font-weight:650}h3{font-size:16px;margin:0 0 8px;font-weight:650}p{margin:8px 0 16px}.hero p{color:#cfdfd5;font-size:13px;max-width:590px}.hero .btn{background:#f1e8cf;color:var(--deep);margin-top:8px}.hero .tagline{font-size:10px;margin-top:18px;color:#c4d6cb}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0 32px}.stat{border:1px solid var(--line);border-radius:12px;background:white;padding:20px 23px}.stat small{color:var(--muted);font-size:11px}.stat b{font-size:30px;display:block;font-weight:500;line-height:1.7}.stat b span{font-size:12px;color:var(--muted);margin-left:7px}.stat .under{font-size:10px;color:#819086}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin:27px 0 16px}.sectionhead small,.muted{color:var(--muted);font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px}.card.link{cursor:pointer;transition:.15s}.card.link:hover{border-color:#91b49f;transform:translateY(-2px)}.card .number{color:var(--gold);font-size:11px;letter-spacing:.1em}.card p{font-size:12px;color:#748078;line-height:1.9}.card .bottom{border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;font-size:11px;color:var(--green)}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:22px;margin-top:24px}.wide{grid-column:1/-1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--green);color:#fff;padding:11px 19px;border-radius:7px;font-size:12px;text-decoration:none;font-weight:600}.btn:disabled{opacity:.45;cursor:default}.ghost{background:#fff;color:var(--green);border:1px solid var(--line);padding:8px 12px;border-radius:6px;font-size:11px}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.badge{padding:3px 9px;border-radius:5px;font-size:10px;background:var(--mint);color:var(--green);white-space:nowrap}.badge.warn{background:#fbefdc;color:#94651b}.badge.bad{background:#fbe7e3;color:#a35242}.note{border-left:3px solid var(--gold);background:#faf5e9;padding:13px 17px;font-size:12px;color:#826b43;margin:20px 0}.pageintro{padding:0 0 7px}.pageintro h1{font-size:27px}.pageintro p{font-size:13px;color:var(--muted);max-width:800px}label.field{display:block;color:#596f63;font-size:12px;margin-bottom:15px}input,textarea,select{width:100%;border:1px solid #dce4da;border-radius:7px;padding:11px 12px;background:#fff;color:var(--ink);margin-top:6px}input:focus,textarea:focus,select:focus{outline:2px solid #a5c5b1;outline-offset:1px}textarea{resize:vertical;min-height:130px}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-size:10px;letter-spacing:.04em;font-weight:600;color:var(--muted);padding:12px 14px;background:#f8faf6;white-space:nowrap}td{border-top:1px solid var(--line);padding:13px 14px}td strong{font-size:12px}.listrow{padding:15px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.listrow:first-child{border:0}.listrow small{display:block;color:var(--muted);font-size:11px}.answer{background:#f2f6ef;padding:20px;border-radius:9px;white-space:pre-wrap;font-size:13px;margin:15px 0}.source{font-size:11px;color:var(--green);border-top:1px solid var(--line);padding:11px 0}.check{display:flex;gap:10px;align-items:flex-start;margin:13px 0;font-size:12px}.check input{width:16px;margin-top:5px}.log{border-left:2px solid #d3e4d7;padding:0 0 13px 16px;margin:10px 0;font-size:12px}.log small{color:var(--muted);display:block}.bubble{padding:15px 18px;background:var(--mint);border-radius:9px;margin:12px 0;font-size:12px;white-space:pre-wrap}.bubble.other{background:#f7f4ec;margin-left:35px}.bar{height:7px;background:#eef1e9;border-radius:5px;margin:9px 0 17px;overflow:hidden}.bar span{height:100%;display:block;background:#79a58a;border-radius:5px}.empty{padding:30px 10px;color:var(--muted);text-align:center;font-size:12px}footer{padding:22px 42px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.9}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--deep);color:white;padding:12px 22px;border-radius:9px;z-index:100;font-size:12px;opacity:0;pointer-events:none;transition:.2s}#toast.on{opacity:1}.mobileonly{display:none}@media(min-width:1400px){main{padding-top:45px}.hero{padding:45px}.grid .card{padding:28px}}@media(max-width:1000px){aside{width:205px}.shell{margin-left:205px}header{padding:0 24px}main{padding:25px}.grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.hero{padding:30px}h1{font-size:27px}}@media(max-width:700px){aside{position:relative;width:100%;padding:16px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:16px}.navlabel,.asidebottom{display:none}nav{display:flex;gap:4px;overflow-x:auto;margin-top:14px}nav a{white-space:nowrap;padding:8px 12px;font-size:11px}nav .ico{display:none}.shell{margin:0}header{height:72px;padding:0 18px}.headeractions{gap:8px}.avatar,.rolelabel{display:none}main{padding:22px 16px}.hero{padding:27px 22px}h1{font-size:24px}.grid{grid-template-columns:1fr}.stats{gap:10px;margin:16px 0}.stat{padding:14px}.stat b{font-size:25px}.formrow{grid-template-columns:1fr}.sectionhead{align-items:flex-start;gap:10px}footer{padding:20px}.pageintro h1{font-size:23px}.card{padding:20px}}@media print{aside,header,footer,.actions,#toast{display:none}.shell{margin:0}main{padding:0}.card{break-inside:avoid}body{background:white}}
