:root{font-family:'BIZ UDPGothic','Yu Gothic',Meiryo,sans-serif;color:#203d49;background:#f0f5f7;font-size:16px;--teal:#1c5662;--red:#dc4458;--line:#dce6ea}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;background:white;border:1px solid #cddde2;border-radius:8px;padding:10px 15px;color:inherit;font-weight:700}button:hover{background:#e7f1f3}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #41a4b5;outline-offset:2px}.primary{background:var(--teal);color:white;border-color:var(--teal)}.primary:hover{background:#123e49}header{height:84px;padding:16px 3%;display:flex;align-items:center;justify-content:space-between;background:white;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center}.brand strong{font-size:20px}.brand small{display:block;color:#6b808a;margin-top:5px;font-size:12px}.mark{display:grid;place-items:center;background:var(--teal);color:white;border-radius:12px;width:44px;height:44px;font-size:23px}.tools,.selectors{display:flex;gap:10px;align-items:end}main{padding:24px 3% 10px;max-width:1920px;margin:auto}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.eyebrow{font-size:12px;letter-spacing:.14em;color:#497f8a;font-weight:700}h1{font-size:30px;margin:5px 0}h2{font-size:21px;margin:0 0 7px}h3{font-size:19px}p{line-height:1.65}label{display:block;font-size:14px;font-weight:700}input,select,textarea{display:block;width:100%;border:1px solid #cbdce1;border-radius:7px;background:#fff;padding:10px;color:#203d49;margin-top:7px}textarea{resize:vertical;line-height:1.6}.selectors select{min-width:155px}.notice{font-size:14px;background:#e4eff4;border-left:3px solid #5493aa;padding:10px 14px;margin-bottom:15px}.notice:empty{display:none}nav{display:flex;gap:24px;border-bottom:1px solid #d4e1e5;margin-bottom:20px}nav button{background:none;border:0;border-radius:0;padding:10px 0 14px;color:#677e88}nav .active{color:var(--teal);border-bottom:3px solid var(--teal)}nav #edit{margin-left:auto}.dashboard{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(330px,1fr);gap:22px}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:24px;min-width:0}.panelhead{display:flex;justify-content:space-between;gap:12px;align-items:start}.panelhead p{margin:0;color:#637b85;font-size:14px}.legend{display:flex;gap:14px;font-size:14px;white-space:nowrap}.legend span:first-child{color:var(--red)}.legend span:last-child{color:#8198a5}#radar{height:clamp(280px,38vh,470px);width:100%}#radar svg{height:100%;width:100%;display:block}#scores{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.score{padding:12px 8px;border-top:3px solid #e6edef;background:#f6f9fa;border-radius:5px}.score b{font-size:14px;display:block;white-space:nowrap}.score strong{font-size:27px;display:inline-block;margin:6px 4px 3px 0;font-variant-numeric:tabular-nums}.score small{font-size:12px;color:#6b7e88}.delta{font-size:12px;display:block;color:#4b7180}.footnote{font-size:12px;text-align:right;color:#778b94;margin:12px 0 0}.tag{font-size:12px;background:#eaf3f5;color:#317887;white-space:nowrap;padding:6px 10px;border-radius:30px}.strategy{display:flex;flex-direction:column}.step{display:flex;gap:13px;margin-top:20px}.step>span{font-size:14px;font-weight:bold;color:#6b929d;margin-top:2px}.step label{flex:1}.strategy details{margin:18px 0 0 30px}summary{font-size:14px;cursor:pointer;color:#536f7c;padding:7px 0}details label{margin-top:10px}.dates{display:flex;gap:10px}.dates label{min-width:0;flex:1}.saveRow{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:10px}.saveRow small{font-size:12px;color:#657e88}.hint{background:#edf5f7;color:#426c79;padding:13px 16px;border-radius:8px;font-size:14px;margin-top:auto;margin-bottom:0}.strategy .hint{margin-top:18px;line-height:1.8}footer{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#738892;font-size:12px;padding:18px 0}footer button{font-size:12px;background:transparent;border:0;color:#8c5861}dialog{width:min(850px,94vw);max-height:92vh;border:0;border-radius:16px;padding:28px;color:inherit;box-shadow:0 20px 80px #0b253a55}dialog::backdrop{background:#15324288}.dialoghead{display:flex;justify-content:space-between;align-items:center}.formgrid{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:15px;margin-top:20px}.dialogactions{text-align:right;margin-top:20px}dialog p{font-size:14px}#paste{font-family:monospace}.importTools{display:flex;gap:16px;align-items:center;font-size:14px;margin-top:10px}.fileLabel input{font-size:14px;padding:6px}#formError{color:#b0283d}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#183f4d;color:white;border-radius:9px;display:none;z-index:5}table{width:100%;border-collapse:collapse;margin-top:20px}td,th{padding:15px 12px;border-bottom:1px solid #e0e9ec;text-align:left}th{font-size:14px;background:#f3f7f8}td:not(:first-child){white-space:nowrap}td:first-child{line-height:1.6}.voices-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.voice{border-left:3px solid #8bb8c3;background:#f4f8f9;padding:16px;white-space:pre-wrap;overflow-wrap:anywhere}.empty{padding:35px;text-align:center;color:#68808c}body:fullscreen{background:#f0f5f7}body.present header,body.present nav,body.present footer,body.present .notice{display:none}body.present main{padding-top:18px}body.present #radar{height:47vh}body.present .dashboard{gap:18px}body.present .panel{padding:22px}body.present .step{margin-top:16px}body.present input,body.present textarea,body.present select{font-size:20px}body.present .tools{display:none}@media(min-width:1500px){#radar{height:44vh}.step label{font-size:18px}.step input,.step textarea,.step select{font-size:20px}}@media(max-width:1000px){header{height:auto}.brand small{display:none}.tools{gap:5px}.tools button{font-size:13px;padding:9px}.top{align-items:start;gap:15px}.selectors{flex-wrap:wrap;justify-content:end}.dashboard{grid-template-columns:1fr}.strategy{min-height:0}#radar{height:400px}.formgrid{grid-template-columns:1fr}.selectors select{min-width:120px}footer{flex-wrap:wrap}}@media(max-width:620px){header{padding:14px;flex-wrap:wrap;gap:12px}.brand strong{font-size:18px}main{padding:18px 12px}.top{display:block}.selectors{justify-content:start;margin-top:15px}h1{font-size:27px}.panel{padding:15px}.panelhead{flex-wrap:wrap}nav{gap:15px}nav button{font-size:13px}#scores{grid-template-columns:repeat(5,1fr);gap:3px}.score{padding:10px 3px}.score strong{font-size:22px}.score b{font-size:12px}.score small{display:none}#radar{height:320px}.dashboard{gap:14px}.voices-grid{grid-template-columns:1fr}#detailTable{overflow-x:auto}td{font-size:14px}td:first-child{min-width:240px}.importTools{display:block}}@media print{header,nav,footer,.top button,.notice,.saveRow,details,#toast{display:none!important}body,main{background:white;padding:0}.dashboard{grid-template-columns:1.6fr 1fr;gap:12px}.panel{padding:12px;border:0}#radar{height:330px}.tab[hidden]{display:none!important}.step{margin-top:12px}input,select,textarea{border:0;padding:4px;font-size:16px}h1{font-size:24px}.top{margin-bottom:10px}.selectors select{border:0}.hint{font-size:12px}@page{size:A4 landscape;margin:10mm}}
#exitFull{display:none;position:fixed;right:18px;top:14px;z-index:3}body.present #exitFull{display:block}body.present .top{padding-right:165px}@media(min-width:1001px) and (max-height:850px){header{height:68px}main{padding-top:14px}.top{margin-bottom:10px}h1{font-size:26px}.notice{padding:7px 12px;margin-bottom:8px}nav{margin-bottom:12px}nav button{padding-bottom:10px}.panel{padding:18px}#radar{height:250px}.step{margin-top:12px}.step input,.step select,.step textarea{padding:8px;margin-top:5px}.step textarea{height:80px}.strategy details{margin-top:10px}.strategy .hint{display:none}.saveRow{margin-top:12px}.score{padding:9px 6px}footer{padding:10px 0}body.present #radar{height:45vh}}@media print{#exitFull{display:none!important}}
/* Classroom display: keep the graph and full labels in separate, large regions. */
.dashboard{grid-template-columns:1fr}.chartwork{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center}#radar{height:clamp(390px,53vh,680px)}#scores{display:flex;flex-direction:column;gap:12px}.score{display:flex;align-items:center;gap:14px;padding:13px 16px;border:0;border-left:5px solid #406a79;background:#f1f6f8;border-radius:7px}.axisNumber{font-size:22px;font-weight:800;color:#406a79}.axisCopy{flex:1;min-width:0}.score b{font-size:16px;color:#466d7b;margin-bottom:4px}.axisFull{font-size:clamp(20px,1.7vw,30px);font-weight:800;line-height:1.5;display:block;text-wrap:pretty}.axisValue{text-align:right;flex-shrink:0}.score strong{font-size:clamp(32px,3vw,48px);color:#183e50;margin:0}.delta{font-size:13px;color:#385e70}.legend span:first-child{color:#d12743}.legend span:last-child{color:#315f91}.strategy{max-width:none}.strategy .step{max-width:1100px;width:100%}.strategy .hint{display:none}#presentControls{display:none}#exitFull{position:static}body.present #presentControls{display:flex;gap:8px;position:fixed;right:20px;top:14px;z-index:5}body.present #exitFull{display:block;position:static}body.present .top{display:none}body.present main{padding:12px 2%;height:100dvh;max-width:none}body.present .dashboard{display:block;height:100%}body.present #meter{height:100%}body.present .chart-panel{height:100%;display:flex;flex-direction:column;border:0;border-radius:0;padding:12px 0}body.present .chart-panel .panelhead{padding-right:330px;min-height:60px;align-items:center}body.present .panelhead h2{font-size:clamp(24px,2.4vw,42px)}body.present .panelhead p{font-size:16px}body.present .chartwork{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:2vw}body.present #radar{height:100%;min-height:0}body.present #scores{height:100%;justify-content:space-evenly;gap:8px}body.present .score{flex:1;padding:8px 16px;gap:14px;min-height:0}body.present .axisFull{font-size:clamp(25px,2.6vw,52px);line-height:1.35}body.present .score b{display:none}body.present .axisNumber{font-size:clamp(26px,2.6vw,46px)}body.present .score strong{font-size:clamp(36px,4vw,68px)}body.present .delta{font-size:clamp(14px,1.25vw,23px)}body.present .footnote{display:none}body.present .legend{font-size:clamp(18px,1.7vw,28px)}body.present .strategy{display:none}body.present.show-plan .chart-panel{display:none}body.present.show-plan .strategy{display:flex;min-height:100%;padding-top:65px;border:0}body.present.show-plan .step{max-width:none;margin-top:24px}body.present.show-plan .step label{font-size:26px}body.present.show-plan .step input,body.present.show-plan .step select,body.present.show-plan .step textarea{font-size:clamp(28px,3vw,50px);height:auto}body.present.show-plan details{display:none}body.present.show-plan .saveRow{margin-top:auto}body.present.show-plan #action{min-height:180px}@media(max-width:800px){.chartwork{grid-template-columns:1fr}#radar{height:370px}.axisFull{font-size:20px}.score b{display:none}body.present .chartwork{grid-template-columns:1fr}body.present main{height:auto;min-height:100dvh}body.present #radar{height:42vh}body.present .chart-panel .panelhead{padding-top:50px;padding-right:0}body.present .axisFull{font-size:22px}body.present .score strong{font-size:30px}body.present .score{padding:8px}body.present .chartwork{gap:8px}}@media print{#presentControls{display:none!important}.chartwork{grid-template-columns:1fr 1fr;gap:10px}.dashboard{display:block}#radar{height:330px}.axisFull{font-size:16px}.score strong{font-size:24px}.score{padding:7px;gap:8px}#scores{gap:5px}.strategy{break-before:page}.score b{display:none}}
.chartToolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:14px 0 8px}.chartToolbar>span{font-size:14px;color:#466675}.chartToolbar button[aria-pressed="true"]{background:#1c5662;color:white;border-color:#1c5662}#itemPages{display:flex;gap:7px;margin-left:auto}#itemPages[hidden]{display:none}.ten-items .axisFull{font-size:clamp(18px,1.5vw,26px)}body.present .chartToolbar{flex-shrink:0;margin:6px 0 10px}body.present.ten-items .axisFull{font-size:clamp(22px,2vw,36px);line-height:1.4}body.present.ten-items .score{padding:7px 12px}body.present.ten-items .axisValue{min-width:75px}body.present.ten-items .score strong{font-size:clamp(32px,3.2vw,58px)}body.present.show-plan .chartToolbar{display:none}@media(max-width:800px){.chartToolbar>span{width:100%}#itemPages{margin-left:0}}@media print{.chartToolbar button{display:none}.chartToolbar{margin:4px 0}.ten-items .axisFull{font-size:15px}}
#googleStatus{font-size:14px;color:#275e71;white-space:pre-wrap}#googleStatus:empty{display:none}#googleError,#mappingError{color:#a3283e}#mappingFields label{margin:16px 0;line-height:1.7}#googleDialog>label{margin-top:16px}#googleOrigin{display:block;overflow-wrap:anywhere;background:#eef5f8;padding:12px}body.present #googleStatus{display:none}.selectors{flex-wrap:wrap}button:disabled{opacity:.55;cursor:wait}#googleDialog hr{border:0;border-top:1px solid #dce6ea;margin-top:24px}
