.tp-wrap{display:flex;gap:24px;font-family:inherit;width:100%;align-items:flex-start;}
.tp-sidebar{width:220px;flex-shrink:0;position:sticky;top:20px;}
.tp-filter-section{margin-bottom:20px;}
.tp-filter-label{display:block;font-size:11px;font-weight:500;color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;}
.tp-sidebar input[type=text],.tp-sidebar select{width:100%;padding:7px 10px;font-size:13px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;outline:none;}
.tp-price-row{display:flex;justify-content:space-between;font-size:12px;color:#888;margin-bottom:6px;}
.tp-sidebar input[type=range]{width:100%;margin-bottom:4px;}
.tp-checkbox-list{display:flex;flex-direction:column;gap:6px;max-height:180px;overflow-y:auto;padding-right:4px;}
.tp-checkbox-list label{display:flex;align-items:center;gap:7px;font-size:12px;color:#444;cursor:pointer;line-height:1.4;}
.tp-checkbox-list input[type=checkbox]{width:14px;height:14px;flex-shrink:0;cursor:pointer;}
.tp-uni-count{margin-left:auto;font-size:11px;color:#aaa;flex-shrink:0;}
.tp-main{flex:1;min-width:0;}
.tp-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:8px;}
.tp-count{font-size:13px;color:#888;}
.tp-sort-select{font-size:13px;padding:6px 10px;border:1px solid #ddd;border-radius:6px;background:#fff;color:#333;outline:none;}
.tp-empty{color:#888;font-style:italic;font-size:14px;}
.tp-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;padding:1rem 1.25rem;margin-bottom:10px;transition:box-shadow .15s;}
.tp-card:hover{box-shadow:0 2px 12px rgba(0,0,0,.07);}
.tp-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;}
.tp-card-header-left{display:flex;align-items:center;gap:10px;}
.tp-logo-wrap{flex-shrink:0;display:block;}
.tp-uni-logo{width:36px;height:36px;border-radius:50%;border:1px solid #e8e8e8;object-fit:contain;background:#f7f7f7;display:block;}
.tp-uni-initials{width:36px;height:36px;border-radius:50%;border:1px solid #e8e8e8;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:#666;}
.tp-program-name{font-size:15px;font-weight:500;color:#111;line-height:1.3;margin-bottom:2px;}
.tp-uni-name{font-size:12px;color:#888;text-decoration:none;}
.tp-uni-name:hover{color:#333;}
.tp-uni-type{font-size:11px;color:#888;background:#f0f0f0;border-radius:999px;padding:1px 7px;margin-left:4px;}
.tp-apply-btn{flex-shrink:0;display:inline-block;background:transparent;border:1px solid #ccc;border-radius:6px;padding:6px 16px;font-size:13px;color:#333;text-decoration:none;white-space:nowrap;transition:background .15s;}
.tp-apply-btn:hover{background:#f5f5f5;border-color:#aaa;color:#111;}
.tp-city{display:flex;align-items:center;gap:4px;font-size:12px;color:#888;margin-bottom:8px;}
.tp-badges{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px;}
.tp-badge{font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid #e8e8e8;color:#666;background:#f7f7f7;}
.tp-badge--bachelor{background:#E6F1FB;color:#0C447C;border-color:#B5D4F4;}
.tp-badge--associate{background:#EAF3DE;color:#27500A;border-color:#C0DD97;}
.tp-badge--master{background:#EEEDFE;color:#3C3489;border-color:#CECBF6;}
.tp-badge--phd{background:#FAECE7;color:#993C1D;border-color:#F5C4B3;}
.tp-badge--prep{background:#FAEEDA;color:#854F0B;border-color:#FAC775;}
.tp-card-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;border-top:1px solid #f0f0f0;padding-top:10px;}
.tp-tuition{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;}
.tp-tuition-label{font-size:11px;color:#aaa;text-transform:uppercase;letter-spacing:.03em;margin-right:2px;}
.tp-tuition-original{font-size:12px;color:#bbb;text-decoration:line-through;}
.tp-tuition-price{font-size:15px;font-weight:500;color:#111;}
.tp-deadline{display:flex;align-items:center;gap:5px;font-size:12px;color:#888;background:#f7f7f7;border-radius:6px;padding:3px 9px;}
.tp-pagination{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:1.5rem;justify-content:center;}
.tp-page-btn{min-width:34px;height:34px;padding:0 8px;background:#fff;border:1px solid #ddd;border-radius:6px;font-size:13px;color:#333;cursor:pointer;}
.tp-page-btn:hover:not(:disabled){background:#f5f5f5;border-color:#aaa;}
.tp-page-btn--active{background:#111;color:#fff;border-color:#111;}
.tp-page-btn:disabled{opacity:.35;cursor:not-allowed;}
.tp-page-ellipsis{font-size:13px;color:#aaa;padding:0 4px;}
@media(max-width:768px){.tp-wrap{flex-direction:column;}.tp-sidebar{width:100%;position:static;}}
