.manager-service{grid-column:1/-1;padding:20px!important}.service-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.service-heading h3{margin:0}.service-state{font-size:13px;border-radius:20px;padding:6px 12px;background:#e6eefb;color:#254b7d}.service-state.active{background:#e7f5ec;color:#19643b}.service-state.suspended,.service-state.overdue{background:#ffeded;color:#a02525}.service-state.grace{background:#fff2d1;color:#7d5200}.service-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:16px 0;margin:0}.service-summary dt{font-size:13px;color:#5b6c81}.service-summary dd{margin:4px 0 0;font-size:16px;font-weight:650}.service-form{display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(220px,1.5fr) auto;gap:12px;align-items:end}.service-form label,.service-batch label{display:flex;flex-direction:column;gap:6px;font-size:14px}.service-form input,.service-form select,.service-batch input{width:100%;min-height:40px;padding:8px 10px;font-size:14px}.service-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.service-rule{color:#5b6c81;font-size:13px;line-height:1.5}.service-batch{border-top:1px solid #dce5f1;padding-top:16px;margin-top:16px;display:flex!important;gap:12px;align-items:end;flex-wrap:wrap}.service-batch input{max-width:100px}.service-batch p{flex-basis:100%;margin:0}.service-confirm{width:min(640px,94vw);max-height:90vh;overflow:auto;border:1px solid #d3deed;border-radius:16px;padding:24px}.service-confirm::backdrop{background:#10223d88}.service-confirm form{display:block}.service-confirm button{margin:14px 8px 0 0}.service-confirm td{word-break:break-word;padding:8px}.service-account-notice{background:#fff3d7;color:#654608;padding:12px 20px;font-size:15px}.service-account-notice.blocked{background:#fee9e9;color:#9c2525}@media(max-width:750px){.service-summary{grid-template-columns:1fr 1fr}.service-form{grid-template-columns:1fr}.manager-service{padding:14px!important}.service-heading{align-items:flex-start}.service-confirm{padding:16px}.service-confirm table{font-size:12px}}

#manager-limit-panel .manager-service .service-form{width:100%;grid-template-columns:minmax(260px,1fr) minmax(240px,1.4fr) auto}#manager-limit-panel .manager-service .service-form label{width:100%;min-width:0;max-width:none;margin:0}#manager-limit-panel .manager-service .service-form input,#manager-limit-panel .manager-service .service-form select{width:100%!important;max-width:none!important;min-width:0!important}#manager-limit-panel .manager-service .service-form button{margin:0}.manager-service .service-actions button{margin-bottom:0}@media(max-width:850px){#manager-limit-panel .manager-service .service-form{grid-template-columns:1fr}.service-summary dd{overflow-wrap:anywhere}}

#manager-limit-panel .manager-service .service-form > label{width:100%!important;min-width:0!important;max-width:none!important;align-items:stretch!important;justify-self:stretch!important}#manager-limit-panel .manager-service .service-form > label > input,#manager-limit-panel .manager-service .service-form > label > select{align-self:stretch!important}

.service-summary-table{max-width:100%;overflow:auto}.service-summary-table table{width:100%;border-collapse:collapse}.service-summary-table th,.service-summary-table td{padding:12px;text-align:left;border-bottom:1px solid #dbe5ef}.service-summary-table th{color:#153b66;background:#edf4fb}
.service-confirm{box-sizing:border-box;max-width:calc(100vw - 24px)}
@media(max-width:600px){.service-summary-table thead{display:none}.service-summary-table table,.service-summary-table tbody{display:block}.service-summary-table tr{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #cbd5e1}.service-summary-table td{display:block;border:0;overflow-wrap:anywhere}.service-summary-table td:before{content:attr(data-label);display:block;font-size:12px;font-weight:700;color:#52657b}}

.manager-portal-link{display:block;overflow-wrap:anywhere;padding:10px 0;min-height:44px;box-sizing:border-box;color:#2455a6;font-weight:600}

/* History privacy: readable, compact controls on desktop and phones. */
body.admin-mode .manual-privacy-dialog{width:min(720px,calc(100vw - 24px));padding:20px;max-height:calc(100dvh - 24px);overflow:auto}
.manual-privacy-dialog form{display:grid;gap:12px;margin:16px 0}
.manual-privacy-dialog label{display:grid;gap:6px;font-weight:600}
.manual-privacy-dialog label:has(input[type=checkbox]){display:flex;align-items:center;min-height:44px;font-weight:400}
.manual-privacy-dialog input[type=checkbox]{min-height:20px;width:20px;height:20px;flex-shrink:0}
.manual-privacy-dialog :is(input,select){width:100%;min-height:44px;font-size:16px}
.manual-privacy-dialog p{line-height:1.5;margin:8px 0}
.manual-privacy-dialog section{border-top:1px solid #cbd5e1;margin-top:24px;padding-top:8px}
.manual-privacy-dialog :is(button,select){min-height:44px}
.manual-privacy-dialog .inline-form{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:10px 0}
.manual-privacy-dialog .inline-form label{flex:1 1 190px}
.manual-privacy-dialog fieldset{border:1px solid #cbd5e1;padding:12px}
.manual-privacy-dialog [hidden]{display:none!important}

body.admin-mode .manual-privacy-dialog form label:has(input[type=checkbox]),body.admin-mode .manual-privacy-dialog fieldset label{display:flex;flex-direction:row;align-items:center;gap:10px;text-align:left;justify-content:flex-start}
body.admin-mode .manual-privacy-dialog form input[type=checkbox]{width:20px;min-height:20px;height:20px;margin:0;flex:0 0 20px}
.manual-privacy-dialog details{margin-top:24px;border-top:1px solid #cbd5e1;padding-top:10px}
.manual-privacy-dialog summary{min-height:44px;cursor:pointer;font-weight:700;padding:12px 0}
body.admin-mode .manual-privacy-dialog [hidden]{display:none!important}
body.admin-mode .manual-privacy-dialog form{gap:10px;align-content:start;justify-content:start}
body.admin-mode .manual-privacy-dialog form>label{margin:0;min-width:0}
body.admin-mode .privacy-report-dialog{width:min(1240px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:16px;background:#fff;color:#1e293b}
.privacy-report-dialog iframe{width:100%;height:65dvh;border:1px solid #cbd5e1;margin-top:12px;background:white}
.privacy-report-dialog>button{min-height:44px;margin:6px 12px 6px 0}
