html,body,#root{margin:0;padding:0;min-height:100%;background:#f6f7f8;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#18181b}*{box-sizing:border-box}.page-wrap{max-width:1000px;margin:0 auto;padding:24px 16px 72px}.portal-header{background:#fff;border-bottom:1px solid #e4e4e7;position:sticky;top:0;z-index:20}.portal-header-inner{max-width:1400px;margin:0 auto;padding:0 24px;height:60px;display:flex;align-items:center;gap:12px}.brand-mark{width:30px;height:30px;border-radius:8px;background:#084149;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;letter-spacing:.02em}.brand-name{font-weight:600;font-size:15px;color:#18181b}.brand-sub{font-size:13px;color:#71717a;padding-left:12px;border-left:1px solid #e4e4e7}.header-school{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:13px;color:#3f3f46}.login-hero{min-height:calc(100vh - 60px);display:flex;align-items:flex-start;justify-content:center;padding-top:9vh}.login-card{width:420px;max-width:calc(100vw - 48px);background:#fff;border:1px solid #e4e4e7;border-radius:12px;padding:36px 36px 32px;box-shadow:0 12px 48px #18181b0f}.nav-link{border:none;background:transparent;font:inherit;font-size:13.5px;color:#3f3f46;padding:7px 12px;border-radius:8px;cursor:pointer}.nav-link:hover{background:#f4f4f5}.nav-link.active{background:#e6f0f2;color:#084149;font-weight:500}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:500}.status-ok{background:#f0fdf4;color:#15803d;border:1px solid #bbe7c9}.status-received{background:#eff6ff;color:#1d4ed8;border:1px solid #c3d8fb}.status-missing{background:#fef2f2;color:#b91c1c;border:1px solid #f5c6c6}.status-attention{background:#fffbeb;color:#b45309;border:1px solid #f2ddab}.status-neutral{background:#f4f4f5;color:#71717a;border:1px solid #e4e4e7}.check-row{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid #f4f4f5}.check-row:last-child{border-bottom:none}.option-card{border:1px solid #e4e4e7;border-radius:12px;background:#fff;padding:24px;height:100%;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.option-card:hover{border-color:#3894a5;box-shadow:0 12px 48px #18181b14;transform:translateY(-2px)}.option-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:19px;margin-bottom:4px}.wizard-steps{background:#fff;border:1px solid #e4e4e7;border-radius:12px;padding:20px 28px;margin-bottom:24px}.file-card{display:flex;align-items:center;gap:14px;border:1px solid #e4e4e7;border-radius:10px;padding:14px 18px;background:#fff}.mapping-table .ant-table-cell{padding:10px 14px!important}.mono{font-family:JetBrains Mono,SF Mono,ui-monospace,monospace;font-size:12.5px}.issue-card{border:1px solid #e4e4e7;border-radius:10px;background:#fff;padding:16px 20px;display:flex;gap:14px;align-items:flex-start}.issue-card.resolved{border-color:#d9f0e5;background:#f6fcf9}.choice-card{border:1.5px solid #e4e4e7;border-radius:12px;padding:18px 20px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease}.choice-card.selected{border-color:#084149;background:#f2f7f8}.sheet-col-chip{display:inline-block;padding:3px 10px;border-radius:6px;background:#f4f4f5;border:1px solid #e4e4e7;font-size:12.5px;color:#3f3f46;margin:0 6px 6px 0;font-family:JetBrains Mono,ui-monospace,monospace}.sheet-col-chip.req{background:#e6f0f2;border-color:#bcd9de;color:#084149;font-weight:500}.ai-pulse{animation:aiPulse 1.6s ease-in-out infinite}@keyframes aiPulse{0%,to{opacity:1}50%{opacity:.45}}
