:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}html{width:100%;overflow-x:clip}#root{box-sizing:border-box;width:100%;min-width:0;max-width:720px;min-height:100svh;margin:0 auto;overflow-x:clip}body{background:var(--tg-theme-bg-color,#fff);width:100%;max-width:100%;color:var(--tg-theme-text-color,#000);margin:0;overflow-x:clip}h1,h2,h3{color:var(--tg-theme-text-color,#000)}p{margin:0}.app{min-height:100svh;padding:1.5rem;padding-left:max(1.5rem, env(safe-area-inset-left,0px));padding-right:max(1.5rem, env(safe-area-inset-right,0px));box-sizing:border-box;background:var(--tg-theme-bg-color,#fff);color:var(--tg-theme-text-color,#000);width:100%;min-width:0;max-width:100%;overflow-x:clip}.app h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:600}.app-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.switch-role-btn{white-space:nowrap;flex-shrink:0;margin:.25rem 0 0;padding:.35rem 0;font-size:.9rem}.subtitle{color:var(--tg-theme-hint-color,#707579);font-size:.95rem}.card{background:var(--tg-theme-secondary-bg-color,#f4f4f5);border:1px solid var(--tg-theme-border-color,#e5e5ea);border-radius:12px;min-width:0;max-width:100%;margin-top:1.5rem;padding:1rem 1.25rem;overflow:hidden}.card ul{margin:.75rem 0 0;padding-left:1.25rem}.card li{margin-bottom:.5rem}.status{color:var(--tg-theme-hint-color,#707579);margin-top:1.5rem}.error{color:#e53935;margin:0 0 1rem}.hint{color:var(--tg-theme-hint-color,#707579);font-size:.9rem}.profile h2,.profile h3{margin:0 0 .75rem;font-size:1.1rem}.profile-fields{gap:.75rem;margin:0 0 1.25rem;display:grid}.profile-fields dt{color:var(--tg-theme-hint-color,#707579);margin-bottom:.15rem;font-size:.8rem}.profile-fields dd{margin:0;font-weight:500}.experience-list{margin:0 0 1rem;padding-left:0;list-style:none}.experience-header{justify-content:space-between;align-items:center;gap:.75rem;margin:1rem 0 .5rem;display:flex}.experience-header h3{margin:0}.vacancy-section-title{color:var(--tg-theme-hint-color,#6b7280);margin:1rem 0 .5rem;font-size:.95rem;font-weight:600}.experience-add-btn{margin-top:0;padding:.45rem .75rem;font-size:.85rem}.experience-form{margin-bottom:1rem}.experience-item{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.5rem 0;display:flex}.experience-item:last-child{border-bottom:none}.btn{background:var(--tg-theme-button-color,#3390ec);color:var(--tg-theme-button-text-color,#fff);cursor:pointer;border:none;border-radius:10px;margin-top:.5rem;padding:.6rem 1rem;font-size:.95rem;display:inline-block}.btn.secondary{background:var(--tg-theme-secondary-bg-color,#e5e5ea);color:var(--tg-theme-text-color,#000)}.btn:disabled{opacity:.6;cursor:not-allowed}.profile-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.profile-header h2{margin:0}.profile-form{gap:1rem;min-width:0;max-width:100%;display:grid}.form-field{gap:.35rem;min-width:0;max-width:100%;display:grid}.form-field>span{color:var(--tg-theme-hint-color,#707579);font-size:.8rem}.form-field input,.form-field select{box-sizing:border-box;border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);width:100%;min-width:0;max-width:100%;color:var(--tg-theme-text-color,#000);border-radius:10px;padding:.55rem .75rem;font-size:.95rem}.field-error{color:#e53935;font-size:.85rem;font-style:normal}.required-mark{color:#e53935}.validation-summary{color:#e53935;background:#e5393514;border:1px solid #e5393540;border-radius:8px;margin:.5rem 0 0;padding:.65rem .75rem;font-size:.9rem}.form-actions{flex-wrap:wrap;gap:.5rem;display:flex}.form-actions .btn{margin-top:0}.metro-results{border:1px solid var(--tg-theme-border-color,#e5e5ea);border-radius:10px;margin:.25rem 0 0;padding:0;list-style:none;overflow:hidden}.metro-results li+li{border-top:1px solid var(--tg-theme-border-color,#e5e5ea)}.metro-option{background:var(--tg-theme-bg-color,#fff);width:100%;color:var(--tg-theme-text-color,#000);text-align:left;cursor:pointer;border:none;padding:.55rem .75rem;font-size:.95rem}.link-btn{color:var(--tg-theme-link-color,#3390ec);cursor:pointer;background:0 0;border:none;margin-left:.5rem;padding:0;font-size:.85rem}.app-nav{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.nav-btn{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-secondary-bg-color,#f4f4f5);min-width:5rem;min-height:48px;color:var(--tg-theme-text-color,#000);cursor:pointer;border-radius:10px;flex:1;padding:.55rem .75rem;font-size:.9rem}.nav-btn.active{background:var(--tg-theme-button-color,#3390ec);color:var(--tg-theme-button-text-color,#fff);border-color:#0000}.form-field textarea{box-sizing:border-box;border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);width:100%;min-width:0;max-width:100%;color:var(--tg-theme-text-color,#000);resize:vertical;border-radius:10px;padding:.55rem .75rem;font-family:inherit;font-size:.95rem}.form-field.compact>span{font-size:.75rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;min-width:0;max-width:100%;display:grid}.form-row>.form-field{min-width:0;overflow:hidden}.form-field.checkbox-field{cursor:pointer;flex-flow:wrap;align-items:center;gap:.6rem;display:flex}.form-field.checkbox-field .field-error{flex-basis:100%;margin-left:1.75rem}.form-field.checkbox-field>span{min-width:0;color:var(--tg-theme-text-color,#000);flex:1;font-size:.95rem;line-height:1.35}.form-field.checkbox-field input[type=checkbox],.form-field.checkbox-field input[type=radio]{width:1.15rem;min-width:1.15rem;height:1.15rem;accent-color:var(--tg-theme-button-color,#3390ec);background:0 0;border:none;flex-shrink:0;margin:0;padding:0}fieldset.form-field{border:none;min-width:0;margin:0;padding:0}.checkbox-list{gap:.35rem;margin:.5rem 0 0;padding:0;list-style:none;display:grid}.radio-list{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);border-radius:10px;gap:.35rem;margin:.5rem 0 0;padding:.5rem .75rem;list-style:none;display:grid}.radio-list>li{min-width:0;margin:0}.complaint-select-btn{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.complaint-select-btn:active{opacity:.7}.back-link{margin-bottom:.75rem;display:inline-block}.chip-list{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.chip{background:var(--tg-theme-secondary-bg-color,#f0f0f0);border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.85rem;display:inline-flex}.optional-toggle{margin:0;padding:0;font-size:.9rem}.optional-fields{gap:1rem;padding-top:.25rem;display:grid}.shift-slots-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.shift-slot-row{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);border-radius:10px;gap:.5rem;padding:.75rem;display:grid}.shift-remove{justify-self:start;margin:0}.add-shift-btn{margin-top:.5rem}.jobs-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.jobs-drafts-block{margin-bottom:.75rem}.jobs-active-block{margin-top:.25rem}.jobs-section-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.35rem;display:flex}.jobs-section-header .vacancy-section-title{margin:0}.job-item{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);border-radius:10px;padding:.75rem}.job-item-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.35rem;display:flex}.status-badge{border-radius:999px;flex-shrink:0;padding:.2rem .5rem;font-size:.75rem;font-weight:600}.status-draft{color:#856404;background:#fff3cd}.status-active{color:#155724;background:#d4edda}.status-cancelled,.status-expired{color:#721c24;background:#f8d7da}.status-filled{color:#0c5460;background:#d1ecf1}.job-shifts{margin:.35rem 0 0;padding-left:1.1rem;font-size:.9rem}.job-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.job-actions .btn{margin-top:0}.role-picker h2{margin:0 0 .5rem;font-size:1.2rem}.role-cards{gap:.75rem;margin-top:1rem;display:grid}.role-card{box-sizing:border-box;border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);width:100%;min-height:72px;color:var(--tg-theme-text-color,#000);text-align:left;cursor:pointer;appearance:none;font:inherit;border-radius:12px;flex-direction:column;align-items:flex-start;gap:.35rem;padding:1rem 1.1rem;display:flex}.role-card-icon{flex-shrink:0;font-size:1.75rem;line-height:1}.role-card-text{flex-direction:column;gap:.25rem;width:100%;min-width:0;display:flex}.role-card-title{font-size:1.05rem;font-weight:600;line-height:1.3;display:block}.role-card-desc{color:var(--tg-theme-hint-color,#707579);font-size:.9rem;line-height:1.35;display:block}.role-card-admin{border-color:var(--tg-theme-link-color,#2481cc)}.filters-form{margin-bottom:1rem}.metro-selected{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.pagination{gap:.5rem;margin-top:1rem;display:flex}.pagination .btn{margin-top:0}.back-link{margin:0 0 .75rem;display:inline-block}.vacancy-detail h3{margin:1rem 0 .5rem;font-size:1rem}.apply-shifts{margin:.35rem 0 0;padding:0;list-style:none}.apply-shifts li{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);margin-bottom:.75rem;padding:.5rem 0}.shift-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.small-btn{padding:.4rem .75rem;font-size:.85rem}.success{color:#2e7d32;margin:.75rem 0}.applications-list{margin:.75rem 0 0;padding:0;list-style:none}.application-item{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 0;display:flex}.application-item:last-child{border-bottom:none}.application-item-employer{flex-direction:column;align-items:stretch}.application-item-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.application-item-body{flex:1}.application-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.application-actions .btn{margin-top:0}.status-pending{color:#856404;background:#fff3cd}.status-accepted{color:#155724;background:#d4edda}.status-rejected,.status-cancelled_by_worker,.status-cancelled_by_employer{color:#721c24;background:#f8d7da}.admin-panel h2{margin:0 0 .75rem}.admin-tabs{margin-top:.75rem}.admin-stats{margin-top:1rem}.stat-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.stat-card{background:var(--tg-theme-bg-color,#fff);border:1px solid var(--tg-theme-border-color,#e5e5ea);border-radius:10px;flex-direction:column;align-items:center;padding:.85rem;display:flex}.stat-card-btn{cursor:pointer;appearance:none;width:100%;font:inherit;color:inherit;transition:opacity .15s,transform .1s}.stat-card-btn:active{opacity:.85;transform:scale(.98)}.stat-card-btn:focus-visible{outline:2px solid var(--tg-theme-link-color,#2481cc);outline-offset:2px}.admin-drilldown{margin-top:1rem}.admin-drilldown-header{flex-direction:column;align-items:flex-start;gap:.35rem;margin-bottom:.5rem;display:flex}.admin-drilldown-header h3{margin:0;font-size:1rem}.stat-card-warn .stat-value{color:#e65100}.stat-value{font-size:1.5rem;font-weight:700;line-height:1.2}.stat-label{color:var(--tg-theme-hint-color,#707579);text-align:center;margin-top:.25rem;font-size:.8rem}.admin-subsection{margin-top:1.25rem}.admin-subsection h3{margin:0 0 .5rem;font-size:.95rem}.admin-kv-list{margin:0;padding:0;list-style:none}.admin-kv-list li{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);justify-content:space-between;padding:.4rem 0;font-size:.9rem;display:flex}.admin-list{margin:.75rem 0 0;padding:0;list-style:none}.admin-list-item{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);padding:.85rem 0}.admin-list-item:last-child{border-bottom:none}.admin-list-main{flex-direction:column;gap:.2rem;margin-bottom:.65rem;display:flex}.admin-list-actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn-sm{margin-top:0;padding:.45rem .75rem;font-size:.85rem}.btn-danger{color:#fff;background:#e53935}.admin-audit-list{margin:.75rem 0 0;padding:0;list-style:none}.admin-audit-list li{border-bottom:1px solid var(--tg-theme-border-color,#e5e5ea);padding:.55rem 0;font-size:.88rem;line-height:1.35}.admin-audit-list li:last-child{border-bottom:none}.nav-btn-admin{color:var(--tg-theme-link-color,#2481cc)}.contact-block{background:var(--tg-theme-secondary-bg-color,#f2f2f7);border-radius:.5rem;margin-top:.75rem;padding:.75rem}.contact-block p{margin:.25rem 0 0}.contact-block a{color:var(--tg-theme-link-color,#007aff);text-decoration:none}.category-picker{gap:.5rem;min-width:0;max-width:100%;display:grid}.category-recent{margin-bottom:.25rem}.category-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;min-width:0;max-width:100%;display:grid}.category-group-card{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-secondary-bg-color,#f4f4f5);min-width:0;max-width:100%;min-height:72px;color:var(--tg-theme-text-color,#000);text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.65rem .75rem;display:flex;overflow:hidden}.category-group-card:active:not(:disabled){opacity:.85}.category-group-card:disabled{opacity:.6;cursor:not-allowed}.category-group-card__title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.9rem;font-weight:600;line-height:1.25;display:block;overflow:hidden}.category-group-card__count{font-size:.75rem}.category-selected,.metro-selected{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);border-radius:10px;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;max-width:100%;padding:.55rem .75rem;display:flex}.category-role-step,.category-custom-step{gap:.5rem;min-width:0;max-width:100%;display:grid}.category-custom-btn{margin-top:.25rem}.category-role-results .metro-option .hint{font-size:.8rem}.verify-card{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-secondary-bg-color,#f4f4f5);border-radius:10px;margin-top:.5rem;padding:.75rem}.verify-card p{margin:.35rem 0 0;font-size:.9rem}.verify-card--approved{border-color:#34c759}.verify-card--map_to_existing{border-color:#3390ec}.verify-card--revise{border-color:#ff9500}.verify-card--rejected{border-color:#e53935}.phone-input-row{flex-wrap:nowrap;align-items:stretch;gap:.5rem;min-width:0;max-width:100%;display:flex}.phone-input-row>input:not(.phone-custom-code-input){flex:1 1 0;min-width:0}.phone-input-row .phone-country-code{text-overflow:ellipsis;white-space:nowrap;flex:none;width:auto;min-width:5rem;max-width:6.5rem;padding-left:.55rem;padding-right:1.5rem;overflow:hidden}.phone-input-row .phone-country-code option{background-color:var(--tg-theme-bg-color,#1c1c1e);color:var(--tg-theme-text-color,#fff);padding:.5rem .75rem}.phone-input-row--custom{flex-wrap:wrap}.phone-input-row--custom .phone-country-code{text-overflow:clip;white-space:normal;flex:1 0 100%;width:100%;max-width:none;overflow:visible}.phone-custom-code{flex:1 0 100%;align-items:stretch;gap:.5rem;min-width:0;display:flex}.phone-custom-code-input{flex:1 1 0;min-width:0;font-family:inherit}.phone-custom-code-btn{flex:none;min-width:3rem;padding-left:.85rem;padding-right:.85rem}.telegram-input-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:.5rem;min-width:0;max-width:100%;display:grid}.telegram-input-field{border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);border-radius:10px;align-items:stretch;min-width:0;display:flex;overflow:hidden}.telegram-at-prefix{color:var(--tg-theme-text-color,#000);-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;padding:.55rem 0 .55rem .75rem;font-size:.95rem;display:flex}.telegram-input-field input{background:0 0;border:none;border-radius:0;flex:1;min-width:0;margin:0;padding-left:.1rem}.telegram-fill-btn{box-sizing:border-box;border:1px solid var(--tg-theme-button-color,#3390ec);background:var(--tg-theme-secondary-bg-color,#2c2c2e);min-width:2.75rem;min-height:44px;color:var(--tg-theme-button-color,#3390ec);white-space:nowrap;border-radius:10px;justify-content:center;align-self:stretch;align-items:center;margin-top:0;padding:.55rem .85rem;font-size:.85rem;font-weight:500;display:inline-flex}.telegram-fill-btn:disabled{border-color:var(--tg-theme-border-color,#5a5a5e);color:var(--tg-theme-hint-color,#707579);background:var(--tg-theme-secondary-bg-color,#2c2c2e)}.filter-chips{flex-wrap:wrap;gap:.5rem;min-width:0;max-width:100%;margin:1rem 0 .75rem;display:flex}.filter-chips .chip{text-overflow:ellipsis;appearance:none;min-width:0;max-width:100%;font:inherit;border:1px solid var(--tg-theme-border-color,#e5e5ea);background:var(--tg-theme-bg-color,#fff);min-height:44px;color:var(--tg-theme-text-color,#000);white-space:nowrap;cursor:pointer;border-radius:10px;flex:0 auto;padding:.5rem .85rem;font-size:.875rem;font-weight:500;line-height:1.2;transition:background .15s,color .15s,border-color .15s;overflow:hidden}.filter-chips .chip.active{background:var(--tg-theme-button-color,#3390ec);color:var(--tg-theme-button-text-color,#fff);border-color:var(--tg-theme-button-color,#3390ec)}.filter-chips .chip:active:not(.active){opacity:.85}@media (width<=480px){.filter-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;margin-inline:-.25rem;padding-inline:.25rem .5rem;overflow-x:auto}.filter-chips::-webkit-scrollbar{display:none}}.job-detail-fields{margin:.75rem 0 0}.job-detail-summary{margin:0 0 .75rem}.detail-block{margin-bottom:.75rem}.detail-block h3{color:var(--tg-theme-hint-color,#707579);margin:0 0 .35rem;font-size:.9rem;font-weight:600}.detail-text{white-space:pre-wrap;margin:0;line-height:1.45}.detail-grid{flex-direction:column;gap:.5rem;margin-bottom:.75rem;display:flex}.detail-row{flex-direction:column;gap:.15rem;display:flex}.detail-label{color:var(--tg-theme-hint-color,#707579);font-size:.85rem;font-weight:600}.detail-value{line-height:1.4}.job-info-badges{flex-wrap:wrap;gap:.4rem;margin:0 0 .75rem;padding:0;list-style:none;display:flex}.info-badge{background:var(--tg-theme-secondary-bg-color,#ffffff14);color:var(--tg-theme-text-color,#fff);border:1px solid #ffffff1f;border-radius:.5rem;padding:.25rem .55rem;font-size:.8rem;display:inline-block}.shift-slot-row,.form-actions{min-width:0;max-width:100%}@supports (-webkit-touch-callout:none){input,select,textarea,button{max-width:100%}.form-actions .btn{flex:auto;min-width:0}}@media (width<=400px){.app{padding-left:max(.75rem, env(safe-area-inset-left,0px));padding-right:max(.75rem, env(safe-area-inset-right,0px))}.form-actions{flex-direction:column;align-items:stretch}.form-actions .btn{width:100%}.telegram-input-row{grid-template-columns:1fr}}
