/* V20.5.75 common layout polish. Scoped controls preserve icon buttons and business state. */
:root{--control-height:40px;--control-font:14px;--content-gap:16px}
.btn{min-height:var(--control-height);font-size:var(--control-font);line-height:20px;padding:9px 14px;vertical-align:middle;gap:7px}
.btn.small{min-height:32px;font-size:12px;line-height:18px;padding:6px 10px}.btn:disabled{cursor:not-allowed;transform:none;box-shadow:none}
.input,.select{min-height:var(--control-height);font-size:14px;line-height:20px;min-width:0;margin:0}.textarea{font-size:14px;line-height:1.65}
.action-icon{width:16px;height:16px;display:block;flex:0 0 16px}
.main .pagehead{align-items:center;flex-wrap:wrap;gap:12px 16px;min-height:40px;margin-bottom:20px}
.main .pagehead h1,.main .pagehead h2{margin:0;font-size:24px;line-height:1.4;color:#173b70;overflow-wrap:anywhere}
.main .pagehead p{font-size:13px;line-height:1.6;margin:6px 0 0}.main .pagehead>div:first-child{min-width:0}
.main .pagehead>.actions{margin-left:auto}.main .pagehead>.btn{flex-shrink:0}
.toolbar,.toolbar .left,.toolbar .right{align-items:flex-end;row-gap:12px}.toolbar h3{margin:0;line-height:1.5}
.inlineform{align-items:end;grid-template-columns:repeat(4,minmax(0,1fr))}.inlineform>*,.formgrid>*,.grid2>*,.grid3>*,.grid4>*,.grid5>*{min-width:0}
.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid5{grid-template-columns:repeat(5,minmax(0,1fr))}
.field label{line-height:18px}.card,.metric,.tablewrap{min-width:0}.table td{vertical-align:middle}.table td .btn+.btn{margin-left:6px}
.split{grid-template-columns:minmax(0,360px) minmax(0,1fr)}
.au-filters{align-items:end}.au-filters .input,.au-filters .select{height:40px}.au-filters+.muted{font-size:13px;line-height:1.7}
.ra-filter-actions .btn{font-size:14px;line-height:20px}
.modalbox,.permission-modal-box,.member-editor-box{max-width:calc(100vw - 32px)}.modalbody,.modalfoot{min-width:0}.modalfoot{flex-wrap:wrap}.modalfoot .btn{flex-shrink:0}
.la-toolbar{align-items:end}.la-toolbar input,.la-toolbar select,.la-toolbar button{min-height:40px;box-sizing:border-box;font-size:14px}
@media(max-width:1100px){.split{grid-template-columns:minmax(0,1fr)}.inlineform{grid-template-columns:repeat(2,minmax(0,1fr))}.grid5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.grid2,.grid3,.grid4,.grid5,.formgrid{grid-template-columns:minmax(0,1fr)}.main .pagehead h1,.main .pagehead h2{font-size:22px}.toolbar .left,.toolbar .right{max-width:100%}}
@media(max-width:600px){.inlineform{grid-template-columns:minmax(0,1fr)}.inlineform .wide,.formgrid .wide{grid-column:1/-1}.main .pagehead{align-items:flex-start}.main .pagehead h1,.main .pagehead h2{font-size:21px}.main .pagehead>.btn{min-height:36px;font-size:13px;padding:7px 10px}.modal{padding:12px}.modalbox,.permission-modal-box,.member-editor-box{max-width:calc(100vw - 24px)}.modalhead,.modalbody,.modalfoot{padding-left:16px;padding-right:16px}.tablewrap{max-width:100%;overscroll-behavior-x:contain}}
@media(prefers-reduced-motion:reduce){.btn,.nav,.card{transition:none}.btn:hover{transform:none}}
