/* Commissions.quest — Affiliate CSS */
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:Arial,sans-serif;background:#f0f4f8;color:#333;font-size:14px;}

/* Login */
body.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;}
.login-box{background:#fff;border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.1);width:100%;max-width:480px;padding:2.5rem;}
.login-logo{text-align:center;margin-bottom:2rem;}
.login-logo h1{color:#1F5C99;font-size:1.8rem;}
.login-logo p{color:#888;margin-top:.25rem;}
.login-links{text-align:center;margin-top:1.5rem;color:#888;font-size:.875rem;display:flex;justify-content:center;gap:.75rem;}
.login-links a{color:#1F5C99;text-decoration:none;}
.tos-check{font-size:.875rem;line-height:1.5;}
.tos-check input{width:auto;margin-right:.35rem;}
.tos-check a{color:#1F5C99;}

/* Layout */
.app-layout{display:flex;min-height:100vh;}
.sidebar{width:220px;background:#1F5C99;color:#fff;display:flex;flex-direction:column;flex-shrink:0;position:fixed;height:100vh;overflow-y:auto;}
.sidebar-logo{padding:1.5rem 1rem;border-bottom:1px solid rgba(255,255,255,.15);}
.sidebar-logo a{color:#fff;text-decoration:none;font-size:1.1rem;font-weight:bold;display:block;}
.sidebar-logo span{font-size:.75rem;opacity:.7;margin-top:.25rem;display:block;}
.sidebar-nav{flex:1;padding:.5rem 0;}
.sidebar-nav a{display:block;padding:.75rem 1rem;color:rgba(255,255,255,.85);text-decoration:none;font-size:.875rem;transition:background .2s;}
.sidebar-nav a:hover,.sidebar-nav a.active{background:rgba(255,255,255,.15);color:#fff;}
.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.15);font-size:.8rem;opacity:.8;}
.sidebar-footer a{color:#fff;text-decoration:none;display:block;margin-top:.25rem;opacity:.7;}
.main-content{margin-left:220px;flex:1;padding:2rem;max-width:calc(100vw - 220px);}

/* Page header */
.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;}
.page-header h1{font-size:1.5rem;color:#1F5C99;}

/* Cards */
.card{background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:1.5rem;overflow:hidden;}
.card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid #eee;background:#f8f9fa;}
.card-header h2{font-size:1rem;color:#333;}
.card-body{padding:1.5rem;}
.mt-3{margin-top:1rem;} .mt-4{margin-top:1.5rem;} .mb-4{margin-bottom:1.5rem;} .p-3{padding:1rem;}

/* Stats */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem;}
.stat-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 2px 8px rgba(0,0,0,.08);text-align:center;}
.stat-card.stat-success{border-top:3px solid #28a745;}
.stat-card.stat-warning{border-top:3px solid #ffc107;}
.stat-value{font-size:1.75rem;font-weight:bold;color:#1F5C99;}
.stat-label{font-size:.75rem;color:#888;margin-top:.25rem;text-transform:uppercase;letter-spacing:.5px;}
.stat-link{display:block;font-size:.75rem;color:#1F5C99;margin-top:.5rem;text-decoration:none;}

/* Tables */
.table{width:100%;border-collapse:collapse;}
.table th{background:#f8f9fa;padding:.75rem 1rem;text-align:left;font-size:.8rem;color:#666;border-bottom:2px solid #eee;}
.table td{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;vertical-align:middle;}
.table tr:last-child td{border-bottom:none;}
.text-center{text-align:center;} .text-muted{color:#888;font-size:.875rem;}

/* Forms */
.form-group{margin-bottom:1rem;}
.form-group label{display:block;font-size:.8rem;font-weight:bold;color:#555;margin-bottom:.4rem;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .75rem;border:1px solid #ddd;border-radius:5px;font-size:.875rem;font-family:inherit;}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1F5C99;box-shadow:0 0 0 3px rgba(31,92,153,.1);}
.form-group textarea{resize:vertical;min-height:80px;}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;}
.filter-bar{margin-bottom:1rem;}
.filter-form{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;}
.filter-form select{padding:.5rem .75rem;border:1px solid #ddd;border-radius:5px;font-size:.875rem;}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.3rem;padding:.5rem 1rem;border-radius:5px;border:none;cursor:pointer;font-size:.875rem;font-weight:bold;text-decoration:none;transition:opacity .2s;}
.btn:hover{opacity:.85;} .btn:disabled{opacity:.5;cursor:not-allowed;}
.btn-primary{background:#1F5C99;color:#fff;}
.btn-success{background:#28a745;color:#fff;}
.btn-danger{background:#dc3545;color:#fff;}
.btn-warning{background:#ffc107;color:#333;}
.btn-outline{background:#fff;color:#1F5C99;border:1px solid #1F5C99;}
.btn-block{width:100%;justify-content:center;}
.btn-sm{padding:.3rem .6rem;font-size:.8rem;}

/* Alerts */
.alert{padding:.85rem 1rem;border-radius:5px;margin-bottom:1rem;font-size:.875rem;}
.alert-success{background:#e6f9ee;color:#155724;border-left:3px solid #28a745;}
.alert-danger{background:#fdecea;color:#721c24;border-left:3px solid #dc3545;}
.alert-warning{background:#fff3cd;color:#856404;border-left:3px solid #ffc107;}
.alert-info{background:#e3f2fd;color:#0c5460;border-left:3px solid #17a2b8;}

/* Badges */
.badge{display:inline-block;padding:.25rem .5rem;border-radius:10px;font-size:.75rem;font-weight:bold;}
.badge-primary{background:#d0e4f7;color:#1F5C99;}
.badge-success{background:#d4edda;color:#155724;}
.badge-warning{background:#fff3cd;color:#856404;}
.badge-danger{background:#f8d7da;color:#721c24;}
.badge-info{background:#d1ecf1;color:#0c5460;}
.badge-secondary{background:#e9ecef;color:#495057;}
.badge-tier-standard{background:#e9ecef;color:#495057;}
.badge-tier-silver{background:#e3e8ef;color:#5a6472;}
.badge-tier-gold{background:#fff3cd;color:#856404;}
.badge-status-lead{background:#e9ecef;color:#495057;}
.badge-status-pitched{background:#d1ecf1;color:#0c5460;}
.badge-status-converted{background:#d4edda;color:#155724;}
.badge-status-renewed{background:#c3e6cb;color:#155724;}
.badge-status-lost{background:#f8d7da;color:#721c24;}

/* Asset library */
.asset-section h3{font-size:.9rem;font-weight:bold;color:#555;margin-bottom:.5rem;}
.copy-field{display:flex;gap:.5rem;align-items:flex-start;}
.copy-field input,.copy-field textarea{flex:1;font-family:monospace;font-size:.8rem;background:#f8f9fa;}
.copy-field textarea{resize:none;}
.qr-wrap{display:flex;align-items:center;gap:1.5rem;}
.qr-wrap p{font-size:.875rem;}

/* CRM notes */
.note-item{background:#f8f9fa;border-radius:5px;padding:.75rem;margin-bottom:.75rem;}
.note-item p{margin-bottom:.25rem;font-size:.875rem;}

/* Payout summary */
.payout-summary{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.5rem;}
