:root{
  --bg:#f6f7fb; --card:#fff; --border:#e6e6e6; --text:#111; --muted:#666;
  --radius:14px; --danger:#b00020;
}
body{ margin:0; font-family:Arial, sans-serif; background:var(--bg); color:var(--text); }
.container{ max-width:1100px; margin:0 auto; padding:14px 16px; }
.topbar{ background:var(--card); border-bottom:1px solid var(--border); }
.brand{ display:flex; gap:12px; align-items:center; }
.logo{ height:46px; width:auto; }
.brand-title{ font-weight:700; }
.spacer{ flex:1; }
.muted{ color:var(--muted); font-size:13px; }

.card{ background:var(--card); border:1px solid var(--border); border-radius:var(--radius); padding:14px; margin:12px 0; }
.narrow{ max-width:560px; margin:12px auto; }

.row{ display:flex; gap:10px; flex-wrap:wrap; }
.grid2{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.grid3{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; }
@media (max-width:820px){
  .grid2,.grid3{ grid-template-columns:1fr; }
}

label{ display:block; font-size:13px; margin:6px 0; }
input,select,textarea{ width:100%; box-sizing:border-box; padding:10px; border:1px solid #d7d7d7; border-radius:12px; }
textarea{ min-height:90px; resize:vertical; }

.btn{ display:inline-block; padding:10px 14px; border:1px solid #222; border-radius:12px; background:#fff; cursor:pointer; text-decoration:none; color:#111; }
.btn.primary{ background:#111; border-color:#111; color:#fff; }
.btn.danger{ border-color:var(--danger); color:var(--danger); }

table{ width:100%; border-collapse:collapse; }
th,td{ border:1px solid var(--border); padding:8px; font-size:14px; }
th{ background:#fafafa; text-align:left; }

.cards{ display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
@media (max-width:820px){ .cards{ grid-template-columns:1fr; } }

.asset-card{ border:1px solid var(--border); border-radius:var(--radius); padding:12px; }
.asset-img{ width:100%; height:160px; object-fit:cover; border-radius:12px; border:1px solid #eee; margin-bottom:10px; background:#fafafa; }
.asset-img.placeholder{ display:flex; align-items:center; justify-content:center; color:#666; }
.asset-title{ font-weight:700; margin-bottom:8px; }
.checkline{ display:flex; align-items:center; gap:8px; }
.alert{ padding:10px; border-radius:12px; background:#fff3f3; border:1px solid #ffd2d2; }