/* Shared portal polish (Admin + Advisor + simple public pages) */
:root{
  --cb-font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
}
html, body { height: 100%; }
body { font-family: var(--cb-font); }

/* Prevent Alpine "flash" */
[x-cloak]{ display:none !important; }

/* Smoother focus for form controls */
input, select, textarea, button { outline: none; }
input:focus, select:focus, textarea:focus {
  box-shadow: 0 0 0 3px rgba(59,130,246,.2);
  border-color: rgba(59,130,246,.65);
}

/* Make tables scroll nicely on small screens */
.table-wrap{ overflow-x:auto; -webkit-overflow-scrolling: touch; }


/* Portal layout helpers */
.portal-sidebar{height:100vh;display:flex;flex-direction:column;}
.portal-sidebar-nav{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;}
.portal-sidebar-footer{flex:0 0 auto;}
.portal-header-actions{min-width:0;}


.cb-toast-container{position:fixed;top:1rem;right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.75rem;max-width:min(26rem,calc(100vw - 2rem));}
.cb-toast{border-radius:1rem;padding:.9rem 1rem;background:#fff;border:1px solid rgba(148,163,184,.35);box-shadow:0 18px 45px rgba(15,23,42,.14);transform:translateY(-8px);opacity:0;transition:all .2s ease;position:relative;overflow:hidden;}
.cb-toast-show{transform:translateY(0);opacity:1;}
.cb-toast-hide{transform:translateY(-8px);opacity:0;}
.cb-toast-title{font-size:.78rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;margin-bottom:.2rem;}
.cb-toast-message{font-size:.92rem;line-height:1.4;padding-right:1.6rem;}
.cb-toast-close{position:absolute;top:.35rem;right:.55rem;border:0;background:transparent;font-size:1.2rem;line-height:1;color:#64748b;cursor:pointer;}
.cb-toast-info{border-color:rgba(59,130,246,.28);}
.cb-toast-info .cb-toast-title{color:#1d4ed8;}
.cb-toast-success{border-color:rgba(16,185,129,.28);}
.cb-toast-success .cb-toast-title{color:#047857;}
.cb-toast-warning{border-color:rgba(245,158,11,.3);}
.cb-toast-warning .cb-toast-title{color:#b45309;}
.cb-toast-error{border-color:rgba(239,68,68,.28);}
.cb-toast-error .cb-toast-title{color:#b91c1c;}
