/* Shared structure only. Product colors, modules and responsive layouts live in extra.css. */
* {box-sizing:border-box;}
html,body {margin:0;min-height:100%;}
body {-webkit-font-smoothing:antialiased;}
button,input,textarea,select {font:inherit;}
button,select {cursor:pointer;}
a {color:inherit;text-decoration:none;}
button:disabled,textarea:disabled {cursor:not-allowed;}
button,textarea,input,select {max-width:100%;}
.line-icon {display:block;flex:0 0 auto;}
.loading {min-height:100vh;display:grid;place-items:center;color:var(--muted);}
.app {display:flex;}
.sidebar {flex:0 0 auto;display:flex;flex-direction:column;}
.brand {display:flex;align-items:center;line-height:1.2;}
.brand small {display:block;}
.brand-mark {display:grid;place-items:center;flex-shrink:0;}
.nav {display:grid;}
.nav button {width:100%;display:flex;align-items:center;text-align:left;}
.nav .ico {display:grid;place-items:center;}
.nav-count {display:inline-grid;place-items:center;margin-left:auto;}
.sidebar-bottom {margin-top:auto;}
.profile {display:flex;align-items:center;}
.profile small {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.avatar {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:50%;}
.main {flex:1;min-width:0;}
.topbar {display:flex;align-items:center;justify-content:space-between;}
.content {min-width:0;}
.btn {display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;}
.field {padding:9px 10px;}
.card {background:#fff;}
.channel-cell {display:inline-flex;align-items:center;white-space:nowrap;}
.platform {display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;vertical-align:middle;}
.table-scroll,.table-wrap {overflow-x:auto;}
.modal-back {position:fixed;inset:0;display:grid;place-items:center;}
.modal {width:min(610px,100%);background:#fff;}
.modal-head,.modal-foot {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.modal-head h2 {margin:0;}
.modal-head button {width:30px;height:30px;}
.toast {position:fixed;bottom:24px;right:24px;padding:12px 16px;}
.mobile-nav {display:none;position:fixed;left:0;right:0;}
.muted {color:var(--muted);line-height:1.7;}
