/* Panihati Municipality - Trade License Portal */
:root{
 --primary:#0b1f3a; --dark:#07162b; --secondary:#123e70;
 --accent:#f2b84b; --soft:#f4f7fb; --border:#dfe6ef;
}
*{box-sizing:border-box}
body{font-family:Inter,"Noto Sans Bengali",sans-serif;background:var(--soft);color:#172033}
.app-navbar{background:linear-gradient(135deg,var(--dark),var(--primary),var(--secondary));box-shadow:0 5px 20px rgba(0,0,0,.16)}
.navbar-brand{font-size:.98rem;line-height:1.05}
.navbar-brand small{display:block;font-size:.68rem;font-weight:500;opacity:.72;margin-top:3px}
.brand-mark{width:40px;height:40px;border-radius:12px;background:rgba(242,184,75,.16);color:var(--accent);display:grid;place-items:center}
.hero-card{border:0;border-radius:24px;background:linear-gradient(135deg,var(--dark),var(--primary),var(--secondary));color:#fff;overflow:hidden;box-shadow:0 18px 45px rgba(7,22,43,.2)}
.hero-card .accent{color:var(--accent)}
.card{border:1px solid var(--border);border-radius:18px;box-shadow:0 7px 24px rgba(11,31,58,.06)}
.form-control,.form-select{border-radius:12px;min-height:46px;border-color:#d6deea}
.form-control:focus,.form-select:focus{border-color:#567aa4;box-shadow:0 0 0 .2rem rgba(18,62,112,.1)}
.btn-primary{background:var(--secondary);border-color:var(--secondary)}
.btn-primary:hover{background:var(--primary);border-color:var(--primary)}
.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--dark);font-weight:700}
.stat-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;height:100%}
.stat-icon{width:48px;height:48px;border-radius:14px;background:#edf3fa;color:var(--secondary);display:grid;place-items:center;font-size:1.15rem}
.table-responsive{border-radius:14px}
.table thead th{background:#f0f4f9;white-space:nowrap;font-size:.82rem}
.table td{vertical-align:middle}
.badge-soft{background:#edf3fa;color:var(--secondary)}
.login-shell{min-height:calc(100vh - 160px);display:grid;place-items:center}
.login-card{max-width:470px;width:100%}
.app-footer{background:var(--dark);color:#d9e3f0}
.app-footer span{opacity:.7;font-size:.84rem}
.small-muted{font-size:.82rem;color:#69778b}
.section-title{font-weight:800;color:var(--primary)}
.required:after{content:" *";color:#dc3545}
@media(max-width:575.98px){
 .container{padding-left:14px;padding-right:14px}
 .hero-card{border-radius:18px}
 .hero-card h1{font-size:1.55rem}
 .card{border-radius:15px}
 .table{font-size:.82rem}
}
