*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{color:#212121;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}.screen{min-height:100vh;padding-bottom:calc(70px + env(safe-area-inset-bottom,0px));background:#f5f5f5}.loading-screen{background:#fff;justify-content:center;align-items:center;display:flex}.loader{text-align:center}.loader .logo{margin-bottom:16px;font-size:64px;animation:2s infinite pulse}.loader .title{margin-bottom:8px;font-size:28px;font-weight:700}.loader .subtitle{color:#757575;font-size:16px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.role-screen{background:#fff}.role-container{text-align:center;flex-direction:column;justify-content:center;min-height:100vh;padding:40px 24px;display:flex}.logo-big{margin-bottom:16px;font-size:72px}.role-container h1{margin-bottom:8px;font-size:28px;font-weight:700}.role-container .subtitle{color:#757575;margin-bottom:40px;font-size:16px}.role-buttons{flex-direction:column;gap:12px;display:flex}.role-btn{cursor:pointer;text-align:left;background:#fff;border:2px solid #e0e0e0;border-radius:12px;align-items:center;gap:16px;width:100%;padding:20px 24px;font-family:inherit;transition:all .2s;display:flex}.role-btn:hover,.role-btn:active{background:#e3f2fd;border-color:#2196f3}.role-btn .icon{flex-shrink:0;font-size:32px}.role-btn .text{flex-direction:column;display:flex}.role-btn .text strong{color:#212121;font-size:16px;font-weight:600}.role-btn .text small{color:#757575;margin-top:4px;font-size:14px}.app-header{z-index:100;background:#fff;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #00000014}.app-header h2{text-align:center;flex:1;font-size:18px;font-weight:600}.back-btn{color:#2196f3;cursor:pointer;background:0 0;border:none;padding:8px 0;font-family:inherit;font-size:16px}.city-selector{color:#212121;cursor:pointer;background:#e3f2fd;border-radius:8px;padding:8px 12px;font-size:16px;font-weight:500}.icon-btn{cursor:pointer;background:0 0;border:none;padding:8px;font-size:20px}.filters-bar{background:#fff;border-bottom:1px solid #e0e0e0;padding:12px 16px}.filter-group{margin-bottom:12px}.filter-group:last-child{margin-bottom:0}.filter-group label{color:#757575;margin-bottom:8px;font-size:13px;font-weight:500;display:block}.filter-chips{flex-wrap:wrap;gap:8px;display:flex}.chip{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:20px;padding:6px 14px;font-family:inherit;font-size:14px;transition:all .2s}.chip.active{color:#fff;background:#2196f3;border-color:#2196f3}.jobs-list{flex-direction:column;gap:12px;padding:12px 16px;display:flex}.card{cursor:pointer;background:#fff;border-radius:12px;padding:16px;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px #00000014}.card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.badge{text-transform:uppercase;border-radius:6px;margin-bottom:8px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.badge-sks{color:#2e7d32;background:#e8f5e9}.badge-video{color:#1565c0;background:#e3f2fd}.badge-skud{color:#e65100;background:#fff3e0}.badge-fire{color:#c62828;background:#ffebee}.badge-complex{color:#6a1b9a;background:#f3e5f5}.badge-default{color:#546e7a;background:#eceff1}.card-budget{color:#2196f3;margin-bottom:8px;font-size:15px;font-weight:700}.card-footer{color:#757575;border-top:1px solid #e0e0e0;margin-top:10px;padding-top:10px;font-size:13px}.card-footer .has-responses{color:#2196f3;font-weight:500}.skeleton-list{padding:12px 16px}.skeleton-card{background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0 50%,#e0e0e0 75%) 0 0/200% 100%;border-radius:12px;height:120px;margin-bottom:12px;animation:1.5s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.detail-content{padding:16px}.detail-title{margin:12px 0 16px;font-size:20px;font-weight:700;line-height:1.4}.photos-gallery{-webkit-overflow-scrolling:touch;gap:8px;margin-bottom:16px;padding-bottom:8px;display:flex;overflow-x:auto}.photos-gallery img{object-fit:cover;border-radius:8px;flex-shrink:0;width:200px;height:150px}.detail-info{background:#fff;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 2px 8px #00000014}.detail-row{border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:#757575}.detail-row span:last-child{color:#212121;font-weight:500}.detail-description{background:#fff;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 2px 8px #00000014}.detail-description h4{color:#757575;text-transform:uppercase;margin-bottom:8px;font-size:14px}.detail-description p{color:#212121;font-size:15px;line-height:1.6}.questions-section{background:#fff;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 2px 8px #00000014}.questions-section h3{margin-bottom:12px;font-size:16px;font-weight:600}.no-questions{color:#9e9e9e;padding:12px 0;font-size:14px}.question-item{border-bottom:1px solid #e0e0e0;padding:12px}.question-item:last-child{border-bottom:none}.question-author{color:#2196f3;margin-bottom:4px;font-size:13px;font-weight:600}.question-text{color:#212121;font-size:14px;line-height:1.5}.btn-answer,.btn-ask{color:#2196f3;cursor:pointer;background:#fff;border:1px solid #2196f3;border-radius:6px;margin-top:8px;padding:8px 16px;font-family:inherit;font-size:13px}.btn-ask{background:#e3f2fd;border:none;width:100%;margin-top:12px;font-weight:500}.responses-section{margin:16px 0}.responses-section h3{margin-bottom:12px;font-size:16px;font-weight:600}.response-card{background:#fff;border-radius:12px;margin-bottom:12px;padding:16px;box-shadow:0 2px 8px #00000014}.response-header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.response-avatar{background:#e3f2fd;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex;overflow:hidden}.response-avatar img{object-fit:cover;width:100%;height:100%}.response-info{flex:1}.response-name{font-size:15px;font-weight:600}.response-specs{color:#757575;margin-top:2px;font-size:13px}.response-rating{color:#ff9800;font-size:14px;font-weight:500}.response-body{gap:16px;margin-bottom:10px;display:flex}.response-price{color:#212121;font-size:18px;font-weight:700}.response-duration{color:#757575;font-size:14px}.response-comment{color:#757575;margin-bottom:12px;font-size:14px;line-height:1.5}.contacts-box{text-align:center;background:linear-gradient(135deg,#e3f2fd 0%,#e8f5e9 100%);border-radius:12px;margin:16px 0;padding:20px}.contacts-box h4{color:#757575;margin-bottom:12px;font-size:14px}.contact-phone{color:#2196f3;margin-bottom:8px;font-size:24px;font-weight:700;text-decoration:none;display:block}.contact-name{color:#212121;font-size:16px}.form{padding:16px}.form-group{margin-bottom:20px}.form-group label{color:#212121;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:14px 16px;font-family:inherit;font-size:16px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#2196f3;outline:none}.form-group textarea{resize:vertical;min-height:100px}.type-selector,.budget-selector{flex-wrap:wrap;gap:8px;display:flex}.type-btn,.budget-btn{cursor:pointer;background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:10px 16px;font-family:inherit;font-size:14px;transition:all .2s}.type-btn.selected,.budget-btn.selected{color:#2196f3;background:#e3f2fd;border-color:#2196f3;font-weight:600}.photo-upload{text-align:center;cursor:pointer;border:2px dashed #e0e0e0;border-radius:12px;padding:20px;transition:all .2s}.photo-upload:hover{background:#e3f2fd;border-color:#2196f3}.upload-placeholder{color:#757575;flex-direction:column;align-items:center;gap:8px;display:flex}.upload-placeholder span{font-size:32px}.submit-btn{color:#fff;cursor:pointer;background:#2196f3;border:none;border-radius:8px;width:100%;padding:16px;font-family:inherit;font-size:16px;font-weight:600;transition:background .2s}.submit-btn:hover{background:#1976d2}.submit-btn:disabled{cursor:not-allowed;background:#90caf9}.respond-preview{background:#fff;border-bottom:1px solid #e0e0e0;margin-bottom:16px;padding:16px}.respond-preview h3{margin:8px 0;font-size:16px}.profile-content{padding:16px}.profile-header{text-align:center;background:#fff;border-radius:12px;margin-bottom:16px;padding:24px 16px;position:relative;box-shadow:0 2px 8px #00000014}.profile-avatar{background:#e3f2fd;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 12px;font-size:36px;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.profile-name{margin-bottom:4px;font-size:20px;font-weight:700}.profile-rating{color:#ff9800;margin-bottom:8px;font-size:16px}.profile-badge{color:#fff;background:#4caf50;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.profile-section{background:#fff;border-radius:12px;margin-bottom:16px;padding:16px;box-shadow:0 2px 8px #00000014}.profile-section h3{color:#757575;text-transform:uppercase;margin-bottom:12px;font-size:14px}.profile-row{border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.profile-row:last-child{border-bottom:none}.profile-row span:first-child{color:#757575}.profile-row span:last-child{color:#212121;font-weight:500}.spec-tags{flex-wrap:wrap;gap:8px;display:flex}.spec-tag{color:#2196f3;background:#e3f2fd;border-radius:20px;padding:6px 14px;font-size:13px;font-weight:500}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.portfolio-item{aspect-ratio:1;background:#f5f5f5;border-radius:8px;overflow:hidden}.portfolio-item img{object-fit:cover;width:100%;height:100%}.review-card{border-bottom:1px solid #e0e0e0;padding:12px 0}.review-card:last-child{border-bottom:none}.review-stars{color:#ff9800;margin-bottom:6px}.review-text{margin-bottom:6px;font-size:14px;line-height:1.5}.review-author{color:#757575;font-size:13px}.my-list{padding:16px}.my-response .status-pending{color:#757575}.my-response .status-accepted{color:#4caf50}.my-response .status-rejected{color:#f44336}.tab-bar{padding:6px 0 calc(6px + env(safe-area-inset-bottom,0px));z-index:1000;background:#fff;border-top:1px solid #e0e0e0;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 8px #0000000d}.tab-btn{cursor:pointer;color:#9e9e9e;background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;min-width:60px;padding:4px 16px;font-family:inherit;transition:color .2s;display:flex}.tab-btn.active{color:#2196f3}.tab-btn span:first-child{font-size:22px;line-height:1}.tab-btn small{font-size:11px;font-weight:500;line-height:1.2}.fab{bottom:calc(76px + env(safe-area-inset-bottom,0px));color:#fff;cursor:pointer;z-index:999;background:#2196f3;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-family:inherit;font-size:28px;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;right:16px;box-shadow:0 4px 16px #00000026}.fab:hover,.fab:active{transform:scale(1.05);box-shadow:0 6px 20px #2196f34d}.btn{cursor:pointer;border:none;border-radius:8px;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s;display:inline-block}.btn-primary{color:#fff;background:#2196f3;width:100%;margin:16px 0}.btn-primary:hover{background:#1976d2}.btn-success{color:#fff;background:#4caf50}.btn-success:hover{background:#388e3c}.btn-secondary{color:#2196f3;cursor:pointer;text-align:center;background:#fff;border:2px solid #2196f3;border-radius:8px;width:100%;margin:16px 0;padding:14px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s;display:block}.btn-secondary:hover{background:#e3f2fd}.empty-icon{margin-bottom:16px;font-size:48px}.empty-title{color:#212121;margin-bottom:8px;font-size:18px;font-weight:600}.empty-desc{color:#757575;font-size:14px}.edit-container{padding:0 0 calc(80px + env(safe-area-inset-bottom,0px)) 0}.edit-container h2{margin:0;padding:16px;font-size:20px;font-weight:700}.edit-form{padding:0 16px 16px}.edit-form .form-group{margin-bottom:20px}.edit-form .form-group label{color:#212121;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.edit-form .form-group input,.edit-form .form-group textarea,.edit-form .form-group select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;width:100%;padding:14px 16px;font-family:inherit;font-size:16px;transition:border-color .2s}.edit-form .form-group input:focus,.edit-form .form-group textarea:focus,.edit-form .form-group select:focus{border-color:#2196f3;outline:none}.edit-form .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%23757575' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:40px}.edit-form .form-group textarea{resize:vertical;min-height:100px}.edit-form .form-actions{gap:12px;margin-top:24px;display:flex}.edit-form .form-actions button{cursor:pointer;border:none;border-radius:8px;flex:1;padding:14px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s}.edit-form .form-actions .btn-secondary{color:#757575;background:#f5f5f5;border:1px solid #e0e0e0}.edit-form .form-actions .btn-primary{color:#fff;background:#2196f3}.edit-form .form-actions .btn-primary:disabled{cursor:not-allowed;background:#90caf9}.role-toggle{gap:8px;margin:8px 0;display:flex}.role-btn-small{cursor:pointer;text-align:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;flex:1;padding:10px 6px;font-family:inherit;font-size:13px;transition:all .2s}.role-btn-small.selected{color:#fff;background:#2196f3;border-color:#2196f3;font-weight:600}.checkbox-grid{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;grid-template-columns:1fr 1fr;gap:8px;max-height:220px;margin:8px 0;padding:10px;display:grid;overflow-y:auto}.checkbox-item{cursor:pointer;align-items:center;gap:6px;padding:4px 2px;font-size:13px;display:flex}.checkbox-item input[type=checkbox]{accent-color:#2196f3;cursor:pointer;flex-shrink:0;width:18px;height:18px}.checkbox-item span{color:#212121;line-height:1.3}.selected-summary{color:#1565c0;background:#e3f2fd;border-radius:8px;margin-top:10px;padding:10px 12px;font-size:13px;line-height:1.4}.form-hint{color:#9e9e9e;margin-top:6px;font-size:12px;line-height:1.4;display:block}.modal-overlay{z-index:2000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:100%;max-width:320px;padding:24px;animation:.2s ease-out modal-in;box-shadow:0 8px 32px #0003}@keyframes modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal h3{color:#212121;margin:0 0 12px;font-size:18px;font-weight:700}.modal p{color:#424242;margin:0 0 8px;font-size:14px;line-height:1.5}.modal-hint{background:#f5f5f5;border-radius:8px;padding:10px;color:#757575!important;margin:12px 0!important;font-size:13px!important}.modal-actions{gap:10px;margin-top:20px;display:flex}.modal-actions .btn-secondary,.modal-actions .btn-primary{cursor:pointer;border:none;border-radius:8px;flex:1;padding:12px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s}.modal-actions .btn-secondary{color:#757575;background:#f5f5f5;border:1px solid #e0e0e0}.modal-actions .btn-secondary:hover{background:#e0e0e0}.modal-actions .btn-primary{color:#fff;background:#2196f3}.modal-actions .btn-primary:hover{background:#1976d2}.btn-edit{cursor:pointer;color:#2196f3;background:#e3f2fd;border:none;border-radius:8px;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:500;transition:background .2s;position:absolute;top:12px;right:12px}.btn-edit:hover{background:#bbdefb}.checkbox-grid::-webkit-scrollbar{width:4px}.checkbox-grid::-webkit-scrollbar-track{background:0 0}.checkbox-grid::-webkit-scrollbar-thumb{background:#bdbdbd;border-radius:4px}*{box-sizing:border-box;margin:0;padding:0}body{color:#212121;background:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.container{max-width:500px;margin:0 auto;padding:16px}.header{color:#212121;margin-bottom:20px;font-size:24px;font-weight:700}.card{cursor:pointer;background:#fff;border-radius:12px;margin-bottom:12px;padding:16px;transition:transform .1s;box-shadow:0 1px 3px #0000001a}.card:active{transform:scale(.98)}.badge{color:#fff;border-radius:6px;margin-bottom:8px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.badge-sks{background:#27ae60}.badge-video{background:#2980b9}.badge-skud{background:#e67e22}.badge-fire{background:#c0392b}.badge-default{background:#757575}.card-title{margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.3}.card-meta{color:#757575;margin-bottom:4px;font-size:14px}.card-budget{color:#08c;margin-top:8px;font-size:14px;font-weight:600}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:16px;font-weight:500;transition:opacity .2s;display:inline-flex}.btn-primary{color:#fff;background:#08c;width:100%}.btn-secondary{color:#08c;background:#e3f2fd;width:100%}.btn-outline{color:#757575;background:0 0;border:1px solid #e0e0e0}.btn:active{opacity:.8}.btn:disabled{opacity:.5;cursor:not-allowed}.back-btn{margin-bottom:16px}.detail-header{margin-bottom:16px;font-size:20px;font-weight:700;line-height:1.3}.detail-meta{color:#757575;margin-bottom:8px;font-size:14px}.detail-description{background:#f5f5f5;border-radius:8px;margin:16px 0;padding:12px;font-size:14px;line-height:1.5}.section-title{margin-top:24px;margin-bottom:12px;font-size:16px;font-weight:600}.input{background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:100%;margin-bottom:12px;padding:12px;font-family:inherit;font-size:14px}.input:focus{border-color:#08c;outline:none}.textarea{resize:vertical;min-height:80px}.loading{color:#757575;justify-content:center;padding:40px;font-size:16px;display:flex}.empty-state{text-align:center;padding:40px}.empty-state-icon{margin-bottom:16px;font-size:48px}.empty-state-title{margin-bottom:8px;font-size:18px;font-weight:600}.empty-state-desc{color:#757575;font-size:14px}.questions-section{border-top:1px solid #e0e0e0;margin-top:24px;padding-top:16px}.question-form{background:#fff;border-radius:12px;margin-bottom:20px;padding:16px;box-shadow:0 1px 3px #0000001a}.tree-list{flex-direction:column;gap:12px;display:flex}.question-item{background:#fff;border-left:3px solid #08c;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000001a}.answer-item{background:#f8f9fa;border-left:3px solid #27ae60;border-radius:8px;margin-top:8px;padding:12px}.item-header{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;display:flex}.question-author{color:#08c;font-weight:600}.answer-author{color:#27ae60;font-weight:600}.item-date{color:#757575;font-size:12px}.question-text{color:#212121;font-size:14px;font-weight:500;line-height:1.5}.answer-text{color:#424242;font-size:13px;line-height:1.5}.children-list{margin-top:8px}.btn-reply{color:#08c;cursor:pointer;background:0 0;border:none;border-radius:6px;margin-top:12px;padding:8px 16px;font-size:14px;transition:background .2s}.btn-reply:hover{background:#e3f2fd}.reply-form{background:#fff;border-radius:8px;margin-top:12px;padding:12px;box-shadow:0 1px 3px #0000001a}.reply-buttons{gap:8px;margin-top:8px;display:flex}.reply-buttons .btn{flex:1}.tree-item{position:relative}.tree-item:before{content:"";background:#e0e0e0;width:2px;position:absolute;top:0;bottom:0;left:-12px}.tree-item:first-child:before{top:20px}
