*{box-sizing:border-box}body{margin:0;background:#f4f6f4;color:#213c36;font:16px/1.75 "Yu Gothic UI","Meiryo",sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #a9bdb4;border-radius:8px;padding:9px 16px;background:#fff;color:#244e40;font-weight:600}button:hover{background:#e7efe9}button.primary{background:#286249;border-color:#286249;color:white}button.danger{color:#983f32}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{width:100%;border:1px solid #a9bdb4;background:white;border-radius:7px;padding:10px;color:#213c36}input[type=checkbox],input[type=radio]{width:auto;accent-color:#286249}textarea{min-height:110px;resize:vertical}label{display:block;margin:12px 0}header{background:#fff;border-bottom:1px solid #dbe5de;padding:22px 5vw}.brand{font-size:22px;font-weight:700;letter-spacing:.05em}.brand small{display:block;font-size:12px;color:#687f74;letter-spacing:.12em}.demo-bar{background:#e9eedf;padding:10px 5vw;font-size:13px;color:#4b6045}.layout{max-width:1360px;margin:auto;display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;padding:32px 4vw}aside nav{display:grid;gap:8px}nav button{text-align:left;border:0;background:transparent;padding:13px}nav button.active{background:#dfeae1;color:#21583d}aside .mini{margin-top:24px;font-size:13px;color:#60756c}.workspace{min-width:0}.topline,.row,.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.topline{justify-content:space-between;margin-bottom:22px}.role{width:min(100%,310px)}h1{font-size:28px;line-height:1.4;margin:8px 0}h2{font-size:20px;margin:0 0 14px}h3{font-size:17px;margin:16px 0 8px}p{margin:8px 0 16px}.muted{color:#687c73;font-size:14px}.eyebrow{font-size:12px;letter-spacing:.14em;color:#6e826d}.card{background:#fff;border:1px solid #dce5dd;border-radius:14px;padding:24px;margin-bottom:20px}.hero{background:#244e3e;color:#fff;padding:30px;border-radius:16px;margin-bottom:24px}.hero .muted{color:#c9dacf}.hero h1{font-size:30px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.stat{background:#fff;border:1px solid #dce5dd;padding:18px;border-radius:12px}.stat strong{display:block;font-size:28px}.badge{display:inline-block;border-radius:20px;background:#e6efe7;color:#365b42;padding:3px 10px;font-size:12px}.badge.warn{background:#f9edd4;color:#775624}.notice{border-left:4px solid #b68d48;background:#fcf5e7;padding:16px;margin:14px 0;border-radius:4px}.approval{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #edf0eb;padding:12px 0}.actions{margin-top:16px}.document{white-space:pre-wrap;background:#f6f8f5;border-radius:8px;padding:20px;overflow-wrap:anywhere}.question{border:1px solid #e0e6df;padding:18px;border-radius:10px;margin:14px 0}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-weight:600;margin-bottom:8px}details{margin:12px 0}summary{cursor:pointer;font-weight:600}hr{border:0;border-top:1px solid #e4e9e2;margin:24px 0}.log{padding:12px 0;border-bottom:1px solid #e3e9e3;font-size:14px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#203e32;color:white;padding:14px 22px;border-radius:9px;max-width:90vw;z-index:10;box-shadow:0 8px 30px #203e322b}.bar{height:9px;background:#edf1e9;border-radius:5px;margin:6px 0 12px}.bar span{display:block;height:100%;background:#6e9272;border-radius:5px}.clock{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.step{font-size:13px;color:#728174;margin-bottom:14px}a{color:#286249}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b79340;outline-offset:3px}.error{background:#fcebe7;color:#842e21;padding:12px;border-radius:8px}pre{white-space:pre-wrap;overflow-wrap:anywhere}main{min-width:0}.checkline{display:flex;align-items:center;gap:10px}.question .row label{margin:4px 0}.metric{font-size:13px}footer{padding:10px 0;color:#7d8c80;font-size:12px}@media(max-width:760px){.layout{display:block;padding:18px 16px}aside nav{display:flex;overflow-x:auto;margin-bottom:20px;gap:3px}nav button{white-space:nowrap;padding:10px;font-size:14px}aside .mini{display:none}.grid{grid-template-columns:1fr;gap:0}.card{padding:18px}.hero{padding:22px}.hero h1{font-size:25px}h1{font-size:24px}.stats{gap:8px}.stat{padding:12px;font-size:12px}.stat strong{font-size:24px}header{padding:17px}.demo-bar{padding:10px 17px}.role{width:100%}.clock{grid-template-columns:1fr}.topline{gap:16px}.approval{font-size:14px}}
 .entry-wrap{max-width:1120px;margin:36px auto;padding:0 22px}.role-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.role-cards .card{display:flex;flex-direction:column}.role-cards button{margin-top:auto}.first-step{border-left:5px solid #6d9576;margin-top:18px}.first-step h2{margin-top:8px}@media(max-width:760px){.entry-wrap{margin-top:20px;padding:0 16px}.role-cards{grid-template-columns:1fr}}

 .wizard-steps{display:flex;gap:12px;padding:0;list-style:none;flex-wrap:wrap}.wizard-steps li{padding:8px 14px;background:#e8eee9;border-radius:6px}.wizard-steps [aria-current=step]{background:#286249;color:white;font-weight:bold}.template-choice{border:1px solid #ccd8cf;padding:16px;border-radius:8px}.template-choice:has(input:checked){border:2px solid #286249}.option-description{display:block;font-size:14px;color:#52675c;white-space:pre-wrap}.checkline{flex-wrap:wrap}.checkline .option-description{flex-basis:100%;padding-left:24px}.priority{border-left:5px solid #286249}#print-sheet{background:white;padding:28px;color:#111;border:1px solid #ddd;overflow-wrap:anywhere}#print-sheet h1{font-size:24px}#print-sheet h2{font-size:18px}.print-choice{margin:12px 0;break-inside:avoid}.print-choice p{margin-left:22px;white-space:pre-wrap}.writing-space{height:120px;border:1px solid #999}.print-question{border-top:1px solid #aaa;padding:16px 0;break-inside:avoid}@media print{@page{size:A4;margin:15mm}body{background:white;font-size:11pt}body *{visibility:hidden}#print-sheet,#print-sheet *{visibility:visible}#print-sheet{position:absolute;left:0;top:0;width:100%;padding:0;border:0}.print-controls,.toast{display:none!important}#print-sheet h1{font-size:18pt}#print-sheet h2{font-size:13pt}.print-question{break-inside:avoid;page-break-inside:avoid}}
@media print{body *{visibility:visible}#app>*{display:none!important}#app>.layout{display:block!important;margin:0;padding:0;max-width:none}.layout>aside{display:none!important}.workspace>*{display:none!important}.workspace>#content{display:block!important}#content>*{display:none!important}#content>#print-sheet{display:block!important;position:static;width:auto;margin:0}.print-question{break-inside:avoid}.toast{display:none!important}}
.survey-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.survey-tabs [aria-selected=true]{background:#286249;color:#fff}.list-item{border-bottom:1px solid #dce5dd;padding:14px 0}.success{background:#e7f2e8;border:1px solid #6f9b78;padding:16px;border-radius:8px}.confirmation{border:2px solid #9b752f;background:#fffaf0}.field-error{color:#8b281b;background:#fff0ed;padding:8px 12px;border-left:4px solid #a84332;margin-top:-6px}.pdf-viewer{width:100%;height:560px;border:1px solid #c5d0c8;margin:16px 0}table{width:100%;border-collapse:collapse;margin-bottom:20px}th,td{text-align:left;border:1px solid #cbd5ce;padding:10px;overflow-wrap:anywhere}th{background:#edf2ec}td:nth-child(2),td:nth-child(3){white-space:nowrap}[hidden]{display:none!important}@media(max-width:760px){.pdf-viewer{height:400px}.approval{align-items:flex-start;flex-wrap:wrap}th,td{padding:6px;font-size:14px}.survey-tabs button{font-size:14px}}
.pdf-preview{border:1px solid #ccd8cf;padding:10px;margin:16px 0;min-height:120px}.pdf-preview canvas{display:block;border-top:1px solid #dce5dd;margin-top:10px}.pdf-preview .actions{margin:0}.pdf-preview [data-page]{font-size:14px}

#wizard-form fieldset,#wizard-form .question,.answer-status,.summary-section,.survey-list .list-item{border-color:#81968a}
.answer-status,.summary-section{border-top:1px solid #81968a;padding-top:12px;margin-top:20px}
.answer-status p{margin:6px 0}
.summary-section>h3{margin-bottom:14px}
.summary-section .print-question{padding:12px 0}
.pdf-preview{margin-top:12px}
#print-sheet table{width:100%;border-collapse:collapse}
#print-sheet th,#print-sheet td{border:1px solid #888;padding:6px;text-align:left}
#print-sheet th{background:#e9eeeb}
@media print{
 #print-sheet h1,#print-sheet h2,#print-sheet h3{break-after:avoid}
 #print-sheet thead{display:table-header-group}
 #print-sheet tr,#print-sheet .writing-space{break-inside:avoid}
}

.list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.list-heading h1{margin:0}
.draft-list .list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.draft-list .list-item p{margin:4px 0}
.draft-list .list-item button{flex-shrink:0}

@media(max-width:760px){
 .topline .current-role{display:none}
 .topline{margin-bottom:12px}
 .topline .role label{margin:0}
 .priority .approval{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
 .priority .approval button{white-space:nowrap}
}
