:root{--bg:#f4f1eb;--panel:#fffdf9;--ink:#1f2a1f;--muted:#667164;--line:#d9d2c6;--accent:#21543d;--accent-soft:#e4f1ea;--warn:#8c5b1c;--danger:#8a2d2d}*{box-sizing:border-box}html,body{color:var(--ink);background:linear-gradient(#efe8da 0%,#f9f6f1 40%,#f4f1eb 100%);margin:0;padding:0;font-family:Georgia,Times New Roman,serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{max-width:1440px;margin:0 auto;padding:32px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.brand{flex-direction:column;gap:4px;display:flex}.brand-lockup{align-items:center;gap:16px;display:flex}.brand-image{width:190px;height:auto}.brand h1{letter-spacing:.03em;margin:0;font-size:28px}.brand p{color:var(--muted);margin:0}.nav{flex-wrap:wrap;gap:12px;display:flex}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:14px;display:flex}.nav a{border:1px solid var(--line);background:#fff9;border-radius:999px;padding:10px 14px}.grid{gap:20px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 8px 20px #3128160f}.card h2,.card h3{margin-top:0}.hero{grid-template-columns:1.3fr 1fr;gap:20px;margin-bottom:20px;display:grid}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px}.stat strong{margin-bottom:6px;font-size:30px;display:block}.muted{color:var(--muted)}.pill{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:inline-flex}.pill.warn{color:var(--warn);background:#fff2df}.pill.danger{color:var(--danger);background:#fbe8e8}.table{border-collapse:collapse;width:100%}.table-scroll{width:100%;overflow:auto hidden}.table-wide{min-width:max-content}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:13px}.table tr:hover{background:#21543d08}.stack{flex-direction:column;gap:10px;display:flex}.inline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.button{background:var(--accent);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:12px 16px;display:inline-flex}.button.secondary{color:var(--ink);border-color:var(--line);background:#fff}.button-active{background:var(--accent-soft);color:var(--accent);border-color:#21543d33}.split{grid-template-columns:1.4fr 1fr;gap:20px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:14px;padding:14px 16px}.auth-shell{justify-content:center;align-items:center;min-height:calc(100vh - 220px);display:flex}.auth-card{background:radial-gradient(circle at 100% 0,#21543d14,#0000 34%),linear-gradient(#fffffffa,#fffdf9f5);border:1px solid #21543d24;border-radius:28px;width:min(560px,100%);padding:32px;box-shadow:0 24px 60px #31281614}.auth-eyebrow{background:var(--accent-soft);color:var(--accent);letter-spacing:.03em;border-radius:999px;margin-bottom:14px;padding:7px 12px;font-size:14px;display:inline-flex}.auth-form{flex-direction:column;gap:14px;margin-top:18px;display:flex}.auth-divider{color:#1f2a1f85;letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;margin:10px 0 4px;font-size:.84rem;display:flex}.auth-message{border:1px solid var(--line);border-radius:14px;margin:16px 0 0;padding:12px 14px}.auth-message-success{background:var(--accent-soft);color:var(--accent)}.auth-message-error{color:var(--danger);background:#fbe8e8;border-color:#8a2d2d2e}.review-map-card{margin:18px 0 22px}.review-map-canvas{border:1px solid var(--line);background:linear-gradient(#ddebe3 0%,#edf4ef 100%);border-radius:18px;width:100%;height:560px;overflow:hidden}.review-map-legend{text-align:right;align-items:flex-end;max-width:320px}.investor-editor{grid-template-columns:430px minmax(0,1fr);gap:18px;display:grid}.investor-map-canvas{border:1px solid var(--line);background:linear-gradient(#ddebe3 0%,#edf4ef 100%);border-radius:18px;width:100%;height:680px;overflow:hidden}.investor-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;display:grid}.investor-area-checklist{flex-direction:column;gap:8px;max-height:320px;padding-right:6px;display:flex;overflow-y:auto}.investor-option{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;width:100%;display:grid}.investor-option input{margin-top:4px}.investor-option span{word-break:normal;overflow-wrap:break-word;line-height:1.25}.field input,.field textarea,.field select{border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;padding:10px 12px}.field textarea{resize:vertical;min-height:108px}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.checkbox{align-items:center;gap:10px;display:flex}.review-flag-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;display:grid}.review-flag{grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;display:grid}.review-flag input{margin-top:4px}.review-flag span{line-height:1.25}.option-list{flex-direction:column;gap:10px;display:flex}.option-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:auto 1fr;align-items:start;gap:14px;padding:14px 16px;display:grid}.option-row input{margin-top:2px}.option-copy{flex-direction:column;gap:4px;display:flex}.option-copy strong{font-size:16px;line-height:1.2}.option-copy span{color:var(--muted);line-height:1.35}.empty{border:1px dashed var(--line);color:var(--muted);border-radius:16px;padding:28px}@media (max-width:1080px){.hero,.split,.investor-editor,.grid-2,.grid-3,.stats{grid-template-columns:1fr}.shell{padding:18px}}
