*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',sans-serif;background:#faf9f6;color:#333;min-height:100vh}
.hidden{display:none}
.login{max-width:300px;margin:100px auto;text-align:center}
.login input{width:100%;padding:12px;margin:10px 0;border:1px solid #ccc;border-radius:8px;font-size:1rem}
.login button{background:#d4a843;color:#fff;border:none;padding:10px 24px;border-radius:8px;cursor:pointer;font-size:1rem}
.err{color:red;font-size:.85rem;margin-top:5px}
.logout-btn{position:fixed;top:16px;left:16px;background:none;border:1px solid #d4a843;color:#d4a843;padding:5px 12px;border-radius:6px;cursor:pointer;z-index:10}
header{text-align:center;padding:18px 20px;border-bottom:2px solid #d4a843;margin-bottom:20px}
header h1{color:#d4a843;font-size:1.4rem;margin-bottom:4px}
.link-sec{color:#d4a843;font-size:.85rem}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0 20px;max-width:900px;margin:0 auto 20px}
.card{background:#fff;border-radius:12px;padding:18px;text-align:center;border:1px solid #e0d5c1}
.card-num{font-size:2rem;font-weight:bold;color:#d4a843}
.card-lbl{font-size:.85rem;color:#777;margin-top:4px}
.card-warn .card-num{color:#e53e3e}
.panel{background:#fff;border-radius:12px;border:1px solid #e0d5c1;padding:16px;margin:0 20px 16px;max-width:900px;margin-left:auto;margin-right:auto}
.panel h2{color:#d4a843;font-size:1.1rem;margin-bottom:12px}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th{background:#faf9f6;padding:8px;text-align:right;border-bottom:2px solid #e0d5c1;color:#555}
td{padding:8px;border-bottom:1px solid #f0ebe0}
tr.active td{border-right:3px solid #38a169}
tr.waiting td{border-right:3px solid #d69e2e}
tr.overdue td{border-right:3px solid #e53e3e}
.stage-badge{display:inline-block;background:#d4a843;color:#fff;border-radius:50%;width:24px;height:24px;text-align:center;line-height:24px;font-size:.8rem}
.reminder-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0ebe0}
.reminder-date{color:#d4a843;font-weight:bold;font-size:.85rem}
.reminder-msg{flex:1;margin:0 12px;font-size:.9rem}
.reminder-client{color:#777;font-size:.85rem}
.muted{color:#999;text-align:center;padding:20px}
.chart{display:flex;align-items:flex-end;gap:12px;height:160px;padding:10px 0}
.bar-wrap{flex:1;display:flex;flex-direction:column;align-items:center}
.bar{width:100%;background:#d4a843;border-radius:6px 6px 0 0;min-height:4px;transition:height .3s}
.bar-label{font-size:.75rem;color:#777;margin-top:4px}
.bar-count{font-size:.8rem;font-weight:bold;color:#d4a843;margin-bottom:2px}
@media(max-width:700px){.stats{grid-template-columns:repeat(2,1fr)}}
