/* Generated from static/css/src/pages/den-haag-rental-guide.css.
 * Edit source modules and run: python tools/build_css.py
 */
/* Expatus page entry: den-haag-rental-guide.html
 * Import order mirrors the pre-refactor cascade. Do not reorder casually.
 */
/*
 * Expatus reusable UI primitives.
 * Public component classes always use the `expatus-` prefix. Page-specific
 * selectors belong in `pages/_partials/` and must not be added here.
 */

:root{
  --expatus-color-ink:#18211d;
  --expatus-color-muted:#69706b;
  --expatus-color-green:#1f513c;
  --expatus-color-green-soft:#eef5f1;
  --expatus-color-warm:#fbf6e9;
  --expatus-color-border:#e5e2dc;
  --expatus-color-surface:#fff;
  --expatus-radius-sm:9px;
  --expatus-radius-md:12px;
  --expatus-radius-lg:16px;
  --expatus-shadow-soft:0 5px 20px rgba(28,58,45,.06);
}

:where(.expatus-panel){
  border:1px solid var(--expatus-color-border);
  border-radius:var(--expatus-radius-lg);
  background:var(--expatus-color-surface);
}

:where(.expatus-notice){
  padding:12px 14px;
  border:1px solid #d9e5de;
  border-radius:var(--expatus-radius-md);
  background:var(--expatus-color-green-soft);
  color:#486055;
  font-size:12px;
  line-height:1.7;
}
:where(.expatus-notice--warm){border-color:#ead8a9;background:var(--expatus-color-warm);color:#675b3d}
:where(.expatus-notice--danger){border-color:#edd5cf;background:#fff3ef;color:#795249}

:where(.expatus-table){
  width:100%;
  overflow:hidden;
  border:1px solid var(--expatus-color-border);
  border-radius:var(--expatus-radius-md);
  background:var(--expatus-color-surface);
}

:where(.expatus-field){display:grid;gap:6px}
:where(.expatus-field__label){color:#35423b;font-size:12px;font-weight:750}
:where(.expatus-input,.expatus-select,.expatus-textarea){
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:1px solid #ddd9d2;
  border-radius:var(--expatus-radius-sm);
  background:#fff;
  color:var(--expatus-color-ink);
  font:inherit;
}
:where(.expatus-input,.expatus-select,.expatus-textarea):focus{
  border-color:#7fa18f;
  outline:3px solid rgba(56,111,82,.12);
}

:where(.expatus-button){
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 13px;
  border:1px solid transparent;
  border-radius:var(--expatus-radius-sm);
  background:var(--expatus-color-green);
  color:#fff;
  font:inherit;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}
:where(.expatus-button--secondary){border-color:#d9e3dd;background:#fff;color:var(--expatus-color-green)}

.expatus-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.expatus-related-card{padding:15px;border:1px solid #e7e4de;border-radius:12px;background:#fff;color:inherit;text-decoration:none}
.expatus-related-card__summary{margin:5px 0 0;color:#6d716c;font-size:12px}
.expatus-action-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px}


:root{--primary:#1a3a2f;--primary-light:#2d5a3f;--primary-lighter:#eaf0ed;--bg:#faf9f7;--bg-warm:#f5f3f0;--card:#fff;--border:#e8e5e0;--border-light:#f0ede8;--text:#1a1a1a;--text-secondary:#555;--text-muted:#888;--radius:12px;--radius-sm:8px;--radius-lg:16px;--radius-xl:20px;--shadow:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000f}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.6}.container{max-width:960px;margin:0 auto;padding:0 20px}.navbar{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#fffffff2;position:sticky;top:0}.navbar-inner{justify-content:space-between;align-items:center;max-width:960px;margin:0 auto;padding:14px 20px;display:flex}.logo{color:var(--text);align-items:center;gap:8px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.logo-icon{background:var(--primary);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.nav-links{align-items:center;gap:24px;display:flex}.nav-links a{color:var(--text-secondary);font-size:13px;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--primary)}.nav-account{border:1px solid var(--border);background:#fff;border-radius:8px;padding:6px 10px;font-weight:600}.nav-update{color:var(--text-muted);border-left:1px solid var(--border);padding-left:16px;font-size:12px}.hero{border-radius:0 0 var(--radius-xl) var(--radius-xl);background:linear-gradient(135deg,#1a3a2f 0%,#2d5a3f 100%);margin:0 -20px 40px;padding:48px 20px 40px;position:relative;overflow:hidden}.hero:before{content:"";background:#ffffff08;border-radius:50%;width:300px;height:300px;position:absolute;top:-80px;right:-80px}.hero-inner{z-index:1;max-width:680px;margin:0 auto;position:relative}.hero-tag{color:#ffffffd9;background:#ffffff1a;border:1px solid #fff3;border-radius:20px;align-items:center;gap:6px;margin-bottom:20px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.hero h1{color:#fff;letter-spacing:-.5px;margin-bottom:16px;font-size:36px;font-weight:800;line-height:1.2}.hero-subtitle{color:#ffffffbf;max-width:520px;margin-bottom:28px;font-size:15px;line-height:1.7}.hero-btns{flex-wrap:wrap;gap:12px;display:flex}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:6px;padding:12px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-white{color:var(--primary);background:#fff}.btn-white:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-ghost{color:#fff;background:#ffffff14;border:1px solid #ffffff40}.btn-ghost:hover{background:#ffffff26}.section{margin-bottom:48px}.section-label{color:var(--text-muted);letter-spacing:.5px;margin-bottom:8px;font-size:12px;font-weight:600}.section-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px;margin-bottom:20px;display:flex}.section-title{color:var(--text);letter-spacing:-.3px;font-size:22px;font-weight:700}.section-subtitle{color:var(--text-muted);font-size:14px}.favorites-panel{margin-bottom:24px;scroll-margin-top:82px}.favorites-title{margin-bottom:12px;font-size:16px;font-weight:700}.favorites-empty{border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);background:#fff;padding:18px;font-size:13px}.phase-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;display:grid}.phase-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;text-align:left;color:inherit;padding:24px;font-family:inherit;text-decoration:none;transition:all .25s;display:block;position:relative}.phase-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.phase-card.active{border-color:var(--primary-light);background:var(--primary-lighter)}.phase-num{color:var(--text-muted);margin-bottom:12px;font-size:12px;font-weight:700}.phase-name{color:var(--text);margin-bottom:8px;font-size:17px;font-weight:700}.phase-desc{color:var(--text-secondary);margin-bottom:16px;font-size:13px;line-height:1.6}.phase-arrow{color:var(--primary-light);font-size:18px;transition:transform .2s}.phase-card:hover .phase-arrow{transform:translate(4px)}.phase-tooltip{z-index:20;color:#fff;opacity:0;visibility:hidden;pointer-events:none;background:#173d31;border-radius:10px;width:250px;padding:14px 16px;transition:opacity .16s,transform .16s,visibility .16s;position:absolute;top:calc(100% + 10px);left:12px;transform:translateY(-5px);box-shadow:0 12px 28px #14302633}.phase-tooltip:before{content:"";border:6px solid #0000;border-bottom-color:#173d31;position:absolute;bottom:100%;left:22px}.phase-tooltip strong{margin-bottom:5px;font-size:12px;display:block}.phase-tooltip span{color:#d3e3dc;font-size:11px;line-height:1.6;display:block}.phase-card:hover .phase-tooltip,.phase-card:focus-visible .phase-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.phase-card:nth-child(4) .phase-tooltip{left:auto;right:12px}.phase-card:nth-child(4) .phase-tooltip:before{left:auto;right:22px}#platforms,#contract-guide,#checkin-guide{scroll-margin-top:82px}.phase-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin:-32px 0 40px;padding:28px;display:none}.phase-panel.open{animation:.3s fadeIn;display:block}.phase-panel h3{margin-bottom:16px;font-size:18px;font-weight:700}.phase-panel p,.phase-panel li{color:var(--text-secondary);font-size:14px;line-height:1.7}.phase-panel ul{margin:12px 0;padding:0;list-style:none}.phase-panel li{padding:6px 0 6px 24px;position:relative}.phase-panel li:before{content:"";background:var(--primary-light);border-radius:50%;width:6px;height:6px;position:absolute;top:14px;left:0}.highlight-box{background:var(--primary-lighter);border-left:3px solid var(--primary-light);border-radius:0 var(--radius) var(--radius) 0;color:var(--text-secondary);margin:16px 0;padding:16px 18px;font-size:14px;line-height:1.7}.highlight-box strong{color:var(--primary)}.workspace-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);grid-template-columns:1fr 1fr;align-items:start;gap:32px;margin-bottom:40px;padding:32px;display:grid}@media (width<=720px){.workspace-section{grid-template-columns:1fr}}.workspace-tag{color:var(--text-muted);background:var(--bg-warm);border-radius:6px;margin-bottom:12px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.workspace-left h2{color:var(--text);margin-bottom:12px;font-size:24px;font-weight:700;line-height:1.3}.workspace-left p{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.7}.workspace-right{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.workspace-right h3{color:var(--text);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:700;display:flex}.workspace-right h3 .count{color:var(--text-muted);font-size:12px;font-weight:500}.progress-item{border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:10px 0;font-size:13px;display:flex}.progress-item:last-child{border-bottom:none}.progress-item .num{width:20px;color:var(--text-muted);font-size:11px;font-weight:600}.progress-item .name{color:var(--text);flex:1;font-weight:500}.progress-item .status{border-radius:10px;padding:3px 8px;font-size:11px;font-weight:600}.status-done{background:var(--primary-lighter);color:var(--primary-light)}.status-wait{color:#b87333;background:#fff3e0}.status-active{color:#2d5a3f;background:#e8f5e9}.workspace-tools{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.tool-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;font-size:12px;text-decoration:none;display:block}.tool-card strong{color:var(--text);margin-bottom:4px;font-size:13px;display:block}.tool-card span{color:var(--text-muted);font-size:11px}.search-section{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px}.search-bar{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.search-input-wrapper{flex:1;min-width:200px;position:relative}.search-input-wrapper input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;padding:12px 16px 12px 40px;font-family:inherit;font-size:14px;transition:all .2s}.search-input-wrapper input:focus{border-color:var(--primary-light);background:#fff;outline:none}.search-icon{color:var(--text-muted);font-size:14px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-bar select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;min-width:140px;padding:12px 16px;font-family:inherit;font-size:14px}.search-bar select:focus{border-color:var(--primary-light);outline:none}.filter-tabs{flex-wrap:wrap;gap:8px;display:flex}.filter-tab{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:#fff;border-radius:20px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.filter-tab:hover{background:var(--bg-warm)}.filter-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.platform-section-title{color:var(--text-muted);margin-bottom:16px;font-size:13px}.platform-section-title .count{color:var(--text-secondary);font-weight:600}.platform-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:16px;transition:all .2s;overflow:hidden}.platform-card:hover{box-shadow:var(--shadow-md);border-color:#d0cdc8}.platform-card-inner{align-items:flex-start;gap:16px;padding:20px;display:flex}.platform-avatar{color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:13px;font-weight:800;display:flex}.platform-body{flex:1;min-width:0}.platform-header-row{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:4px;display:flex}.platform-name-wrap{min-width:0}.platform-name{color:var(--text);align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.platform-city{color:var(--text-muted);margin-top:2px;font-size:12px}.platform-type-tag{white-space:nowrap;border-radius:20px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:600}.type-student{color:#2d5a3f;background:#e8f0e9}.type-commercial{color:#b87333;background:#fdf2e8}.type-social{color:#7b5a8f;background:#f0e8f5}.type-short{color:#4a7a9f;background:#e8f0f5}.platform-desc{color:var(--text-secondary);margin:10px 0;font-size:14px;line-height:1.6}.platform-meta-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.meta-tag{background:var(--bg-warm);color:var(--text-secondary);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600}.meta-tag.price{color:var(--primary);background:var(--primary-lighter)}.meta-tag.fee{color:var(--text-muted)}.meta-tag.free{color:#2d5a3f;background:#e8f5e9}.platform-actions{gap:10px;display:flex}.btn-sm{border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border);color:var(--text-secondary);background:#fff;align-items:center;gap:4px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-sm:hover{background:var(--bg-warm)}.btn-sm-primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn-sm-primary:hover{background:var(--primary-light)}.star-btn{cursor:pointer;color:#ddd;background:0 0;border:none;padding:4px;font-size:18px;line-height:1;transition:all .2s}.star-btn:hover,.star-btn.active{color:#f5a623}.detail-panel{border-top:1px solid var(--border-light);padding:16px 20px 20px 80px;display:none}.detail-panel.open{animation:.3s fadeIn;display:block}.pros-cons{grid-template-columns:1fr 1fr;gap:24px;display:grid}.pros h4{color:#2d5a3f;margin-bottom:10px;font-size:13px;font-weight:700}.cons h4{color:#c62828;margin-bottom:10px;font-size:13px;font-weight:700}.pros ul,.cons ul{color:var(--text-secondary);padding:0;font-size:13px;list-style:none}.pros li,.cons li{padding:4px 0;line-height:1.5}.pros li:before{content:"✓ ";color:#43a047;font-weight:700}.cons li:before{content:"✗ ";color:#e53935;font-weight:700}.no-results{text-align:center;color:var(--text-muted);padding:50px;font-size:15px}.tips-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:40px;display:grid}@media (width<=640px){.tips-grid{grid-template-columns:1fr}}.tip-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.tip-card h3{color:var(--text);margin-bottom:8px;font-size:17px;font-weight:700}.tip-card>p{color:var(--text-muted);margin-bottom:16px;font-size:13px;line-height:1.5}.tip-list{padding:0;list-style:none}.tip-list li{color:var(--text-secondary);border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:8px 0;font-size:14px;display:flex}.tip-list li:last-child{border-bottom:none}.tip-list li:before{content:"✓";color:var(--primary-light);font-size:12px;font-weight:700}.deposit-banner{border-radius:var(--radius-lg);color:#fff;background:linear-gradient(135deg,#1a3a2f 0%,#2d5a3f 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:32px;display:flex}.deposit-banner h2{margin-bottom:8px;font-size:20px;font-weight:700}.deposit-banner p{color:#ffffffbf;max-width:480px;font-size:14px;line-height:1.6}.guide-cta{background:var(--bg-warm);border:1px solid var(--border);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;padding:24px;display:flex}.guide-cta-text h3{color:var(--text);margin-bottom:4px;font-size:16px;font-weight:700}.guide-cta-text p{color:var(--text-muted);font-size:13px;line-height:1.5}footer{border-top:1px solid var(--border);margin-top:48px;padding:32px 20px}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:960px;margin:0 auto;display:flex}.footer-brand{color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.footer-info{color:var(--text-muted);text-align:center;max-width:420px;font-size:12px;line-height:1.6}.footer-tag{color:var(--text-muted);font-size:11px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.hero h1{font-size:26px}.nav-links a:not(.nav-account){display:none}.nav-links{gap:0}.phase-grid{grid-template-columns:1fr}.platform-card-inner{padding:16px}.detail-panel{padding-left:16px}.deposit-banner{padding:24px}.footer-inner{text-align:center;flex-direction:column}.pros-cons{grid-template-columns:1fr}.guide-cta{padding:20px}}


/* Homepage v0.2 preview overrides */
.logo-icon{font-size:0;display:flex;align-items:center;justify-content:center;background:#173f32;overflow:hidden}
.logo-icon svg{width:27px;height:27px;display:block}
.hero-tag{gap:0}
.hero-tag .flag-mark{display:none}
.section.phase-section{padding-top:38px}
.phase-section .section-title{margin-bottom:18px}
.workspace-section{margin-top:38px}
.workspace-left>p:first-of-type{max-width:520px}
.workspace-note{font-size:12px!important;color:var(--text-muted)!important;margin-top:12px!important}
.workspace-tools{display:none!important}
.resource-heading{margin-bottom:18px}
.city-guide-banner{background:linear-gradient(135deg,#f5f1e8 0%,#f8f6f0 100%);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 22px;margin:4px 0 22px}
.city-guide-copy{min-width:0}
.city-guide-eyebrow{font-size:12px;color:var(--primary);font-weight:800;margin-bottom:4px;letter-spacing:.02em}
.city-guide-title{font-size:16px;font-weight:800;color:var(--text);margin-bottom:4px}
.city-guide-desc{font-size:13px;color:var(--text-muted);line-height:1.55}
.platform-card{position:relative}
.platform-actions{margin-top:2px}
.platform-name .star-btn{margin-left:2px}
.star-btn.is-favorite{color:#f5a623}
.platform-type-tag.type-operator{color:#315f58;background:#e7f1ef}
.platform-type-tag.type-international{color:#4a6590;background:#eaf0f8}
.platform-type-tag.type-community{color:#725483;background:#f1e9f4}
.platform-type-tag.type-general{color:#8b5e31;background:#f7eee4}
.platform-type-tag.type-student{color:#2d5a3f;background:#e8f0e9}
.meta-tag.note{color:#5d615e;background:#f2f1ed}
.tips-grid{margin-top:44px}
.tip-card{position:relative}
.tip-card h3{margin-bottom:6px}
.tip-kicker{font-size:14px!important;color:var(--text-secondary)!important;font-weight:700;margin-bottom:6px!important}
.tip-summary{font-size:13px!important;color:var(--text-muted)!important;margin-bottom:16px!important;line-height:1.55!important}
.checklist-download{display:inline-flex;align-items:center;gap:7px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border-light);width:100%;color:var(--primary);font-size:13px;font-weight:700;text-decoration:none;position:relative}
.checklist-download:hover{color:var(--primary-light)}
.checklist-download[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;bottom:34px;left:0;background:#1f2925;color:#fff;font-size:11px;font-weight:500;padding:6px 8px;border-radius:6px;white-space:nowrap;box-shadow:var(--shadow-md)}
.preview-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:#1d2e27;color:#fff;padding:10px 16px;border-radius:9px;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:100}
.preview-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.is-filtered-out{display:none!important}
@media (max-width:640px){
  .city-guide-banner{align-items:flex-start;flex-direction:column}
  .city-guide-banner .btn-sm{width:100%;justify-content:center}
}


:root{--primary:#1a3a2f;--primary-light:#2d5a3f;--primary-lighter:#eaf0ed;--bg:#faf9f7;--bg-warm:#f5f3f0;--card:#fff;--border:#e8e5e0;--border-light:#f0ede8;--text:#1a1a1a;--text-secondary:#555;--text-muted:#888;--radius:12px;--radius-sm:8px;--radius-lg:16px;--radius-xl:20px;--shadow:0 1px 3px #0000000a;--shadow-md:0 4px 16px #0000000f}
body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1.72}.city-container{max-width:960px;margin:0 auto;padding:0 20px}.city-hero{background:linear-gradient(135deg,#1a3a2f 0%,#2d5a3f 100%);border-radius:0 0 20px 20px;margin:0 -20px 34px;padding:42px 40px 38px;color:white;position:relative;overflow:hidden}.city-hero:after{content:"";width:310px;height:310px;border-radius:50%;background:#ffffff08;position:absolute;right:-90px;top:-110px}.city-hero:before{content:"";width:150px;height:150px;border:1px solid #ffffff0d;border-radius:50%;position:absolute;right:90px;bottom:-95px}.city-hero-inner{position:relative;z-index:1;max-width:800px}.city-hero .eyebrow{display:inline-block;border:1px solid #ffffff40;background:#ffffff18;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:700;margin-bottom:16px}.city-hero h1{font-size:34px;line-height:1.25;letter-spacing:-.4px;margin:0 0 12px;font-weight:800}.city-hero p{font-size:15px;color:#ffffffd8;max-width:760px;margin:0}.city-hero .hero-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.hero-chip{font-size:12px;color:white;text-decoration:none;border:1px solid #ffffff38;background:#ffffff10;padding:6px 10px;border-radius:999px}.hero-chip:hover{background:#ffffff20}
.guide-section{margin:0 0 50px}.guide-label{font-size:12px;color:var(--text-muted);font-weight:700;letter-spacing:.04em;margin-bottom:6px}.guide-title{font-size:23px;line-height:1.35;font-weight:800;letter-spacing:-.25px;margin-bottom:8px}.guide-intro{font-size:14px;color:var(--text-secondary);max-width:840px;margin-bottom:20px}
.snapshot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.snapshot-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;min-height:138px}.snapshot-kicker{font-size:11px;color:var(--text-muted);font-weight:800;letter-spacing:.02em;display:block;margin-bottom:9px}.snapshot-card strong{font-size:22px;line-height:1.2;color:var(--primary)}.snapshot-card p{font-size:12px;color:var(--text-secondary);margin:8px 0 0;line-height:1.65}.rent-compare{margin-top:12px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px}.rent-row{display:grid;grid-template-columns:92px 1fr 58px;gap:10px;align-items:center;padding:5px 0;font-size:11px;color:var(--text-secondary)}.rent-row b{text-align:right;font-size:11px}.rent-bar{height:7px;border-radius:999px;background:#f0eeeb;overflow:hidden}.rent-bar i{display:block;height:100%;border-radius:999px;background:#b7c7bf}.rent-row.active{font-weight:800;color:var(--primary)}.rent-row.active .rent-bar i{background:var(--primary-light)}
.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.route-card{position:relative;background:white;border:1px solid var(--border);border-radius:16px;padding:20px;text-decoration:none;color:inherit;transition:.18s ease}.route-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#cad9d1}.route-no{position:absolute;right:15px;top:13px;font-size:11px;color:#b4b1aa;font-weight:800}.route-icon{font-size:22px;margin-bottom:10px}.route-card h3{font-size:16px;margin:0 0 7px}.route-card p{font-size:12px;color:var(--text-secondary);margin:0;min-height:64px}.route-path{font-size:11px;background:var(--bg-warm);border-radius:8px;padding:8px 9px;margin-top:12px;color:#62605b}.route-link{font-size:12px;color:var(--primary-light);font-weight:800;display:block;margin-top:12px}.longterm-strip{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-top:14px;background:#eff4f1;border:1px solid #d9e5de;border-radius:14px;padding:15px 18px}.longterm-strip>div{display:grid;grid-template-columns:auto auto 1fr;gap:8px;align-items:center}.longterm-strip span{font-size:18px}.longterm-strip strong{font-size:13px}.longterm-strip p{font-size:12px;color:var(--text-secondary);margin:0}.longterm-strip>a{white-space:nowrap;color:var(--primary);font-size:12px;font-weight:800;text-decoration:none}
.student-split{display:grid;grid-template-columns:1fr 1fr;gap:16px}.student-path{background:white;border:1px solid var(--border);border-radius:16px;padding:20px}.student-path-head span{font-size:11px;display:inline-block;background:var(--primary-lighter);color:var(--primary-light);padding:3px 7px;border-radius:999px;font-weight:800;margin-bottom:8px}.student-path-head h3{font-size:17px;line-height:1.35;margin:0 0 8px}.student-path>p{font-size:13px;color:var(--text-secondary);margin:0 0 14px}.step-list{list-style:none;padding:0;margin:0 0 14px;counter-reset:item}.step-list li{display:grid;grid-template-columns:21px 1fr;gap:0 8px;position:relative;padding:9px 0;border-top:1px solid var(--border-light);counter-increment:item}.step-list li:before{content:counter(item);grid-row:1/3;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--primary-lighter);color:var(--primary);font-size:11px;font-weight:800;margin-top:1px}.step-list b{font-size:12px}.step-list span{font-size:12px;color:var(--text-secondary);line-height:1.55}.official-link.inline{display:inline-flex}.room-reminder{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin-top:14px;padding:15px 16px;background:#f7f9f8;border:1px solid #dae5df;border-radius:14px}.room-logo{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--primary);color:white;font-size:18px;font-weight:900}.room-reminder strong{font-size:13px}.room-reminder p{font-size:12px;color:var(--text-secondary);margin:3px 0 0}.room-reminder>a{font-size:12px;color:var(--primary);font-weight:800;text-decoration:none;white-space:nowrap}
.anchor-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.anchor-card{background:white;border:1px solid var(--border);border-radius:14px;padding:17px}.anchor-top{display:flex;gap:10px;align-items:flex-start}.anchor-top>span{width:34px;height:34px;border-radius:9px;background:var(--primary-lighter);display:grid;place-items:center}.anchor-top small{font-size:11px;color:var(--text-muted);font-weight:700}.anchor-top h3{font-size:15px;margin:0}.anchor-card>p{font-size:12px;color:var(--text-secondary);margin:10px 0}.area-tags{display:flex;gap:6px;flex-wrap:wrap}.area-tags span{font-size:11px;background:var(--bg-warm);padding:3px 7px;border-radius:999px;color:#69665f}
.permit-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:10px;align-items:stretch}.permit-step{background:#fff;border:1px solid var(--border);border-radius:15px;padding:17px;display:grid;grid-template-columns:28px 1fr;gap:10px}.permit-step>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--primary-lighter);color:var(--primary);font-size:11px;font-weight:900}.permit-step small{font-size:11px;color:var(--text-muted);font-weight:700;display:block}.permit-step strong{display:block;font-size:13px;line-height:1.45;margin:2px 0 5px}.permit-step p{font-size:12px;color:var(--text-secondary);margin:0}.permit-step.strong{border-color:#c8dbd1;background:#f8fbf9}.permit-arrow{align-self:center;color:#aaa;font-size:18px}.permit-income-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:10px;margin-top:12px}.permit-income{background:#f7f6f3;border:1px solid var(--border);border-radius:12px;padding:13px 14px}.permit-income small{display:block;font-size:11px;color:var(--text-muted);min-height:34px}.permit-income strong{display:block;font-size:13px;color:var(--primary);margin:4px 0}.permit-income span{font-size:12px;color:var(--text-secondary)}.permit-income.note{background:#fff9ea;border-color:#eee0b6}.permit-income.note strong{color:#6d5926}
.brp-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:16px}.brp-main,.brp-side{background:white;border:1px solid var(--border);border-radius:16px;padding:20px}.brp-main>p{font-size:13px;color:var(--text-secondary);margin:0 0 9px}.check-list.compact li{padding-top:6px;padding-bottom:6px}.brp-side>strong{font-size:14px}.compare-mini{margin-top:12px}.compare-mini>div{padding:12px 0;border-top:1px solid var(--border-light)}.compare-mini b{display:block;font-size:12px;color:var(--primary)}.compare-mini span{display:block;font-size:12px;color:var(--text-secondary);margin-top:3px}
.channel-block{padding:28px 0 32px;border-top:1px solid var(--border)}.channel-block:first-of-type{border-top:0;padding-top:6px}.channel-head-simple{padding:0 4px 16px}.channel-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.channel-title-line h3{font-size:19px;line-height:1.25;margin:0 0 2px}.channel-title-line small{display:block;color:var(--text-muted);font-size:11px}.channel-type-icon{width:38px;height:38px;display:grid;place-items:center;background:var(--primary-lighter);border-radius:10px;font-size:19px}.channel-head-simple>p{font-size:14px;color:var(--text-secondary);max-width:850px;margin:0 0 11px}.risk-badge{margin-left:auto;font-size:11px;font-weight:800;border-radius:999px;padding:5px 9px;border:1px solid}.risk-low{color:#1d6b47;background:#eef8f2;border-color:#cfe7d8}.risk-medium{color:#8a6418;background:#fff8e8;border-color:#ecdca9}.risk-high{color:#9a3e34;background:#fff1ef;border-color:#efc7c1}.mini-flow{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.flow-step{font-size:12px;padding:5px 9px;background:var(--bg-warm);border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-weight:600}.flow-arrow{font-size:11px;color:var(--text-muted)}.channel-platforms-simple{padding:0 0 0 48px}.local-platform{background:white;border:1px solid var(--border);border-radius:12px;padding:16px 18px;margin-top:10px;display:grid;grid-template-columns:1fr auto;gap:16px;box-shadow:var(--shadow)}.local-platform:first-child{margin-top:0}.local-platform-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.local-platform-title h4{font-size:15px;margin:0}.tag{font-size:11px;font-weight:700;border-radius:999px;background:var(--primary-lighter);color:var(--primary-light);padding:3px 8px}.tag-neutral{background:var(--bg-warm);color:var(--text-muted)}.local-platform p{font-size:13px;color:var(--text-secondary);margin:6px 0 8px}.fact-row{display:flex;gap:7px;flex-wrap:wrap}.fact{font-size:11px;color:#666;background:#f6f4f1;border-radius:6px;padding:4px 7px}.official-link{align-self:center;white-space:nowrap;color:var(--primary);font-size:12px;font-weight:800;text-decoration:none;border:1px solid var(--border);padding:8px 10px;border-radius:9px}.official-link:hover{background:var(--primary-lighter);border-color:#cfded6}.privacy-tip{font-size:12px;color:#5d5b50;background:#fff9ea;border:1px solid #eee0b6;border-radius:10px;padding:10px 12px;margin-top:10px}.risk-panel{background:#fff5f3;border:1px solid #efcbc5;border-radius:12px;padding:13px 14px;margin-top:14px}.risk-panel strong{font-size:12px;color:#8a3a31}.risk-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 18px;margin-top:8px}.risk-grid span{font-size:12px;color:#6a504c;position:relative;padding-left:14px}.risk-grid span:before{content:"•";position:absolute;left:0;font-weight:900;color:#b35347}
.map-shell{background:white;border:1px solid var(--border);border-radius:16px;overflow:hidden}.map-copy{padding:20px 22px 10px}.map-copy h3{font-size:17px;margin-bottom:4px}.map-copy p{font-size:13px;color:var(--text-secondary);margin:0}.map-legend{display:flex;flex-wrap:wrap;gap:8px;padding:0 22px 14px}.legend-chip,.map-filter{font-size:11px;background:var(--bg-warm);border:1px solid var(--border);padding:5px 9px;border-radius:999px;color:var(--text-secondary)}.legend-commute{background:#edf4fa;border-color:#d2e1ee;color:#3f617b}.map-filter{cursor:pointer;font-family:inherit}.map-filter.active{background:var(--primary);color:white;border-color:var(--primary)}.map-area{height:380px;border-top:1px solid var(--border)}.map-footnote{padding:10px 18px 14px;color:var(--text-muted);font-size:11px;background:#fcfbf9}.leaflet-popup-content{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;line-height:1.5}.popup-title{font-weight:800;margin-bottom:3px}.popup-meta{font-size:11px;color:#666}
.check-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}.check-card{background:white;border:1px solid var(--border);border-radius:16px;padding:22px}.check-card h3{font-size:17px;margin-bottom:12px}.check-list{list-style:none;padding:0;margin:0}.check-list li{position:relative;padding:8px 0 8px 26px;color:var(--text-secondary);font-size:13px;border-bottom:1px solid var(--border-light)}.check-list li:last-child{border-bottom:0}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--primary-light);font-weight:900}.quick-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.quick-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:12px;font-weight:800;text-decoration:none;padding:8px 10px;border:1px solid var(--border);border-radius:9px}.quick-link:hover{background:var(--primary-lighter)}.side-note{background:var(--bg-warm);border-radius:12px;padding:15px}.side-note strong{font-size:13px}.side-note p{font-size:12px;color:var(--text-secondary);margin:5px 0 0}.bottom-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.action-card{background:white;border:1px solid var(--border);border-radius:14px;padding:20px;text-decoration:none;color:inherit}.action-card:hover{border-color:#cfded6;box-shadow:var(--shadow-md)}.action-card small{font-size:11px;color:var(--text-muted);display:block;margin-bottom:4px}.action-card strong{font-size:16px}.action-card p{font-size:12px;color:var(--text-secondary);margin:6px 0 0}.source-note{font-size:11px;color:var(--text-muted);line-height:1.7;border-top:1px dashed var(--border);padding-top:12px;margin-top:16px}
.marker-dot{width:17px;height:17px;border-radius:50%;border:3px solid white;box-shadow:0 1px 5px #0004}.marker-house{background:#2d5a3f}.marker-uni{background:#6b5a8e}.marker-station{background:#426d94}.marker-area{background:#b18b62}.marker-commute{background:#426d94}.marker-core{background:#1a3a2f}
@media(max-width:900px){.snapshot-grid{grid-template-columns:repeat(2,1fr)}.route-grid{grid-template-columns:1fr}.student-split{grid-template-columns:1fr}.permit-flow{grid-template-columns:1fr}.permit-arrow{transform:rotate(90deg);justify-self:center}.permit-income-grid{grid-template-columns:1fr 1fr}.permit-income.note{grid-column:1/-1}}
@media(max-width:760px){.nav-links a:not(.nav-account){display:none}.city-hero{padding:34px 20px 30px}.city-hero h1{font-size:28px}.snapshot-grid,.anchor-grid,.permit-income-grid,.brp-layout{grid-template-columns:1fr}.rent-row{grid-template-columns:78px 1fr 52px}.longterm-strip{grid-template-columns:1fr}.longterm-strip>div{grid-template-columns:auto 1fr}.longterm-strip p{grid-column:2}.room-reminder{grid-template-columns:auto 1fr}.room-reminder>a{grid-column:2}.channel-platforms-simple{padding-left:0}.local-platform{grid-template-columns:1fr}.official-link{justify-self:start}.risk-badge{margin-left:0}.risk-grid{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.bottom-actions{grid-template-columns:1fr}.map-area{height:350px}}

/* v0.3 additions */
.school-explainer{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.school-name-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px}.school-badge{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.02em;color:var(--primary);background:var(--primary-lighter);padding:4px 8px;border-radius:999px;margin-bottom:8px}.school-badge.secondary{color:#5f527d;background:#f1edf6}.school-name-card h3{font-size:17px;margin:0 0 6px}.school-name-card p{font-size:12px;color:var(--text-secondary);margin:0}.school-note{margin-top:12px;border-top:1px solid var(--border-light);padding-top:10px;font-size:11px;color:#66635f}.leiden-bridge{display:grid;grid-template-columns:auto 1fr;gap:14px;background:#eef4f1;border:1px solid #d3e1d9;border-radius:16px;padding:18px;margin-bottom:16px}.bridge-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#fff;font-size:20px}.leiden-bridge small{font-size:11px;color:var(--text-muted);font-weight:800}.leiden-bridge h3{font-size:17px;margin:1px 0 6px}.leiden-bridge p{font-size:12px;color:var(--text-secondary);margin:0}.bridge-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.bridge-options span{background:#ffffffa8;border:1px solid #dde7e1;border-radius:9px;padding:9px 10px;font-size:11px;color:#5d625e}
.safety-panel{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-top:16px}.safety-head{display:flex;justify-content:space-between;gap:18px;align-items:end;padding:18px 20px 14px}.safety-head small{font-size:11px;color:var(--text-muted);font-weight:800}.safety-head h3{font-size:17px;margin:2px 0 0}.safety-head a{font-size:11px;color:var(--primary);font-weight:800;text-decoration:none;white-space:nowrap}.safety-table-wrap{overflow:auto;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.safety-table{width:100%;border-collapse:collapse;min-width:760px}.safety-table th{background:#faf9f7;text-align:left;font-size:11px;color:var(--text-muted);padding:9px 12px;border-bottom:1px solid var(--border)}.safety-table td{font-size:11px;color:var(--text-secondary);padding:11px 12px;vertical-align:top;border-bottom:1px solid var(--border-light);line-height:1.55}.safety-table tr:last-child td{border-bottom:0}.safety-table td:first-child{color:var(--text);width:155px}.safety-table td:nth-child(2){width:115px}.watch-row{background:#fffaf0}.env-tag{display:inline-block;font-size:11px;padding:3px 7px;border-radius:999px;white-space:nowrap}.env-tag.residential{background:#edf4f0;color:#315c48}.env-tag.mixed{background:#f5f1e8;color:#7a642d}.env-tag.coast{background:#edf4f8;color:#42667c}.env-tag.hub{background:#fff0e7;color:#945632}.street-check{padding:14px 18px;display:grid;grid-template-columns:auto 1fr 1fr;gap:8px 16px;background:#fcfbf9}.street-check strong{font-size:12px;grid-row:1/3;align-self:start}.street-check span{font-size:11px;color:#65615c}
.static-map-card{margin:0;background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden}.static-map-card img,.static-map-card .standalone-map-svg{display:block;width:100%;height:auto;background:#f7f6f3}.static-map-card figcaption{padding:10px 16px 13px;font-size:11px;color:var(--text-muted);background:#fcfbf9;border-top:1px solid var(--border-light)}
.permit-meaning-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.meaning-card{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px}.meaning-card>span{font-size:20px}.meaning-card h3{font-size:14px;margin:7px 0 5px}.meaning-card p{font-size:12px;color:var(--text-secondary);margin:0}.wws-explainer{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:14px}.wws-copy small{font-size:11px;color:var(--text-muted);font-weight:800}.wws-copy h3{font-size:18px;margin:2px 0 7px}.wws-copy p{font-size:13px;color:var(--text-secondary);margin:0 0 9px}.wws-scale{border-left:1px solid var(--border-light);padding-left:16px}.scale-row{padding:10px 0;border-bottom:1px solid var(--border-light)}.scale-row span{font-size:13px;font-weight:900;color:#315c48}.scale-row b{display:block;font-size:13px}.scale-row small{font-size:11px;color:var(--text-muted)}.scale-row.mid span{color:#866a25}.scale-row.free span{color:#725f84}.wws-scale>p{font-size:11px;color:var(--text-muted);margin:10px 0 0}.permit-flow.detailed .permit-step{min-height:190px}.permit-example-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.permit-example-grid>div{background:#f8faf9;border:1px solid #dce7e1;border-radius:12px;padding:13px 14px}.permit-example-grid small{font-size:11px;color:var(--text-muted)}.permit-example-grid strong{display:block;font-size:13px;margin:3px 0}.permit-example-grid p{font-size:12px;color:var(--text-secondary);margin:0}.permit-action{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;background:#eff4f1;border:1px solid #d6e3db;border-radius:14px;padding:16px 18px;margin-top:12px}.permit-action span{font-size:13px}.permit-action ol{margin:8px 0 0;padding-left:19px;display:grid;grid-template-columns:1fr 1fr;gap:3px 28px}.permit-action li{font-size:12px;color:var(--text-secondary)}.permit-action>a{font-size:12px;color:var(--primary);font-weight:800;text-decoration:none;white-space:nowrap;background:#fff;border:1px solid #d6e3db;border-radius:9px;padding:8px 10px}
@media(max-width:900px){.school-explainer,.bridge-options,.permit-meaning-grid,.wws-explainer{grid-template-columns:1fr}.wws-scale{border-left:0;border-top:1px solid var(--border-light);padding-left:0;padding-top:10px}.permit-action{grid-template-columns:1fr}.permit-action>a{justify-self:start}.street-check{grid-template-columns:1fr 1fr}.street-check strong{grid-row:auto;grid-column:1/-1}}
@media(max-width:760px){.leiden-bridge{grid-template-columns:1fr}.bridge-icon{display:none}.street-check{grid-template-columns:1fr}.street-check strong{grid-column:auto}.permit-example-grid{grid-template-columns:1fr}.permit-action ol{grid-template-columns:1fr}.safety-head{align-items:flex-start;flex-direction:column}.static-map-card{border-radius:14px}}

.permit-practical{font-size:11px;color:#65615c;margin-top:10px;padding-top:9px;border-top:1px solid #dbe6df}.permit-practical b{color:var(--primary)}


/* v0.4 */
.work-overview{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-bottom:14px}.work-main,.work-side{background:#fff;border:1px solid var(--border);border-radius:16px;padding:20px}.work-main h3,.work-side h3{font-size:17px;margin:0 0 7px}.work-main>p,.work-side>p{font-size:12px;color:var(--text-secondary);margin:0 0 14px}.work-route{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.work-route>div{background:#f8faf9;border:1px solid #e1e9e4;border-radius:11px;padding:11px}.work-route small{display:block;font-size:11px;color:var(--text-muted);font-weight:800;margin-bottom:3px}.work-route b{display:block;font-size:12px;margin-bottom:3px}.work-route span{font-size:11px;color:var(--text-secondary);line-height:1.45}.doc-chips{display:flex;flex-wrap:wrap;gap:7px}.doc-chips span{font-size:11px;background:var(--bg-warm);border:1px solid var(--border);padding:5px 8px;border-radius:999px;color:#5f5b56}.work-tips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.work-tip{background:#fff;border:1px solid var(--border);border-radius:14px;padding:15px}.work-tip small{font-size:11px;font-weight:800;color:var(--text-muted)}.work-tip h4{font-size:13px;margin:3px 0 5px}.work-tip p{font-size:11px;color:var(--text-secondary);margin:0}.student-compact{display:grid;grid-template-columns:1fr 1fr;gap:14px}.student-compact .student-path{padding:18px}.student-compact .student-path>p{min-height:54px}.student-crosscity{margin-top:14px;background:#eef4f1;border:1px solid #d4e2da;border-radius:14px;padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.student-crosscity .icon{font-size:20px}.student-crosscity strong{font-size:13px}.student-crosscity p{font-size:12px;color:var(--text-secondary);margin:2px 0 0}.student-crosscity a{font-size:12px;color:var(--primary);font-weight:800;text-decoration:none;white-space:nowrap}.safety-quick{padding:13px 17px;background:#fcfbf9;font-size:11px;color:#65615c}.safety-quick b{color:var(--text)}.static-map-card .map-legend{display:flex;flex-wrap:wrap;gap:12px;padding:9px 15px;background:#fff;border-top:1px solid var(--border-light);font-size:11px;color:var(--text-muted)}.map-legend span{display:inline-flex;align-items:center;gap:5px}.map-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.map-dot.station{background:#426d94}.map-dot.school{background:#6b5a8e}.map-dot.housing{background:#2d5a3f}.permit-top-note{margin-bottom:14px;background:#fff8e9;border:1px solid #ecd8aa;border-radius:13px;padding:12px 14px;font-size:11px;color:#685a38}.permit-top-note b{color:#4d4127}
@media(max-width:900px){.work-overview,.student-compact{grid-template-columns:1fr}.work-route,.work-tips{grid-template-columns:1fr}.student-crosscity{grid-template-columns:1fr}.student-crosscity .icon{display:none}}


/* Expatus unified brand icon */
.brand-mark,.logo-icon,.brand-icon{background:transparent!important;box-shadow:none!important;overflow:visible!important}
.brand-mark img,.logo-icon img,.brand-icon img{display:block;width:100%;height:100%;object-fit:contain}

/* Shared site chrome only; all existing page styling stays in the original Turso files. */
.navbar>.navbar-inner,
.site-header>.header-inner,
header.nav>.nav-inner{
  width:100%;
  max-width:1180px!important;
  min-height:60px;
  height:auto!important;
  margin:0 auto;
  padding:12px 20px!important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

/* 2026-08-25 micro refinement: distinguish the three Hague permit concepts. */
body.den-haag-page .permit-meaning-grid{
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:stretch;
  gap:12px;
}
.permit-not-equal{
  align-self:center;
  justify-self:center;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border:1px solid #d9e4dd;
  border-radius:999px;
  background:#f5f8f6;
  color:#315b47;
  box-shadow:0 3px 12px rgba(28,66,48,.07);
  font-size:17px;
  font-weight:850;
  line-height:1;
}

/* Semantic summary icons replace the unrelated step number and generic arrow. */
.answer-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.answer-icon-network{background:#eef4f1!important;color:#285844!important}
.answer-icon-route{background:#fbf3e2!important;color:#836329!important}

/* One contextual strategy entrance at a real decision point in each article. */
.context-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
}
.context-heading>h2{margin-bottom:0!important}
.context-strategy-link{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:5px 10px;
  border:1px solid #d9e5de;
  border-radius:999px;
  background:#f4f8f5;
  color:#24543e;
  text-decoration:none;
  font-size:12px;
  font-weight:800;
  line-height:1.35;
  white-space:nowrap;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}
.context-strategy-link:hover{
  border-color:#abc7b7;
  background:#edf5f0;
  transform:translateY(-1px);
}

@media(max-width:900px){
  body.den-haag-page .permit-meaning-grid{grid-template-columns:1fr!important;gap:10px}
  .permit-not-equal{width:28px;height:28px;font-size:16px}
}

@media(max-width:620px){
  .context-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .context-strategy-link{min-height:30px;font-size:11px}
}
.navbar,
.site-header,
header.nav{
  position:sticky;
  top:0;
  z-index:100;
  min-height:60px;
  height:auto!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid #e8e5e0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  -webkit-font-smoothing:antialiased;
}
.navbar>.navbar-inner>.logo,
.navbar>.navbar-inner>.brand,
.site-header>.header-inner>.brand,
header.nav>.nav-inner>.brand{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:7px;
  color:#1a1a1a;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.navbar .logo-icon,
.navbar .brand-mark,
.site-header .brand-icon,
header.nav .brand-mark{
  width:24px;
  height:22px;
  flex:0 0 24px;
}
.navbar .logo-icon img,
.navbar .brand-mark img,
.site-header .brand-icon img,
header.nav .brand-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}
.navbar>.navbar-inner>.nav-links,
.site-header>.header-inner>.nav,
header.nav>.nav-inner>.nav-right{
  display:flex;
  flex:0 1 auto;
  align-items:center;
  gap:14px!important;
  white-space:nowrap;
}
.navbar>.navbar-inner>.nav-links>a,
.site-header>.header-inner>.nav>a,
header.nav>.nav-inner>.nav-right>a{
  color:#555;
  font-size:13px;
  font-weight:400;
  text-decoration:none;
}
.nav-dropdown{
  position:relative;
  flex:0 0 auto;
}
.nav-dropdown>summary{
  display:flex;
  align-items:center;
  gap:4px;
  list-style:none;
  cursor:pointer;
  color:#555;
  font-size:13px;
  font-weight:400;
  white-space:nowrap;
}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary::after{
  width:6px;
  height:6px;
  margin-top:-3px;
  border-right:1.5px solid #7d847f;
  border-bottom:1.5px solid #7d847f;
  content:"";
  transform:rotate(45deg);
}
.nav-dropdown[open]>summary,
.nav-dropdown.is-active>summary{color:#1a3a2f;font-weight:750}
.nav-dropdown[open]>summary::after{margin-top:3px;transform:rotate(225deg)}
.nav-dropdown-panel{
  position:absolute;
  top:calc(100% + 14px);
  left:50%;
  z-index:260;
  width:252px;
  padding:8px;
  border:1px solid #e7e4df;
  border-radius:13px;
  background:#fff;
  box-shadow:0 15px 38px rgba(26,44,34,.12);
  transform:translateX(-50%);
}
.nav-dropdown-panel>a,
.mobile-dropdown-panel>a{
  display:grid;
  gap:2px;
  padding:9px 11px;
  border-radius:9px;
  color:#242823;
  text-decoration:none;
  white-space:normal;
}
.nav-dropdown-panel>a:hover,
.mobile-dropdown-panel>a:hover{background:#f3f6f3}
.nav-dropdown-panel>a>strong,
.mobile-dropdown-panel>a>strong{font-size:12px;font-weight:750}
.nav-dropdown-panel>a>small,
.mobile-dropdown-panel>a>small{color:#7b807c;font-size:10px;line-height:1.5}
.nav-dropdown-panel>a.is-current{background:#eef4f0}
.mobile-site-menu{display:none}
.navbar>.navbar-inner>.nav-links>a.active,
.site-header>.header-inner>.nav>a.active,
header.nav>.nav-inner>.nav-right>a.active{
  color:#1a3a2f;
  font-weight:750;
}
.navbar .nav-account,
.navbar .account-btn,
.site-header .account,
header.nav .nav-right>.secondary-btn{
  border:1px solid #e8e5e0!important;
  border-radius:8px!important;
  background:#fff!important;
  padding:6px 10px!important;
  color:#555!important;
  font-weight:600!important;
}
footer.expatus-footer{
  margin-top:48px;
  padding:32px 20px;
  border-top:1px solid #e8e5e0;
  background:transparent;
}
footer.expatus-footer>.footer-inner{
  display:flex;
  max-width:1180px!important;
  margin:0 auto;
  padding:0!important;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
}
footer.expatus-footer .footer-brand{
  display:flex;
  align-items:center;
  gap:8px;
  color:#1a1a1a;
  font-size:14px;
  font-weight:700;
}
footer.expatus-footer .footer-logo{
  width:24px;
  height:22px;
  flex:0 0 24px;
}
footer.expatus-footer .footer-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
footer.expatus-footer .footer-info{
  max-width:420px;
  color:#888;
  text-align:center;
  font-size:12px;
  line-height:1.6;
}
footer.expatus-footer .footer-tag{
  color:#888;
  font-size:11px;
}
footer.expatus-footer .footer-contact{
  color:#1a3a2f;
  font-weight:700;
  text-decoration:none;
}
.home-shell{max-width:1180px!important}
.home-shell>.hero{margin-bottom:30px}
.home-shell>.hero>.hero-inner{
  display:flex;
  max-width:none;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.home-shell>.hero .hero-btns{justify-content:center}
.home-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 298px;
  align-items:start;
  gap:27px;
}
.home-main,.home-sidebar{min-width:0}
.home-sidebar{
  position:sticky;
  top:79px;
  display:grid;
  gap:12px;
}
.strategy-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  /*min-height:110px;*/
  margin-bottom:27px;
  padding:23px 25px;
  border:1px solid #eadfbd;
  border-radius:16px;
  background:linear-gradient(118deg,#fbf1d8 0%,#fff7e5 58%,#fbf2de 100%);
  color:#493b25;
}
.strategy-banner-copy>h2{
  margin:0 0 6px;
  color:#493b25;
  font-size:19px;
  font-weight:750;
  line-height:1.35;
}
.strategy-banner-copy>p{margin:0;color:#796a4f;font-size:13px}
.strategy-banner-action{
  flex:0 0 auto;
  padding:11px 15px;
  color:#60492b;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}
.sidebar-section{
  padding:14px;
  border:1px solid #e8e5e0;
  border-radius:15px;
  background:#fff;
}
.sidebar-heading{margin-bottom:8px}
.sidebar-heading>span{display:block;margin-bottom:3px;color:#738077;font-size:10px;font-weight:750}
.sidebar-heading>h2{margin:0;color:#1d241e;font-size:15px;line-height:1.35}
.phase-navigation .phase-grid{grid-template-columns:1fr 1fr;gap:7px}
.phase-navigation .phase-card{min-height:66px;padding:9px;border-radius:10px}
.phase-navigation .phase-card-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:5px}
.phase-navigation .phase-name{margin:0;font-size:12px}
.phase-navigation .phase-desc{margin:0;font-size:10px;line-height:1.45}
.phase-navigation .phase-arrow{font-size:13px;line-height:1}
.phase-navigation .phase-tooltip{display:none}
.sidebar-progress-intro{margin:0 0 10px;color:#657168;font-size:11px;line-height:1.65}
.sidebar-progress-preview{padding:1px 10px;border:1px solid #ede9e1;border-radius:10px;background:#faf9f7}
.sidebar-progress-row{display:flex;min-height:31px;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #eeeae4}
.sidebar-progress-row:last-child{border-bottom:0}
.sidebar-progress-row>span{min-width:0;overflow:hidden;color:#354238;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.progress-state{padding:3px 6px;border-radius:999px;font-size:9px;font-style:normal;white-space:nowrap}
.progress-state-wait{background:#fff1dd;color:#987042}
.progress-state-done{background:#e7f0e8;color:#3a6848}
.sidebar-progress-action{display:inline-flex;margin-top:10px;align-items:center;color:#315b43;font-size:11px;font-weight:750;text-decoration:none}
.sidebar-progress-action:hover{text-decoration:underline}
.sidebar-city-list,.sidebar-knowledge-list{display:grid;gap:8px}
.sidebar-city-card{
  display:grid;
  min-height:64px;
  padding:11px 12px;
  align-content:center;
  gap:3px;
  border:1px solid #e5e8e3;
  border-radius:11px;
  background-color:#f3f5f1;
  background-position:right center;
  background-size:cover;
  background-repeat:no-repeat;
  color:#21352a;
  text-decoration:none;
}
.sidebar-city-card[data-city="leiden"]{background-image:linear-gradient(90deg,rgba(248,247,243,.97) 5%,rgba(248,247,243,.86) 43%,rgba(248,247,243,.1)),url("../../img/city-leiden-photo.jpg")}
.sidebar-city-card[data-city="den-haag"]{background-image:linear-gradient(90deg,rgba(248,247,243,.97) 5%,rgba(248,247,243,.86) 43%,rgba(248,247,243,.1)),url("../../img/city-den-haag-photo.jpg")}
.sidebar-city-card>strong{font-size:13px}
.sidebar-city-card>span{color:#647169;font-size:10px}
.sidebar-knowledge-link{
  display:grid;
  gap:2px;
  padding:9px 10px;
  border-radius:9px;
  background:#faf9f7;
  color:#29352e;
  text-decoration:none;
}
.sidebar-knowledge-link[hidden]{display:none}
.sidebar-knowledge-link.is-visible{animation:article-reveal .34s ease both}
@keyframes article-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.sidebar-knowledge-link:hover{background:#f1f4f0}
.sidebar-knowledge-link>strong{font-size:12px}
.sidebar-knowledge-link>span{color:#737a74;font-size:10px}
.home-main>.section{margin-bottom:34px}
/*.home-main .resource-heading{align-items:flex-start}*/
.home-main .resource-heading .section-subtitle{max-width:none;font-size:12px;white-space:nowrap}
.home-main .search-bar{gap:9px}
.home-main .search-input-wrapper{min-width:190px}
.home-main .search-bar select{min-width:118px;padding-right:9px;padding-left:9px}
.home-main .filter-tabs{gap:7px}
.home-main .filter-tab{padding:7px 11px;font-size:12px}
.home-main .city-guide-banner{
  position:relative;
  display:flex;
  min-height:118px;
  margin:3px 0 21px;
  padding:18px 17px;
  overflow:hidden;
  align-items:center;
  justify-content:space-between;
  gap:13px;
  border:1px solid #e0e6e0;
  background-color:#f2f5f2;
  background-position:right center;
  background-size:cover;
  background-repeat:no-repeat;
}
.home-main .city-guide-banner[data-city="leiden"]{background-image:linear-gradient(90deg,rgba(248,246,241,.985) 0%,rgba(248,246,241,.9) 43%,rgba(248,246,241,.18) 81%),url("../../img/city-leiden-photo.jpg")}
.home-main .city-guide-banner[data-city="den-haag"]{background-image:linear-gradient(90deg,rgba(248,246,241,.985) 0%,rgba(248,246,241,.9) 43%,rgba(248,246,241,.18) 81%),url("../../img/city-den-haag-photo.jpg")}
.home-main .city-guide-banner[data-city="generic"]{background-image:linear-gradient(112deg,#f4f1e9,#edf2ee)}
.city-guide-copy{position:relative;z-index:1;max-width:69%}
.city-guide-actions{position:relative;z-index:1;display:flex;align-items:center;gap:8px}
.city-guide-actions>.btn-sm{white-space:nowrap}
.city-carousel-dots{position:absolute;right:16px;bottom:10px;z-index:1;display:flex;gap:5px}
.city-carousel-dots[hidden]{display:none}
.city-carousel-dots>button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#bdc7bf;cursor:pointer}
.city-carousel-dots>button.active{width:18px;border-radius:99px;background:#496553}
.platform-disclosure{display:flex;margin:2px 0 8px;justify-content:center}
.platform-disclosure-button{
  display:inline-flex;
  min-width:190px;
  min-height:41px;
  padding:9px 18px;
  align-items:center;
  justify-content:center;
  border:1px solid #e2dfd9;
  border-radius:10px;
  background:#fff;
  color:#31553f;
  font:600 12px -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  cursor:pointer;
}
.platform-disclosure-button:hover{border-color:#b8c8bc;background:#f5f8f5}
.platform-disclosure-button[hidden]{display:none}
.home-main>.tips-grid{margin-top:26px}
.home-main>.deposit-banner{gap:15px;padding:24px}
.home-main>.deposit-banner p{max-width:410px;font-size:12px}
.city-cross-link{
  display:inline-flex;
  margin-top:10px;
  color:#315f48;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.favorites-page .platform-type-tag.type-general{color:#8b5e31;background:#f7eee4}
@media(max-width:1020px){
  .home-layout{grid-template-columns:minmax(0,1fr) 264px;gap:18px}
  .sidebar-section{padding:13px}
  .home-main .resource-heading .section-subtitle{max-width:none}
}
@media(max-width:900px){
  .navbar>.navbar-inner>.nav-links,
  .site-header>.header-inner>.nav,
  header.nav>.nav-inner>.nav-right{display:flex!important;gap:8px!important}
  .navbar>.navbar-inner>.nav-links>a:not(.nav-account):not(.account-btn),
  .site-header>.header-inner>.nav>a:not(.account),
  header.nav>.nav-inner>.nav-right>a:not(.secondary-btn),
  .navbar .nav-dropdown,
  .site-header .nav-dropdown,
  header.nav .nav-dropdown{display:none!important}
  .navbar>.navbar-inner>.nav-links>.nav-account{display:inline-flex!important;align-items:center}
  .mobile-site-menu{position:relative;display:block!important}
  .mobile-site-menu>summary{
    padding:6px 9px;
    border:1px solid #e8e5e0;
    border-radius:8px;
    list-style:none;
    color:#465047;
    font-size:12px;
    cursor:pointer;
  }
  .mobile-site-menu>summary::-webkit-details-marker{display:none}
  .mobile-dropdown-panel{
    position:absolute;
    top:calc(100% + 11px);
    right:-80px;
    z-index:260;
    width:min(285px,calc(100vw - 32px));
    padding:8px;
    border:1px solid #e7e4df;
    border-radius:13px;
    background:#fff;
    box-shadow:0 15px 38px rgba(26,44,34,.12);
  }
  .mobile-dropdown-panel>.menu-group-label{display:block;padding:10px 11px 3px;color:#788078;font-size:10px;font-weight:800}
  .navbar>.navbar-inner>.nav-links>.mobile-site-menu .mobile-dropdown-panel>a{display:grid!important}
  .home-layout{display:grid;grid-template-columns:1fr;gap:15px}
  .home-main,.home-sidebar{display:contents}
  .strategy-banner{order:1;margin-bottom:0}
  .phase-navigation{order:2}
  .home-main>#platforms{order:3}
  .sidebar-progress{order:4}
  .sidebar-city-guides{order:5}
  .sidebar-knowledge{order:6}
  .home-main>.tips-grid{order:7}
  .home-main>.deposit-banner{order:8}
  .phase-navigation .phase-card{min-height:71px}
  .sidebar-city-list{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .navbar>.navbar-inner,
  .site-header>.header-inner,
  header.nav>.nav-inner{padding-right:16px!important;padding-left:16px!important}
  footer.expatus-footer>.footer-inner{flex-direction:column;text-align:center}
  footer.expatus-footer .footer-info{text-align:center}
  .home-shell>.hero{margin-bottom:17px}
  .home-shell>.hero .hero-btns{gap:8px}
  .home-shell>.hero .hero-btns>.btn{padding:10px 12px;font-size:11px}
  .strategy-banner{min-height:96px;gap:10px;padding:17px 14px}
  .strategy-banner-copy>h2{font-size:16px}
  .strategy-banner-copy>p{font-size:11px}
  .strategy-banner-action{padding:9px 10px;font-size:10px}
  .home-main .resource-heading{gap:4px}
  .home-main .resource-heading .section-subtitle{max-width:none;white-space:normal}
  .home-main .search-bar select{flex:1}
  .home-main .city-guide-banner{min-height:132px;padding:15px}
  .city-guide-copy{max-width:100%}
  .city-guide-actions{align-self:flex-start}
  .city-carousel-dots{right:14px;bottom:12px}
  .sidebar-city-list{grid-template-columns:1fr}
  .home-main>.tips-grid{margin-top:6px}
}
@media(prefers-reduced-motion:reduce){
  .sidebar-knowledge-link.is-visible{animation:none}
}
@media(max-height:760px) and (min-width:901px){
  .home-sidebar{max-height:calc(100vh - 92px);overflow-y:auto;scrollbar-width:thin}
}

/* Shared reading scale: match the established Leiden city guide. */
body.expatus-article-page,
body.expatus-workspace-page{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  -webkit-font-smoothing:antialiased;
}
.nav-dropdown-panel>a>small,
.mobile-dropdown-panel>a>small{font-size:11px}
body.expatus-article-page .section h2,
body.expatus-article-page .section-head h2,
body.expatus-article-page .guide-title{
  font-size:23px!important;
  font-weight:800!important;
  line-height:1.35!important;
  letter-spacing:-.25px!important;
}
body.planb-page .section h2.planb-section-title{display:block!important}
body.expatus-article-page .section-intro,
body.expatus-article-page .guide-intro{font-size:14px!important;line-height:1.75!important}
body.expatus-article-page .faq-q,
body.expatus-article-page .faq-a,
body.expatus-article-page .source-note,
body.expatus-article-page .next-card p{font-size:12px!important;line-height:1.7!important}
body.expatus-article-page .hero-links a,
body.expatus-article-page .tag,
body.expatus-article-page .chip{font-size:11px!important}

/* Hague: administrative thresholds and housing conditions should remain readable. */
body.den-haag-page .permit-step small,
body.den-haag-page .permit-income small,
body.den-haag-page .permit-practical,
body.den-haag-page .permit-example-grid small,
body.den-haag-page .wws-copy small,
body.den-haag-page .wws-scale>p,
body.den-haag-page .scale-row small,
body.den-haag-page .safety-table th,
body.den-haag-page .safety-table td,
body.den-haag-page .work-tip p,
body.den-haag-page .work-route span,
body.den-haag-page .doc-chips span,
body.den-haag-page .privacy-tip,
body.den-haag-page .risk-grid span,
body.den-haag-page .static-map-card .map-legend,
body.den-haag-page .source-note{font-size:12px!important;line-height:1.65!important}

/* Strategy and progress are two views of the same personal workspace. */
body.expatus-workspace-page .workspace-hero{
  position:relative;
  margin:0 -22px 27px!important;
  padding:29px 40px 26px!important;
  overflow:hidden;
  border-radius:0 0 19px 19px!important;
  background:linear-gradient(135deg,#17372c 0%,#28533d 72%,#315f45 100%)!important;
  color:#fff;
}
body.expatus-workspace-page .workspace-hero:after{
  position:absolute;
  top:-135px;
  right:-72px;
  width:245px;
  height:245px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:50%;
  content:"";
}
body.expatus-workspace-page .workspace-hero:before{display:none}
body.expatus-workspace-page .workspace-hero-inner{position:relative;z-index:1}
body.expatus-workspace-page .workspace-hero .eyebrow{
  display:inline-flex;
  margin:0 0 8px;
  padding:4px 9px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:999px;
  background:rgba(255,255,255,.09);
  color:rgba(255,255,255,.84);
  font-size:11px!important;
  font-weight:750;
}
body.expatus-workspace-page .workspace-hero h1{
  margin:0 0 7px!important;
  font-size:29px!important;
  line-height:1.24!important;
  letter-spacing:-.25px!important;
}
body.expatus-workspace-page .workspace-hero p{
  max-width:760px;
  margin:0!important;
  color:rgba(255,255,255,.78)!important;
  font-size:13px!important;
  line-height:1.7!important;
}
body.expatus-workspace-page .workspace-hero .hero-note{
  display:flex;
  margin-top:13px;
  flex-wrap:wrap;
  gap:7px;
}
body.expatus-workspace-page .workspace-hero .hero-note span{
  padding:4px 8px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.81);
  font-size:11px!important;
  line-height:1.45;
}
.workspace-tabs{
  position:absolute;
  top:2px;
  right:0;
  z-index:2;
  display:flex;
  padding:4px;
  gap:3px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:11px;
  background:rgba(255,255,255,.08);
}
.workspace-tabs a{
  padding:7px 11px;
  border-radius:8px;
  color:rgba(255,255,255,.76);
  font-size:12px;
  font-weight:650;
  text-decoration:none;
}
.workspace-tabs a.is-active{background:#fff;color:#244634}
body.strategy-workspace-page .onboarding{margin-top:8px}
body.strategy-workspace-page .onboard-head h2{font-size:23px!important}
body.strategy-workspace-page .section-title h2{font-size:20px!important}

/* Public strategy conversion block: same visual family as the homepage deposit banner. */
.strategy-promo-section{margin-top:44px!important}
.strategy-promo-banner{
  position:relative;
  display:flex;
  min-height:150px;
  padding:25px 27px;
  overflow:hidden;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border:1px solid #204f36;
  border-radius:16px;
  background:linear-gradient(120deg,#193a2d 0%,#254a36 58%,#2d5940 100%);
  color:#fff;
}
.strategy-promo-banner:after{
  position:absolute;
  top:-128px;
  right:-82px;
  width:240px;
  height:240px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:50%;
  content:"";
}
.strategy-promo-copy,.strategy-promo-action{position:relative;z-index:1}
.strategy-promo-eyebrow{display:inline-block;margin-bottom:7px;color:#ccdfcf;font-size:11px;font-weight:700}
body.expatus-article-page .strategy-promo-copy h2{margin:0 0 7px!important;color:#fff;font-size:21px!important}
.strategy-promo-copy p{max-width:625px;margin:0;color:rgba(255,255,255,.8);font-size:13px;line-height:1.7}
.strategy-promo-action{
  flex:0 0 auto;
  padding:12px 16px;
  border-radius:10px;
  background:#fff;
  color:#203e30;
  font-size:12px;
  font-weight:780;
  text-decoration:none;
  white-space:nowrap;
}
.strategy-promo-action:hover{background:#eef4ef}

/* Channel/platform presentation: one outer section, clean rows, meaningful color. */
body.strategy-workspace-page .channel-list{gap:16px}
body.strategy-workspace-page .channel{
  overflow:hidden;
  border:1px solid #e5e4de!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
body.strategy-workspace-page .channel:before{width:4px}
body.strategy-workspace-page .channel.urgent:before{background:#b96845}
body.strategy-workspace-page .channel.daily:before{background:#397259}
body.strategy-workspace-page .channel.passive:before{background:#8ea497}
body.strategy-workspace-page .channel.later:before{background:#bf9147}
body.strategy-workspace-page .channel-overview{
  display:grid;
  padding:17px 19px 15px;
  grid-template-columns:minmax(180px,1.15fr) 103px minmax(210px,1.3fr) 90px auto;
  align-items:center;
  gap:13px;
  background:#fff;
}
body.strategy-workspace-page .channel-name strong{font-size:14px}
body.strategy-workspace-page .channel-name small,
body.strategy-workspace-page .priority-label,
body.strategy-workspace-page .work-label,
body.strategy-workspace-page .work small{font-size:11px!important}
body.strategy-workspace-page .channel-advice strong{font-size:12px!important;line-height:1.55}
body.strategy-workspace-page .channel-advice .status-pill{margin-bottom:5px;font-size:11px!important}
body.strategy-workspace-page .expand-btn{
  position:static;
  min-height:36px;
  padding:7px 10px;
  border:1px solid #e8e6e0;
  border-radius:9px;
  background:#fff;
  color:#627269;
  font-size:11px!important;
  white-space:nowrap;
}
body.strategy-workspace-page .expand-btn[aria-expanded="true"]{border-color:#cad9cf;background:#eef4ef;color:#345742}
body.strategy-workspace-page .platform-strip{
  padding:0 19px 9px;
  border-top:1px solid #f0eee8;
  background:#fbfaf8;
}
body.strategy-workspace-page .channel.daily .platform-strip{background:#f8fbf8}
body.strategy-workspace-page .channel.urgent .platform-strip{background:#fdf9f6}
body.strategy-workspace-page .channel.later .platform-strip{background:#fcfaf5}
body.strategy-workspace-page .platform-strip-head{
  display:flex;
  min-height:45px;
  margin:0;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
body.strategy-workspace-page .platform-strip-head strong{color:#495c50;font-size:12px!important}
body.strategy-workspace-page .platform-strip-head span{color:#878d87;font-size:11px!important}
body.strategy-workspace-page .platform-list{display:grid}
body.strategy-workspace-page .platform-row{
  display:grid;
  min-height:72px;
  padding:12px 1px;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:17px;
  border-top:1px solid #e9e7e0;
  background:transparent;
}
body.strategy-workspace-page .platform-row-main{min-width:0}
body.strategy-workspace-page .platform-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
body.strategy-workspace-page .platform-title strong{color:#28332c;font-size:13px}
body.strategy-workspace-page .platform-row-main p{margin:4px 0 0;color:#6d756e;font-size:12px!important;line-height:1.6}
body.strategy-workspace-page .mini-state{padding:3px 7px;font-size:11px!important;font-weight:750}
body.strategy-workspace-page .mini-state.do{background:#fae8dd;color:#955636}
body.strategy-workspace-page .mini-state.watch{background:#e5f0e8;color:#35674c}
body.strategy-workspace-page .mini-state.wait{background:#eeefec;color:#68706a}
body.strategy-workspace-page .mini-state.warn{background:#f8edcf;color:#816125}
body.strategy-workspace-page .platform-link{
  align-self:center;
  padding:8px 10px;
  border:1px solid #dedfd9;
  border-radius:8px;
  background:#fff;
  color:#315b43;
  font-size:12px!important;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
body.strategy-workspace-page .platform-link:hover{border-color:#b9cabd;background:#f4f8f4}
body.strategy-workspace-page .platform-monitor-note{padding:8px 1px 3px;color:#728078;font-size:11px}
body.strategy-workspace-page .channel-expand{
  display:none;
  padding:4px 19px 12px;
  border-top:1px solid #e5ebe5;
  background:#eef4f0;
}
body.strategy-workspace-page .channel.open .channel-expand{display:block}
body.strategy-workspace-page .reason-row{
  display:grid;
  padding:10px 0;
  grid-template-columns:80px minmax(0,1fr);
  gap:12px;
  border-bottom:1px solid #dfe8e1;
}
body.strategy-workspace-page .reason-row:last-child{border-bottom:0}
body.strategy-workspace-page .reason-row>span{color:#46634f;font-size:12px;font-weight:760}
body.strategy-workspace-page .reason-row>p{margin:0;color:#58645c;font-size:12px;line-height:1.7}

@media(max-width:900px){
  body.strategy-workspace-page .channel-overview{grid-template-columns:minmax(160px,1fr) 92px minmax(180px,1.1fr) auto}
  body.strategy-workspace-page .channel-overview .work{grid-column:1/3}
  body.strategy-workspace-page .channel-overview .expand-btn{grid-column:3/-1;justify-self:end}
}
@media(max-width:640px){
  body.expatus-article-page .section h2,
  body.expatus-article-page .section-head h2,
  body.expatus-article-page .guide-title{font-size:21px!important}
  body.expatus-workspace-page .workspace-hero{margin-right:-14px!important;margin-left:-14px!important;padding:24px 20px 23px!important}
  body.expatus-workspace-page .workspace-hero h1{font-size:26px!important}
  body.expatus-workspace-page .workspace-hero p{font-size:12px!important}
  .workspace-tabs{position:static;display:inline-flex;margin-top:14px}
  .workspace-tabs a{padding:7px 10px;font-size:11px}
  .strategy-promo-banner{min-height:0;padding:20px 18px;align-items:flex-start;flex-direction:column;gap:15px}
  body.expatus-article-page .strategy-promo-copy h2{font-size:19px!important}
  .strategy-promo-action{padding:10px 13px}
  body.strategy-workspace-page .channel-overview{padding:14px;grid-template-columns:1fr auto;gap:10px}
  body.strategy-workspace-page .channel-overview .channel-advice{grid-column:1/-1}
  body.strategy-workspace-page .channel-overview .work{grid-column:1/2}
  body.strategy-workspace-page .channel-overview .expand-btn{grid-column:2/3}
  body.strategy-workspace-page .platform-strip{padding-right:14px;padding-left:14px}
  body.strategy-workspace-page .platform-row{gap:10px;grid-template-columns:minmax(0,1fr)}
  body.strategy-workspace-page .platform-link{justify-self:start}
  body.strategy-workspace-page .channel-expand{padding-right:14px;padding-left:14px}
  body.strategy-workspace-page .reason-row{grid-template-columns:1fr;gap:4px}
}

/* Small, single-purpose utilities. Keep this file short and non-semantic. */
.expatus-space-top-md{margin-top:12px!important}
.expatus-link-disabled{cursor:default!important}

.expatus-avatar--room{background:#355f49!important}
.expatus-avatar--duwo{background:#2d5a3f!important}
.expatus-avatar--ssh{background:#4a7c59!important}
.expatus-avatar--xior{background:#496f60!important}
.expatus-avatar--vesteda{background:#5a7a65!important}
.expatus-avatar--mvgm{background:#476b5b!important}
.expatus-avatar--holland2stay{background:#5a9a6a!important}
.expatus-avatar--pararius{background:#b18b62!important}
.expatus-avatar--funda{background:#b87a42!important}
.expatus-avatar--huurwoningen{background:#8e775e!important}
.expatus-avatar--housinganywhere{background:#587394!important}
.expatus-avatar--neste{background:#61778d!important}
.expatus-avatar--kamernet{background:#9a7657!important}
.expatus-avatar--facebook{background:#765a82!important}
.expatus-avatar--airbnb{background:#4f7088!important}


/* Shared consent UI and authenticated account menu. */
/* Shared consent controls and account dropdown. All classes are namespaced. */
.expatus-cookie-settings{appearance:none;padding:0;border:0;background:none;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.expatus-consent-banner{position:fixed;right:20px;bottom:20px;left:20px;z-index:250;display:flex;max-width:1080px;margin:auto;padding:18px 20px;border:1px solid #dfe5de;border-radius:16px;background:#fff;box-shadow:0 14px 44px rgba(29,52,39,.13);align-items:center;justify-content:space-between;gap:18px}
.expatus-consent-banner[hidden]{display:none}
.expatus-consent-copy{display:grid;gap:5px;color:#535d57;font-size:13px;line-height:1.6}
.expatus-consent-copy strong{color:#183a2a;font-size:15px}
.expatus-consent-copy a{margin-left:7px;color:#24543e}
.expatus-consent-actions{display:flex;flex:0 0 auto;gap:9px}
.expatus-consent-primary,.expatus-consent-secondary{padding:10px 13px;border-radius:10px;font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.expatus-consent-primary{border:1px solid #224d37;background:#224d37;color:#fff}
.expatus-consent-secondary{border:1px solid #dce2dc;background:#fff;color:#264331}
.expatus-account-menu{position:relative}
.expatus-account-menu>summary{list-style:none;cursor:pointer;color:#333;font-size:13px}
.expatus-account-menu>summary::-webkit-details-marker{display:none}
.expatus-account-menu .account-popover{position:absolute;top:calc(100% + 11px);right:0;z-index:150;display:grid;min-width:184px;gap:2px;padding:9px;border:1px solid #e5e4df;border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(27,47,35,.12)}
.expatus-account-menu .account-popover a,.expatus-account-menu .account-popover button,.expatus-account-menu .account-email{display:block;width:100%;padding:8px 9px;border:0;border-radius:7px;background:transparent;color:#314338;text-align:left;text-decoration:none;font:inherit;font-size:12px}
.expatus-account-menu .account-popover a:hover,.expatus-account-menu .account-popover button:hover{background:#f1f6f2}
.expatus-account-menu .account-popover form{margin:0}
.expatus-account-menu .account-email{color:#747a76}
.expatus-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.expatus-privacy-ack{display:flex;align-items:flex-start;gap:9px;margin:3px 0 14px;color:#58625c;font-size:12px;line-height:1.65}
.expatus-privacy-ack input{width:15px;height:15px;margin-top:2px;accent-color:#285c42}
.expatus-privacy-ack a{color:#24543e}
.expatus-form-privacy{margin:9px 0;color:#737975;font-size:11px;line-height:1.65}
.expatus-form-privacy a{color:#24543e}
@media(max-width:720px){.expatus-consent-banner{right:12px;bottom:12px;left:12px;align-items:stretch;flex-direction:column}.expatus-consent-actions{display:grid;grid-template-columns:1fr 1fr}.expatus-consent-primary,.expatus-consent-secondary{font-size:11px}}
