.console-logo { height: 42px; width: 42px; border-radius: 13px; object-fit: cover; }
.console-form { display: grid; gap: 17px; }
.console-form label { display: grid; gap: 7px; font-size: 13px; font-weight: 600; color: var(--ink); }
.console-form input, .console-form select { min-height: 46px; width: 100%; padding: 11px 13px; background: #fcfbf8; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); }
.console-form input:focus, .console-form select:focus { outline: 3px solid #5e6ad22b; border-color: var(--blue); }
.console-form fieldset { border: 1px solid var(--line); border-radius: 12px; max-height: 220px; overflow: auto; }
.console-form .console-checkbox { display: flex; align-items: center; padding: 7px 0; }
.console-checkbox input { width: 18px; height: 18px; min-height: 18px; }
.console-form-error { color: #b74236; margin: 0; line-height: 1.5; }
.console-mobile-link { display: block; margin-top: 22px; color: var(--blue); font-size: 13px; text-decoration: none; }
.console-error { padding: 16px; color: #a93227; border: 1px solid #e7a19b; border-radius: 12px; background: #fff4f1; margin-bottom: 20px; }
.console-error button { border-radius: 6px; padding: 5px 12px; margin-left: 12px; color: #a93227; background: white; }
.console-muted { font-size: 12px; color: var(--muted); }
.console-signout { display: block; padding: 10px 0; margin-top: 10px; color: #dce4ec; background: transparent; text-decoration: underline; }
.console-empty { padding: 60px 24px; text-align: center; color: var(--muted); }
.console-empty > span { font-size: 36px; color: var(--blue); }
.console-empty h3 { color: var(--ink); }
.console-callout { margin-top: 26px; padding: 26px; background: #fffbf3; border: 1px solid #eae0ce; border-radius: 15px; }
.console-callout p { color: var(--muted); line-height: 1.8; max-width: 720px; }
.console-projects { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; }
.console-projects article { padding: 24px; }
.console-projects h3 { font-size: 21px; margin-top: 16px; }
.console-projects p { color: var(--muted); margin-bottom: 24px; }
.console-table-wrap { overflow: auto; }
.table th, .table td { padding: 17px 20px; text-align: left; }
.table th { font-size: 12px; color: var(--muted); background: #f7f8f5; font-weight: 600; }
.table tbody tr:last-child td { border-bottom: 0; }
.console-model { max-width: 750px; padding: 28px; }
.console-model p { line-height: 1.8; }
.console-modal-backdrop { position: fixed; inset: 0; z-index: 100; background: #10182790; display: grid; place-items: center; padding: 24px; }
.console-modal { width: min(540px, 100%); max-height: 90dvh; overflow-y: auto; border-radius: 20px; padding: 28px; background: white; box-shadow: 0 24px 80px #0003; }
.console-modal-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.console-modal-heading h2 { margin: 0; }
button:disabled { opacity: .55; cursor: wait; }
@media(max-width:760px) {
  .sidebar { display: flex; position: static; padding: 15px; gap: 14px; }
  .sidebar .nav-group { display: flex; overflow-x: auto; }
  .sidebar .nav-item { flex-shrink: 0; }
  .sidebar-footer { display: none; }
  .app-shell { display: block; }
  .topbar { padding: 16px; position: static; }
  .content { padding: 20px 16px; }
  .login-card { padding: 25px; }
}
