/* ===== jobs v2 look (owner 2026-11-08): two doors, picture-first cards, line icons, sticky "contact to hire" ===== */
.jb2{max-width:1000px;gap:18px}
.ji{width:1.1em;height:1.1em;flex:none;vertical-align:-.18em}
.ji.vf{color:#4c9dff;width:1.05em;height:1.05em}
.ji.big{width:44px;height:44px;color:var(--mute)}
.jb2-seg{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:16px;background:var(--card);border:1px solid var(--line);max-width:460px;width:100%;align-self:center}
.jb2-seg a{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px;border-radius:12px;font-family:Kanit,sans-serif;font-weight:500;font-size:15px;color:var(--mute);text-decoration:none}
.jb2-seg a.on{background:linear-gradient(135deg,#ffc861,#ff8a3d 55%,#ff4f7b);color:#2a1000}
.jb2-hero{display:flex;flex-direction:column;gap:10px;padding:22px 20px;border-radius:24px;background:radial-gradient(circle at 90% 10%,rgba(255,79,123,.28),transparent 55%),radial-gradient(circle at 0% 100%,rgba(255,200,97,.22),transparent 55%),var(--card);border:1px solid var(--line)}
.jb2-hero h1{margin:0;font-size:clamp(22px,4.4vw,32px);line-height:1.25;text-wrap:balance}
.jb2-hero p{margin:0;color:var(--mute);font-size:14.5px}
.jb2-search{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 14px;border-radius:16px;background:var(--bg);border:1px solid rgba(255,255,255,.14)}
.jb2-search>span{color:var(--mute);display:flex}
.jb2-search input{flex:1;min-width:0;background:none;border:0;color:var(--text);font:inherit;font-size:15px;outline:none;padding:6px 0}
.jb2-sec{display:flex;flex-direction:column;gap:10px;scroll-margin-top:120px}
.jb2-sh{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.jb2-sh h2{margin:0;font-size:18px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.jb2-sh h2 small{font-family:inherit;font-weight:400;font-size:12.5px;color:var(--mute)}
.jb2-sh a{display:inline-flex;align-items:center;gap:2px;color:#ff9a4d;font-size:13.5px;text-decoration:none;white-space:nowrap}
.jb2-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.jb2-tiles.all{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
@media (max-width:760px){.jb2-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.jb2-tiles.all{grid-template-columns:repeat(2,minmax(0,1fr))}}
.jb2-tile{position:relative;aspect-ratio:1/1.05;border-radius:18px;overflow:hidden;background:linear-gradient(160deg,#2a2360,#151933);color:var(--text);text-decoration:none;border:1px solid var(--line)}
.jb2-tiles.all .jb2-tile{aspect-ratio:16/10}
.jb2-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.jb2-tile:hover img{transform:scale(1.06)}
.jb2-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,22,.1) 0%,rgba(8,10,22,.55) 42%,rgba(8,10,22,.96) 100%)}
.jb2-tl{text-shadow:0 1px 6px rgba(0,0,0,.9)}
.jb2-tl .ji{filter:drop-shadow(0 1px 4px rgba(0,0,0,.9))}
.jb2-tl{position:absolute;left:9px;right:9px;bottom:9px;z-index:1;display:flex;flex-direction:column;gap:1px}
.jb2-tl .ji{width:22px;height:22px;color:#ffc861;margin-bottom:2px}
.jb2-tl b{font-family:Kanit,sans-serif;font-weight:500;font-size:14px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.jb2-tl small{font-size:11.5px;color:#b9c0dd}
.jb2-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
@media (max-width:520px){.jb2-cards{grid-template-columns:1fr 1fr;gap:8px}}
.jb2-card{display:flex;flex-direction:column;border-radius:18px;overflow:hidden;background:var(--card);border:1px solid var(--line);color:var(--text);text-decoration:none;transition:transform .15s,border-color .15s}
.jb2-card:hover{transform:translateY(-2px);border-color:rgba(255,138,61,.5)}
.jb2-cv{position:relative;aspect-ratio:16/10;background:var(--bg2)}
.jb2-cv>img{width:100%;height:100%;object-fit:cover;display:block}
.jb2-cvi{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,rgba(255,200,97,.35),transparent 60%),linear-gradient(150deg,#3b2a6e,#16193a)}
.jb2-cvi.side-creator{background:radial-gradient(circle at 30% 20%,rgba(37,198,244,.35),transparent 60%),linear-gradient(150deg,#2a3f6e,#16193a)}
.jb2-cvi .ji{width:44px;height:44px;color:rgba(255,255,255,.85)}
.jb2-ctag{position:absolute;left:8px;top:8px;display:inline-flex;align-items:center;gap:4px;max-width:calc(100% - 16px);font-size:11px;padding:3px 8px;border-radius:99px;background:rgba(8,10,22,.65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jb2-av{position:absolute;left:10px;bottom:-15px;width:34px;height:34px;border-radius:11px;border:2px solid var(--card);object-fit:cover;background:linear-gradient(135deg,#7b5cff,#25c6f4);display:grid;place-items:center;font-weight:700;font-size:14px;color:#fff}
.jb2-av.xs{position:static;width:20px;height:20px;border-radius:6px;border:0;font-size:10px}
.jb2-cb{padding:20px 11px 11px;display:flex;flex-direction:column;gap:4px;flex:1}
.jb2-who{display:flex;align-items:center;gap:4px;font-size:12.5px;color:var(--mute);min-width:0}
.jb2-card h4{margin:0;font-family:inherit;font-weight:500;font-size:14px;line-height:1.38;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.jb2-ft{display:flex;justify-content:space-between;align-items:baseline;gap:6px;border-top:1px solid var(--line);padding-top:7px;margin-top:4px;font-size:12px}
.jb2-pr{color:var(--mute);font-size:12.5px;white-space:nowrap}
.jb2-pr b{font-family:Kanit,sans-serif;font-weight:600;font-size:16px;color:var(--text)}
.jb2-dim{display:inline-flex;align-items:center;gap:3px;color:var(--mute)}
.jb2-new{display:inline-flex;align-items:center;gap:3px;color:#38d996;font-size:11.5px}
.jb2-new.sm{font-size:10.5px;padding:1px 7px;border-radius:99px;background:rgba(56,217,150,.14);margin-left:6px;vertical-align:2px}
.jb2-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.jb2-trust div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:14px 8px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-size:12.5px;color:var(--mute);line-height:1.35}
.jb2-trust .ji{width:24px;height:24px;color:#38d996}
.jb2-rules{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:rgba(255,200,97,.07);border:1px solid rgba(255,200,97,.25);color:var(--text);text-decoration:none}
.jb2-rules>.ji:first-child{width:26px;height:26px;color:#ffc861}
.jb2-rules>.ji:last-child{color:var(--mute);margin-left:auto}
.jb2-rules span{display:flex;flex-direction:column;gap:2px;min-width:0}
.jb2-rules small{color:var(--mute);font-size:12.5px;line-height:1.4}
/* list */
.jb2-lhead{display:flex;align-items:center;gap:12px}
.jb2-lhead h1{margin:0;font-size:22px;display:flex;align-items:center;gap:8px}
.jb2-lhead small{color:var(--mute);font-size:13px}
.jb2-ib{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;flex:none;background:var(--card);border:1px solid var(--line);color:var(--text);cursor:pointer;padding:0}
.jb2-ib .ji{width:20px;height:20px}
.jb2-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.jb2-chip{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:99px;background:var(--card);border:1px solid var(--line);color:var(--text);font:inherit;font-size:13px;cursor:pointer}
.jb2-chip.on{background:rgba(255,138,61,.15);border-color:rgba(255,138,61,.6);color:#ffc861}
.jb2-sort{display:inline-flex;align-items:center;gap:5px;margin-left:auto;padding:4px 10px;border-radius:99px;background:var(--card);border:1px solid var(--line);color:var(--mute)}
.jb2-sort select{background:none;border:0;color:var(--text);font:inherit;font-size:13px;outline:none;max-width:150px}
.jb2-sort option{background:#171b33}
.jb2-lst .jb2-list{display:flex;flex-direction:column;gap:10px}
.jb2-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:9px;border-radius:18px;background:var(--card);border:1px solid var(--line);color:var(--text);text-decoration:none}
.jb2-row:hover{border-color:rgba(255,138,61,.5)}
@media (max-width:520px){.jb2-row{grid-template-columns:112px minmax(0,1fr);gap:10px}}
.jb2-rcv{position:relative;aspect-ratio:4/3;border-radius:13px;overflow:hidden;background:var(--bg2)}
.jb2-rcv img{width:100%;height:100%;object-fit:cover;display:block}
.jb2-rcv .jb2-cvi .ji{width:32px;height:32px}
.jb2-rb{display:flex;flex-direction:column;gap:4px;min-width:0}
.jb2-rb h4{margin:0;font-family:inherit;font-weight:500;font-size:14.5px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.jb2-meta{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--mute)}
.jb2-meta span{display:inline-flex;align-items:center;gap:3px}
.jb2-rb .jb2-pr{margin-top:auto}
.jb2-note{display:flex;align-items:center;gap:6px;justify-content:center;color:var(--mute);font-size:12.5px;margin:0;text-align:center}
.jb2-empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:36px 16px;border-radius:20px;border:1px dashed rgba(255,255,255,.14);grid-column:1/-1}
.jb2-empty p{margin:0;color:var(--mute)}
/* profile */
.jb2-prof{gap:0;padding-bottom:90px}
.jb2-prof>.jb2-sec,.jb2-prof>.jb2-rules,.jb2-prof>.jb2-tabs{margin-top:16px}
.jb2-prof>.jb-status{margin-bottom:12px}
.jb2-cover{position:relative;height:clamp(150px,26vw,240px);border-radius:24px;overflow:hidden;background:radial-gradient(circle at 20% 30%,rgba(255,200,97,.45),transparent 55%),radial-gradient(circle at 85% 70%,rgba(255,79,123,.45),transparent 55%),linear-gradient(135deg,#2a1a52,#141838)}
.jb2-cover>img{width:100%;height:100%;object-fit:cover;display:block}
.jb2-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,22,.25),rgba(8,10,22,.1) 40%,rgba(11,13,26,.85))}
.jb2-ctop{position:absolute;inset:12px 12px auto;z-index:1;display:flex;gap:8px}
.jb2-ctop span{flex:1}
.jb2-ctop .jb2-ib{background:rgba(8,10,22,.55);border-color:rgba(255,255,255,.12)}
.jb2-ph{position:relative;z-index:1;margin-top:-48px;padding:0 6px;display:flex;flex-direction:column;gap:8px}
.jb2-pav{width:86px;height:86px;border-radius:26px;border:4px solid var(--bg);object-fit:cover;background:linear-gradient(135deg,#7b5cff,#25c6f4);display:grid;place-items:center;font-family:Kanit,sans-serif;font-size:34px;font-weight:600;color:#fff}
.jb2-ph h1{margin:0;font-size:clamp(22px,4vw,28px);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.jb2-vf{background:none;border:0;padding:0;cursor:pointer;color:#4c9dff;display:inline-flex}
.jb2-vf .ji{width:24px;height:24px}
.jb2-hl{margin:0;color:var(--text);opacity:.85;font-size:15px}
.jb2-kpi{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:13px;color:var(--mute)}
.jb2-kpi>*{display:inline-flex;align-items:center;gap:4px}
.jb2-kpi b{color:var(--text)}
.jb2-kpi a{color:var(--mute)}
.jb2-own{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.jb2-own small{color:var(--mute)}
.jb2-clips{display:flex;align-items:center;gap:8px;padding:11px 14px;border-radius:16px;background:var(--card);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:14px}
.jb2-clips>.ji:last-child{margin-left:auto;color:var(--mute)}
.jb2-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line)}
.jb2-tabs a{padding:10px 0;color:var(--mute);text-decoration:none;font-size:14.5px}
.jb2-tabs a.on{color:var(--text);font-weight:600;box-shadow:inset 0 -2px 0 #ff8a3d}
.jb2-pks{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.jb2-pks::-webkit-scrollbar{display:none}
.jb2-pks button{flex:0 0 auto;max-width:220px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 13px;border-radius:15px;background:var(--card);border:1px solid var(--line);color:var(--mute);font:inherit;font-size:12.5px;text-align:left;cursor:pointer}
.jb2-pks button b{color:var(--text);font-weight:500;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.jb2-pks button.on{border-color:#ff8a3d;background:rgba(255,138,61,.1)}
.jb2-pks button.on span{color:#ffc861}
.jb2-pk{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:20px;background:var(--card);border:1px solid rgba(255,255,255,.14)}
.jb2-pk1{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.jb2-pk1 small{display:inline-flex;align-items:center;gap:4px;color:var(--mute);font-size:12.5px}
.jb2-pk1 h3{margin:4px 0 0;font-size:18px;line-height:1.35}
.jb2-big{text-align:right;flex:none;display:flex;flex-direction:column;align-items:flex-end}
.jb2-big small{color:var(--mute);font-size:12px}
.jb2-big b{font-family:Kanit,sans-serif;font-size:28px;font-weight:600;line-height:1.1}
.jb2-big b.ask{font-size:17px;color:#ffc861}
.jb2-facts{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--mute)}
.jb2-facts span{display:inline-flex;align-items:center;gap:4px}
.jb2-inc{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:14px}
.jb2-inc li{display:flex;gap:8px;align-items:flex-start}
.jb2-inc .ji{color:#38d996;margin-top:3px}
.jb2-pkp{margin:0;font-size:14px;line-height:1.6;white-space:pre-wrap}
.jb2-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(11,13,26,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line)}
.jb2-bp{display:flex;flex-direction:column;min-width:0}
.jb2-bp small{color:var(--mute);font-size:11.5px}
.jb2-bp b{font-family:Kanit,sans-serif;font-size:20px}
.jb2-bar .btn{flex:0 1 320px;justify-content:center;padding:12px 18px;font-size:15.5px}
@media (max-width:759px){.jb2-bar{bottom:calc(62px + env(safe-area-inset-bottom,0px));padding-bottom:10px}.jb2-bar .btn{flex:1}.jb2-prof{padding-bottom:150px}}
/* contact sheet */
.jb2-steps{display:flex;flex-direction:column;gap:10px;margin:4px 0 12px}
.jb2-steps>div{display:flex;gap:12px;align-items:flex-start}
.jb2-steps>div>.ji{width:34px;height:34px;padding:7px;border-radius:11px;background:#1d2240;color:#ffc861;flex:none}
.jb2-steps span{display:flex;flex-direction:column}
.jb2-steps small{color:var(--mute);font-size:12.5px}
.jb2-cpk{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:14px;background:#1d2240;margin:0 0 12px;font-size:13.5px}
.jb2-cpk span{margin-left:auto;white-space:nowrap}
.jb2-cpk b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jb-pf i .ji{width:26px;height:26px}

/* the helper bubble sits above the "contact to hire" bar instead of covering its button */
html:has(.jb2-bar) .hgm{bottom:calc(96px + env(safe-area-inset-bottom,0px))!important}
@media (max-width:759px){html:has(.jb2-bar) .hgm{bottom:calc(150px + env(safe-area-inset-bottom,0px))!important}}

/* category tiles drawn from the job's own icon: colour per job, big icon in a glass badge, a faint large copy behind (owner 2026-11-08) */
.jb2-tile{background:radial-gradient(circle at 25% 15%,hsla(var(--h),95%,68%,.55),transparent 60%),linear-gradient(155deg,hsl(var(--h),62%,34%),hsl(calc(var(--h) + 25),55%,14%));border-color:hsla(var(--h),80%,70%,.25)}
.jb2-tile::after{background:linear-gradient(180deg,transparent 55%,rgba(8,10,22,.6))}
.jb2-tbg{position:absolute;right:-14%;top:-10%;width:78%!important;height:78%!important;color:#fff;opacity:.10;transform:rotate(-12deg);stroke-width:1.5}
.jb2-tic{position:absolute;left:10px;top:10px;z-index:1;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);box-shadow:0 6px 18px rgba(0,0,0,.25);backdrop-filter:blur(4px)}
.jb2-tic .ji{width:26px;height:26px;color:#fff}
.jb2-tile:hover .jb2-tbg{opacity:.16;transform:rotate(-6deg) scale(1.05);transition:.3s}
.jb2-tiles.all .jb2-tic{width:38px;height:38px;border-radius:12px}.jb2-tiles.all .jb2-tic .ji{width:21px;height:21px}
.jb2-tl{text-shadow:0 1px 4px rgba(0,0,0,.5)}
