:root{font-family:"Microsoft YaHei",system-ui,sans-serif;color:#172b4d;background:#f4f6f8}
*{box-sizing:border-box}body{margin:0}.hidden{display:none!important}button,input,select,textarea{font:inherit}
button{border:1px solid #9aa8b5;border-radius:8px;background:#fff;padding:9px 13px;cursor:pointer;font-weight:700;color:#17324d}
button:hover{background:#edf6ff}.primary{background:#1677c8;color:#fff;border-color:#1677c8}.danger{background:#c53030;color:#fff;border-color:#c53030}.purple{background:#6b46c1;color:#fff;border-color:#6b46c1}.wide{width:100%}
.identity-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#edf7ff,#faf5ff)}
.identity-card{width:min(520px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 18px 50px #172b4d26}.identity-card h1{margin-top:0}.identity-card p{line-height:1.7;color:#52606d}.identity-card label{display:block;font-weight:800;margin:16px 0}.identity-card input[type=text],.identity-card input[type=password],.identity-card input:not([type]){display:block;width:100%;margin-top:7px;padding:11px;border:1px solid #9aa8b5;border-radius:8px}.role-row{display:flex;gap:20px}.role-row label{font-weight:600}.identity-card small{display:block;color:#68737d;margin-top:12px;line-height:1.6}.bootstrap-note{background:#f0fff4;border:1px solid #9ae6b4;color:#276749;border-radius:8px;padding:10px 12px;margin:12px 0;font-weight:700}
.topbar{position:sticky;top:0;z-index:30;background:#172b4d;color:#fff;padding:12px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0003}.topbar h1{font-size:21px;margin:0 0 4px}.top-actions{display:flex;align-items:center;gap:10px}.muted{color:#6b7785}.topbar .muted{color:#dce6f2}
.mode-switch{display:flex;gap:5px;padding:4px;background:#0f2744;border-radius:10px}.mode-switch button{border-color:#68809b;background:transparent;color:#dce6f2;padding:7px 10px}.mode-switch button.active{background:#fff;color:#17324d;border-color:#fff}
.workflow-note{margin:18px 24px 0;background:#eef7ff;border-left:5px solid #1677c8;border-radius:8px;padding:12px 16px;line-height:1.8}.workflow-note>span{margin-left:0}.account-help{margin:8px 0;color:#52606d}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:14px 24px}.stat{background:#fff;border-radius:10px;padding:12px 14px;border:1px solid #e1e7ec}.stat b{display:block;font-size:24px;color:#173f5f}.stat span{font-size:13px;color:#68737d}
.inventory-breakdown{margin:0 24px 14px;background:#fffbea;border:1px solid #f6e05e;border-radius:9px;padding:10px 14px;line-height:1.7;color:#744210}
.admin-categories{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:14px 24px;background:#faf5ff;border:1px solid #d6bcfa;border-radius:10px;padding:12px 14px}.admin-categories h2{font-size:16px;margin:0 0 4px;color:#553c9a}.admin-categories p{font-size:12px;color:#6b5b7b;margin:0}.category-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.category-button{padding:7px 10px;font-size:12px}.category-button.active{background:#6b46c1;color:#fff;border-color:#6b46c1}
.activity-log-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.activity-log-toolbar p{margin:6px 0;color:#52606d;font-size:12px}.activity-table-wrap{overflow:auto;max-height:440px;background:#fff;border:1px solid #d9e2ec;border-radius:8px}.activity-table-wrap table{width:100%;border-collapse:collapse;font-size:11px}.activity-table-wrap th{position:sticky;top:0;background:#edf2f7;z-index:1}.activity-table-wrap th,.activity-table-wrap td{padding:7px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top;white-space:nowrap}.activity-table-wrap td:last-child{white-space:normal;min-width:260px}.activity-status.ok{color:#2f855a;font-weight:800}.activity-status.failed{color:#c53030;font-weight:800}
.filters{display:flex;gap:10px;align-items:center;margin:14px 24px}.filters select{padding:9px 12px;border:1px solid #9aa8b5;border-radius:8px;background:#fff}.filters .muted{margin-left:auto}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;margin:12px 24px}.card{background:#fff;border:2px solid #dfe5eb;border-radius:11px;overflow:hidden;box-shadow:0 2px 8px #172b4d12}.card.reviewed{border-color:#38a169}.card.disagreement{border-top:6px solid #d69e2e}.card.featured{border-top:6px solid #6b46c1}.card.excluded{opacity:.78;border-color:#c53030}
.image-stage{height:215px;background:#eef0f2;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-stage img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .2s}.body{padding:10px}.title-row{display:flex;align-items:center;gap:6px}.code{background:#173f5f;color:#fff;border-radius:5px;padding:3px 6px;font-size:11px}.title-row h2{font-size:15px;margin:0}.filename{font-size:11px;color:#52606d;word-break:break-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:4px 0}.machine{background:#f7fafc;border:1px solid #e2e8f0;border-radius:7px;padding:7px;font-size:11px;line-height:1.45}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.field{display:block;font-weight:800;font-size:12px}.field select,.field input,.field textarea{display:block;width:100%;margin-top:4px;border:1px solid #9aa8b5;border-radius:6px;padding:7px;background:#fff;font-size:12px}.field.full{grid-column:1/-1}.field textarea{min-height:58px;resize:vertical}.rotations{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.rotation{padding:6px 8px;font-size:12px}.rotation.active{background:#6b46c1;color:#fff;border-color:#6b46c1}.submit-row{display:flex;gap:6px;align-items:center;margin-top:8px}.submit-row button{padding:7px 10px;font-size:12px}.saved{color:#2f855a;font-weight:800;font-size:11px}
.field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.field-heading button{padding:3px 7px;border-color:#90cdf4;color:#16649a;font-size:11px}.scene-field small{display:block;margin-top:3px;color:#6b7785;font-size:10px;font-weight:400;line-height:1.35}
.admin-panel{margin-top:10px;border-top:2px solid #d6bcfa;padding-top:8px}.admin-panel h3{color:#553c9a;font-size:14px;margin:2px 0}.admin-definition{margin:4px 0 8px;color:#6b5b7b;font-size:11px;line-height:1.5}.admin-content{padding-top:2px}.evidence{background:#faf5ff;border-radius:7px;padding:7px;font-size:11px;line-height:1.45;max-height:170px;overflow:auto}.evidence table{width:100%;border-collapse:collapse}.evidence th,.evidence td{text-align:left;border-bottom:1px solid #e9d8fd;padding:4px}.admin-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.admin-actions button{padding:7px 9px;font-size:12px}.featured-check{display:flex;align-items:center;gap:6px;background:#faf5ff;border:1px solid #d6bcfa;border-radius:7px;padding:7px;margin-top:8px;font-size:12px}.featured-check input{width:17px;height:17px;accent-color:#6b46c1}
.empty{text-align:center;padding:50px;color:#68737d}.pagination{display:flex;justify-content:center;gap:10px;padding:10px 24px 30px}.toast{display:none;position:fixed;right:22px;bottom:22px;z-index:50;background:#173f5f;color:#fff;padding:13px 17px;border-radius:9px;max-width:420px;box-shadow:0 8px 22px #0004}
@media(max-width:760px){.topbar{align-items:flex-start}.top-actions{align-items:flex-end;flex-direction:column}.mode-switch{flex-direction:column}.admin-categories{align-items:flex-start;flex-direction:column}.category-buttons{justify-content:flex-start}}
@media(max-width:640px){.cards{grid-template-columns:1fr;margin:12px}.stats,.workflow-note,.filters,.inventory-breakdown,.admin-categories{margin-left:12px;margin-right:12px}.form-grid{grid-template-columns:1fr}.topbar{padding:10px 12px}.image-stage{height:230px}}
