:root{
  --bg:#071a33;
  --card:#0f2b55;
  --card2:#102a54;
  --accent:#00c853;
  --accent2:#1e90ff;
  --text:#ffffff;
  --muted:rgba(255,255,255,.75);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none}

.container{max-width:1100px;margin:0 auto;padding:16px}
.nav{
  position:sticky;top:0;z-index:20;background:rgba(6,20,43,.92);
  backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.nav-inner{display:flex;gap:12px;align-items:center;justify-content:space-between}
.brand{display:flex;gap:10px;align-items:center;font-weight:800;letter-spacing:.5px}
.badge{font-size:12px;background:rgba(255,255,255,.12);padding:6px 10px;border-radius:999px;color:var(--muted)}
.menu{display:flex;gap:10px;flex-wrap:wrap}
.menu a{font-size:14px;padding:10px 12px;border-radius:10px;color:var(--muted)}
.menu a:hover{background:rgba(255,255,255,.10);color:var(--text)}

.hero{
  border-radius:16px; overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 60px rgba(0,0,0,.35);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
}
.hero-media{position:relative}
.hero-media img{width:100%;height:auto;display:block}
.hero-cta{
  position:absolute;left:50%;top:78%;
  transform:translate(-50%,-50%);
  display:flex;gap:10px;flex-wrap:wrap;justify-content:center;
  width:min(940px,92%);
}

.btn{
  border:none;border-radius:12px;padding:14px 18px;
  font-weight:800;cursor:pointer;
  display:inline-flex;align-items:center;gap:10px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}
.btn-primary{background:var(--accent);color:#062012}
.btn-blue{background:var(--accent2);color:white}
.btn-ghost{background:rgba(255,255,255,.12);color:white}
.btn:hover{filter:brightness(1.05)}

.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:16px}
.card{
  grid-column:span 12;
  background:var(--card);border:1px solid rgba(255,255,255,.10);
  border-radius:14px;padding:16px;
}
.card h2{margin:0 0 8px 0;font-size:18px}
.card p{margin:0;color:var(--muted);line-height:1.4}
.kpis{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.kpi{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);padding:10px 12px;border-radius:12px}
.footer{margin:30px 0 10px;color:var(--muted);font-size:13px;text-align:center}
.form{
  display:grid;gap:10px;margin-top:10px
}
input,select{
  width:100%;padding:12px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.14);
  background:rgba(0,0,0,.20);color:white;outline:none
}
input::placeholder{color:rgba(255,255,255,.55)}
.small{font-size:12px;color:var(--muted)}
.row{display:flex;gap:10px;flex-wrap:wrap}
.row > *{flex:1;min-width:220px}
.notice{background:rgba(0,200,83,.12);border:1px solid rgba(0,200,83,.25);padding:12px;border-radius:12px;color:rgba(255,255,255,.92)}

.card.span6{grid-column:span 6}
.card.span4{grid-column:span 4}

.card-alt{background:var(--card2)}
.mt-10{margin-top:10px}
.w-100{width:100%}
.justify-center{justify-content:center}
.cursor-pointer{cursor:pointer}
.w-auto{width:auto}
.p-14{padding:14px}
.opacity-80{opacity:.8}
.selfservice-subtitle{font-weight:700;font-size:.55em;opacity:.9}

@media (min-width:900px){
  .card.span6{grid-column:span 6}
  .card.span4{grid-column:span 4}
}

/* Self-service specific */
.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.topbar .logo{display:inline-block;width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,#00c853,#1e90ff);margin-right:8px}
.topbar .nav{display:flex;gap:10px;align-items:center}
.pill{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:6px 10px;border-radius:999px;font-size:12px}
.wrap{display:grid;gap:16px}
.panel{background:rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.08);border-radius:14px;overflow:hidden}
.panel .title{padding:16px 18px}
.panel .title h1{margin:0 0 6px 0;font-size:22px}
.panel .title p{margin:0;color:var(--muted)}
.accent{color:var(--accent)}
.tabs{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 10px}
.tab{background:rgba(255,255,255,.08);padding:8px 12px;border-radius:999px;font-size:12px;border:1px solid rgba(255,255,255,.12)}
.panel .grid{grid-template-columns:repeat(4,1fr);padding:0 18px 12px}
.col{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;min-height:200px;overflow:hidden}
.col-hd{padding:10px 12px;font-weight:700;border-bottom:1px solid rgba(255,255,255,.08)}
.items{padding:8px 12px;display:grid;gap:8px}
.item{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center;font-size:13px}
.item .price{opacity:.9}
.bottom{display:grid;gap:10px;padding:12px 18px 18px}
.totalbox{background:rgba(0,0,0,.25);border:1px dashed rgba(255,255,255,.2);padding:10px 12px;border-radius:12px;font-weight:700}
.note{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:10px 18px 12px;border-top:1px solid rgba(255,255,255,.08)}
.table-wrap{overflow:auto;max-height:320px;border-radius:10px;border:1px solid rgba(255,255,255,.08)}
table{width:100%;border-collapse:collapse}
th,td{padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;font-size:13px}
th{background:rgba(255,255,255,.06)}
.right{text-align:right}

.btn.primary{background:var(--accent);color:#062012}
.btn.ghost{background:rgba(255,255,255,.12);color:white}