
:root{--bg:#06131b;--panel:#0a1a24;--line:#263d49;--orange:#f35a18;--text:#f7fafb;--muted:#a9bac3;--ok:#42c77a;--danger:#e35353}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}button,.button{border:0;border-radius:9px;padding:11px 15px;background:var(--orange);color:#fff;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}button.secondary,.button.secondary{background:#122630;border:1px solid var(--line)}button.danger{background:#7c2525}.muted{color:var(--muted)}.portal-logo{width:150px;max-height:58px;object-fit:contain}.auth-body{min-height:100vh;display:grid;place-items:center;padding:22px}.auth-card{width:min(460px,100%);background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:28px}.auth-card label,.form label{display:block;margin:12px 0;font-weight:700}.auth-card input,.form input,.form textarea,.form select,.portal-main input,.portal-main textarea,.portal-main select{width:100%;margin-top:6px;padding:11px;background:#07151d;color:#fff;border:1px solid #35505d;border-radius:8px}.auth-card button{width:100%;margin-top:10px}.auth-card code{display:block;padding:12px;background:#020a0f;border-radius:7px;word-break:break-all;margin:10px 0}.portal-header{position:sticky;top:0;z-index:20;background:#fff;display:flex;align-items:center;gap:24px;padding:10px max(18px,calc((100% - 1400px)/2));box-shadow:0 1px 0 #ddd}.portal-header nav{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.portal-header nav button,.portal-header nav a{background:transparent;color:#111;padding:9px 10px;font-weight:800;text-decoration:none;border-radius:7px}.portal-header nav button:hover,.portal-header nav a:hover{background:#f1f1f1}.portal-main{width:min(1400px,calc(100% - 28px));margin:24px auto 60px}.toprow{display:flex;align-items:center;gap:12px;margin-bottom:18px}.toprow .spacer{flex:1}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px}.card.click{cursor:pointer}.card.click:hover{border-color:#4e7383}.card h2,.card h3{margin:0 0 8px}.badge{display:inline-block;border-radius:999px;padding:4px 8px;background:#14303d;color:#cce5ef;font-size:12px}.badge.orange{background:#5b280f;color:#ffb28e}.block{margin:18px 0}.houses{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.house-btn{background:#0b1d27;border:1px solid var(--line);padding:12px;border-radius:9px;color:#fff;text-align:center;cursor:pointer}.house-btn:hover{border-color:var(--orange)}.question{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:18px;margin:12px 0}.question h3{margin:0 0 12px}.photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.photos figure{margin:0;position:relative}.photos img{width:100%;height:160px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}.photos button{position:absolute;right:4px;top:4px;padding:5px 8px;background:#8d2929}.yn{display:flex;gap:10px}.yn button{background:#132a35;border:1px solid var(--line)}.yn button.active{background:var(--orange)}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:9px;border-bottom:1px solid var(--line)}.modal{position:fixed;inset:0;background:#000b;z-index:99;display:none;align-items:center;justify-content:center;padding:20px}.modal.show{display:flex}.modal-card{width:min(720px,96vw);max-height:92vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px}.loading{padding:40px;text-align:center;color:var(--muted)}@media(max-width:950px){.grid{grid-template-columns:1fr 1fr}.houses{grid-template-columns:repeat(4,1fr)}.photos{grid-template-columns:1fr 1fr}.portal-header{position:static;align-items:flex-start}.portal-header nav{gap:3px}}@media(max-width:620px){.grid{grid-template-columns:1fr}.houses{grid-template-columns:repeat(2,1fr)}.portal-header{display:block}.portal-header nav{margin-top:8px}.portal-main{width:calc(100% - 18px)}.toprow{align-items:flex-start;flex-wrap:wrap}.photos img{height:130px}}
