*{box-sizing:border-box}html,body{background:#f0f0f3;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;color:#17171a;letter-spacing:-.005em;font-family:Instrument Sans,-apple-system,system-ui,sans-serif;font-size:14px}a{color:#2f6bed;text-decoration:none}button{font:inherit;color:inherit}img,svg{display:block}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#00000029 padding-box content-box;border:3px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#0000004d padding-box content-box}::-webkit-scrollbar-track{background:0 0}#app{min-height:100vh;display:flex}.sidebar{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffffb8;border-right:1px solid #00000013;flex-direction:column;flex:0 0 260px;align-self:flex-start;gap:16px;width:260px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:9px;padding:2px 4px 0;display:flex}.logo{background:linear-gradient(160deg,#3d7bf7,#2f5fd8);border-radius:9px;justify-content:center;align-items:center;width:28px;height:28px;display:flex;box-shadow:0 1px 2px #2f6bed66}.brand-text{flex-direction:column;line-height:1.15;display:flex}.brand-title{font-size:13.5px;font-weight:600}.brand-sub{color:#85858e;font-size:11px}.filters{flex-direction:column;gap:9px;display:flex}.nav-label{letter-spacing:.06em;text-transform:uppercase;color:#9a9aa2;padding:0 2px;font-size:10.5px;font-weight:600}.f-card{background:#fff;border:1px solid #00000012;border-radius:12px;flex-direction:column;gap:9px;padding:12px;display:flex;box-shadow:0 1px 2px #00000008}.bilist{flex-direction:column;gap:1px;display:flex}.country-list{max-height:36vh;overflow-y:auto}.pill{color:#3c3c44;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:6px 8px;font-size:12.5px;font-weight:450;display:flex}.pill .pill-label{align-items:center;gap:8px;min-width:0;display:flex}.pill .pill-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pill .pill-count{font-variant-numeric:tabular-nums;color:#9a9aa2;font-size:11px}.pill:hover{background:#0000000b}.pill.active{color:#2559d4;background:#2f6bed1a;font-weight:600}.pill.active .pill-count{color:#2559d4}.pill.active:hover{background:#2f6bed1a}.fcountry{font-size:15px;line-height:1}.f-check-group{flex-direction:column;gap:2px;display:flex}.f-check-group label{cursor:pointer;color:#3c3c44;border-radius:8px;align-items:center;gap:10px;padding:6px 8px;font-size:12.5px;font-weight:450;transition:background .12s,color .12s;display:flex}.f-check-group label:hover{background:#0000000b}.fopt-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.f-check-group input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:1.5px solid #00000038;border-radius:5px;flex:0 0 16px;width:16px;height:16px;margin:0;transition:background .12s,border-color .12s;position:relative}.f-check-group input[type=checkbox]:hover{border-color:#00000059}.f-check-group input[type=checkbox]:checked{background:#2f6bed;border-color:#2f6bed}.f-check-group input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:1.5px;left:4.5px;transform:rotate(45deg)}.rank-grid{gap:8px;display:flex}.rank-field{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.rank-field-label{letter-spacing:.04em;text-transform:uppercase;color:#9a9aa2;padding:0 2px;font-size:10.5px;font-weight:600}.rank-field input{width:100%;font:inherit;color:#17171a;background:#fff;border:1px solid #0000001a;border-radius:9px;outline:0;padding:7px 10px;font-size:13px;transition:border-color .12s,box-shadow .12s}.rank-field input:hover{border-color:#0003}.rank-field input:focus{border-color:#2f6bed;box-shadow:0 0 0 3px #2f6bed1f}.clear-btn{color:#4a4a52;cursor:pointer;background:#fff;border:1px solid #00000017;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:100%;padding:9px 11px;font-size:12px;font-weight:500;transition:border-color .12s,background .12s,color .12s;display:flex;box-shadow:0 1px 1.5px #0000000a}.clear-btn:hover{color:#c22f28;background:#00000005;border-color:#9b2f2647}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#f0f0f3d1;border-bottom:1px solid #0000000f;flex-direction:column;gap:13px;padding:16px 22px 12px;display:flex;position:sticky;top:0}.topbar-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.title{flex-direction:column;gap:2px;min-width:0;display:flex}.title h1{letter-spacing:-.02em;margin:0;font-size:19px;font-weight:600}.title p{color:#85858e;margin:0;font-size:12.5px}.search{background:#fff;border:1px solid #00000017;border-radius:9px;align-items:center;gap:7px;width:248px;margin-left:auto;padding:7px 10px;display:flex;box-shadow:0 1px 1.5px #0000000a}.search input{font:inherit;color:#17171a;background:0 0;border:0;outline:0;width:100%;font-size:13px}.view-toggle{background:#0000000e;border-radius:9px;gap:2px;padding:2px;display:flex}.view-toggle button{color:#85858e;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;padding:5px 9px;display:flex}.view-toggle button.active{color:#17171a;background:#fff;box-shadow:0 1px 2px #0000001f}.content{flex-direction:column;gap:14px;padding:18px 22px 40px;display:flex}.badge{white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex:0 auto;align-items:center;min-width:0;padding:2.5px 8px;font-size:11.5px;font-weight:550;display:inline-flex;overflow:hidden}.badge-full{color:#1c6b41;background:#e9f5ee}.badge-partial{color:#8a5a11;background:#fdf2df}.badge-stipend{color:#2b4f9e;background:#e8eefc}.badge-unspec{color:#6c6c74;background:#f1f1f4}.badge-req{color:#9b2f26;background:#fbeceb}.rdoc{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-self:flex-start;align-items:center;gap:5px;max-width:100%;padding:4px 10px;font-size:11.5px;font-weight:550;line-height:1.3;display:inline-flex;overflow:hidden}.review-good{color:#1c6b41;background:#e9f5ee}.review-bad{color:#9b2f26;background:#fbeceb}.table{background:#fff;border:1px solid #00000013;border-radius:14px;overflow:hidden;box-shadow:0 1px 2px #0000000a,0 8px 24px -18px #0000002e}.table-head,.table-row{grid-template-columns:minmax(0,2.2fr) 68px minmax(0,1.6fr) minmax(120px,1.9fr) 92px 58px;align-items:center;gap:12px;padding:9px 16px;display:grid}.table-head{letter-spacing:.06em;text-transform:uppercase;color:#9a9aa2;background:#00000004;border-bottom:1px solid #0000000f;font-size:10.5px;font-weight:600}.table-head button{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.table-head button.active{color:#17171a}.table-row{cursor:pointer;border-bottom:1px solid #0000000d;padding-top:11px;padding-bottom:11px}.table-row:last-child{border-bottom:0}.table-row:hover{background:#2f6bed09}.table-row.active{background:#2f6bed0f}.cell-name{flex-direction:column;gap:2px;min-width:0;display:flex}.cell-name .n{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;font-size:13.5px;font-weight:550;display:flex;overflow:hidden}.cell-name .sub{color:#85858e;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.flag{font-size:15px;line-height:1}.cell-rank{font-variant-numeric:tabular-nums;color:#4a4a52;font-size:13px}.cell-window{color:#4a4a52;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.cell-fund{align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.cell-fund .stipend-note{color:#85858e;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:11px;overflow:hidden}.cell-gre{justify-self:start}.cell-ielts{color:#4a4a52;font-variant-numeric:tabular-nums;font-size:12.5px}.cards{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:12px;display:grid}.card{cursor:pointer;background:#fff;border:1px solid #00000013;border-radius:14px;flex-direction:column;gap:10px;padding:14px;transition:border-color .12s,box-shadow .12s;display:flex;box-shadow:0 1px 2px #0000000a}.card:hover{border-color:#2f6bed59;box-shadow:0 2px 3px #0000000d,0 14px 30px -22px #00000059}.card-body{flex-direction:column;gap:3px;min-width:0;display:flex}.card-body .name{letter-spacing:-.015em;align-items:center;gap:7px;font-size:14px;font-weight:600;line-height:1.25;display:flex}.card-body .flag{font-size:16px}.card-sub{color:#85858e;font-size:11.5px}.card-amount{color:#4a4a52;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.card-tags{flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;display:flex}.card-tags .t-ielts{color:#85858e;font-variant-numeric:tabular-nums;font-size:11.5px}.empty{text-align:center;color:#85858e;flex-direction:column;align-items:center;gap:8px;padding:60px 20px;display:flex}.empty>span{color:#4a4a52;font-size:14px}.empty button{color:#2f6bed;cursor:pointer;background:0 0;border:0;font-size:13px}.detail{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#fafafce6;border-left:1px solid #00000013;flex-direction:column;flex:0 0 396px;align-self:flex-start;gap:18px;width:396px;height:100vh;padding:18px 20px 40px;display:flex;position:sticky;top:0;overflow-y:auto}.detail-head{align-items:flex-start;gap:10px;display:flex}.detail-head .flags{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.detail-head .ctry{color:#9a9aa2;letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:600}.detail-head .nm{letter-spacing:-.02em;align-items:center;gap:8px;margin:0;font-size:18px;font-weight:600;line-height:1.25;display:flex}.detail-head .nm .flag{font-size:20px}.detail-head .rank{color:#85858e;font-size:12.5px}.close-btn{cursor:pointer;color:#4a4a52;background:#0000000d;border:0;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.close-btn:hover{background:#0000001a}.detail-tags{flex-wrap:wrap;gap:6px;display:flex}.open-btn{color:#fff;background:#2f6bed;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:10px;font-size:13px;font-weight:550;display:flex;box-shadow:0 1px 2px #2f6bed66}.open-btn:hover{color:#fff;background:#2559d4;text-decoration:none}.field{border-bottom:1px solid #0000000f;flex-direction:column;gap:4px;padding-bottom:14px;display:flex}.field:last-child{border-bottom:0}.field .lbl{letter-spacing:.06em;text-transform:uppercase;color:#9a9aa2;font-size:10.5px;font-weight:600}.field .val{color:#2b2b31;white-space:pre-line;font-size:13px;line-height:1.5}
