*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#f6f4ef;color:#24231f}a{color:inherit}button,input,select,textarea{font-family:inherit;font-size:13.5px}input,select,textarea{padding:6px 8px;border:1px solid #d8d4c8;border-radius:6px;background:#fff}button{padding:7px 14px;border:1px solid #24231f;border-radius:6px;background:#fff;cursor:pointer}button.primary{background:#c1531f;border-color:#c1531f;color:#fff}button.ghost{border-color:#d8d4c8}button:disabled{opacity:.5;cursor:default}.shell{display:flex;min-height:100vh}.nav{width:200px;flex-shrink:0;border-right:1px solid #e4e0d4;padding:20px 14px;background:#fbf9f4}.nav h1{font-size:15px;margin:0 0 20px}.nav a{display:block;padding:8px 10px;border-radius:6px;text-decoration:none;font-size:13.5px;color:#4a463d;margin-bottom:2px}.nav a.active{background:#ece6d8;color:#24231f;font-weight:600}.nav .signout{margin-top:24px}.main{flex:1 1;padding:28px 32px;max-width:1100px}h2{font-size:19px;margin:0 0 4px}.sub{color:#6b6759;font-size:13px;margin-bottom:20px}.card{background:#fff;border:1px solid #e4e0d4;border-radius:10px;padding:16px 18px;margin-bottom:16px}.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:20px}.metric{background:#fbf9f4;border-radius:8px;padding:14px}.metric .label{font-size:12.5px;color:#6b6759}.metric .value{font-size:24px;font-weight:600;margin-top:2px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;color:#6b6759;font-weight:500;font-size:12px;padding:6px 8px;border-bottom:1px solid #e4e0d4}td{padding:8px;border-bottom:1px solid #eeebe0;vertical-align:middle}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11.5px}.badge.warn{background:#f6e3cf;color:#7a4a12}.badge.ok{background:#dcead0;color:#35611c}.badge.muted{background:#eeebe0;color:#6b6759}.chip{display:inline-flex;align-items:center;gap:6px;background:#ece6d8;color:#4a463d;font-size:11.5px;padding:3px 9px;border-radius:999px;margin:2px 4px 2px 0}.chip button{border:none;background:none;padding:0;font-size:12px;cursor:pointer;color:#6b6759}.strike{text-decoration:line-through;color:#9a9686}.err{color:#a32d2d;font-size:13px;margin-top:6px}.row-flex{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.small{font-size:12px;color:#6b6759}input.narrow{width:64px;text-align:right}