:root{--brown:#50301f;--dark:#302118;--gold:#bf8e63;--cream:#f8f3ee;--paper:#fff;--line:#e8dbce;--ink:#302a24;--muted:#817466;--good:#24694e;--danger:#ad4440}*{box-sizing:border-box}body{margin:0;font:14px/1.48 system-ui,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--cream)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.hidden{display:none!important}.small{font-size:12px}.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);font-weight:800}h1,h2,h3,h4,p{margin-top:0}h1,h2{font-family:Georgia,serif}h3{font:600 21px/1.2 Georgia,serif;color:var(--dark);margin:0 0 7px}h4{font-size:13px;color:var(--dark);margin:0}.intro{font-size:15px;color:var(--muted);margin-bottom:25px;max-width:740px}.login-outer{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(ellipse at 15% 20%,#a67b5b 0%,#6d4530 35%,#302119 80%)}.login-card{width:min(430px,100%);background:#fff;border-radius:19px;padding:42px;box-shadow:0 16px 70px #180c0642}.login-card h1{font-size:46px;margin:8px 0}.login-card i{color:#a47652}.login-card p{color:var(--muted)}label{display:block;font-size:12px;color:#6d5b4c;font-weight:700;margin:12px 0 6px}input,select,textarea{display:block;width:100%;border:1px solid #d8c7b8;border-radius:9px;background:#fff;color:#392b21;padding:10px 11px;outline-color:var(--gold);margin-top:5px;min-width:0}input:focus,select:focus,textarea:focus{border-color:var(--gold)}.btn{border:1px solid #ddcdbd;background:white;color:var(--brown);font-size:13px;font-weight:750;border-radius:9px;padding:10px 14px}.btn.primary{background:var(--brown);border-color:var(--brown);color:white}.btn.subtle{background:#faf4ec}.btn.full{width:100%;margin-top:12px}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--dark);color:#fff;display:flex;flex-direction:column;padding:28px 16px}.brand{padding:10px 15px 28px;border-bottom:1px solid #ffffff20;margin-bottom:22px}.brand-mini{font-size:11px;letter-spacing:.12em;color:#dcb18b}.brand-name{font:700 35px Georgia,serif;margin:9px 0 4px}.brand-name em{color:#d9ac83}.brand-note{font-size:12px;color:#c7b4a5}.nav-button{width:100%;display:flex;gap:15px;align-items:center;text-align:left;background:none;border:0;border-radius:10px;color:#c8b9ae;padding:13px 15px;margin-bottom:4px;font-weight:640}.nav-button span{font-size:18px;width:23px;text-align:center}.nav-button.selected{background:#74513b;color:#fff}.nav-button:hover{background:#513a2c;color:white}.sidebar-footer{margin-top:auto;border-top:1px solid #ffffff25;padding:18px 10px;font-size:11px;color:#b6a49a}.logout{background:none;border:0;color:#fff;padding:10px 0;text-decoration:underline}.main{max-width:1650px;width:100%;margin:0 auto;padding:34px clamp(20px,4vw,60px)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.topbar h2{font:600 33px Georgia,serif;color:var(--dark);margin:6px 0}.user-control{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.dot{width:8px;height:8px;background:#2c9666;border-radius:50%}.feedback{padding:12px 15px;border:1px solid #cde7d9;background:#eef8f2;border-radius:10px;margin:0 0 20px;color:var(--good);font-weight:650}.feedback.error{background:#fff1ef;border-color:#ecc4be;color:var(--danger)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 5px 15px #583f2b08}.kpi span{display:block;font-size:12px;color:var(--muted)}.kpi strong{font:600 32px Georgia,serif;color:var(--brown);display:block;margin:5px 0}.kpi small{color:var(--muted);font-size:11px}.surface{background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:0 5px 18px #59402e09;min-width:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:26px}.steps p{display:flex;gap:14px;align-items:center;color:#68584b}.steps b{background:#f5e7da;color:#74503a;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:0 0 28px}.guide{background:#f9f2ea;border-radius:12px;padding:24px}.guide p{color:#6d5c4e;font-size:13px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.section-top p{font-size:13px;color:var(--muted);margin:0}.workspace{display:grid;grid-template-columns:minmax(285px,.85fr) minmax(400px,1.3fr);gap:18px;align-items:start}.records{padding:14px}.editor{padding:23px}.search{margin:0 0 12px}.list-head{background:#f5ece4;display:flex;justify-content:space-between;font-size:11px;font-weight:750;color:#716252;padding:10px;border-radius:8px}.record-list{max-height:67vh;min-height:260px;overflow:auto}.record{border:0;border-bottom:1px solid #f0e7df;background:#fff;width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 9px}.record:hover,.record.active{background:#fff3e5}.record .record-title{font-weight:750;color:#3f2c1f;font-size:12px}.record .record-sub{color:#8b7869;font-size:11px;margin-top:3px}.record em{font-style:normal;background:#f4e9de;color:#74543d;border-radius:5px;padding:4px 5px;font-size:10px;white-space:nowrap}.empty{padding:26px;text-align:center;color:var(--muted);font-size:12px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}.neutral-pill{font-size:10px;font-weight:750;color:#826649;background:#f5ebdf;padding:5px 8px;border-radius:99px}.fields-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields-3{display:grid;grid-template-columns:1fr 1.1fr .75fr;gap:12px}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);margin-top:18px;padding-top:18px;flex-wrap:wrap}.note{font-size:12px;border-radius:9px;border:1px solid #ebd7bc;background:#fffaef;color:#7c6249;padding:12px 14px;margin:16px 0}.note.external{margin-top:18px}.line-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.recipe-line{display:grid;grid-template-columns:minmax(150px,1.7fr) 100px 78px minmax(90px,1fr) 35px;gap:6px;align-items:end;padding:8px 0;border-bottom:1px solid #eee4db}.recipe-line label{margin:0}.recipe-line input,.recipe-line select{padding:8px 6px;font-size:12px}.remove-line{border:1px solid #ead9ce;border-radius:6px;padding:7px;color:#ac5149;background:#fff;margin-bottom:2px}.yield-strip{padding:12px;margin-top:12px;background:#f9f1e9;border-radius:9px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#665747;font-size:12px}.yield-strip strong{color:#472e22}.yield-strip small{font-size:10px;flex-basis:100%;color:var(--muted)}.import-panel{margin-bottom:16px;max-width:900px}.import-actions{display:flex;gap:10px;margin:20px 0}.preview{background:#f9f4ef;border:1px solid var(--line);border-radius:10px;padding:15px;overflow:auto}.preview table,.history-table{width:100%;border-collapse:collapse;font-size:12px}.preview td,.preview th,.history-table td,.history-table th{padding:9px;border-bottom:1px solid var(--line);text-align:left}.preview th,.history-table th{font-weight:750;color:var(--brown)}.preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}.warn{color:#9a602c}.fineprint{font-size:11px;color:var(--muted)}@media(max-width:1050px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:20px 8px}.main{padding:25px}.workspace{grid-template-columns:1fr}.record-list{max-height:300px;min-height:100px}.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.shell{display:block}.sidebar{padding:12px}.brand{padding:5px 10px 8px;margin:0}.brand-name{font-size:23px}#nav{display:flex;overflow:auto;gap:4px}.nav-button{width:auto;white-space:nowrap}.nav-button span{display:none}.sidebar-footer{display:none}.main{padding:20px}.topbar h2{font-size:27px}.kpi-grid,.split,.fields-3{grid-template-columns:1fr 1fr}.fields-2{grid-template-columns:1fr}.recipe-line{grid-template-columns:1fr 1fr 65px 40px}.recipe-line label:first-child{grid-column:1/-1}.recipe-line label:nth-child(4){grid-column:1/3}.section-top{flex-wrap:wrap}}
