/* Foundation placeholder styles — replaced by the Claude Design system. */
*{box-sizing:border-box}
body{margin:0;font:14px/1.45 system-ui,sans-serif;color:#0f172a;background:#f8fafc}
.top{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:10px 16px;background:#fff;border-bottom:1px solid #e2e8f0}
.top nav{display:flex;flex-wrap:wrap;gap:10px;flex:1}
.top a{color:#2563eb;text-decoration:none}
main{padding:16px;max-width:1400px;margin:0 auto}
h1{font-size:20px;margin:0 0 12px}h2{font-size:16px;margin:20px 0 8px}
table{width:100%;border-collapse:collapse;background:#fff;margin-bottom:16px}
th,td{padding:6px 8px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}
th{background:#f1f5f9;font-weight:600;font-size:12px}
.muted{color:#64748b}.flash{padding:8px 12px;border-radius:6px;margin-bottom:12px}
.ok{background:#dcfce7}.err{background:#fee2e2}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:16px}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px}
.card b{display:block;font-size:22px}
form.inline{display:inline}
.box{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin-bottom:16px}
.box label{display:inline-block;margin:0 10px 8px 0}
input,select,button,textarea{font:inherit;padding:4px 6px}
.grid-month td,.grid-month th{padding:3px 4px;text-align:center;font-size:12px}
.s-present{background:#dcfce7}.s-late{background:#fef9c3}.s-absent{background:#fee2e2}.s-leave{background:#e0e7ff}.s-holiday,.s-off{background:#f1f5f9}
.scroll{overflow-x:auto}
