*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#1b1b1b;background:#fafafa}
.container{max-width:1100px;margin:0 auto;padding:16px}
.site-header{background:#1f2937;color:#fff}
.header-inner{display:flex;justify-content:space-between;align-items:center}
.brand{display:flex;align-items:center;gap:12px}
.brand .logo{height:36px}
.nav a{color:#fff;margin-left:12px;text-decoration:none;padding:8px 10px;border-radius:6px}
.nav a:hover{background:#374151}
.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:16px;margin:12px 0}
.btn{display:inline-block;padding:8px 12px;border-radius:8px;border:1px solid #d1d5db;background:#111827;color:#fff;text-decoration:none}
.btn.secondary{background:#fff;color:#111827}
.btn.secondary:hover{background:#f3f4f6;color:#111827}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #e5e7eb;padding:10px;text-align:left}
.form-group{margin-bottom:12px}
.form-group label{display:block;margin-bottom:6px;color:#374151}
.input,.select,.textarea{width:100%;padding:8px;border:1px solid #d1d5db;border-radius:8px;background:#fff}
.checkbox{display:flex;gap:8px;align-items:center}
.notice{padding:10px;border-radius:8px;margin:8px 0}
.notice.success{background:#ecfdf5;color:#065f46}
.notice.error{background:#fef2f2;color:#991b1b}
@media print{
  .site-header,.site-footer,footer,nav,.no-print{display:none!important}
  .btn{display:none!important}
  body{background:#fff;margin:0!important}
  .container, .container.py-4{max-width:100%;padding:0!important;margin:0!important}
  .card{border:none;box-shadow:none;margin:0!important;padding:0!important}
  .card-body{padding:0!important}
  @page{size:A4;margin:12mm}
  .page-break{page-break-before:always}
}



