
:root{--bg:#f6f7fb;--surface:#fff;--ink:#13203a;--muted:#667085;--primary:#5958d8;--primary2:#7d72ff;--green:#15966b;--line:#e5e7ef;--soft:#efefff;--navy:#151b36;--warm:#fff4df;--danger:#ba4e4e;--shadow:0 22px 65px rgba(23,31,62,.09);--radius:25px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.55}a{text-decoration:none;color:inherit}button,input,select{font:inherit}.wrap{max-width:var(--max);margin:auto;padding:0 22px}
header{position:sticky;top:0;z-index:50;background:rgba(246,247,251,.91);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,231,239,.9)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:1.4rem;font-weight:950;color:var(--primary);letter-spacing:-.04em}.navlinks{display:flex;gap:20px;font-size:.91rem;font-weight:760;color:#44516a}.navlinks a:hover{color:var(--primary)}.actions{display:flex;gap:9px}
.btn{border:0;display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:0 17px;border-radius:13px;font-weight:850;cursor:pointer;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--primary);color:#fff;box-shadow:0 10px 27px rgba(89,88,216,.23)}.btn.ghost{background:#fff;border:1px solid var(--line)}.btn.dark{background:var(--navy);color:white}
.hero{padding:72px 0 48px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:46px;align-items:center}.eyebrow{display:inline-flex;padding:7px 11px;border-radius:999px;background:var(--soft);color:#4a49b5;font-size:.82rem;font-weight:900}.hero h1,.page h1{font-size:clamp(3.1rem,7vw,6.05rem);line-height:.94;letter-spacing:-.07em;margin:17px 0 21px}.hero h1 em,.page h1 em{font-style:normal;color:var(--primary)}.lead{color:var(--muted);font-size:1.17rem;max-width:720px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin:27px 0 18px}.trust{display:flex;gap:16px;flex-wrap:wrap;font-size:.88rem;color:#5c6780}.trust span:before{content:"✓";color:var(--green);font-weight:950;margin-right:5px}
.photo{min-height:500px;border-radius:32px;overflow:hidden;position:relative;box-shadow:var(--shadow);background:linear-gradient(135deg,#d8dcff,#c9e9df)}.photo img{width:100%;height:500px;object-fit:cover}.photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(11,17,40,.75))}.float{position:absolute;z-index:3;left:20px;right:20px;bottom:20px;background:rgba(255,255,255,.94);border-radius:20px;padding:17px;backdrop-filter:blur(10px)}.float-top{display:flex;justify-content:space-between;gap:10px}.score{font-weight:950;color:var(--primary)}.bar{height:8px;border-radius:99px;background:#e9eaf2;overflow:hidden;margin-top:9px}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--primary2));border-radius:99px}
.section{padding:68px 0}.section-head{max-width:780px;margin-bottom:28px}.kicker{color:var(--primary);font-size:.77rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em}h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1.05;letter-spacing:-.05em;margin:7px 0 12px}h3{margin:0 0 7px}.sub{color:var(--muted)}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.cards2{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:23px;box-shadow:0 12px 36px rgba(23,31,62,.045)}a.card{transition:.18s}a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.icon{width:48px;height:48px;border-radius:14px;background:var(--soft);display:grid;place-items:center;font-size:1.35rem;margin-bottom:17px}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.callout{background:linear-gradient(135deg,#eef8f4,#efefff);border:1px solid #dfe7e4;border-radius:30px;padding:30px}
.page{padding:58px 0 25px}.page h1{font-size:clamp(2.8rem,6vw,5rem);margin-bottom:15px}.crumb{color:var(--muted);font-size:.9rem;margin-bottom:10px}
.field{margin-bottom:14px}.field label{display:block;font-size:.88rem;font-weight:850;margin-bottom:6px}.field input,.field select{width:100%;padding:12px 13px;border-radius:12px;border:1px solid var(--line);background:white}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.test-shell{display:grid;grid-template-columns:260px 1fr;gap:22px}.test-side{background:var(--navy);color:white;border-radius:25px;padding:22px;align-self:start;position:sticky;top:95px}.test-side .muted{color:#c8ccdc}.progress{height:8px;background:rgba(255,255,255,.15);border-radius:99px;overflow:hidden;margin:15px 0}.progress i{display:block;height:100%;background:#9b98ff;width:0}.qcard{background:white;border:1px solid var(--line);border-radius:25px;padding:28px;min-height:460px}.qtitle{font-size:1.55rem;font-weight:900;letter-spacing:-.02em;margin-bottom:7px}.choices{display:grid;gap:10px;margin-top:22px}.choice{border:1px solid var(--line);border-radius:15px;padding:14px 15px;cursor:pointer;background:#fff;font-weight:720}.choice:hover,.choice.selected{border-color:var(--primary);background:var(--soft);color:#3938a7}.test-nav{display:flex;justify-content:space-between;margin-top:22px;gap:10px}
.result-hero{background:var(--navy);color:white;border-radius:30px;padding:30px}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.metric{background:rgba(255,255,255,.08);padding:17px;border-radius:17px}.metric strong{font-size:1.5rem}.match-card{background:white;border:1px solid var(--line);border-radius:20px;padding:19px;margin-top:12px}.match-head{display:flex;justify-content:space-between;gap:10px}.badge{display:inline-block;padding:5px 8px;border-radius:999px;background:var(--soft);color:#4948b2;font-size:.77rem;font-weight:850}
.toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:18px}.toolbar input,.toolbar select{padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:white}.directory{display:grid;gap:10px}.uni{background:white;border:1px solid var(--line);border-radius:17px;padding:17px;display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center}.uni-title{font-weight:900}.uni-meta{color:var(--muted);font-size:.88rem}.external{font-size:.85rem;color:var(--primary);font-weight:850}.notice{padding:15px 17px;border-radius:16px;background:var(--warm);border:1px solid #efdfbe;color:#65593f;margin:16px 0}.sourcebox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px}.sourcebox a{color:var(--primary);font-weight:800}
.article{max-width:820px}.article h3{margin-top:26px}.article p,.article li{color:#4e5a72}.pillrow{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:8px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.85rem;font-weight:780}
.cta{background:var(--navy);color:white;border-radius:30px;padding:35px;display:flex;justify-content:space-between;align-items:center;gap:25px}.cta p{color:#c9cedd}.footer{padding:40px 0 55px;color:#738097;font-size:.88rem}.foot{border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}
@media(max-width:950px){.navlinks{display:none}.hero-grid,.split,.cards3,.cards2,.test-shell,.grid2{grid-template-columns:1fr}.test-side{position:static}.toolbar{grid-template-columns:1fr}.result-grid{grid-template-columns:1fr}.photo,.photo img{min-height:390px;height:390px}}
@media(max-width:620px){.wrap{padding:0 16px}.actions .ghost{display:none}.hero{padding-top:45px}.hero h1{font-size:3.35rem}.section{padding:52px 0}.qcard{padding:20px}.uni{grid-template-columns:1fr}.cta{flex-direction:column;align-items:flex-start}}

.map-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:18px;align-items:start}
#universityMap{height:650px;border-radius:24px;border:1px solid var(--line);overflow:hidden;box-shadow:var(--shadow);background:#e9edf4}
.map-panel{position:sticky;top:92px}.map-toolbar{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:14px}
.map-toolbar input,.map-toolbar select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.map-list{max-height:650px;overflow:auto;display:grid;gap:9px;padding-right:4px}
.map-item{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;cursor:pointer;transition:.16s}
.map-item:hover{border-color:var(--primary);transform:translateY(-1px)}.map-item strong{display:block;margin-bottom:3px}.map-item small{color:var(--muted)}
.map-legend{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px}.map-legend span{font-size:.8rem;padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:#fff}
.map-status{padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--line);margin-bottom:14px;color:var(--muted);font-size:.9rem}
.map-status strong{color:var(--ink)}.leaflet-popup-content-wrapper{border-radius:15px}.leaflet-popup-content{margin:14px 16px}
@media(max-width:1000px){.map-layout{grid-template-columns:1fr}.map-panel{position:static}.map-list{max-height:none}.map-toolbar{grid-template-columns:1fr}}

.city-pin{background:#5958d8;color:#fff;border:3px solid #fff;width:40px;height:40px;border-radius:999px;display:grid;place-items:center;font-weight:950;box-shadow:0 6px 18px rgba(20,25,60,.25)}
.city-pin.big{width:48px;height:48px;background:#3938a7}.city-popup h3{margin:0 0 7px}.city-popup .school{padding:8px 0;border-top:1px solid #eceef4}.city-popup a{color:#4b49bf;font-weight:800}

.full-map-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:18px;align-items:start}
#deMap{height:720px;border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#e9edf4}
.side-scroll{max-height:720px;overflow:auto;display:grid;gap:10px;padding-right:4px}
.city-group{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;cursor:pointer}
.city-group:hover{border-color:var(--primary)}
.city-group strong{display:flex;justify-content:space-between;gap:10px}
.city-group small{color:var(--muted)}
.school-row{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.school-row .meta{font-size:.86rem;color:var(--muted);margin-top:3px}
.school-row .links{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.status-ok{background:#eef9f3;border-color:#cfeadb}
.status-warn{background:#fff7e8;border-color:#efdcb4}
.count-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:16px 0}
.count-box{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px;text-align:center}
.count-box strong{display:block;font-size:1.35rem}
.leaflet-marker-icon.uni-dot{background:#5958d8;border:3px solid #fff;border-radius:50%;box-shadow:0 4px 15px rgba(0,0,0,.2)}
.marker-cluster-small,.marker-cluster-medium,.marker-cluster-large{background:rgba(89,88,216,.2)}
.marker-cluster-small div,.marker-cluster-medium div,.marker-cluster-large div{background:#5958d8;color:#fff;font-weight:900}
@media(max-width:1050px){.full-map-grid{grid-template-columns:1fr}.side-scroll{max-height:none}.count-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){#deMap{height:520px}.school-row{grid-template-columns:1fr}.school-row .links{justify-content:flex-start}.count-grid{grid-template-columns:repeat(2,1fr)}}

.search-suite{display:grid;grid-template-columns:1.05fr .95fr;gap:18px;align-items:start}
.study-panel,.cost-panel,.nc-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px}
.study-frame,.training-frame{width:100%;height:820px;border:1px solid var(--line);border-radius:18px;background:#fff}
.map-search-grid{display:grid;grid-template-columns:1.4fr 1.4fr 1fr 1fr;gap:10px;margin-bottom:14px}
.map-search-grid input,.map-search-grid select{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.cost-chip{display:inline-flex;gap:7px;align-items:center;padding:7px 10px;border-radius:999px;background:#eef8f4;font-size:.84rem;font-weight:800}
.info-row{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.info-row:first-child{border-top:0}.info-row strong{font-size:.88rem}.info-row span{color:var(--muted)}
.training-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}
.training-cat{border:1px solid var(--line);background:#fff;border-radius:15px;padding:14px;text-align:left;cursor:pointer;font-weight:850}
.training-cat:hover{border-color:var(--primary);background:var(--soft)}
.source-note{font-size:.83rem;color:var(--muted);margin-top:8px}
@media(max-width:1000px){.search-suite{grid-template-columns:1fr}.map-search-grid{grid-template-columns:1fr 1fr}.training-cats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.map-search-grid{grid-template-columns:1fr}.training-cats{grid-template-columns:1fr}.study-frame,.training-frame{height:680px}.info-row{grid-template-columns:1fr}}

/* MAP FIX 4.1: Leaflet must stay above surrounding panels and receive pointer input */
#deMap{position:relative!important;z-index:1!important;pointer-events:auto!important;touch-action:none}
#deMap .leaflet-pane,#deMap .leaflet-control-container{pointer-events:auto}
#deMap .leaflet-map-pane{z-index:2}
#deMap .leaflet-tile-pane{z-index:2}
#deMap .leaflet-overlay-pane{z-index:4}
#deMap .leaflet-marker-pane{z-index:6}
#deMap .leaflet-tooltip-pane{z-index:7}
#deMap .leaflet-popup-pane{z-index:8}
.full-map-grid>div{min-width:0}

.lang-select{border:1px solid var(--line);background:#fff;border-radius:11px;padding:9px 10px;font-weight:750;max-width:125px}
.training-frame,.study-frame{display:block;width:100%!important;min-height:1000px;height:1000px!important;overflow:auto;border-radius:18px}
.study-panel{overflow:visible!important}.training-embed-wrap{overflow:visible!important;min-width:0}
@media(max-width:700px){.lang-select{max-width:105px;padding:8px 7px}.training-frame,.study-frame{min-height:900px;height:900px!important}}

/* V6.2 clean map */
#deMap{height:720px!important;position:relative!important;z-index:1!important;pointer-events:auto!important;touch-action:pan-x pan-y!important}
#deMap .leaflet-pane,#deMap .leaflet-control-container,#deMap .leaflet-marker-icon{pointer-events:auto!important}
.fixed-city-marker{width:42px;height:42px;border-radius:50%;border:3px solid #fff;background:#5b57df;color:#fff;font-weight:900;cursor:pointer;box-shadow:0 5px 16px rgba(35,35,80,.3)}
.fixed-city-marker:hover{transform:scale(1.08)}
.city-button{width:100%;text-align:left}
.city-popup .school{padding:8px 0;border-top:1px solid #eceef4}
.city-popup .school:first-of-type{border-top:0}
.full-map-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr)!important}
@media(max-width:1000px){#deMap{height:600px!important}.full-map-grid{grid-template-columns:1fr!important}}

.budget-suggestions{display:grid;gap:8px;margin-top:10px;max-height:370px;overflow:auto}
.budget-suggestion{width:100%;border:1px solid var(--line);background:#fff;border-radius:13px;padding:11px 13px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;gap:14px}
.budget-suggestion:hover{border-color:var(--primary);background:var(--soft)}
.budget-suggestion small{color:var(--muted)}

.check-setup{display:grid;gap:22px}.step-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px}
.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.choice-grid.two{grid-template-columns:repeat(2,1fr);max-width:850px}
.big-choice{display:grid;gap:8px;text-align:left;border:2px solid var(--line);background:#fff;border-radius:20px;padding:22px;cursor:pointer;font-size:1.4rem}
.big-choice strong{font-size:1.08rem}.big-choice span{font-size:.9rem;color:var(--muted);line-height:1.45}.big-choice:hover,.big-choice.selected{border-color:var(--primary);background:var(--soft)}
.hidden{display:none!important}.check-top{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}.progress-wrap{min-width:240px}.progress-bar{height:10px;background:#e8eaf1;border-radius:999px;overflow:hidden}.progress-bar span{display:block;height:100%;background:var(--primary);transition:.25s}
.question-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px}.answer-list{display:grid;gap:11px;margin:20px 0}.answer-option{padding:16px 18px;border-radius:15px;border:1px solid var(--line);background:#fff;text-align:left;cursor:pointer;font-size:1rem}.answer-option:hover,.answer-option.selected{border-color:var(--primary);background:var(--soft);font-weight:800}
.check-actions{display:flex;justify-content:space-between;margin-top:16px}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.score-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.score-card>span{float:right;font-weight:900}.score-card .bar{height:8px;background:#eceef4;border-radius:99px;margin-top:14px;overflow:hidden}.score-card .bar i{display:block;height:100%;background:var(--primary)}
@media(max-width:800px){.choice-grid,.choice-grid.two,.score-grid{grid-template-columns:1fr}.check-top{display:block}.progress-wrap{margin-top:12px;min-width:0}}

.study-search-box{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;margin:18px 0}
.study-search-box input,.study-search-box select{padding:13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.study-results{display:grid;gap:18px}
.study-result{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px}
.study-result-head{display:flex;justify-content:space-between;gap:16px;align-items:start}
.study-result-head h2{margin:5px 0 0}
.admission-pill{background:#f0f1ff;border:1px solid #d8daf8;padding:8px 10px;border-radius:999px;font-size:.82rem;font-weight:800;max-width:340px}
.study-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.study-meta-grid>div{background:#fafbfe;border:1px solid var(--line);border-radius:14px;padding:13px}
.study-meta-grid strong{display:block;margin-bottom:5px}
.study-meta-grid span{font-size:.88rem;color:var(--muted)}
.location-list{display:grid;gap:8px}
.location-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:10px}
.location-row small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:800px){
 .study-search-box,.study-meta-grid{grid-template-columns:1fr}
 .study-result-head,.location-row{display:block}
 .admission-pill{display:inline-block;margin-top:10px}
 .location-row .btn{margin-top:8px}
}

.study-input-wrap{position:relative}.study-suggestions{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 36px rgba(30,35,60,.14);overflow:hidden}
.study-suggestions:empty{display:none}.study-suggestions button{width:100%;display:flex;justify-content:space-between;gap:12px;border:0;border-bottom:1px solid var(--line);background:#fff;padding:11px 13px;text-align:left;cursor:pointer}.study-suggestions button:hover{background:var(--soft)}.study-suggestions small{color:var(--muted)}
.quick-subjects{display:flex;flex-wrap:wrap;gap:8px;margin:-4px 0 18px}.quick-subjects button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;cursor:pointer}.quick-subjects button:hover{border-color:var(--primary);background:var(--soft)}
.study-index-result{border-style:dashed}.notice.compact{margin-top:12px;padding:12px}

.location-rich{align-items:flex-start!important;padding:14px 0!important}
.location-main{flex:1}.location-facts{display:grid;gap:4px;margin-top:8px}
.location-facts span{font-size:.84rem;color:var(--muted)}
.location-facts b{color:var(--text)}
@media(max-width:800px){.location-rich .btn{display:inline-block;margin-top:10px}}

.location-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.verify-badge{font-size:.72rem;font-weight:900;border-radius:999px;padding:4px 8px}
.verify-badge.verified{background:#e9f8f0;color:#12633d;border:1px solid #bee7cf}
.verify-badge.pending{background:#f7f1e5;color:#765b22;border:1px solid #ead7aa}
.nc-box{margin-top:10px;border-radius:12px;padding:10px 12px;background:#f8f9fc;border:1px solid var(--line)}
.nc-box b{display:block;margin-bottom:5px}.nc-box ul{margin:5px 0 0;padding-left:18px}.nc-box li,.nc-box span{font-size:.84rem;color:var(--muted)}
.checked-at{display:block;margin-top:7px;color:var(--muted)}
.data-quality-note{margin-top:10px}

.training-search{display:grid;grid-template-columns:2fr 1fr auto;gap:10px;margin-bottom:14px}.training-search input,.training-search select{min-height:54px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:0 14px;font:inherit}.job-category-chips,.alphabet{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.job-category-chips button,.alphabet button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;cursor:pointer}.job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.job-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px;justify-content:space-between}.job-card h3{margin:4px 0}.job-facts{display:grid;gap:5px;color:var(--muted);font-size:.86rem}.job-modal{display:none;position:fixed;inset:0;background:rgba(15,20,40,.55);z-index:1000;padding:5vh 18px;overflow:auto}.job-modal.open{display:block}.job-modal-panel{position:relative;max-width:760px;margin:auto;background:#fff;border-radius:22px;padding:26px}.modal-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:2rem;cursor:pointer}@media(max-width:850px){.training-search,.job-grid{grid-template-columns:1fr}}

.detail-badges{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 18px}.detail-badges span{background:#f0efff;border:1px solid #dedaff;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:800}

.training-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}
.overview-card{appearance:none;text-align:left;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;display:flex;gap:15px;cursor:pointer;transition:.18s ease;min-height:150px}
.overview-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(18,24,49,.08);border-color:#c9c4ff}
.overview-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#f2f1ff;font-size:1.5rem;flex:0 0 auto}
.overview-copy{display:flex;flex-direction:column;gap:7px}.overview-copy strong{font-size:1.05rem}.overview-copy small{color:var(--muted);line-height:1.45}.overview-copy b{font-size:.82rem;margin-top:auto;color:var(--primary)}
.overview-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.searchbox-large{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:0 12px;min-height:54px}.searchbox-large input{border:0!important;outline:0;width:100%;padding:0!important;min-height:auto!important}
.search-suggestions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0}.search-suggestions span{font-size:.82rem;color:var(--muted)}.search-suggestions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;cursor:pointer}
@media(max-width:900px){.training-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.training-overview{grid-template-columns:1fr}.overview-card{min-height:auto}}

html[dir="rtl"] body{text-align:right}html[dir="rtl"] input,html[dir="rtl"] select{text-align:right}html[dir="rtl"] .training-overview,html[dir="rtl"] .job-grid{direction:rtl}

html[dir="rtl"] body{text-align:right}
html[dir="rtl"] .header-inner,html[dir="rtl"] nav,html[dir="rtl"] .nav,
html[dir="rtl"] .cards,html[dir="rtl"] .training-overview,html[dir="rtl"] .job-grid,
html[dir="rtl"] .study-meta-grid,html[dir="rtl"] .overview-actions,
html[dir="rtl"] .search-suggestions{direction:rtl}
html[dir="rtl"] input,html[dir="rtl"] textarea,html[dir="rtl"] select{text-align:right;direction:rtl}

.official-german-name{display:block;color:var(--muted);font-size:.76rem;margin-top:-5px;margin-bottom:8px;font-weight:500}

.job-translation{margin:.28rem 0 .7rem;color:var(--muted);font-size:.94rem;line-height:1.4}
.job-translation span{font-weight:600;color:var(--muted)}
.job-translation strong{font-weight:700;color:var(--text)}
.modal-translation{font-size:1rem;margin-top:-.25rem;margin-bottom:1rem}
html[dir="rtl"] .job-translation{direction:rtl;text-align:right}
html[dir="rtl"] h2[lang="de"],html[dir="rtl"] h3[lang="de"]{direction:ltr;text-align:left}
.check-shell{max-width:820px;margin:2rem auto 4rem}.check-progress-head{display:flex;justify-content:space-between}.progress-track{height:10px;background:#e5ecef;border-radius:20px;margin:.6rem 0 1.3rem;overflow:hidden}#progressBar{height:100%;background:#173f46}.check-card{background:#fff;border:1px solid #dbe5e8;border-radius:18px;padding:2rem;min-height:300px}.answer-grid{display:grid;gap:.7rem;margin-top:1.3rem}.answer-option,.scale-btn{padding:1rem;border:1px solid #cad8dc;border-radius:12px;background:#fff;cursor:pointer}.answer-option.selected,.scale-btn.selected{background:#eaf5f3;border-color:#173f46}.scale-options{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}.scale-labels,.check-actions{display:flex;justify-content:space-between;margin-top:1.3rem}.recommendation-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}.recommendation-card{position:relative;background:#fff;border:1px solid #dbe5e8;border-radius:18px;padding:1.4rem}.rank{position:absolute;right:1rem;font-weight:900;opacity:.35}@media(max-width:700px){.recommendation-grid{grid-template-columns:1fr}}
.availability-panel{margin-top:14px;padding-top:10px;border-top:1px solid #dbe5e8}
.availability-ok{font-weight:800}.availability-warn{font-weight:800}.availability-bad{font-weight:800}

.uni-result-block{margin:1rem 0;padding:1rem;background:#f6f9fa;border-radius:12px}
.uni-result-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:.75rem 0;border-bottom:1px solid #dce6e9}
.uni-result-item:last-child{border-bottom:0}.uni-small{font-size:.86rem;opacity:.82;margin-top:.18rem}
.btn.mini{padding:.45rem .65rem;font-size:.82rem;white-space:nowrap}.uni-more{margin-top:.65rem;font-size:.88rem;font-weight:700}
@media(max-width:700px){.uni-result-item{display:block}.btn.mini{display:inline-block;margin-top:.5rem}}

.official-name-label{font-size:.78rem;font-weight:700;opacity:.7;margin-top:.35rem}.translated-name{margin:.1rem 0 .7rem;font-size:.95rem}.translated-name strong{font-weight:700}html[dir="rtl"] .check-card,html[dir="rtl"] .recommendation-card,html[dir="rtl"] .result-hero{text-align:right}

.access-warning{margin:1rem 0;padding:1rem 1.1rem;border:2px solid currentColor;border-radius:12px;background:#fff}
.access-warning strong{display:block;margin-bottom:.35rem}
.access-warning p{margin:0;line-height:1.5}
.access-result-note{margin-top:1rem}

.nc-tool-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:1rem;margin-bottom:2rem}
.nc-form label{display:block;font-weight:700;margin:.6rem 0 .3rem}
.nc-form input{width:100%}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.nc-card .kicker{display:inline-block;margin-bottom:.5rem}.nc-history ul{margin:.5rem 0 0;padding-left:1.2rem}
html[dir="rtl"] .nc-history ul{padding-left:0;padding-right:1.2rem}
@media(max-width:760px){.nc-tool-grid,.form-row{grid-template-columns:1fr}}

.general-grade-box{margin-bottom:1rem}
.chance-fallback{margin:.8rem 0;padding:.75rem .85rem;border-radius:10px;background:#f5f7f8}
.chance-fallback p{margin:.35rem 0 0}

.subject-test-box{margin-bottom:1rem;border-width:2px}.subject-test-box p{margin:.45rem 0}

/* V8.16 reviewed UX fixes */
.home-hero .hero-grid{align-items:center}.home-copy h1{max-width:760px}.home-campus{min-height:520px;overflow:hidden;background:#eef3fb}.home-campus img{width:100%;height:100%;min-height:520px;object-fit:cover;display:block}.home-photo-card{position:absolute;left:26px;right:26px;bottom:24px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);padding:18px 22px;border-radius:22px;box-shadow:0 16px 45px rgba(32,48,72,.18);display:flex;flex-direction:column;gap:4px}.home-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.home-points span{background:#f3f5fb;border:1px solid #e2e6f0;border-radius:999px;padding:8px 12px;font-size:.92rem}
.budget-city-results{margin-top:18px}.budget-result-group{margin:12px 0 22px}.budget-result-group h4{margin:0 0 10px}.budget-place-card{width:100%;display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:5px 16px;text-align:left;border:1px solid #e3e7ef;background:#fff;border-radius:16px;padding:14px 16px;margin:8px 0;cursor:pointer}.budget-place-card:hover{border-color:#7167ef;box-shadow:0 8px 24px rgba(80,74,190,.09)}.budget-place-card small{grid-column:1/-1;color:#697489}
.nc-page .notice{background:#f7f9fc;border:1px solid #e1e6ef;color:#26344a;box-shadow:none}.nc-page .general-grade-box,.nc-page .subject-test-box{background:linear-gradient(135deg,#f5f7ff,#f4fbfb);border:1px solid #dfe5f3}.nc-page .notice strong{color:#15243d}.nc-page .recommendation-card{border:1px solid #e2e7f0;box-shadow:0 8px 26px rgba(27,42,67,.06)}.nc-page .pill{background:#edf0ff;color:#4d4bc4}
.uni-map-row{min-height:70px}.leaflet-circle-marker-pane path{cursor:pointer}
@media(max-width:800px){.home-campus,.home-campus img{min-height:380px}.budget-place-card{grid-template-columns:1fr}.budget-place-card small{grid-column:auto}}

/* V8.21 clean campus hero: photo only, no dark overlay */
img[src*="campus-hero-clean"]{filter:none!important;opacity:1!important;mix-blend-mode:normal!important;object-fit:cover!important}
.hero-media:has(img[src*="campus-hero-clean"])::before,
.hero-media:has(img[src*="campus-hero-clean"])::after,
.hero-visual:has(img[src*="campus-hero-clean"])::before,
.hero-visual:has(img[src*="campus-hero-clean"])::after{opacity:0!important;background:transparent!important}

/* V8.24 Deutschland-verstehen: original card design + comfortable page gutters */
.knowledge-v822{
  width:min(1120px,calc(100% - 64px))!important;
  max-width:1120px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}
.knowledge-v822 .hero.compact{padding-left:0!important;padding-right:0!important}
.knowledge-v822 .hero.compact h1{font-size:clamp(2rem,4vw,3.2rem)!important;line-height:1.08!important;max-width:850px}
.knowledge-v822 .hero.compact p{max-width:820px;font-size:1rem!important;line-height:1.6!important}

.knowledge-card-section{margin:22px 0 20px}
.knowledge-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.knowledge-card{
  appearance:none;width:100%;min-height:142px;text-align:left;
  display:flex;align-items:flex-start;gap:15px;
  border:1px solid #e1e5ec;background:#fff;color:inherit;
  border-radius:18px;padding:20px;cursor:pointer;font:inherit;
  box-shadow:0 7px 24px rgba(22,34,67,.045);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.knowledge-card:hover{transform:translateY(-2px);border-color:#aebdec;box-shadow:0 10px 28px rgba(22,34,67,.08)}
.knowledge-card.active{border:2px solid #2855dc;background:#f8faff;padding:19px}
.knowledge-card .icon{
  width:46px;height:46px;min-width:46px;border-radius:14px;
  background:#eef3ff;color:#204dd7;display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:1.1rem
}
.knowledge-card strong{display:block;font-size:1.04rem;line-height:1.25;margin:3px 0 8px}
.knowledge-card small{display:block;color:#657084;font-size:.9rem;line-height:1.48;font-weight:400}

.knowledge-panels{width:100%;margin-top:4px}
.knowledge-panel{
  width:100%;box-sizing:border-box;background:#fff;border:1px solid #e3e7ee;
  border-radius:20px;padding:28px 32px;margin:0 0 20px;
  box-shadow:0 8px 28px rgba(24,34,65,.03)
}
.knowledge-panel[hidden]{display:none!important}
.knowledge-panel .lead{font-size:1rem!important;line-height:1.65!important;max-width:900px}
.knowledge-panel p,.knowledge-panel li{font-size:.96rem!important;line-height:1.62!important}
.knowledge-panel .knowledge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.knowledge-panel .knowledge-grid article{padding:17px}
.knowledge-panel h2{font-size:clamp(1.45rem,2.5vw,1.9rem)!important}
.more-topics{padding:25px 30px!important}

@media(max-width:900px){
  .knowledge-v822{width:min(100% - 40px,1120px)!important}
  .knowledge-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .knowledge-v822{width:calc(100% - 32px)!important}
  .knowledge-card-grid{grid-template-columns:1fr;gap:12px}
  .knowledge-card{min-height:auto;padding:16px}
  .knowledge-card.active{padding:15px}
  .knowledge-panel{padding:20px 18px}
  .knowledge-panel .knowledge-grid{grid-template-columns:1fr}
  .more-topics{padding:20px 18px!important}
}

/* V8.25 topic scroll target */
.knowledge-panel{scroll-margin-top:110px}

/* V8.27 study-cost knowledge card */
.knowledge-panel[data-panel="studienkosten"] .fact-strip{margin-top:18px}
.knowledge-panel[data-panel="studienkosten"] strong{overflow-wrap:anywhere}
