/* Legacy screen migration: geometry and business visibility stay with callers. */
.ui-screen { --radius-md:var(--ui-radius);--radius-lg:var(--ui-space-4);min-width:0; }
.ui-screen :is(h1,h2,h3,h4) { font-weight:var(--ui-weight-title) !important; }
.ui-screen .ui-panel { padding:var(--ui-card-padding) !important;min-width:0; }
.ui-screen .ui-field,.modal-overlay .ui-field { display:flex;flex-direction:column;gap:var(--ui-space-2) !important;min-width:0; }
.ui-screen .ui-form,.modal-overlay .ui-form { gap:var(--ui-form-gap) !important; }
.ui-screen .ui-actions,.modal-overlay .ui-actions { display:flex;flex-wrap:wrap;gap:var(--ui-space-3) !important;align-items:center; }
.ui-screen :is(.section-header,.card-header,.serp-page-head) { gap:var(--ui-space-4);flex-wrap:wrap; }
.ui-screen label,.modal-overlay label { font-weight:var(--ui-weight-label) !important; }
.ui-screen :is(.empty-state,.no-data,.serp-empty) { padding:var(--ui-space-6);color:var(--ui-muted);font-size:var(--ui-body);line-height:var(--ui-line); }
.ui-screen :is(.badge,.status-badge,.div-status) { font-size:var(--ui-label) !important;line-height:1.5;padding:var(--ui-space-1) var(--ui-space-2);border-radius:var(--ui-radius);white-space:normal; }
.modal-overlay { padding:var(--ui-space-4);box-sizing:border-box;overflow:auto; }
.modal-overlay > .ui-overlay-surface { box-sizing:border-box;max-width:calc(100vw - 32px) !important;max-height:calc(100dvh - 32px) !important;overflow:auto;overscroll-behavior:contain;padding:var(--ui-card-padding) !important;border-radius:var(--ui-space-4) !important;flex-shrink:0; }
.modal-overlay :is(input,select,textarea) { box-sizing:border-box; }
.modal-overlay :is(.premium-dialog-actions,.ui-actions) { gap:var(--ui-space-3);flex-wrap:wrap; }
.ui-overlay-surface > :is(.premium-dialog-actions,.ui-dialog-footer) { position:sticky;bottom:0;background:var(--ui-surface);padding-top:var(--ui-space-3); }
.ui-state { border:1px solid var(--ui-border);border-radius:var(--ui-radius);padding:var(--ui-space-6);font-size:var(--ui-body);color:var(--ui-muted); }
.ui-state h3 { color:var(--ui-text);margin-bottom:var(--ui-space-2); }
.ui-request-status:not(:empty)::after { content:'';display:block;height:4px;margin-top:var(--ui-space-2);border-radius:var(--ui-radius);background:linear-gradient(90deg,transparent,var(--ui-focus),transparent);background-size:200% 100%;animation:ui-loading 1.2s linear infinite; }
.access-card.ui-screen { font-size:var(--ui-body); }
.access-card.ui-screen :is(input,button) { font:inherit;min-height:var(--ui-control-height); }
#login-overlay :is(input,button) { font-size:var(--ui-control) !important;min-height:var(--ui-control-height); }
#login-overlay :is(.form-group,.login-form) { gap:var(--ui-space-4); }
@keyframes ui-loading { to { background-position:-200% 0; } }
@media(max-width:768px) {
 .ui-screen .ui-panel { padding:var(--ui-card-padding-mobile) !important; }
 .ui-screen :is(.responsive-grid-2,.responsive-grid-3,.setup-grid,.form-grid-2,.form-grid-3) { grid-template-columns:minmax(0,1fr) !important;gap:var(--ui-space-4) !important; }
 .modal-overlay > .ui-overlay-surface { padding:var(--ui-card-padding-mobile) !important; }
}
@media(prefers-reduced-motion:reduce) { .ui-request-status::after { animation:none !important; } }
@media print {
 .modal-overlay > .ui-overlay-surface { max-height:none !important;max-width:none !important;overflow:visible;padding:0 !important;border-radius:0 !important; }
 .ui-request-status,.ui-dialog-guard { display:none !important; }
}
