.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.module-grid .box{margin:0}.module-toggle{display:flex;align-items:center;gap:12px;padding:16px 0;font-weight:600}.module-toggle input{width:22px;height:22px;accent-color:#173e48}.sector-heading{border-left:4px solid #2db786}.sector-heading small{color:#617582}.sector-heading .repair-info p{white-space:pre-wrap}.module-grid h2{font-size:18px}.module-grid p{line-height:1.5}

/* Module identities share the Nubaki palette; functional controls remain native. */
.module-menu-icon img{display:block;width:24px;height:24px;flex:none}
.setnav .module-menu-icon img{width:22px;height:22px}
#setbody>.bar .module-menu-icon img{width:34px;height:34px}
.module-grid .module-card{padding:24px;border:1px solid #e3eaee;border-radius:16px;display:flex;flex-direction:column;min-width:0;box-shadow:0 4px 18px #173e4805}
.module-card-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.module-art{display:block;width:80px;height:80px;border-radius:20px;flex:none}
.module-grid .module-card h2{margin:0 0 10px;line-height:1.35;font-size:19px;color:#193c47}
.module-grid .module-card p{color:#5b6f78;margin:0 0 18px;line-height:1.65;flex:1}
.module-card .state-label{white-space:nowrap;font-size:12px}
.module-card .module-toggle{border-top:1px solid #edf1f3;margin-top:0;padding:18px 0;cursor:pointer;font-size:14px;color:#193c47}
.module-card .module-toggle input{appearance:none;box-sizing:border-box;position:relative;flex:0 0 40px;width:40px;height:24px;border:1px solid #b9c5cc;border-radius:20px;background:#dce4e8;margin:0;cursor:pointer;transition:background .15s}
.module-card .module-toggle input:before{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;background:white;border-radius:50%;box-shadow:0 1px 3px #173e4840;transition:transform .15s}
.module-card .module-toggle input:checked{background:#173e48;border-color:#173e48}
.module-card .module-toggle input:checked:before{transform:translateX(16px)}
.module-card .module-toggle input:focus-visible{outline:3px solid #ee2862;outline-offset:3px}
.module-card .module-toggle input:disabled{opacity:.55;cursor:wait}
.module-card>button{width:100%;border:1px solid #d7e3e7;border-radius:9px;background:#f7fafb;color:#193c47;padding:12px;font-weight:600;white-space:normal;line-height:1.4}
.module-card>button:hover{background:#edf5f6;border-color:#8caeb8}
.module-card>button:focus-visible{outline:3px solid #ee2862;outline-offset:3px}
@media(max-width:600px){.module-grid{grid-template-columns:minmax(0,1fr)}.module-grid .module-card{padding:20px}}
@media(prefers-reduced-motion:reduce){.module-card .module-toggle input,.module-card .module-toggle input:before{transition:none}}
@media(forced-colors:active){.module-card .module-toggle input{appearance:auto}.module-card .module-toggle input:before{display:none}}

#main button.return-button{background:linear-gradient(#237f98,#17647c);color:#fff;border:1px solid #14576b;box-shadow:0 3px 0 #10495c,0 6px 12px #143b4320;font-weight:650}#main button.return-button:hover{background:#12566e}#main button.return-button:focus-visible{outline:3px solid #42acc7;outline-offset:3px}

body button.return-button{background:linear-gradient(#237f98,#17647c);color:white;border:1px solid #14576b;box-shadow:0 3px 0 #10495c,0 6px 12px #143b4320;font-weight:650}body button.return-button:hover{background:#12566e}body button.return-button:focus-visible{outline:3px solid #42acc7;outline-offset:3px}
