@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

/* Minimal, safe global reset */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /* leave font-size at browser default (100%) for accessibility */
}

/* One box-sizing approach only */
*, *::before, *::after {
  box-sizing: border-box;
}

/* Set rhythm on body, not html */
body {
  line-height: 1.5;
}

/* Light Theme Variables */
:root{--bg:#ffffff;--panel:#fafafa;--muted:#6b7280;--text:#111827;--brand:#3b82f6;--brand-2:#10b981;--border:#e5e7eb;--radius:14px;--shadow:0 4px 16px rgba(0,0,0,.08)}
html,body{height:100%}
body{margin:0;background:linear-gradient(180deg,#ffffff 0%,#f9fafb 60%,#ffffff 100%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
a{color:var(--text);text-decoration:none}a.link{color:var(--brand)}
.container{max-width:1100px;margin:0 auto;padding:28px}
.header{position:relative;border:1px solid var(--border);border-radius:24px;padding:24px 24px 28px;background:radial-gradient(1200px 400px at 20% -40%,rgba(59,130,246,.08),transparent),radial-gradient(900px 300px at 80% -30%,rgba(16,185,129,.06),transparent),var(--panel);overflow:hidden;box-shadow:var(--shadow)}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
@media (max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}}
.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.card h3{margin:0 0 8px 0;font-size:14px;color:var(--muted);font-weight:600}
.card .big{font-size:28px;font-weight:700;letter-spacing:.2px}
.grid{display:grid;gap:16px}.grid-2{grid-template-columns:1fr 1fr}@media (max-width:900px){.grid-2{grid-template-columns:1fr}}
.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:rgba(0,0,0,.02);color:var(--muted);font-size:12px}
.badge.ok{color:#059669;border-color:#d1fae5;background:rgba(34,197,94,.08)}
.badge.warn{color:#d97706;border-color:#fef3c7;background:rgba(245,158,11,.10)}
.badge.muted{color:var(--muted)}
.row{display:flex;gap:10px;align-items:center}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:linear-gradient(180deg,#ffffff,#f9fafb);color:var(--text);font-weight:600;cursor:pointer;transition:transform .05s ease,background .2s ease,border-color .2s ease}
.btn:hover{border-color:#d1d5db;background:linear-gradient(180deg,#f9fafb,#f3f4f6)}.btn:active{transform:translateY(1px)}
.btn-primary{background:linear-gradient(180deg,#3b82f6,#2563eb);border-color:#2563eb;color:#ffffff}
.btn-ghost{background:transparent;border-color:var(--border);color:var(--muted)}
.input,select,textarea{width:100%;padding:12px;border-radius:12px;border:1px solid var(--border);background:#ffffff;color:var(--text);outline:none}
.input:focus,select:focus,textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.15)}
.section{border:1px solid var(--border);border-radius:var(--radius);padding:16px;background:var(--panel);box-shadow:var(--shadow)}
.progress{height:10px;width:100%;background:#f3f4f6;border-radius:999px;border:1px solid var(--border);overflow:hidden}
.progress>div{height:100%;background:linear-gradient(90deg,var(--brand),var(--brand-2));border-right:1px solid rgba(0,0,0,.2)}
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--border)}
.table th{color:var(--muted);font-weight:600;text-align:left}
.empty{padding:18px;border:1px dashed #d1d5db;border-radius:12px;color:var(--muted)}
.small{font-size:12px;color:var(--muted)}.h1{font-size:26px;font-weight:700;letter-spacing:.2px}.h2{font-size:18px;font-weight:600}

/* Light Theme Portfolio Enhancements */
.portfolio-grid{background:var(--bg)}
.portfolio-item{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow)}
.upload-zone{border:2px dashed var(--border);background:var(--panel)}
.upload-zone:hover{border-color:var(--brand);background:rgba(59,130,246,.02)}
.navbar-light{background:var(--bg)!important;border-color:var(--border)!important}
.dropdown-menu{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow)}
.dropdown-item{color:var(--text)}
.dropdown-item:hover{background:rgba(59,130,246,.08);color:var(--text)}
.dropdown-header{color:var(--muted)}
.text-primary{color:var(--brand)!important}
.bg-white{background:var(--bg)!important}
.border-bottom{border-color:var(--border)!important}