*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #f0f0ee;--bg-subtle: #f8f8f6;--bg-raised: #ffffff;--border: #e0e0de;--border-mid:#d8d8d6;--border-dim:#d0d0ce;--text: #1a1a1a;--text-mid: #666;--text-dim: #aaa;--tag-bg: #e8e8e6;--accent: #2AABEE;--accent-hov:#1a9fdc;--shadow: rgba(0,0,0,.1)}[data-theme=dark]{--bg: #1a1a1a;--bg-subtle: #242424;--bg-raised: #2a2a2a;--border: #333;--border-mid:#3a3a3a;--border-dim:#444;--text: #f0f0ee;--text-mid: #aaa;--text-dim: #777;--tag-bg: #333;--accent: #2AABEE;--accent-hov:#40beff;--shadow: rgba(0,0,0,.4)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;background:var(--bg);color:var(--text);min-height:100vh;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));transition:background .2s,color .2s}#app{max-width:640px;margin:0 auto}header{margin-bottom:12px}.header-content{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;box-shadow:0 1px 3px var(--shadow)}h1{font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--text);text-transform:uppercase}.theme-toggle,.share-btn{position:static;background:none;border:none;border-radius:6px;font-size:16px;cursor:pointer;padding:4px 6px;color:var(--text-mid);transition:background .15s;display:flex;align-items:center;line-height:1}.theme-toggle:hover,.share-btn:hover{background:var(--tag-bg);color:var(--text)}section{background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;padding:14px;margin-bottom:10px;box-shadow:0 1px 3px var(--shadow)}h2{font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);margin-bottom:12px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:10px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.full-width{grid-column:1 / -1}label{font-size:11px;font-weight:500;color:var(--text-mid);letter-spacing:.02em}input[type=number],select{padding:7px 9px;border:1px solid var(--border-mid);border-radius:5px;font-size:13px;font-family:inherit;background:var(--bg);color:var(--text);transition:border-color .15s,box-shadow .15s;outline:none;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=number]:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2aabee1f}.btn-primary{background:var(--accent);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;transition:background .15s;width:100%;letter-spacing:.02em}.btn-primary:hover{background:var(--accent-hov)}.btn-primary:focus{outline:none;box-shadow:0 0 0 2px #2aabee40}.btn-reset{background:none;color:var(--text-mid);border:1px solid var(--border-mid);padding:7px 14px;border-radius:6px;font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s,border-color .15s;width:100%;margin-top:8px}.btn-reset:hover{background:var(--tag-bg);border-color:var(--border-dim);color:var(--text)}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.card{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px 8px;text-align:center}.card-label{font-size:10px;font-weight:500;color:var(--text-dim);margin-bottom:4px;letter-spacing:.03em}.card-value{font-size:20px;font-weight:700;color:var(--accent);line-height:1.1}.radio-group{display:flex;gap:16px;margin-bottom:10px}.radio-group label{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--text-mid);cursor:pointer;font-weight:400;text-transform:none;letter-spacing:0}.radio-group input[type=radio]{cursor:pointer;accent-color:var(--accent)}.edit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.total-calories{background:var(--bg);border:1px solid var(--border);padding:8px 12px;border-radius:6px;text-align:center;font-size:12px;color:var(--text-mid);margin-bottom:4px}.total-calories strong{color:var(--text)}#copy-text{background:var(--bg);border:1px solid var(--border);padding:10px 12px;border-radius:6px;font-size:12px;line-height:1.7;color:var(--text);margin-bottom:10px;white-space:pre-wrap;font-family:inherit}.copy-feedback{text-align:center;margin-top:6px;font-size:12px;color:var(--accent);font-weight:600;min-height:18px}@media (max-width: 480px){.cards-grid{grid-template-columns:repeat(2,1fr)}.form-grid,.edit-grid{grid-template-columns:1fr}}
