.citizen-hero{display:flex;gap:30px;justify-content:space-between;align-items:center;margin:8px 0 28px}.citizen-hero h1{font:38px Georgia,serif;letter-spacing:-1px;margin:12px 0}.citizen-hero p{max-width:600px;color:#71806e;font-size:13px;line-height:1.8}.citizen-preset{background:#24483e;color:#edf0dd;padding:22px 24px;border-radius:10px;min-width:230px;max-width:290px}.citizen-preset>span{font-size:9px;letter-spacing:1.6px;color:#b0bf9b}.citizen-preset strong{display:block;font:23px Georgia,serif;margin:10px 0}.citizen-preset small{display:block;color:#b6c5ad;font-size:10px;line-height:1.7}.citizen-role-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin-bottom:25px}.citizen-role{display:grid;grid-template-columns:20px 1fr;gap:10px 5px;padding:16px 10px;text-align:left;background:#f7f8ef;border-color:#dde3d1}.citizen-role>span{font-size:19px;color:#8a9a79}.citizen-role>strong{font-size:24px;font-weight:500;text-align:right;color:#345b46}.citizen-role>small{grid-column:1/-1;color:#6f7e65;font-size:10px;line-height:1.6}.citizen-role.selected{background:#e3ecd6;border-color:#789167;box-shadow:inset 0 0 0 1px #789167}.citizen-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.citizen-directory{min-width:0}.citizen-filters{display:grid;grid-template-columns:minmax(100px,1.4fr) minmax(100px,1fr) minmax(100px,1fr);gap:10px;align-items:end}.citizen-filters label{margin:0;font-size:10px}.citizen-filters input,.citizen-filters select{font-size:12px;padding:10px;min-width:0;width:100%;box-sizing:border-box}.citizen-filters>button{grid-column:1/-1;justify-self:start;padding:8px 18px;font-size:11px}.citizen-list-top{display:flex;justify-content:space-between;align-items:center;min-height:46px;font-size:11px;color:#78876f}.text-button{background:none;border:0;padding:8px;font-size:11px;color:#3f7655}.citizen-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.citizen-tile{display:flex;align-items:center;gap:12px;text-align:left;padding:15px 12px;min-width:0;background:#fcfcf5;border:1px solid #dfe4d5}.citizen-tile:hover,.citizen-tile.selected{border-color:#81a277;background:#f1f6e7}.citizen-avatar{display:flex;align-items:center;justify-content:center;width:42px;height:48px;background:#d9e3ce;color:#426450;font:16px Georgia,serif;border-radius:13px 13px 8px 8px;flex-shrink:0}.role-ondernemer{background:#e5d6b8;color:#8d7042}.role-vakman{background:#d9d5bd;color:#7a7551}.role-consument{background:#e8d7ce;color:#8e7269}.role-investeerder{background:#d8d4e6;color:#6e6889}.role-crimineel{background:#cdd4ce;color:#5e6d62}.role-dienstverlener{background:#cfdfdf;color:#567c7d}.role-buurtorganisator{background:#dae0c3;color:#7b8656}.citizen-tile-body{display:block;min-width:0;flex:1}.citizen-tile-body>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#345542;font-weight:600}.citizen-tile-body>small{display:block;font-size:10px;color:#7d8975;line-height:1.7}.citizen-tile-body>span{display:flex;align-items:center;font-size:9px;color:#7d8975;margin-top:5px}.mood-dot{width:5px;height:5px;display:inline-block;background:#78a56c;border-radius:50%;margin:0 4px 0 auto}.mood-dot.neutral{background:#beab6a}.mood-dot.unhappy{background:#bd816d}.citizen-pagination{display:flex;align-items:center;justify-content:space-between;margin:18px 0;font-size:11px;color:#7c886f}.citizen-pagination button{padding:9px;font-size:11px}.citizen-detail{background:#fdfdf7;border:1px solid #dce3d2;border-radius:12px;padding:24px;min-width:0;position:sticky;top:20px}.citizen-empty{text-align:center;padding:40px 10px;color:#829073}.citizen-empty>span{font-size:52px;color:#9aac8b}.citizen-empty h2{font:23px Georgia,serif;color:#45634b}.citizen-empty p{font-size:12px;line-height:1.9}.citizen-profile-top>.citizen-avatar{width:53px;height:61px;font-size:21px;margin-bottom:18px}.citizen-profile-top>.overline{font-size:8px;color:#7e8d6e;letter-spacing:.9px}.citizen-profile-top h2{font:27px Georgia,serif;color:#2f513e;margin:10px 0}.citizen-profile-top p{font-size:11px;color:#7f8b74}.citizen-profile-stats{display:flex;gap:22px;padding:22px 0 15px;border-top:1px solid #e5e8dc;margin-top:22px}.citizen-profile-stats small{display:block;font-size:8px;color:#94a085;letter-spacing:.6px}.citizen-profile-stats strong{display:block;font-size:23px;font-weight:500;color:#42664a;margin-top:6px}.citizen-profile-stats em{font-size:12px;font-style:normal;color:#a2ac96}.citizen-positive{color:#749963;font-size:11px}.citizen-detail h3{font-size:12px;font-weight:600;margin:24px 0 14px;color:#54704d}.citizen-needs>div{display:grid;grid-template-columns:1fr auto;gap:5px;font-size:10px;color:#7e8b71;margin:12px 0}.citizen-needs strong{font-size:10px;font-weight:500}.citizen-needs .progress{grid-column:1/-1;height:4px;background:#edf0e5;margin:0}.citizen-facts{display:grid;grid-template-columns:1fr 1.4fr;font-size:10px;gap:12px;color:#879278}.citizen-facts dd{margin:0;text-align:right;color:#4e6d4e;overflow-wrap:anywhere}.citizen-hire{background:#edf3e5;border-radius:8px;padding:13px;margin:20px 0}.citizen-hire label{font-size:11px}.citizen-hire select{max-width:100%;width:100%;font-size:11px}.citizen-hire button{font-size:11px;width:100%}.citizen-hire small{display:block;margin-top:10px;font-size:9px;line-height:1.7;color:#8b977e}.citizen-traits{display:flex;flex-direction:column;gap:10px}.citizen-traits>span{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#819074}.citizen-traits strong{font-weight:500;color:#54774f;white-space:nowrap}.citizen-memories{list-style:none;padding:0;margin:0}.citizen-memories li{padding:0 0 12px 13px;border-left:2px solid #e0e8d5;margin-bottom:4px}.citizen-memories small{font-size:8px;letter-spacing:1px;color:#a0ab90}.citizen-memories p{font-size:11px;line-height:1.7;margin:6px 0 0;color:#6c7f61}.citizen-detail .notice{font-size:10px;line-height:1.8;padding:12px}.citizen-detail .small{font-size:10px;line-height:1.9}.citizen-detail .empty{font-size:12px}
@media(max-width:1350px){.citizen-role-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.citizen-layout{grid-template-columns:minmax(0,1fr) 290px}.citizen-grid{grid-template-columns:1fr}.citizen-filters{grid-template-columns:1fr 1fr}.citizen-filters>label:first-child{grid-column:1/-1}.citizen-hero h1{font-size:32px}}
@media(max-width:900px){.citizen-layout{grid-template-columns:1fr}.citizen-detail{position:static}.citizen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.citizen-hero{align-items:stretch;flex-direction:column;gap:15px}.citizen-hero p{margin:0}.citizen-preset{max-width:none;min-width:0}.citizen-filters{grid-template-columns:1fr 1fr}.citizen-role{padding:12px}.citizen-role>strong{font-size:21px}.citizen-role>small{font-size:9px}.citizen-hero h1{font-size:30px}.citizen-profile-top h2{font-size:26px}}
@media(max-width:480px){.citizen-grid{grid-template-columns:1fr}.citizen-role-grid{gap:5px}.citizen-role{padding:10px 7px;gap:8px 0}.citizen-role>span{font-size:16px}.citizen-role>strong{font-size:19px}.citizen-role>small{font-size:8px}.citizen-hero p{font-size:12px}.citizen-detail{padding:20px}.citizen-profile-stats{gap:32px}}

.branch-ladder{list-style:none;padding:0;margin:24px 0}.branch-ladder li{display:flex;gap:12px;margin:0 0 14px;opacity:.5}.branch-ladder li.unlocked{opacity:1}.branch-ladder b{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid #d5dfc9;border-radius:50%;color:#738365;flex-shrink:0}.branch-ladder .unlocked b{background:#4f795a;color:#f5f4e4;border-color:#4f795a}.branch-ladder strong{font-size:11px;font-weight:500;line-height:1.7;display:block}.branch-ladder small{display:block;font-size:10px;line-height:1.8;color:#8a987a}.own-competitor{background:#edf4e5}.trade-partner{border-top:1px solid #dce5d2;padding-top:15px;margin-top:20px}.citizen-detail{scroll-margin-top:20px}form[data-form=exam] label{font-size:12px;line-height:1.8}form[data-form=exam] select{font-size:11px;max-width:100%;width:100%}

.city-mode .layout>aside{overflow-y:auto}.city-mode nav button{min-height:44px;padding-top:5px;padding-bottom:5px}@media(max-width:700px){.city-mode .layout>aside{overflow-y:hidden}.city-mode nav button{min-height:38px}}
