.app-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.app-toolbar .left,.app-toolbar .right{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.app-input,.app-select,.app-textarea{width:100%;padding:11px 13px;border:1px solid var(--app-border);border-radius:12px;background:#fff;color:var(--app-text);font:inherit;}
.app-textarea{min-height:120px;resize:vertical;}
.app-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.app-form-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.app-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.app-label{display:block;font-size:13px;font-weight:700;margin-bottom:6px;color:var(--app-text);}
.app-help{font-size:13px;color:var(--app-muted);}
.app-chip-row{display:flex;gap:8px;flex-wrap:wrap;}
.app-chip{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--app-border);font-size:13px;color:var(--app-muted);text-decoration:none;}
.app-chip.active{background:var(--app-primary);color:#fff;border-color:var(--app-primary);}
.app-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;}
.app-stack{display:grid;gap:18px;}
.app-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.app-summary-item{padding:14px;border:1px solid var(--app-border);border-radius:14px;background:var(--app-surface-muted);}
.app-summary-item .k{display:block;font-size:12px;color:var(--app-muted);margin-bottom:6px;}
.app-summary-item .v{font-weight:700;}
.app-status-new,.app-status-active,.app-status-open,.app-status-completed,.app-status-converted,.app-status-paid{background:#edf8f2;color:var(--app-success);}
.app-status-contacted,.app-status-qualified,.app-status-pending,.app-status-draft,.app-status-scheduled,.app-status-upcoming{background:#fff6e8;color:var(--app-warning);}
.app-status-closed,.app-status-cancelled,.app-status-overdue,.app-status-unpaid{background:#fdeeee;color:var(--app-danger);}
.app-status-gray{background:#f1f5f9;color:#475569;}
.app-inline-stat{display:flex;gap:10px;align-items:center;}
.app-avatar{width:34px;height:34px;border-radius:50%;background:#eaf3f0;color:var(--app-primary);display:flex;align-items:center;justify-content:center;font-weight:700;}
.app-section-sep{height:1px;background:var(--app-border);margin:4px 0;}
.app-login-wrap{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(180deg,#f6f8fb 0,#eef5f2 100%);}
.app-login-card{width:min(100%,460px);background:#fff;border:1px solid var(--app-border);border-radius:24px;box-shadow:var(--app-shadow);padding:28px;}
.app-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.app-login-brand .mark{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--app-primary),#1d9e75);color:#fff;display:grid;place-items:center;font-weight:800;}
.app-login-card h1{margin:0 0 8px;font-size:28px;}
.app-login-card p{margin:0;color:var(--app-muted);}
.app-filter-bar{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:10px;align-items:end;}
.app-link{color:var(--app-primary);text-decoration:none;font-weight:600;}
.app-link:hover{text-decoration:underline;}
@media (max-width: 900px){.app-detail-grid,.app-form-grid,.app-form-grid-3,.app-summary-grid,.app-filter-bar{grid-template-columns:1fr;}}

.app-auth-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:linear-gradient(135deg,#f6f8fb 0%,#eef4f1 100%)}
.app-auth-panel{padding:56px 56px 40px;display:flex;flex-direction:column;justify-content:center;gap:28px}
.app-auth-brand{display:flex;align-items:center;gap:14px}.app-auth-brand h1{margin:0;font-size:22px}.app-auth-brand p{margin:2px 0 0;color:#678}
.app-auth-copy h2{font-size:34px;line-height:1.15;margin:0 0 12px;color:#12263a}.app-auth-copy p{max-width:560px;color:#52606d;font-size:16px}
.app-auth-features{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:10px}.app-auth-features li{background:#fff;border:1px solid #e6ece8;border-radius:14px;padding:14px 16px;box-shadow:0 6px 16px rgba(18,38,58,.04)}
.app-auth-card{margin:auto;max-width:470px;width:100%;background:#fff;border:1px solid #e6ece8;border-radius:24px;padding:32px;box-shadow:0 18px 48px rgba(18,38,58,.08)}
.app-form-stack{display:grid;gap:14px}.app-form-label{display:grid;gap:8px;font-weight:600;color:#243746}.app-input,.app-select,.app-textarea{width:100%;border:1px solid #d9e3dd;border-radius:12px;padding:12px 14px;font:inherit;background:#fff}.app-textarea{min-height:120px;resize:vertical}
.app-btn-block{width:100%;justify-content:center}.app-demo-box{margin-top:16px;background:#f7faf8;border:1px dashed #c9d8cf;border-radius:14px;padding:14px;color:#415466;font-size:14px}.app-auth-links{display:flex;justify-content:space-between;gap:10px;margin-top:14px;font-size:14px}
.app-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.app-status-card{background:#fff;border:1px solid #e6ece8;border-radius:18px;padding:18px;box-shadow:0 8px 20px rgba(18,38,58,.05)}
.app-upload-panel{display:grid;gap:14px;padding:18px;border:1px dashed #bfd1c6;border-radius:16px;background:#fbfdfc}.app-document-list,.app-message-list{display:grid;gap:12px}.app-document-item,.app-message-item,.app-notification-item{padding:16px;border:1px solid #e6ece8;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(18,38,58,.04)}
.app-document-meta,.app-message-meta,.app-notification-meta{font-size:13px;color:#6b7b88}.app-inline-actions{display:flex;gap:10px;flex-wrap:wrap}.app-muted{color:#6b7b88}.app-empty-state{padding:26px;border:1px dashed #d7e0db;border-radius:16px;background:#fbfcfd;color:#627180;text-align:center}
@media (max-width: 980px){.app-auth-shell{grid-template-columns:1fr}.app-auth-panel{padding:28px}.app-auth-card{margin:0 20px 28px}}
