:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#123d53;background:#f3f6f7;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{border:1px solid #d3dfe3;border-radius:12px;background:#fff;color:#123d53;padding:11px 15px;font-weight:650;cursor:pointer;transition:background .15s}button:hover{background:#edf4f5}button:disabled{opacity:.45;cursor:default}button.primary{background:#123d53;color:#fff;border-color:#123d53}button.primary:hover{background:#1b526b}button.danger{color:#a43e3e;background:#fff5f3;border-color:#f2d5ce}button.icon-button{font-size:25px;padding:0;width:36px;height:36px;border-radius:50%}button.secondary{background:#e8f1f2;border-color:#e8f1f2}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #5cb8c7;outline-offset:3px}header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid #dde6e9;background:white}.brand{font-size:34px;letter-spacing:-2px;font-weight:750;text-decoration:none;color:#123d53;display:flex;gap:22px;align-items:center}.brand span{font-size:10px;letter-spacing:2px;border-left:1px solid #d5e0e4;padding-left:22px;line-height:24px}.header-right,.head-actions{display:flex;gap:10px;align-items:center}select{padding:9px;border-radius:10px;border:1px solid #d3dfe3;background:#fff;color:#123d53}main{max-width:1700px;margin:0 auto;padding:36px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:1.8px;color:#47848a}h1{font-size:34px;letter-spacing:-1.2px;margin:10px 0}h2{font-size:18px;letter-spacing:-.3px;margin:0 0 18px}p{line-height:1.5;color:#627b87;margin:8px 0}.page-head{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stats>div{padding:18px 22px;border-radius:18px;border:1px solid #e0e8eb;background:#fff}.stats span{font-size:12px;color:#627b87;display:block}.stats strong{font-size:34px;display:block;margin-top:8px;letter-spacing:-1px}.stats strong.smaller{font-size:18px;letter-spacing:-.2px;margin-top:18px}.stats small{font-size:12px;color:#7b919a;font-weight:500}.panel{border:1px solid #dee7eb;background:#fff;border-radius:20px;padding:22px}.editor-grid{display:grid;grid-template-columns:220px minmax(320px,1fr) 340px;gap:18px;align-items:start}.panel-title{display:flex;justify-content:space-between;gap:10px;align-items:start}.panel-title h2{max-width:135px;line-height:1.4}.zone-button{display:block;text-align:left;width:100%;margin-bottom:10px;padding:14px 12px;background:#f5f8f8;border-color:transparent}.zone-button.selected{background:#e6f1f1;border-color:#559b9f}.zone-button small{display:block;font-size:11px;color:#6c838d;margin-top:6px;font-weight:500;line-height:1.5}.map-panel{padding:0;overflow:hidden}.map-toolbar{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:14px 18px;font-size:12px;font-weight:650;min-height:72px}.map-toolbar button{font-size:11px;white-space:nowrap;padding:9px}#map{height:480px;background:#e4edee;position:relative}.map-loading{padding:24px}.draw-tools{display:flex;gap:6px;flex-wrap:wrap;padding:14px 18px 4px}.draw-tools button{font-size:11px;padding:8px}.draw-tools span{font-size:11px;margin:8px;color:#6c838d}.small{font-size:12px;color:#718690;line-height:1.6}.map-foot{margin:10px 18px 18px}.preview{margin:18px;padding:16px;border-radius:14px;background:#edf6f3;font-size:13px;white-space:pre-line;line-height:1.7}.settings-panel{max-height:1050px;overflow:auto}label{display:block;margin-bottom:16px}label>span,legend{font-size:12px;font-weight:650;display:block;margin-bottom:7px;line-height:1.4}input,textarea{display:block;width:100%;border:1px solid #d2dfe3;border-radius:10px;padding:11px;background:#fbfdfd;color:#123d53;min-width:0}textarea{resize:vertical;font-size:12px;line-height:1.6}.checkline{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:#edf5f2}.checkline input{width:17px;height:17px;accent-color:#277e77}.checkline span{margin:0}fieldset{border:0;padding:0;margin:18px 0}.weekdays{display:flex;gap:5px;flex-wrap:wrap}.weekdays label{position:relative;margin:0}.weekdays input{position:absolute;opacity:0;width:1px;height:1px}.weekdays span{display:flex;width:33px;height:35px;align-items:center;justify-content:center;border:1px solid #d7e2e6;border-radius:10px;font-size:11px;margin:0;cursor:pointer}.weekdays input:checked+span{background:#123d53;color:white;border-color:#123d53}.weekdays input:focus-visible+span{outline:3px solid #5cb8c7}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-actions{display:grid;gap:10px;margin-top:24px}.review-panel{margin-top:24px;background:#eaf4f2;border-color:#8ebeb6;display:flex;justify-content:space-between;align-items:center;gap:24px}.review-panel>div:first-child{max-width:750px}.history-panel{margin-top:24px}.history-item{display:flex;gap:30px;padding:12px 0;border-bottom:1px solid #eef2f3;font-size:12px}.history-item span:last-child{color:#6b818c}#version{font-family:ui-monospace,monospace;font-size:10px;overflow-wrap:anywhere}#notice{padding:16px 20px;margin:0 0 22px;border:1px solid #c6dede;background:#ecf6f4;border-radius:14px;font-size:13px;line-height:1.6}#notice.error{color:#8e3d3d;border-color:#edcfcb;background:#fff4f1}.login{max-width:470px;margin:65px auto;background:#fff;border:1px solid #dde6e9;padding:38px;border-radius:24px;box-shadow:0 18px 60px #163f5308}.login h1{font-size:32px;line-height:1.2}.login>p{margin:16px 0 26px}.login button.primary{width:100%;margin-top:5px}.login .small{margin:22px 0 0}footer{max-width:1700px;padding:0 36px 24px;margin:auto;display:flex;gap:12px;color:#8b9fa7;font-size:11px}footer>span:last-child{margin-left:auto}[hidden]{display:none!important}@media(min-width:1500px){#map{height:570px}.editor-grid{grid-template-columns:245px minmax(400px,1fr) 365px}}@media(max-width:1150px){main{padding:24px}.editor-grid{grid-template-columns:200px minmax(300px,1fr)}.settings-panel{grid-column:1/-1;max-height:none}#zone-form{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}#zone-form>label,#zone-form>fieldset{margin:0}.two-fields{grid-column:1/3}.form-actions{margin:0}.page-head h1{font-size:30px}.head-actions{flex-wrap:wrap}.review-panel{display:block}.review-panel .head-actions{margin-top:20px}}@media(max-width:680px){header{padding:0 18px;height:72px}.brand{font-size:29px}.brand span{display:none}main{padding:24px 14px}.page-head{display:block}.page-head .head-actions{margin-top:20px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stats>div{padding:16px}.editor-grid{display:block}.panel{margin-bottom:16px;padding:18px}.map-panel{padding:0}.settings-panel{max-height:none}#zone-form{display:block}#zone-form>label,#zone-form>fieldset{margin-bottom:16px}.two-fields{display:grid}.zones-panel .panel-title h2{max-width:none}.zone-button{width:auto;min-width:150px;margin:0}#zone-list{display:flex;gap:10px;overflow:auto;padding-bottom:8px}#map{height:380px}.login{margin:30px auto;padding:28px}.history-item{gap:15px;flex-wrap:wrap}footer{padding:0 18px 20px;flex-wrap:wrap}.head-actions button{font-size:12px}}

/* CP field alignment 01 */
.two-fields {
  align-items: stretch;
}
.two-fields > label {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.two-fields > label > span {
  flex: 1;
  min-height: 34px;
}
.two-fields > label > input {
  height: 46px;
  min-height: 46px;
  flex: 0 0 46px;
}
