@font-face{font-family:'Inter Tight';src:url('/InterTight.ttf') format('truetype');font-weight:100 900;font-display:swap}@font-face{font-family:'Inter Tight';src:url('/InterTight-Italic.ttf') format('truetype');font-weight:100 900;font-style:italic;font-display:swap}
:root{color-scheme:dark;--bg:#0e0e0e;--surface:#161616;--ink:#f6f6f6;--muted:#a5a5a5;--mint:#69ffd7;--top:max(12px,var(--tg-content-safe-area-inset-top,0px));font-family:'Inter Tight',Arial,sans-serif;font-size:15px;line-height:1.3;letter-spacing:-.01em;background:var(--bg);color:var(--ink)}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:3px}#app{max-width:520px;margin:auto;padding:var(--top) 20px calc(100px + max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px)));min-height:100dvh}.brand{display:flex;align-items:center;justify-content:space-between;margin:8px 0 32px;font-size:13px}.logo{display:block;width:96px;height:27px;flex-shrink:0}.brand button,.link{background:none;color:var(--mint);padding:8px 0;min-height:44px;text-align:left}.eyebrow{font-size:12px;color:var(--mint);margin-bottom:16px}h1{font-size:32px;line-height:1.3;letter-spacing:-.01em;font-weight:500;margin:0 0 18px}h2{font-size:20px;font-weight:500;letter-spacing:-.01em;margin:0 0 12px}p{font-size:15px;line-height:1.3;margin:0 0 18px}.muted,.hint{color:var(--muted)}.hint{font-size:12px;line-height:1.3;margin-top:8px}.card,fieldset{background:var(--surface);border:1px solid #252525;border-radius:12px;padding:16px;margin:12px 0;min-width:0}fieldset{padding-top:12px}legend{padding:0 6px}label{display:block;font-size:14px;margin:16px 0 6px}input,textarea,select{width:100%;border:1px solid #333;background:var(--surface);color:var(--ink);padding:14px;border-radius:8px;font-size:16px;min-height:48px}textarea{min-height:116px;resize:vertical}input[type=radio]{width:20px;min-height:20px;accent-color:var(--mint);margin:0 12px 0 0}.radio{display:flex;align-items:center;min-height:48px;padding:12px;border:1px solid #333;border-radius:8px;margin:8px 0}.radio:has(:checked){border-color:var(--mint)}.primary,.secondary{display:block;width:100%;padding:16px;min-height:52px;border-radius:10px;margin:12px 0;background:var(--mint);color:var(--bg)}.secondary{background:var(--surface);color:var(--ink);border:1px solid #333}.danger{color:#ffadad}.row{display:flex;gap:12px}.row>*{flex:1;min-width:0}.choice{display:flex;width:100%;align-items:center;justify-content:space-between;min-height:52px;padding:16px;margin:8px 0;background:var(--surface);border:1px solid #252525;border-radius:8px;text-align:left}.choice[aria-pressed=true]{border-color:var(--mint)}.symbol{color:var(--mint);font-size:20px}.badge{color:var(--mint);font-size:12px;display:block;margin-bottom:12px}.rate{color:var(--mint)}.wrap{white-space:pre-wrap;overflow-wrap:anywhere}a{color:var(--mint);overflow-wrap:anywhere} .nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);display:flex;gap:20px;background:var(--surface);border-top:1px solid #303030;padding:16px 16px calc(16px + max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px)));z-index:5}.nav button{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;background:none;color:var(--muted);min-height:50px;padding:0;font-size:14px;font-weight:500;line-height:1.3;letter-spacing:-.01em}.nav button[aria-current=page]{color:var(--mint)}.menu-icon{display:block;flex:0 0 15px;width:15px;height:15px;background:currentColor;mask:var(--menu-icon) center/contain no-repeat;-webkit-mask:var(--menu-icon) center/contain no-repeat}.menu-icon-requests{--menu-icon:url('/menu-requests.svg')}.menu-icon-profile{--menu-icon:url('/menu-profile.svg')}.menu-icon-faq{--menu-icon:url('/menu-faq.svg')}.error{padding:14px;border:1px solid #ffadad;border-radius:8px;color:#ffadad;font-size:14px;margin:16px 0}.notice{font-size:12px;border-bottom:1px solid #333;padding-bottom:14px;color:var(--muted)}.preview-controls{margin-top:32px;border-top:1px solid #333;padding-top:16px}details{border-bottom:1px solid #333;padding:16px 0}summary{cursor:pointer;min-height:44px;font-size:18px}details p{margin:10px 0 0;color:var(--muted)}.progress{display:flex;gap:6px;margin-bottom:18px}.progress i{height:2px;background:#333;flex:1}.progress i.done{background:var(--mint)}.hero{padding:24px 0 48px}.hero h1{font-size:32px;margin-top:16px}.spacer{height:24px}@media(prefers-reduced-motion:no-preference){button{transition:background .12s ease}}@media(hover:hover){button:hover{filter:brightness(1.08)}}@media(max-width:350px){#app{padding-left:16px;padding-right:16px}h1{font-size:28px}.hero h1{font-size:28px}}

.modal{position:fixed;inset:0;background:#000b;display:flex;align-items:center;justify-content:center;padding:24px;z-index:20}.modal section{width:100%;max-width:400px;border:1px solid #444;border-radius:16px;background:var(--surface);padding:24px}

.incomplete{font-size:12px;color:#ffcf93;margin:8px 0 12px}.card p:last-child{margin-bottom:0}.card .row{border-top:1px solid #252525;padding-top:4px}.primary,.secondary{font-weight:500}h1:focus{outline:none}.choice>div{min-width:0}.choice h2,.choice p{overflow-wrap:anywhere}.choice p{color:var(--muted);margin-bottom:0}.badge{letter-spacing:.04em}#app[aria-busy=true]{cursor:progress}input,textarea{scroll-margin-top:24px}.nav button{touch-action:manipulation}

.field{background:var(--surface);border:1px solid #252525;border-radius:10px;padding:12px 16px;margin:12px 0}.field label{margin:0 0 8px;color:var(--muted);font-size:14px;font-weight:500}.field input,.field textarea,.field select{border:0;background:transparent;padding:0;min-height:26px;border-radius:0}.field textarea{min-height:90px;line-height:1.3}.field:focus-within{border-color:var(--mint)}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:none}.row .field{height:calc(100% - 24px)}details{background:var(--surface);border:1px solid #252525;border-radius:12px;margin:12px 0;padding:16px}summary{font-size:20px;font-weight:500}

.saved-notice{color:var(--mint);background:var(--surface);border:1px solid #265548;border-radius:10px;padding:14px;font-size:14px}.choice:disabled{cursor:default;opacity:.5}

/* Cabinet components from v1: status, request card, read-only fields. */
.review-status .status-title{margin-bottom:8px;font-weight:500}.review-status .badge{margin-bottom:10px}.review-status p:last-child{margin-bottom:0}.team-comment{margin-top:16px;padding-top:12px;border-top:1px solid #303030}.team-comment .hint{display:block;margin:0 0 8px}.profile-format{margin:16px 0}.profile-format .hint{display:block;margin:0 0 6px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:28px}.section-heading h2{margin:0}.locked-title{margin:28px 0 12px}.screen-actions{margin-top:32px}.list-heading{font-size:14px;letter-spacing:0;font-weight:500;color:var(--muted);margin:24px 0 10px}.request-card{display:flex;flex-direction:column;gap:12px;background:var(--surface);border:1px solid #252525;border-radius:12px;padding:16px;width:100%;text-align:left;margin:12px 0}.request-card.is-priority{border-color:#315b50}.request-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;flex-wrap:wrap}.request-meta .eyebrow{margin:0;font-size:12px}.priority-tag{font-size:12px;color:var(--mint);white-space:nowrap}.request-title{font-size:20px;line-height:1.2;font-weight:500;letter-spacing:-.01em;overflow-wrap:anywhere}.request-location{font-size:15px;color:var(--muted);line-height:1.3}.request-summary{font-size:12px;color:var(--muted);line-height:1.3}.request-bottom{display:flex;justify-content:space-between;align-items:center;width:100%;gap:12px;border-top:1px solid #292929;padding-top:12px;font-size:14px}.detail-field .hint{display:block;font-weight:500;margin:0 0 8px}.detail-field p{margin:0;font-size:15px}.request-description{margin-top:24px}.card>.hint{display:block;margin:8px 0 6px}



/* Onboarding photo and the three gradient stops supplied from Figma. */
.hero{margin:0 -20px;padding:48px 20px;min-height:400px;display:flex;flex-direction:column;justify-content:center;background-image:linear-gradient(180deg,#0e0e0e 4%,rgba(14,14,14,.7) 51%,#0e0e0e 93%),url('/onboarding-camera.jpg');background-size:cover;background-position:center,50% 55%;background-repeat:no-repeat}
.hero .eyebrow{margin-top:0}
.hero .hint:last-child{margin-bottom:0}
@media(max-width:350px){.hero{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}}

.work-format legend{float:left;width:100%;padding:0;margin:0 0 8px;font-size:14px;font-weight:500;line-height:1.3;overflow-wrap:anywhere}
.work-format .radio{clear:both}

.form-back{display:inline-flex;align-items:center;min-height:44px;padding:8px 0;margin:0 0 12px;background:none;color:var(--mint);font-size:14px;font-weight:500}

/* One primary action per form; contextual actions share a compact style. */
.link{color:var(--ink);font-size:14px;font-weight:500;line-height:1.3}
.link.danger{color:#ffadad}
.inline-action{display:inline-flex;align-items:center;min-height:44px;margin:4px 0 12px}
.primary,.secondary{font-size:14px;font-weight:500;line-height:1.3}
#form>.link{margin:4px 0 12px}

input::placeholder,textarea::placeholder{color:#858585;opacity:1;font-weight:400}
.field input{min-height:32px}
.field textarea{min-height:96px}
/* Selected prototype: card with an explicit editor action. */
.role-card{padding:16px;overflow:hidden}
.card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px;min-height:36px}
.card-heading h2{margin:0;min-width:0;overflow-wrap:anywhere}
.role-rate{font-size:14px;color:var(--muted);font-weight:400;margin:0 0 20px}
.role-note{font-size:14px;color:var(--muted);margin:0 0 20px;line-height:1.4}
.role-detail{margin-bottom:16px}
.role-detail p{margin:6px 0 0}
.role-portfolio{margin-bottom:20px}
.role-portfolio p{margin:8px 0 0}
.card-remove{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;min-height:44px;margin:-4px -8px -4px 0;padding:12px;background:none;color:var(--muted);border-radius:8px}
.card-remove svg,.card-action svg{width:20px;height:20px;flex-shrink:0}
.card-action{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:12px;background:#252525;color:var(--ink);border-radius:8px;font-size:14px;font-weight:500;text-align:left}
@media(hover:hover){.card-remove:hover{color:#ffadad;background:#252525}.card-action:hover{background:#303030}}

.about-section{margin:28px 0}.about-section h2{margin-bottom:12px}.about-section details summary{font-size:16px;font-weight:500}.about-support{margin-top:32px;padding-top:24px;border-top:1px solid #2b2b2b}#questions{scroll-margin-top:24px}

.about-value{padding:18px 0;border-bottom:1px solid #252525}.about-value:last-child{border-bottom:0;padding-bottom:0}.about-value h3{font-size:16px;font-weight:500;margin:0 0 8px}.about-value p{margin:0;line-height:1.4}

.faq-questions details summary{font-size:16px;font-weight:500}

/* Shared card surface and controls across profile, portfolio, status and requests. */
:root{--card-radius:14px;--card-border:#252525}
.card{background:var(--surface);border:1px solid var(--card-border);border-radius:var(--card-radius);padding:16px;margin:12px 0;min-width:0}
.card>h2{margin:0 0 12px;font-size:20px;font-weight:500;line-height:1.3}
.card>p{font-size:14px;line-height:1.4}
.card>.card-action{margin-top:20px}
.card-heading{margin-bottom:12px}
.role-card .card-heading{margin-bottom:4px}
.card-url{margin:0 0 16px;font-size:14px}
.work-card>.muted{font-size:14px;margin:0 0 20px}
.work-card .card-heading h2{margin:0}
.review-status .status-title{font-size:20px;line-height:1.3;font-weight:500;margin:0 0 12px}
.review-status .muted{font-size:14px;line-height:1.4}
.review-status .badge{margin:0 0 12px}
.request-card{gap:12px;padding:16px;border-radius:var(--card-radius)}
.request-card .request-location,.request-card .request-summary{font-size:14px;line-height:1.4}
.request-title{line-height:1.3}
.request-budget{font-size:14px;color:var(--muted)}
.request-open{margin-top:8px}
.request-open svg{width:20px;height:20px;flex-shrink:0}

/* Unified role and portfolio editors. */
.editor-form .form-section{margin:28px 0}
.editor-form .form-section:first-child{margin-top:0}
.editor-form .form-section h2{margin:0 0 12px}
.editor-form .field{border-radius:var(--card-radius)}
.editor-form .row{gap:12px}
.editor-form .row .field{height:calc(100% - 24px)}
.field-hint{font-size:12px;line-height:1.4;color:var(--muted);margin:10px 0 0}
.form-hint{font-size:14px;line-height:1.4;color:var(--muted);margin:12px 0 16px}
.editor-context{color:var(--muted);font-size:14px;margin:0 0 24px}
.editor-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.editor-section-heading h2{margin:0!important}
.editor-section-heading .hint{margin:0;white-space:nowrap}
.editor-actions{margin-top:28px;padding-top:20px;border-top:1px solid var(--card-border)}
.editor-actions>.primary{margin-bottom:0}
.editor-form .card-action{margin-top:12px}

/* Shared portfolio: selected roles are visible in forms and saved work cards. */
.role-chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.role-chip{display:inline-flex;align-items:center;padding:7px 11px;border-radius:8px;background:#20332e;color:var(--accent,#69ffd7);font-size:14px;line-height:1.4}
.work-roles{border:0;padding:0;margin:24px 0}
.work-roles legend{font-size:20px;font-weight:500;padding:0}
.choice-chip{position:relative;cursor:pointer;background:#161616;color:#a5a5a5;border:1px solid #333;min-height:44px;padding:10px 14px}
.choice-chip:has(input:checked){background:#20332e;color:#69ffd7;border-color:#69ffd7}
.choice-chip input{position:absolute;opacity:0;width:1px;height:1px}
.choice-chip:has(input:focus-visible){outline:2px solid #69ffd7;outline-offset:3px}

.video-preview:empty{display:none}
.video-preview{overflow:hidden;border:1px solid #252525;border-radius:14px;margin:16px 0;background:#161616}
.video-preview img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.video-preview>div{padding:12px 16px}
.video-preview p{margin:4px 0 0;font-size:16px;font-weight:500}

/* Keep the role selection heading outside its surface; align chips inside it. */
.work-roles{background:transparent;border:0;border-radius:0;padding:0;min-width:0}
.work-roles legend{float:left;width:100%;margin:0 0 12px;line-height:1.3}
.role-picker-surface{clear:both;padding:16px;border:1px solid #252525;border-radius:14px;background:var(--surface)}
.role-picker-surface>.hint{margin:0 0 12px}
.role-picker-surface .role-chips{margin:0;gap:8px}
.role-picker-surface .choice-chip{margin:0}
section[aria-labelledby="roles-title"],section[aria-labelledby="portfolio-title"]{margin-top:28px}
section[aria-labelledby="roles-title"]>.card-action,section[aria-labelledby="portfolio-title"]>.card-action{margin:12px 0 24px}

/* Readable cards with one explicit edit action. */
.card.role-row{padding:16px;margin:12px 0}
.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.role-row-title{font-size:20px;font-weight:500;line-height:1.3;margin:0;overflow-wrap:anywhere;min-width:0}
.card-edit{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;min-height:44px;padding:0;border:1px solid #333;border-radius:9px;background:transparent}
.card-edit svg{width:18px;height:18px}
.role-row-rate{font-size:14px;line-height:1.4;color:var(--muted);margin:6px 0 16px;overflow-wrap:anywhere}
.role-row-note{font-size:12px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere}
.add-role-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:12px 16px;margin:12px 0 24px;border:1px solid #333;border-radius:10px;background:transparent;font-size:14px;font-weight:500}
.add-role-button>span:first-child{font-size:20px;font-weight:400;line-height:1}
@media(hover:hover){.card-edit:hover,.add-role-button:hover{background:#202020}}
.work-row .role-chips{margin:10px 0 0;gap:6px}
.work-row .role-chip{padding:4px 8px;font-size:12px}
.work-row-url{display:block;margin-top:16px;color:var(--mint);font-size:14px;line-height:1.4;overflow-wrap:anywhere}
.work-kind{display:block;font-size:12px;line-height:1.3;color:var(--muted);margin-top:6px}
.editor-actions>.danger{display:block;width:100%;margin-top:12px;min-height:44px}

.modal .confirm-danger{background:#ffadad;color:var(--bg)}

/* The brand header is separate from page content; preview notes live in debug. */
.brand.app-header{min-height:56px;margin:0 0 20px;padding:0 0 12px;border-bottom:1px solid #252525;gap:20px}
.brand-lockup{display:flex;flex-direction:column;gap:7px;min-width:0}
.brand-lockup .logo{width:84px;height:auto}
.app-header .header-help{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;background:var(--surface);border:1px solid #333;border-radius:10px;color:var(--ink);font-size:13px;font-weight:500;flex-shrink:0}
.help-symbol{display:flex;align-items:center;justify-content:center;width:17px;height:17px;border:1px solid var(--muted);border-radius:50%;color:var(--muted);font-size:11px;line-height:1}
@media(hover:hover){.app-header .header-help:hover{background:#202020}}
.app-content{min-width:0}

/* Extra information stays readable within the compact row layout. */
.row-detail{display:flex;flex-direction:column;gap:4px;margin-top:14px;min-width:0}
.row-detail-label{font-size:12px;line-height:1.4;color:var(--muted)}
.row-detail-value{font-size:14px;line-height:1.4;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}


/* Shared text hierarchy for all form fields and supporting copy. */
.field label,.field-label,.work-format legend{font-size:14px;font-weight:400;line-height:1.4;color:var(--muted);letter-spacing:inherit}
.field input,.field textarea,.field select,.field-value{font-size:16px;font-weight:400;line-height:1.4;color:var(--ink);letter-spacing:inherit}
input::placeholder,textarea::placeholder{color:var(--muted);font-weight:400;opacity:1}
.hint,.field-hint,.form-hint{font-size:12px;font-weight:400;line-height:1.4;color:var(--muted)}
.telegram-field .field-label{display:block;margin:0 0 8px}
.telegram-field .field-value{margin:0 0 12px}
.telegram-field>.hint{margin:0}
.work-format{padding:16px;border-radius:var(--card-radius)}
.work-format legend{margin-bottom:12px}
.work-format .radio{font-size:14px;font-weight:400;line-height:1.4;color:var(--ink)}
.work-roles legend{font-size:20px;font-weight:500;color:var(--ink)}

.basic-card .card-heading{margin-bottom:6px}
.basic-card .card-heading>.wrap{margin:0;flex:1;min-width:0;font-size:14px;line-height:1.4}
.basic-card .profile-format:last-child{margin-bottom:0}

.basic-card .basic-experience{margin:0 0 20px;color:var(--muted);font-size:14px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}
.basic-card .row-detail{margin-top:16px}


/* Compact FAQ: one grouped surface with comfortable tap targets. */
.faq-questions{border:1px solid var(--card-border);border-radius:var(--card-radius);overflow:hidden;background:var(--surface)}
.faq-questions details{border:0;border-bottom:1px solid var(--card-border);border-radius:0;margin:0;padding:0;background:transparent}
.faq-questions details:last-child{border-bottom:0}
.faq-questions details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px 14px;font-size:14px;font-weight:500;line-height:1.4;list-style:none}
.faq-questions summary::-webkit-details-marker{display:none}
.faq-questions summary::after{content:'+';flex:0 0 16px;text-align:center;font-size:20px;font-weight:400;line-height:1;color:var(--muted)}
.faq-questions details[open] summary::after{transform:rotate(45deg)}
.faq-questions details p{margin:0;padding:0 14px 14px;color:var(--muted);font-size:14px;font-weight:400;line-height:1.4;overflow-wrap:anywhere}
.faq-support{margin-top:20px;padding:14px;border:1px solid var(--card-border);border-radius:var(--card-radius);background:var(--surface)}
.faq-support h2{font-size:16px;font-weight:500;margin:0 0 6px}
.faq-support p{font-size:14px;line-height:1.4;margin:0 0 14px}
.faq-support .card-action{min-height:44px}
