:root{--bg: #f6f7f9;--panel: #ffffff;--text: #111827;--muted: #667085;--border: #d9dee7;--primary: #0f766e;--primary-dark: #115e59;--soft: #f2f4f7;--danger: #b42318;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;background:var(--bg)}.app-shell,.topbar,.layout,.panel{min-width:0}button,input,select{font:inherit;max-width:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 28px;background:#fff;border-bottom:1px solid var(--border)}.topbar-actions{display:flex;align-items:center;gap:10px}h1,h2,p{margin:0}h1{font-size:24px}h2{font-size:18px}.topbar p,.muted{margin-top:6px;color:var(--muted);font-size:13px}.status{min-width:118px;padding:8px 12px;border-radius:6px;text-align:center;font-weight:700;background:var(--soft)}.status.ready{color:#065f46;background:#d1fae5}.status.warn{color:#92400e;background:#fef3c7}.notice,.error{margin:16px;padding:12px 14px;border-radius:8px}.notice{border:1px solid #fed7aa;background:#fff7ed}.error{color:var(--danger);border:1px solid #fecaca;background:#fff1f2}code{padding:2px 5px;border-radius:4px;background:#eef2f6}.layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(540px,1fr) minmax(280px,330px);gap:16px;padding:16px;align-items:start}.panel{padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.panel-title{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px}.compact-title{margin-top:2px;padding-top:12px;border-top:1px solid var(--border)}.compact-title h2{font-size:17px}.view-tabs{display:inline-grid;grid-template-columns:repeat(4,minmax(0,110px));gap:4px;margin-bottom:14px;padding:4px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.view-tabs button{min-height:32px;padding:4px 10px;color:#344054;background:transparent;font-size:13px}.view-tabs button.active{color:#fff;background:var(--primary)}.school-mode-tabs{display:inline-grid;grid-template-columns:repeat(2,minmax(0,120px));gap:4px;margin-bottom:14px;padding:4px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.school-mode-tabs button{min-height:32px;padding:4px 10px;color:#344054;background:transparent;font-size:13px}.school-mode-tabs button.active{color:#fff;background:var(--primary)}.form-grid,.filters{display:grid;gap:12px}.filters{margin-top:14px}.filter-toggle{display:none}.advanced-filters{display:grid;gap:12px}.school-search-card{display:grid;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.school-search-card h3{margin:0;font-size:16px}.school-search-card p{margin-top:4px;color:var(--muted);font-size:12px}.quick-actions{display:grid;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.quick-actions h3{margin:0;font-size:16px}.quick-actions p{margin-top:4px;color:var(--muted);font-size:12px}.quick-action-form{display:grid;grid-template-columns:minmax(0,1fr) 74px;gap:8px;align-items:end}.quick-action-form button{height:46px;padding:0 12px}.compare-selection{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.selected-school-list{display:flex;flex-wrap:wrap;gap:6px}.selected-school-list button{border:1px solid #b7d5cf;border-radius:999px;background:#e8f5f1;color:#0f766e;padding:5px 9px;font-size:12px;font-weight:800}.multi-filter{display:grid;gap:8px}.filter-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#344054;font-weight:800}button.link-button{min-height:28px;padding:0 6px;color:var(--primary);background:transparent;font-size:13px}.shortcut-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.shortcut-row button{min-height:32px;padding:4px 6px;color:#344054;background:#eef2f6;font-size:13px}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:174px;overflow:auto;padding:8px;border:1px solid var(--border);border-radius:6px;background:#fff}.city-grid{max-height:136px}.check-item{display:flex;align-items:center;gap:5px;min-height:28px;color:#344054;font-size:13px;font-weight:600}.check-item input{width:15px;min-height:15px}.hint{color:var(--muted);font-size:12px}label{display:grid;gap:6px;color:#344054;font-weight:700}input,select{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:6px;background:#fff}button{min-height:40px;padding:8px 14px;border:0;border-radius:6px;color:#fff;background:var(--primary);font-weight:800;white-space:normal;cursor:pointer}button:hover:not(:disabled){background:var(--primary-dark)}button:disabled{cursor:not-allowed;opacity:.55}button.small{min-height:32px;padding:4px 10px;white-space:nowrap}.secondary-button{min-height:36px;color:#344054;background:#eef2f6}.secondary-button:hover:not(:disabled){background:#e4e7ec}.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:8px;max-height:calc(100vh - 235px)}table{width:100%;min-width:1120px;border-collapse:collapse}th,td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;white-space:nowrap}th{position:sticky;top:0;z-index:1;color:#475467;background:#f8fafc;font-size:13px}.school-major{min-width:260px;white-space:normal}.school-major p{margin-top:4px;color:var(--muted);font-size:13px}.text-link{min-height:auto;padding:0;color:var(--text);background:transparent;font-weight:800;text-align:left}.text-link:hover:not(:disabled){color:var(--primary);background:transparent}.muted-link{color:var(--muted);font-weight:700}.inline-action{min-height:26px;margin-left:8px;padding:2px 8px;color:var(--primary);background:#ccfbf1;font-size:12px}.inline-action:hover:not(:disabled){color:#fff;background:var(--primary)}.year-cell{min-width:86px}.year-cell b,.year-cell span{display:block}.year-cell span{margin-top:3px;color:var(--muted);font-size:12px}.tag,.risk{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:800}.tag{margin-left:6px;color:#475467;background:#eef2f6}.risk.reach{color:#92400e;background:#fef3c7}.risk.match{color:#065f46;background:#d1fae5}.risk.safe{color:#1e40af;background:#dbeafe}.pager{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.recommendation-cards{display:none}.recommendation-card{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.recommendation-card-head,.recommendation-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.recommendation-card-head span:last-child{color:#475467;font-size:13px;font-weight:800}.recommendation-school,.recommendation-major{min-height:auto;padding:0;text-align:left;color:#0f172a;background:transparent;border-radius:0}.recommendation-school{font-size:17px;font-weight:900}.recommendation-major{color:#475467;font-size:14px;font-weight:700}.recommendation-school:hover:not(:disabled),.recommendation-major:hover:not(:disabled){color:var(--primary);background:transparent}.recommendation-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.recommendation-meta div{min-width:0;padding:9px;border-radius:6px;background:#f8fafc}.recommendation-meta span,.recommendation-meta em{display:block;color:var(--muted);font-size:12px;font-style:normal}.recommendation-meta b{display:block;margin-top:3px;overflow-wrap:anywhere;color:#0f172a;font-size:14px}.recommendation-actions button{flex:1;min-height:40px;padding:7px 8px}.volunteer-page{display:grid}.mobile-bottom-nav,.mobile-only{display:none}.row-actions{display:flex;gap:6px;min-width:94px;white-space:nowrap}.recommendation-table th:nth-child(3),.recommendation-table th:nth-child(4),.recommendation-table th:nth-child(5),.recommendation-table td:nth-child(3),.recommendation-table td:nth-child(4),.recommendation-table td:nth-child(5){width:90px;min-width:90px}.recommendation-table th:nth-child(6),.recommendation-table td:nth-child(6){width:118px;min-width:118px}.recommendation-table th:nth-child(7),.recommendation-table td:nth-child(7),.recommendation-table th:nth-child(8),.recommendation-table td:nth-child(8){width:76px;min-width:76px}.school-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:12px;border:1px solid #bfd7d2;border-radius:8px;background:#f0fdfa}.school-summary h3{margin:0;font-size:18px}.school-summary p{margin-top:5px;color:#475467;font-size:13px}.school-profile-toolbar{margin-bottom:12px}.school-profile-toolbar label{max-width:360px}.school-profile-table{min-width:880px}.compare-toolbar{margin-bottom:12px}.compare-toolbar label{max-width:380px}.compare-school-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-bottom:12px}.compare-school-card{display:grid;gap:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.compare-school-card h3{margin:0;font-size:16px}.compare-school-card p,.compare-card-meta{color:var(--muted);font-size:12px}.compare-card-meta{display:grid;gap:4px}.compare-school-card .remove{justify-self:start}.compare-table{min-width:940px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.stats div{padding:10px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.stats b{display:block;font-size:18px}.stats span{color:var(--muted);font-size:13px}.volunteer-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;margin-bottom:10px}.volunteer-actions button{min-height:34px;padding:5px 8px;color:#344054;background:#eef2f6;font-size:13px}.copy-status{margin:0 0 10px;color:var(--primary);font-size:13px}.volunteer-insights{display:grid;gap:5px;margin-bottom:10px;padding:10px;border:1px solid #bfd7d2;border-radius:8px;background:#f0fdfa}.volunteer-insights strong{color:#134e4a;font-size:13px}.volunteer-insights p{color:#475467;font-size:12px}.volunteer-list{display:grid;gap:8px;max-height:calc(100vh - 230px);overflow:auto}.volunteer-item{display:grid;grid-template-columns:32px 1fr auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:8px}.volunteer-item p{margin-top:4px;color:var(--muted);font-size:12px}.volunteer-item-actions{display:grid;grid-template-columns:repeat(3,30px);gap:4px}.volunteer-item-actions button{min-height:30px;padding:4px;color:#344054;background:#eef2f6}button.remove{min-height:32px;padding:4px 9px;color:var(--danger);background:#fee4e2}.empty{padding:22px;color:var(--muted);text-align:center}.drawer-backdrop{position:fixed;inset:0;z-index:20;display:flex;justify-content:flex-end;background:#11182747}.detail-drawer{width:min(460px,100vw);height:100%;overflow:auto;padding:18px;background:#fff;box-shadow:-16px 0 40px #1118272e}.drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border)}.drawer-head h2{margin-top:8px}.drawer-head p{margin-top:6px;color:var(--muted)}.icon-button{min-width:36px;min-height:36px;padding:0;color:#344054;background:#eef2f6;font-size:24px;line-height:1}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}.detail-grid div{padding:10px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.detail-grid span{display:block;margin-bottom:5px;color:var(--muted);font-size:12px}.drawer-section{display:grid;gap:8px;margin:16px 0}.drawer-section h3{margin:0;font-size:15px}.drawer-section p,.drawer-note{color:#475467;line-height:1.65;font-size:13px}.history-list{display:grid;gap:8px}.history-list div{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:#fff}.history-list span{color:#475467}.data-note{width:min(520px,100vw)}.wide-drawer{width:min(760px,100vw)}.drawer-actions{display:flex;flex-wrap:wrap;gap:8px}.profile-section{display:grid;gap:16px;padding-top:16px}.profile-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px;border:1px solid #bfd7d2;border-radius:8px;background:#f0fdfa}.profile-hero h3{margin:0;font-size:20px}.profile-hero p{margin-top:5px;color:var(--muted)}.tag-row,.chip-list{display:flex;flex-wrap:wrap;gap:6px}.chip-list span{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;color:#344054;background:#eef2f6;font-size:13px;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.metric-grid div{padding:14px;border:1px solid var(--border);border-radius:8px;background:#f8fafc}.metric-grid span,.job-card-grid span{display:block;margin-bottom:5px;color:var(--muted);font-size:12px}.metric-grid b{font-size:22px}.salary-chart{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.salary-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(160px,2fr) minmax(120px,auto);gap:10px;align-items:center}.salary-label{display:grid;gap:3px}.salary-label span{color:var(--muted);font-size:12px}.salary-track{position:relative;height:12px;overflow:hidden;border-radius:999px;background:#eef2f6}.salary-track span{position:absolute;top:0;bottom:0;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#22c55e)}.job-card-list{display:grid;gap:14px}.job-group-card{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:8px;background:#fff}.job-group-head{display:grid;gap:4px;padding-bottom:12px;border-bottom:1px solid #e8edf3}.job-group-head h4{margin:0;font-size:22px;line-height:1.25}.job-group-head p{margin:0;color:#334155;font-size:15px;font-weight:800}.offer-list{display:grid;gap:12px}.job-card{display:grid;gap:10px;padding:12px;border-radius:8px;background:#f8fafc}.job-card-head{display:flex;justify-content:space-between;gap:12px}.job-card h4{margin:0;font-size:16px}.job-card p{margin-top:5px;color:var(--muted);font-size:12px}.job-card-note{margin:0;line-height:1.55}.job-card-grid{display:grid;grid-template-columns:minmax(220px,2fr) minmax(120px,1fr) repeat(3,minmax(110px,1fr));gap:10px}.job-card-grid div{padding:10px;border-radius:6px;background:#fff}.public-position-section{gap:12px}.public-position-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.public-position-title h3,.public-position-title p{margin:0}.public-position-title p{margin-top:4px;color:var(--muted);font-size:12px}.low-confidence-toggle{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#334155;font-size:12px;font-weight:700}.public-position-tabs{display:flex;gap:8px;flex-wrap:wrap}.public-position-tabs button{border:1px solid var(--border);border-radius:999px;background:#fff;color:#334155;padding:7px 12px;font-size:13px;font-weight:800}.public-position-tabs button.active{border-color:var(--primary);background:#e8f5f1;color:#0f766e}.public-position-list{display:grid;gap:10px}.public-position-card{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.public-position-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.public-position-head h5{margin:0;color:#0f172a;font-size:15px;line-height:1.35}.match-level{flex:0 0 auto;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:800}.match-high{color:#065f46;background:#d1fae5}.match-medium{color:#1d4ed8;background:#dbeafe}.match-low{color:#92400e;background:#fef3c7}.public-position-grid{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:8px}.public-position-grid div{min-width:0;padding:9px;border-radius:6px;background:#f8fafc}.public-position-grid span{display:block;margin-bottom:4px;color:var(--muted);font-size:12px}.public-position-grid b{overflow-wrap:anywhere;font-size:13px}.public-position-card p{margin:0;color:#334155;font-size:13px;line-height:1.55}.credibility{align-self:flex-start;min-width:46px;padding:4px 8px;border-radius:999px;text-align:center;font-size:12px;font-weight:800}.credibility-高{color:#065f46;background:#d1fae5}.credibility-中{color:#1e40af;background:#dbeafe}.credibility-待核实{color:#92400e;background:#fef3c7}.source-link{color:var(--primary);font-size:13px;font-weight:700}.compact-empty{padding:12px;border:1px dashed var(--border);border-radius:8px}.mini-table{display:grid;gap:8px}.mini-table div{display:flex;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff}.mini-table span{color:var(--muted)}.jobs-page{display:grid;gap:16px}.job-search-panel{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;gap:10px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.job-search-panel label{display:grid;gap:6px}.job-search-panel label span{color:var(--muted);font-size:12px;font-weight:800}.job-search-panel input,.job-search-panel select{width:100%;height:38px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font-size:14px}.job-search-actions{display:flex;gap:8px}.job-search-actions button,.job-pager button{height:38px;padding:0 14px;border:0;border-radius:6px;background:var(--primary);color:#fff;font-weight:800;cursor:pointer}.job-search-actions button.secondary,.job-pager button:disabled{background:#e2e8f0;color:#475569}.job-result-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.job-result-head h3{margin:0}.job-result-head span{color:var(--muted);font-size:13px;font-weight:800}.job-pager{justify-content:flex-end;margin-top:14px}@media(max-width:1180px){.layout{grid-template-columns:340px 1fr}.job-search-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.volunteer-panel{grid-column:1 / -1}}@media(max-width:760px){body{padding-bottom:72px}.topbar>div{min-width:0}.topbar p{font-size:12px;line-height:1.45;word-break:break-all;overflow-wrap:anywhere}.topbar,.layout{display:grid;padding:12px}.topbar-actions{display:grid;grid-template-columns:1fr;gap:8px}.topbar-actions .status,.topbar-actions button{width:100%;min-width:0}h1{font-size:20px;line-height:1.25}.layout{grid-template-columns:1fr;gap:12px}.panel{padding:12px}.main-panel{padding-bottom:14px}.panel-title{display:grid;align-items:start}.view-tabs{display:none;width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.school-mode-tabs{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.view-tabs button{padding:6px 4px;font-size:12px;white-space:nowrap}.form-grid,.filters,.quick-action-form{grid-template-columns:1fr}.filter-toggle{display:block;width:100%;min-height:42px;color:#344054;background:#eef2f6}.filter-toggle:hover:not(:disabled){background:#e4e7ec}.advanced-filters{display:none}.advanced-filters.open{display:grid}.shortcut-row,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-action-form button{width:100%;height:42px}.table-wrap,.volunteer-list{max-height:none}.recommendation-table{display:none}.recommendation-cards{display:grid;gap:10px}.recommendation-meta{grid-template-columns:1fr}.recommendation-actions{display:grid;grid-template-columns:1fr 1fr 1fr}.volunteer-panel{display:none}.volunteer-page .volunteer-list{max-height:none}.mobile-bottom-nav{position:fixed;right:auto;bottom:0;left:50%;z-index:15;display:grid;width:min(100%,390px);max-width:min(100%,390px);box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,82px));justify-content:space-between;gap:3px;transform:translate(-50%);padding:8px 6px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fffffff5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-bottom-nav button{min-width:0;min-height:44px;padding:6px 2px;color:#475467;background:transparent;font-size:12px}.mobile-bottom-nav button.active{color:#fff;background:var(--primary)}.drawer-backdrop{align-items:flex-end;justify-content:center;padding-top:34px}.detail-drawer,.wide-drawer,.data-note{width:100%;height:min(92dvh,100%);padding:14px 14px calc(18px + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;box-shadow:0 -16px 40px #1118272e}.drawer-head{position:sticky;top:-14px;z-index:2;margin:-14px -14px 0;padding:14px;background:#fff}.drawer-head h2{font-size:18px;line-height:1.3;overflow-wrap:anywhere}.drawer-actions{position:sticky;bottom:0;z-index:2;display:grid;grid-template-columns:1fr;margin:14px -14px calc(-18px - env(safe-area-inset-bottom));padding:10px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fff}.profile-section{gap:12px;padding-top:12px}.profile-hero{gap:10px;padding:12px}.profile-hero h3{font-size:18px;line-height:1.3;overflow-wrap:anywhere}.tag-row,.chip-list,.public-position-tabs{gap:6px}.chip-list span,.public-position-tabs button{min-height:34px}.detail-grid,.salary-row,.job-card-grid,.public-position-grid,.job-search-panel,.metric-grid{grid-template-columns:1fr}.profile-hero,.job-card-head,.public-position-title,.public-position-head,.job-result-head,.mini-table div{display:grid}.job-search-actions,.job-pager{justify-content:stretch}.jobs-page{gap:12px}.job-search-panel{padding:10px}.job-search-panel input,.job-search-panel select{height:42px;font-size:16px}.job-search-actions button,.job-pager button{flex:1;height:42px}.job-result-head{align-items:start}.job-group-card{gap:12px;padding:12px}.job-group-head h4{font-size:18px;overflow-wrap:anywhere}.job-group-head p{font-size:14px;line-height:1.45}.offer-list{gap:10px}.job-card{padding:10px}.job-card h4{font-size:15px;line-height:1.35;overflow-wrap:anywhere}.job-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-card-grid div:first-child{grid-column:1 / -1}.job-card-grid div{min-width:0;padding:9px}.job-card-grid b,.public-position-grid b,.mini-table span{overflow-wrap:anywhere}.salary-chart{padding:10px}.salary-row{gap:8px}.salary-track{height:10px}.public-position-title{gap:10px}.low-confidence-toggle{justify-content:flex-start;min-height:34px;white-space:normal}.public-position-tabs{display:grid;grid-template-columns:1fr 1fr}.public-position-tabs button{padding:7px 8px}.public-position-head{gap:8px}.match-level{justify-self:start}.public-position-card{padding:10px}.public-position-grid{grid-template-columns:1fr 1fr}.mini-table div{gap:6px}}@media(max-width:420px){.view-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
