:root{font-family:Inter,system-ui,sans-serif;color-scheme:dark;--bg:#08111d;--panel:#101d2c;--panel2:#142336;--line:#22344a;--text:#f3f7fb;--muted:#8394a9;--accent:#42d6a4;--accent2:#1e9f77;--warning:#ffb84d;--danger:#ff6b75;--shadow:0 18px 50px rgba(0,0,0,.22)}:root[data-theme=light]{color-scheme:light;--bg:#eef3f7;--panel:#fff;--panel2:#f5f8fa;--line:#dce5ec;--text:#142033;--muted:#6d7d90;--accent:#17a978;--accent2:#0b825d;--warning:#dc8d1d;--danger:#d94b57;--shadow:0 18px 45px rgba(38,54,70,.09)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:218px 1fr;height:100vh;min-height:640px}.sidebar{background:var(--panel);border-right:1px solid var(--line);padding:25px 17px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 26px}.brand-mark{width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,var(--accent),#4aa8ff);display:grid;place-items:center;color:#07131e}.brand strong,.brand span{display:block}.brand strong{font-size:15px}.brand span{font-size:12px;color:var(--muted);margin-top:2px}.sidebar nav{display:grid;gap:5px}.sidebar nav button{height:44px;border:0;background:transparent;color:var(--muted);border-radius:11px;display:flex;align-items:center;gap:12px;padding:0 13px;text-align:left}.sidebar nav button:hover{background:var(--panel2);color:var(--text)}.sidebar nav button.active{background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent);font-weight:600}.smart-ready{margin-top:auto;border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}.smart-ready strong,.smart-ready small{display:block}.smart-ready strong{font-size:11px}.smart-ready small{font-size:10px;color:var(--muted);margin-top:3px}.pulse,.offline-dot{display:block;width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 13%,transparent)}main{padding:24px 28px 28px;min-width:0;overflow:hidden;position:relative}header{height:58px;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}h1,h2,h3,p{margin:0}h1{font-size:25px;letter-spacing:-.6px}h2{font-size:19px;letter-spacing:-.35px}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font-size:9px;font-weight:700;color:var(--accent);margin-bottom:5px}.header-actions{display:flex;gap:8px}.icon-button{width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--muted);display:grid;place-items:center}.icon-button:hover{color:var(--text);border-color:var(--muted)}.card{background:var(--panel);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.workspace-grid{height:calc(100vh - 128px);display:grid;grid-template-columns:minmax(600px,1fr) 265px;gap:18px}.recipe-card{display:flex;flex-direction:column;min-height:0;overflow:hidden}.recipe-head{display:grid;grid-template-columns:1fr 210px auto;gap:15px;align-items:end;padding:18px;border-bottom:1px solid var(--line)}.recipe-head label>span,.field-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);margin-bottom:7px}.recipe-head input,.recipe-head select,table input,.large-select,.setting-row select{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:9px;height:36px;padding:0 11px;outline:0;width:100%}.recipe-head input:focus,table input:focus,.large-select:focus,.number-input input:focus{border-color:var(--accent)}.batch-input>div{display:grid;grid-template-columns:1fr 62px}.batch-input input{border-radius:9px 0 0 9px}.batch-input select{border-radius:0 9px 9px 0;border-left:0}.head-buttons{display:flex;gap:8px}.primary,.ghost{height:36px;border-radius:9px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;border:1px solid var(--line)}.primary{background:var(--accent);color:#07151e;border-color:var(--accent)}.primary:hover{background:color-mix(in srgb,var(--accent) 88%,white)}.ghost{background:transparent;color:var(--text)}.ghost:hover{background:var(--panel2)}.table-wrap{overflow:auto;flex:1}table{border-collapse:collapse;width:100%}th{position:sticky;top:0;z-index:1;background:var(--panel);font-size:10px;text-transform:uppercase;letter-spacing:.7px;text-align:left;color:var(--muted);font-weight:600;padding:12px 14px;border-bottom:1px solid var(--line)}td{padding:9px 14px;border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}td:nth-child(1){width:28%}td:nth-child(2){width:22%}td:nth-child(3){width:18%}table input{height:33px;background:transparent;border-color:transparent;padding-left:7px}table input:hover,table input:focus{background:var(--panel2)}.number-field{position:relative}.number-field span{position:absolute;right:9px;top:8px;color:var(--muted);font-size:12px}.number-field input{padding-right:26px}.weight-cell{font-variant-numeric:tabular-nums;font-weight:600}.weight-cell small{color:var(--muted);font-weight:400}.row-delete{width:31px;height:31px;border:0;border-radius:8px;background:transparent;color:var(--muted)}.row-delete:hover{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger)}.table-footer{min-height:58px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:10px 18px}.add-row,.text-button{border:0;background:transparent;color:var(--accent);font-weight:600;display:flex;align-items:center;gap:6px}.totals{display:flex;align-items:center;gap:17px;font-size:12px;color:var(--muted)}.totals strong{color:var(--text)}.status{padding:6px 9px;border-radius:8px;font-size:10px;font-weight:600}.status.valid{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.status.warning{background:color-mix(in srgb,var(--warning) 12%,transparent);color:var(--warning)}.quick-actions{background:var(--panel);border:1px solid var(--line);border-radius:17px;padding:17px;overflow:auto}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.action-list{display:grid;gap:8px}.action-list button,.action-grid button{border:1px solid var(--line);background:var(--panel2);color:var(--text);border-radius:12px;display:flex;align-items:center;text-align:left;gap:10px;font-weight:600}.action-list button{min-height:54px;padding:8px 10px}.action-list button>span:nth-child(2){flex:1;font-size:12px}.action-list button>svg{color:var(--muted)}.action-icon{width:35px;height:35px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:grid;place-items:center;flex:0 0 auto}.action-list button:hover,.action-grid button:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));transform:translateY(-1px)}.panel{height:calc(100vh - 128px);padding:20px;overflow:auto}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(230px,1fr));gap:12px;max-width:850px}.action-grid button{min-height:78px;padding:14px}.action-grid button>span:nth-child(2){flex:1}.settings-popover{position:absolute;right:28px;top:67px;z-index:20;width:270px;background:var(--panel);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:15px}.popover-head{display:flex;justify-content:space-between;margin-bottom:16px}.popover-head button{border:0;background:transparent;color:var(--muted)}.setting-group{margin-bottom:15px}.setting-group>label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;margin-bottom:8px}.segmented{height:34px;border:1px solid var(--line);border-radius:9px;padding:3px;display:grid;grid-template-columns:1fr 1fr;background:var(--panel2)}.segmented.three{grid-template-columns:repeat(3,1fr)}.segmented button{border:0;border-radius:6px;background:transparent;color:var(--muted)}.segmented button.selected{background:var(--panel);color:var(--accent);box-shadow:0 2px 7px #0000001a}.setting-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0 2px;font-size:12px}.setting-row select{width:60px;height:31px}.switch{width:38px;height:21px;border:0;border-radius:20px;background:var(--line);padding:2px}.switch span{display:block;width:17px;height:17px;border-radius:50%;background:#fff;transition:.2s}.switch.on{background:var(--accent)}.switch.on span{transform:translate(17px)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#03080ea8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:30px}.dialog{width:min(620px,92vw);max-height:88vh;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px #00000073;display:flex;flex-direction:column;overflow:hidden}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.dialog-title{display:flex;align-items:center;gap:12px}.dialog-body{padding:20px;overflow:auto;display:grid;gap:15px}.dialog-footer{display:flex;justify-content:flex-end;gap:9px;border-top:1px solid var(--line);padding:13px 20px}.dialog-field{display:block}.number-input{display:flex;border:1px solid var(--line);background:var(--panel2);height:42px;border-radius:10px;overflow:hidden}.number-input input{flex:1;border:0;background:transparent;color:var(--text);padding:0 12px;outline:0}.number-input span{width:55px;border-left:1px solid var(--line);display:grid;place-items:center;color:var(--muted)}.large-select{height:42px}.wide{width:100%;height:42px}.result-box{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel2));border-radius:13px;overflow:hidden}.result-total{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.result-total span{font-size:11px;text-transform:uppercase;color:var(--muted)}.result-total strong{font-size:18px;color:var(--accent)}.result-list>div{display:grid;grid-template-columns:1fr 80px 120px;gap:10px;padding:9px 16px;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);font-size:12px}.result-list>div:last-child{border:0}.result-list>div span:nth-child(2){color:var(--muted);text-align:right}.result-list strong{text-align:right}.limiting{padding:9px 16px;background:color-mix(in srgb,var(--warning) 9%,transparent);color:var(--warning);font-size:11px}.availability-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.check-list{display:grid;gap:8px}.check-list label{height:42px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:10px;padding:0 12px;background:var(--panel2)}.check-list label span{display:flex;justify-content:space-between;flex:1}.check-list small{color:var(--muted)}.history-list{display:grid;gap:2px;max-width:700px}.history-list>div{display:flex;align-items:center;gap:14px;padding:13px 6px;border-bottom:1px solid var(--line)}.history-dot{width:9px;height:9px;border-radius:50%;background:var(--accent)}.history-list strong,.history-list small{display:block}.history-list small{color:var(--muted);font-size:10px;margin-top:4px}.empty-panel{text-align:center;padding:70px 20px;color:var(--muted)}.empty-panel>span{width:58px;height:58px;border-radius:17px;background:var(--panel2);display:grid;place-items:center;margin:0 auto 14px;color:var(--accent)}.empty-panel h3{color:var(--text);margin-bottom:7px}.empty-panel p{font-size:12px;max-width:340px;margin:0 auto 17px;line-height:1.6}.connection-grid{display:grid;grid-template-columns:repeat(2,minmax(250px,1fr));gap:12px;max-width:850px}.connection-grid button{min-height:80px;border:1px solid var(--line);background:var(--panel2);border-radius:13px;color:var(--text);display:grid;grid-template-columns:45px 1fr 20px;grid-template-rows:1fr 1fr;text-align:left;align-items:center;padding:12px}.connection-grid button>span{grid-row:1/3;width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,transparent);display:grid;place-items:center;color:var(--accent)}.connection-grid button strong{font-size:12px;align-self:end}.connection-grid button small{color:var(--muted);align-self:start;margin-top:3px}.connection-grid button>svg{grid-column:3;grid-row:1/3;color:var(--muted)}.small-dialog{width:480px}.connection-message{text-align:center;padding:38px 24px}.connection-message .offline-dot{margin:0 auto 18px;background:var(--warning);box-shadow:0 0 0 7px color-mix(in srgb,var(--warning) 12%,transparent)}.connection-message h3{margin-bottom:8px}.connection-message p{color:var(--muted);line-height:1.6;font-size:12px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--text);color:var(--bg);padding:10px 17px;border-radius:10px;z-index:100;font-weight:600;box-shadow:var(--shadow)}@media(max-width:950px){.app-shell{grid-template-columns:76px 1fr}.brand>div:last-child,.sidebar nav span,.smart-ready div{display:none}.brand{padding-left:2px}.sidebar nav button{justify-content:center;padding:0}.smart-ready{justify-content:center}.workspace-grid{grid-template-columns:1fr}.quick-actions{display:none}.recipe-head{grid-template-columns:1fr 180px}.head-buttons{grid-column:1/3}.sidebar{padding-left:14px;padding-right:14px}}@media print{.sidebar,header,.quick-actions,.table-footer,.row-delete{display:none!important}.app-shell{display:block;height:auto}main{padding:0;overflow:visible}.workspace-grid{display:block;height:auto}.recipe-card{border:0;box-shadow:none}.table-wrap,body{overflow:visible}}
