:root{--navy:#061d39;--blue:#123b63;--gold:#b88419;--green:#eaf7ef;--orange:#fff3e4;--line:#d9e2ec;--text:#172033;--muted:#64748b;--bg:#f7f9fc;--card:#ffffff;--shadow:0 22px 50px rgba(6,21,45,.09)}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}
.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:800;font-size:13px}
.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#eef5ff,transparent 35%),var(--bg)}
.login-card{width:min(560px,92vw);background:#fff;border:1px solid var(--line);padding:48px;box-shadow:var(--shadow)}
h1{font-size:44px;line-height:1.05;margin:14px 0;color:var(--navy);letter-spacing:-.04em}
p{color:var(--muted);font-size:18px;line-height:1.6}
.alert{padding:14px 16px;background:#fff1f1;border:1px solid #f2c8c8;color:#8b1d1d;margin:18px 0}
label{display:block;font-weight:750;margin:20px 0 8px}
input{width:100%;height:54px;border:1px solid var(--line);background:#eef4ff;padding:0 16px;font-size:16px}
button,.button,.logout{display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;border:1px solid var(--navy);height:54px;padding:0 26px;font-weight:850;text-decoration:none;cursor:pointer}
.app-shell{display:flex;min-height:100vh}
.sidebar{width:310px;background:linear-gradient(180deg,#082241,#051528);color:#fff;padding:44px 34px}
.sidebar h2{font-size:30px;margin:0 0 22px;color:#fff}
.sidebar p{color:#dce8f7;font-size:18px;line-height:1.55}
.sidebar span{color:#9db2ce}
.logout{margin-top:26px;border-color:#49617d;background:transparent}
.content{flex:1;padding:54px 58px}
.topline{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.content h1{font-size:44px;line-height:1.05;margin:14px 0;color:var(--navy)}
.content p{color:var(--muted);font-size:18px;line-height:1.6}
.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:22px;margin:40px 0 24px}
.cards article,.panel{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.cards article{padding:30px}
.cards span{display:block;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);font-size:13px}
.cards strong{display:block;font-size:52px;margin-top:24px;color:var(--navy)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.panel{padding:28px}
.panel h3{font-size:24px;margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line);color:var(--navy)}
.wide{grid-column:1/-1}
.row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:10px 0;border-bottom:1px solid #edf2f8}
.row:last-child{border-bottom:0}
.row span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.list{font-size:16px}
.small{color:var(--muted);font-size:13px}
.status{font-size:13px;color:var(--muted);margin-top:10px}.status.error{color:#8b1d1d}
@media(max-width:980px){.app-shell{display:block}.sidebar{width:auto}.content{padding:32px 20px}.cards,.grid{grid-template-columns:1fr}.topline{display:block}.content h1,h1{font-size:36px}}

.country-row{padding:13px 0;border-bottom:1px solid #edf2f8}.country-row:last-child{border-bottom:0}.country-main{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center}.country-flag{font-size:24px;line-height:1}.country-name{font-weight:750;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-main strong{font-size:16px;color:var(--navy)}.country-meta{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:12px;margin:6px 0 8px 46px;text-transform:uppercase;letter-spacing:.08em}.country-bar{height:8px;background:#edf2f8;border-radius:999px;overflow:hidden;margin-left:46px}.country-bar i{display:block;height:100%;background:linear-gradient(90deg,#b88419,#061d39);border-radius:999px}.country-empty{color:var(--muted);padding:10px 0}
.country-submeta{display:flex;justify-content:space-between;gap:14px;color:#8797ad;font-size:11px;margin:6px 0 2px 46px;text-transform:uppercase;letter-spacing:.08em}
