:root{font-family:system-ui,-apple-system,Meiryo,Yu Gothic,sans-serif;color:#253742;background:#f3f6f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #ccd7d9;border-radius:9px;background:#fff;color:#264954;padding:10px 14px}button:disabled{opacity:.5;cursor:default}button:hover:not(:disabled){background:#eaf4f3}input,select,textarea{background:#fff;border:1px solid #bdcccf;border-radius:8px;padding:10px;width:100%;outline-color:#2e857b}label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px}h2{font-size:22px;margin:0 0 23px}h3{font-size:17px;margin:10px 0 14px}.app{min-height:100vh;display:flex;flex-direction:column}header{background:#174d51;color:#fff;padding:15px 24px;display:flex;justify-content:space-between;align-items:center}header strong{font-size:23px;margin-right:17px}header span,.headerhint{opacity:.85;font-size:14px}main{display:flex;min-height:0;flex:1}aside{width:300px;padding:20px 16px;background:#e8f0ef;border-right:1px solid #d4e0df;flex-shrink:0}.search{display:flex;gap:7px}.search input{min-width:0}.new{width:100%;margin:13px 0;background:#d4e8e4;color:#185951}.list{display:flex;flex-direction:column;gap:7px;max-height:70vh;overflow:auto}.item{display:flex;flex-direction:column;text-align:left;gap:5px}.item.active{border-color:#218a7e;background:#e0f6ef}.item small{color:#638081}.workspace{flex:1;min-width:0;padding:18px 28px}nav{display:flex;gap:8px;margin-bottom:18px;border-bottom:1px solid #c9d6d5}.tab{border-radius:8px 8px 0 0}.tab.on{background:#28786e;color:#fff}.panel{background:#fff;border:1px solid #dbe5e4;border-radius:15px;padding:25px;max-width:1150px;box-shadow:0 2px 10px #0b35350a}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel>label{margin:14px 0}.actions{margin-top:24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.primary{background:#14786c;border-color:#14786c;color:#fff;padding:13px 20px}.primary:hover:not(:disabled){background:#11675e}.message{background:#e4f1ff;border-radius:8px;padding:11px 14px}.titleline{display:flex;justify-content:space-between;align-items:start;gap:10px}.history{padding:13px 0 21px;border-bottom:1px solid #dbe4e3;margin-bottom:20px}.historyscroll{display:flex;gap:7px;overflow:auto;padding-top:12px}.chip{white-space:nowrap}.chip.selected{background:#d4eee7;border-color:#4fa390}.drawwrap{max-width:720px}.tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px}.tools label{flex-direction:row;align-items:center}.tools input[type=color]{padding:0;width:43px;height:36px}.tools input[type=range]{width:130px}.drawing{width:100%;max-height:660px;border:1px solid #b8cacc;border-radius:11px;display:block;touch-action:none;-webkit-user-select:none;user-select:none}.drawwrap small{display:block;color:#637579;margin:10px 0}.muted{font-size:13px;color:#68797b}footer{text-align:center;padding:11px;background:#e4eded;color:#627172;font-size:12px}@media(max-width:850px){main{flex-direction:column}aside{width:auto}.list{flex-direction:row;max-height:135px}.item{min-width:190px}.workspace{padding:12px}.panel{padding:16px}.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:550px){.formgrid,.three{grid-template-columns:1fr}header{padding:12px}header span,.headerhint{display:none}}.login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f3f6f9;padding:20px}.login-panel{width:min(420px,100%);display:flex;flex-direction:column;gap:18px;background:#fff;border-radius:14px;padding:32px;box-shadow:0 12px 36px #1232}.login-panel h1{margin:0}.login-panel label{display:flex;flex-direction:column;gap:8px}.login-panel input{padding:12px;font-size:16px}.login-panel button{padding:12px}.headerhint button{margin-left:12px}.drawwrap{max-width:none;width:100%;min-width:0}.draw-content{width:100%;min-width:0}.draw-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.draw-switch{display:flex;gap:6px}.draw-switch button.selected{background:#28786e;color:#fff}.draw-tools{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:12px}.draw-tools label{flex-direction:row;align-items:center;gap:8px;white-space:nowrap}.draw-tools input[type=color]{padding:0;width:43px;height:36px}.draw-tools input[type=range]{width:120px}.draw-tools button{padding:10px 14px;min-height:46px}.draw-stage{display:flex;align-items:center;justify-content:center;min-height:0;width:100%;background:#e6eeee;border-radius:12px;overflow:hidden;padding:10px}.draw-stage .drawing{width:auto;max-width:100%;height:min(75vh,980px);max-height:none;aspect-ratio:460/620;touch-action:none;overscroll-behavior:contain;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:#fff}@media(max-width:1000px){.workspace{padding:12px}.panel{max-width:none;padding:14px}}@media(max-width:850px){.draw-stage .drawing{height:min(77vh,950px)}}.chart-fields{grid-template-columns:minmax(150px,.85fr) minmax(180px,1fr) minmax(180px,1.15fr);align-items:end}.chart-fields>label{min-width:0}.draw-tool-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.draw-tool-main button{min-width:110px}.draw-tool-adjust,.draw-tool-actions{padding:8px 10px;border:1px solid #d7e3e2;border-radius:12px;background:#f8fbfb}.draw-tool-adjust input[type=range]{flex:0 0 auto}.draw-tool-actions button{background:#fff}@media(max-width:850px){.chart-fields{grid-template-columns:minmax(120px,.9fr) minmax(150px,1fr)}.chart-fields>label:last-child{grid-column:1/-1}.draw-stage .drawing{height:min(78vh,1000px)}}@media(max-width:640px){.draw-tool-adjust,.draw-tool-actions{padding:8px}.draw-tool-group{gap:8px}}.formgrid>label{min-width:0}.formgrid>label>input,.formgrid>label>select{min-width:0;max-width:100%;box-sizing:border-box}.formgrid input[type=date]{width:min(100%,174px);min-width:0;height:41px;min-height:0;padding:0 7px;font-size:16px}@media(max-width:550px){.formgrid input[type=date]{width:min(100%,174px)}}
