*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--red: #e8000d;--red-dim: #9b0009;--black: #080808;--surface: #111111;--border: #1e1e1e;--text: #f0f0f0;--muted: #888888;--font-display: "Bebas Neue", sans-serif;--font-body: "DM Mono", monospace;--font-mono: "DM Mono", monospace}body{background:var(--black);color:var(--text);font-family:var(--font-body);font-size:18px;min-height:100vh;line-height:1.6}a{color:var(--red);text-decoration:none}a:hover{color:var(--text)}button{cursor:pointer;font-family:var(--font-body);border:none;border-radius:6px;padding:10px 20px;font-size:16px;transition:background .15s,opacity .15s}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover:not(:disabled){background:var(--red-dim)}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--muted)}.btn-danger{background:transparent;color:#ef4444;border:1px solid #ef4444}.btn-danger:hover:not(:disabled){background:#ef444420}input,textarea,select{background:var(--black);border:1px solid var(--border);color:var(--text);font-family:var(--font-body);font-size:17px;border-radius:6px;padding:10px 12px;width:100%;transition:border-color .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--red)}textarea{resize:vertical;min-height:80px}label{display:block;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}.field{margin-bottom:16px}.tag{display:inline-block;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:13px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;padding:3px 10px;border-radius:3px}.tag.active,.tag:hover{border-color:var(--red);color:var(--red);cursor:pointer}.card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;overflow:hidden;transition:border-left-color .15s ease}.card:hover{border-left-color:var(--red)}@media print{.no-print{display:none!important}body{background:#fff;color:#000}.card{border:1px solid #ddd}}@media (max-width: 640px){body{font-size:16px}}.nav-links{display:flex;gap:16px;flex:1;align-items:center}.nav-links a{white-space:nowrap}@media (max-width: 640px){.site-nav{flex-wrap:wrap;padding:8px 16px!important;min-height:0!important;gap:0!important}.nav-logo-link{font-size:26px!important}.nav-links{order:3;width:100%;flex:none;padding:6px 0 8px;gap:20px;border-top:1px solid var(--border);margin-top:6px}.nav-admin-group{order:2;margin-left:auto}}.planner-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -24px;padding:0 24px 8px}.planner-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:8px;min-width:760px}.recipe-layout{display:grid;grid-template-columns:1fr 2fr;gap:40px}@media (max-width: 640px){.recipe-layout{grid-template-columns:1fr;gap:32px}}.recipe-title{font-family:var(--font-display);font-size:64px;letter-spacing:.03em;line-height:1.1;margin-bottom:8px}@media (max-width: 640px){.recipe-title{font-size:44px}}.section-heading{font-family:var(--font-display);font-size:44px;letter-spacing:.05em;margin-bottom:16px;color:var(--red)}@media (max-width: 640px){.section-heading{font-size:32px}}.time-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:24px}@media (max-width: 640px){.time-grid{grid-template-columns:1fr}}@media (max-width: 640px){.page-pad{padding:20px 16px!important}}
