:root{--bg: #F6F5F3;--surface: #FFFFFF;--ink: #121212;--muted: #6B6560;--line: #E7E3DD;--line2: #EFEBE6;--accent: #A65F2A;--accent-dark: #7E4519;--tint: #F6EBDD;--danger: #B3261E;--cook: #2F5A8F;--cook-bg: #E7EEF8;--ready: #23703F;--ready-bg: #E5F4EA;--go: #5B3F8C;--go-bg: #EFE9F7;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:var(--accent)}a:hover{color:var(--accent-dark)}h1{margin:0;font-size:24px;font-weight:700}h2{margin:0;font-size:15px;font-weight:700}.muted{color:var(--muted)}.small{font-size:13px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grow{flex:1 1 auto;min-width:0}.stack{display:flex;flex-direction:column;gap:12px}button,input,select,textarea{font:inherit}.btn{font-size:14px;font-weight:600;border-radius:10px;padding:9px 14px;border:1px solid #D9D3CB;background:var(--surface);color:var(--ink);cursor:pointer;min-height:40px;white-space:nowrap}.btn:hover{border-color:#bdb5ab}.btn:disabled{opacity:.5;cursor:default}.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff}.btn.pri:hover{background:var(--accent-dark)}.btn.danger{color:var(--danger);border-color:#e9c3bf}.btn.ghost{border-color:transparent;background:transparent}.btn.sm{padding:5px 10px;font-size:13px;min-height:32px}.btn.on{background:var(--ink);border-color:var(--ink);color:#fff}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;flex:1 1 160px;min-width:0}.field input,.field select,.field textarea,.input{font-weight:400;font-size:14px;border:1px solid #D9D3CB;border-radius:10px;padding:9px 12px;background:#fff;width:100%;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus,.input:focus{outline:2px solid var(--accent);outline-offset:-1px}.hint{font-weight:400;font-size:12px;color:var(--muted)}.box{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:14px}.pill{display:inline-block;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;white-space:nowrap}.p-new{background:var(--tint);color:var(--accent-dark)}.p-cook{background:var(--cook-bg);color:var(--cook)}.p-ready{background:var(--ready-bg);color:var(--ready)}.p-go{background:var(--go-bg);color:var(--go)}.p-done{background:#efebe6;color:#3d3935}.p-cancel{background:#fbe9e6;color:var(--danger)}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #D9D3CB;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;color:#3d3935;background:#fff;cursor:pointer}.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.tag{border-radius:8px;padding:2px 8px;font-size:12px;font-weight:600;background:var(--bg);color:#3d3935}.note{background:var(--tint);color:var(--accent-dark);border-radius:10px;padding:8px 10px;font-size:13px}.error{color:var(--danger);font-size:13px}.shell{min-height:100vh;display:flex}.side{width:232px;flex:0 0 232px;background:#fff;border-right:1px solid var(--line);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.logo{font-weight:800;font-size:26px;letter-spacing:-.03em;padding:4px 10px 18px}.nav{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;color:#3d3935;text-decoration:none;font-size:14px;font-weight:500;border:0;background:none;cursor:pointer;text-align:left;width:100%}.nav:hover{background:var(--bg);color:var(--ink)}.nav.on{background:var(--tint);color:var(--accent-dark);font-weight:600}.badge{margin-left:auto;background:var(--accent);color:#fff;border-radius:10px;padding:1px 8px;font-size:12px;font-weight:700}.main{flex:1 1 auto;min-width:0;padding:24px 28px 40px;display:flex;flex-direction:column;gap:18px}.bottombar{display:none}@media(max-width:760px){.side{display:none}.main{padding:16px 14px 96px}.bottombar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid var(--line);padding:6px 4px calc(10px + env(safe-area-inset-bottom));z-index:20}.bottombar button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:600;color:var(--muted);border:0;background:none;min-height:48px;justify-content:center;position:relative}.bottombar button.on{color:var(--accent-dark)}.bottombar .dot{position:absolute;top:4px;right:calc(50% - 18px);min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:#fff;font-size:11px;line-height:18px}}.board{display:grid;grid-template-columns:repeat(4,minmax(240px,1fr));gap:14px;overflow-x:auto;padding-bottom:6px;align-items:start}.col{background:#efebe6;border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:10px;min-height:420px}.colh{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;padding:4px 4px 2px}.colh i{width:10px;height:10px;border-radius:5px;display:inline-block}.cnt{background:#fff;border-radius:10px;padding:1px 8px;font-size:12px;color:var(--muted)}.card{background:#fff;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);font-size:13px;cursor:pointer;text-align:left}.card:hover{border-color:#cfc7bd}.card.new{border:2px solid var(--accent);animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{box-shadow:0 0 0 4px #a65f2a2e}}@media(prefers-reduced-motion:reduce){.card.new{animation:none}}.quick{display:flex;gap:6px}.quick button{flex:1;border:1px solid #D9D3CB;border-radius:8px;padding:6px 0;font-size:12px;font-weight:600;background:#fff;cursor:pointer;min-height:34px}.quick button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.late{color:var(--danger);font-weight:600}.tabs{display:flex;gap:6px;overflow-x:auto}.tabs .chip{white-space:nowrap;flex:0 0 auto}.mobile-only{display:none}@media(max-width:760px){.board{display:block}.board>.col{display:none;min-height:0;background:transparent;padding:0}.board>.col.cur{display:flex}.board .colh{display:none}.mobile-only{display:flex}}.tablebox{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:#fff}table.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.tbl td{padding:10px 12px;border-bottom:1px solid var(--line2);vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tr.dim td{background:#faf8f6}.thumb{width:44px;height:44px;border-radius:10px;background:#e6dfd3;object-fit:cover;display:block}.price{width:104px;text-align:right;font-weight:600;border:1px solid #D9D3CB;border-radius:8px;padding:6px 8px}.lang{font-size:11px;font-weight:700;border-radius:6px;padding:2px 6px;margin-right:4px}.lang.ok{background:var(--ready-bg);color:var(--ready)}.lang.miss{background:#f3f1ee;color:#8a847e}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#12121259;z-index:40;display:flex;justify-content:flex-end}.drawer{width:min(640px,100%);height:100%;background:var(--bg);overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.modalwrap{position:fixed;top:0;right:0;bottom:0;left:0;background:#12121259;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px}.modal.wide{width:min(820px,100%)}.modal{width:min(460px,100%);background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:14px;max-height:90vh;overflow-y:auto}.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.st{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#9a938c}.st i{display:block;height:6px;border-radius:3px;background:#e6e1da}.st.done{color:var(--ink)}.st.done i{background:var(--ink)}.st.now{color:var(--cook)}.st.now i{background:var(--cook)}.line{display:flex;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px;font-size:14px;z-index:60;max-width:calc(100% - 32px)}@media(max-width:760px){.toast{bottom:90px}}.media{width:120px;height:120px;border-radius:12px;background:#e6dfd3;object-fit:cover;display:block}.drop{width:120px;height:120px;border-radius:12px;border:2px dashed #D9D3CB;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px;color:var(--muted);text-align:center;cursor:pointer;background:#fff}.opt{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;align-items:center}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.vsep{width:1px;height:28px;background:var(--line)}.editor{display:grid;grid-template-columns:56px minmax(0,1fr) 320px;gap:14px;height:max(480px,calc(100vh - 290px))}.tools{background:#fff;border:1px solid var(--line);border-radius:14px;padding:6px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}.tool{width:42px;height:42px;border-radius:10px;border:0;background:none;color:#3d3935;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.tool:hover:not(:disabled){background:var(--tint);color:var(--accent-dark)}.tool:disabled{opacity:.35;cursor:default}.tool.danger{color:var(--danger)}.canvasbox{position:relative;min-width:0;min-height:0}.canvas{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;border:1px solid var(--line);border-radius:14px;padding:12px;display:grid;place-items:center;background-color:#fff;background-image:linear-gradient(#F1EDE8 1px,transparent 1px),linear-gradient(90deg,#F1EDE8 1px,transparent 1px);background-size:24px 24px}.canvas svg{display:block;-webkit-user-select:none;user-select:none}.zoom{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:13px}.props{overflow-y:auto}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg .btn{flex:1 1 auto}.savebar{position:sticky;bottom:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;z-index:5}@media(max-width:1100px){.editor{grid-template-columns:56px minmax(0,1fr);height:auto}.editor .canvasbox{height:60vh}.editor .props{grid-column:1 / -1}}@media(max-width:760px){.editor{grid-template-columns:1fr}.tools{flex-direction:row;overflow-x:auto}.savebar{bottom:80px}}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
