@font-face {
  font-family: "Myriad Pro";
  src: url("/assets/fonts/MyriadPro-Regular.otf") format("opentype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Myriad Pro";
  src: url("/assets/fonts/MyriadPro-Bold.otf") format("opentype");
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
}
:root { --thaco-blue: #00529c; --page-bg: #f4f7fb; }
body { min-height: 100vh; background: var(--page-bg); color: #1c2733; font-family: "Myriad Pro", "Segoe UI", Arial, sans-serif; }
.login-view { min-height: 100vh; display: grid; place-items: center; padding: 1rem; }
.login-card { width: min(100%, 440px); border-radius: 1rem; }
.brand { color: var(--thaco-blue); font-weight: 800; letter-spacing: .06em; }
.btn-primary { --bs-btn-bg: var(--thaco-blue); --bs-btn-border-color: var(--thaco-blue); }
.screen-card { height: 100%; border: 0; border-radius: .9rem; transition: transform .2s, box-shadow .2s; }
.screen-card:hover { transform: translateY(-2px); box-shadow: 0 .75rem 2rem rgba(23, 43, 77, .1) !important; }
.screen-link { color: var(--thaco-blue); overflow-wrap: anywhere; }
.sheet-link { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.form-section { padding: 0 0 1.5rem; margin: 0 0 1.5rem; border-bottom: 1px solid #e5e9ef; }
.form-section h3 { color: var(--thaco-blue); font-size: 1rem; margin-bottom: 1rem; }
.modal-content { border: 0; border-radius: 1rem; }
.toast.text-bg-success, .toast.text-bg-danger { color: #fff; }
code { color: var(--thaco-blue); }
