@import "https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap";:root{--bg:#eef3f0;--bg-2:#e4ece7;--ink:#10211b;--muted:#5a6b63;--line:#cfdad3;--card:#fff;--sidebar:#0c1c17;--sidebar-2:#143028;--accent:#0e7a58;--accent-2:#def3ea;--ok:#147a42;--ok-bg:#e5f7ec;--warn:#9a6700;--warn-bg:#fff6de;--bad:#b42318;--bad-bg:#fdecea;--info:#175cd3;--info-bg:#eff4ff;--shadow:0 10px 28px #10211b0f;--r:16px;color:var(--ink);background:var(--bg);font-feature-settings:"ss01" on;font-family:Instrument Sans,system-ui,sans-serif;line-height:1.45}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}html{overflow-x:clip}body{background:var(--bg);overflow-x:clip}#root{overflow-x:clip}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.03em;margin:0;font-weight:600}h1{font-size:1.7rem;line-height:1.2}h2{font-size:1.05rem}p{color:var(--muted);margin:0}.app{grid-template-columns:260px minmax(0,1fr);min-height:100dvh;display:grid}.app.portal-admin{grid-template-columns:280px minmax(0,1fr)}.app-main{flex-direction:column;min-width:0;min-height:100dvh;display:flex}.sidebar{background:radial-gradient(1200px 400px at -10% -10%, #2ea87a38, transparent 50%), linear-gradient(180deg, #102820 0%, var(--sidebar) 42%);color:#edf6f1;border-right:1px solid #1a332b;flex-direction:column;min-width:0;padding:22px 14px;display:flex}.sidebar-desktop{height:100dvh;position:sticky;top:0}.sidebar-brand.compact{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sidebar-brand .portal-tag.compact{margin:0}.logo.compact{padding:0;font-size:1.25rem}.portal-tag.compact{margin:0;padding:3px 7px;font-size:.62rem}.app-topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:30;background:#ffffffeb;align-items:center;gap:12px;padding:10px 14px;display:none;position:sticky;top:0}.topbar-brand{flex-wrap:wrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.icon-btn{width:42px;height:42px;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:1.35rem;line-height:1;display:inline-flex}.menu-icon{background:currentColor;border-radius:999px;width:18px;height:2px;display:block;position:relative}.menu-icon:before,.menu-icon:after{content:"";background:currentColor;border-radius:999px;width:18px;height:2px;position:absolute;left:0}.menu-icon:before{top:-6px}.menu-icon:after{top:6px}.drawer-backdrop{opacity:0;pointer-events:none;z-index:40;background:#10211b7a;transition:opacity .22s;display:none;position:fixed;inset:0}.drawer{z-index:50;width:min(300px,88vw);transition:transform .24s;display:none;position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-105%);box-shadow:16px 0 40px #00000038}.drawer.portal-admin-drawer{width:min(320px,92vw)}.drawer-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.drawer-close{font-size:1.6rem}body.nav-open{overflow:hidden}.logo{letter-spacing:-.03em;padding:4px 12px 2px;font-family:Instrument Serif,Georgia,serif;font-size:1.6rem}.logo span{color:#6ee0b4}.portal-tag{letter-spacing:.08em;text-transform:uppercase;color:#9fd6bf;background:#6ee0b41a;border:1px solid #6ee0b42e;border-radius:999px;align-self:flex-start;margin:4px 12px 20px;padding:4px 8px;font-size:.68rem;display:inline-flex}.side-nav{scrollbar-width:thin;scrollbar-color:#6ee0b440 transparent;flex-direction:column;flex:1;gap:3px;min-height:0;padding:0 4px;display:flex;overflow:auto}.side-nav::-webkit-scrollbar{width:5px}.side-nav::-webkit-scrollbar-thumb{background:#6ee0b438;border-radius:999px}.side-nav-section{flex-direction:column;gap:3px;min-width:0;display:flex}.side-nav a{color:#c5d8cf;white-space:normal;word-break:break-word;border-radius:11px;width:100%;padding:10px 12px;font-size:.92rem;font-weight:500;line-height:1.35;text-decoration:none;display:block}.side-nav a:hover{color:#fff;background:#ffffff0f}.side-nav a.active{color:#fff;background:#1b6b54;box-shadow:0 6px 16px #0e7a5847}.side-user{background:#0000002e;border-top:1px solid #ffffff14;border-radius:14px;margin-top:12px;padding:14px 10px 6px}.side-user-row{align-items:center;gap:10px;margin-bottom:4px;display:flex}.side-user-meta{min-width:0}.side-user-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;display:block;overflow:hidden}.side-user strong{font-size:.92rem;display:block}.side-user small{color:#93b5a6}.avatar{color:#e8fff6;letter-spacing:.02em;background:#1b6b54;border:2px solid #6ee0b459;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.photo-row{align-items:center;gap:16px;display:flex}.lang-switch{gap:8px;display:flex}.lang-switch button{color:var(--ink);border:1px solid var(--line);background:#fff;flex:1}.lang-switch button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.lang-switch.compact{flex:0}.lang-switch.compact button{flex:none;padding:.4rem .7rem}.side-user button{color:#d5eee4;cursor:pointer;background:0 0;border:1px solid #ffffff24;border-radius:10px;width:100%;margin-top:12px;padding:8px}.side-user button:hover{background:#ffffff0f}.main{background:var(--bg);flex:1;min-width:0;overflow:auto}.main-body{width:100%;max-width:none;padding:26px 30px 48px}.page{width:100%}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.page-head p{max-width:52rem;margin-top:6px}.avail-toggle{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:999px;flex-shrink:0;align-items:center;gap:10px;padding:6px 6px 6px 14px;display:inline-flex}.avail-toggle-label{color:var(--muted);white-space:nowrap;font-size:.86rem;font-weight:600}.avail-toggle.on .avail-toggle-label{color:var(--ok)}.avail-toggle-switch{cursor:pointer;background:0 0;border:0;flex-shrink:0;align-items:center;margin:0;padding:0;display:flex}.avail-toggle-switch:disabled{cursor:not-allowed;opacity:.65}.avail-toggle-track{background:#cfdad3;border-radius:999px;width:46px;height:26px;transition:background .18s;display:block;position:relative}.avail-toggle.on .avail-toggle-track{background:var(--accent)}.avail-toggle-thumb{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #10211b2e}.avail-toggle.on .avail-toggle-thumb{transform:translate(20px)}.avail-toggle.busy{opacity:.75;pointer-events:none}.page-head .btn-row>.avail-toggle{flex:none;width:auto}.btn,button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:11px;padding:.64rem .98rem;font-weight:600}button.ghost,.btn-ghost,label.ghost{color:var(--ink);border:1px solid var(--line);background:#fff}button.accent,.btn-accent{background:var(--accent)}button.danger{background:var(--bad)}button:disabled{opacity:.5;cursor:not-allowed}.btn-row{flex-wrap:wrap;gap:8px;display:flex}input,select,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:11px;padding:.66rem .8rem}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid #c7eadc}label{color:#3d4a43;margin:0 0 6px;font-size:.78rem;font-weight:600;display:block}.field{margin-bottom:14px}.form-grid{grid-template-columns:1fr 1fr;gap:14px 16px;display:grid}.grid{gap:14px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid.four{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.split{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;gap:16px;display:grid}.split.even{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.side-panel{flex-direction:column;gap:14px;display:flex;position:sticky;top:20px}.job-page{max-width:1180px}.job-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,360px);align-items:start;gap:18px;display:grid}.job-main,.job-side{flex-direction:column;gap:14px;min-width:0;display:flex}.job-side{position:sticky;top:20px}.job-action{background:linear-gradient(#e8f4ef 0%,#fff 62%);border:1px solid #b7d4c6}.role-list{flex-direction:column;display:flex}.role-row{border-bottom:1px solid #e8eee9;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.role-row:last-child{border-bottom:0}.vendor-card .meta{margin-top:6px}.kv{margin-top:4px}.kv-row{border-bottom:1px solid #e8eee9;justify-content:space-between;align-items:flex-start;gap:16px;padding:10px 0;font-size:.92rem;display:flex}.kv-row:last-child{border-bottom:0}.kv-row span{color:var(--muted)}.kv-row strong{text-align:right;font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:18px}.side-panel>.card{background:#f7fbf8}a.card{color:inherit;transition:border-color .15s,transform .15s}a.card:hover{border-color:#9ec9b6;transform:translateY(-1px)}.card-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:.72rem;font-weight:700}.stat{letter-spacing:-.04em;font-size:1.55rem;font-weight:600}.meta{color:var(--muted);flex-wrap:wrap;gap:8px;margin-top:8px;font-size:.88rem;display:flex}.meta span:after{content:"·";color:#b7c0ba;margin-left:8px}.meta span:last-child:after{content:""}.badge{letter-spacing:.02em;color:#3d4a43;text-transform:capitalize;background:#e8efe9;border-radius:999px;align-items:center;padding:3px 8px;font-size:.72rem;font-weight:650;display:inline-flex}.badge[data-s=active],.badge[data-s=paid],.badge[data-s=released],.badge[data-s=completed],.badge[data-s=confirmed],.badge[data-s=checked_out]{background:var(--ok-bg);color:var(--ok)}.badge[data-s=pending_kyc],.badge[data-s=pending],.badge[data-s=awaiting_payment],.badge[data-s=invited],.badge[data-s=filling],.badge[data-s=sent],.badge[data-s=scheduled]{background:var(--warn-bg);color:var(--warn)}.badge[data-s=in_progress],.badge[data-s=checked_in],.badge[data-s=accepted]{background:var(--info-bg);color:var(--info)}.badge[data-s=rejected],.badge[data-s=cancelled],.badge[data-s=declined],.badge[data-s=expired],.badge[data-s=disputed]{background:var(--bad-bg);color:var(--bad)}.badge[data-s=matching]{color:#b54708;background:#fff1e6}.badge[data-s=unmatched]{color:#b42318;background:#fdecec}.ring-card{background:linear-gradient(#e8f4ef 0%,#fff 55%);border:2px solid #1b6b54;animation:1.2s ease-in-out infinite ring-pulse}.ring-timer{letter-spacing:-.04em;color:var(--accent);font-size:1.8rem;font-weight:700}@keyframes ring-pulse{0%,to{box-shadow:0 0 #1b6b5440}50%{box-shadow:0 0 0 8px #1b6b5400}}.table-wrap{width:100%;overflow-x:auto}.card.flush{padding:0;overflow:hidden}.dt{width:100%}.dt-bar{border-bottom:1px solid var(--line);background:#f4faf7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.dt-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.dt-meta{color:var(--muted);white-space:nowrap;font-size:.82rem}.dt-foot{border-top:1px solid var(--line);background:#f4faf7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.dt-page{align-items:center;gap:8px;display:flex}.dt-page button{padding:.42rem .75rem}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.sortable:hover{color:var(--ink)}.table th .sort{color:#9aa59d;font-weight:500}.table{border-collapse:collapse;width:100%;min-width:720px;font-size:.9rem}.table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);white-space:nowrap;background:#eef6f1;padding:12px 16px;font-size:.7rem}.table td{vertical-align:middle;border-bottom:1px solid #e8eee9;padding:13px 16px}.table tbody tr:hover{background:#f6fbf8}.table tbody tr.selected{background:#def3ea}.table tr:last-child td{border-bottom:0}.table .num{text-align:right;font-variant-numeric:tabular-nums}.worker-row{border-top:1px solid #e8eee9;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.alert{border-radius:12px;margin-bottom:16px;padding:14px 16px}.alert.warn{background:var(--warn-bg);color:var(--warn)}.alert.ok{background:var(--ok-bg);color:var(--ok)}.err{color:var(--bad);margin-top:8px;font-size:.9rem}.ok{color:var(--ok)}.empty{text-align:center;color:var(--muted);padding:36px 16px}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.tabs button{color:var(--ink);border:1px solid var(--line);background:#fff}.tabs button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.search{width:min(320px,100%)}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.auth-shell{background:#fff;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;width:100%;min-height:100dvh;display:grid;overflow-x:clip}.auth-brand{color:#edf6f1;background:radial-gradient(620px 380px at 0 0,#6ee0b433,#0000 58%),linear-gradient(165deg,#12352b 0%,#0c1c17 75%);justify-content:flex-start;align-items:flex-start;padding:clamp(36px,5vw,64px) clamp(28px,5vw,56px);display:flex}.auth-brand-inner{width:100%;max-width:none}.auth-brand .logo{padding:0;font-size:1.75rem}.auth-brand h1{letter-spacing:-.03em;max-width:16ch;margin:22px 0 0;font-family:Instrument Serif,Georgia,serif;font-size:clamp(2rem,3.2vw,2.65rem);font-weight:400;line-height:1.1}.auth-brand-lead{color:#b7d2c6;max-width:42ch;margin:12px 0 0;font-size:1rem;line-height:1.55}.auth-brand-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.auth-brand-badge{letter-spacing:.07em;text-transform:uppercase;color:#8ee4c0;background:#6ee0b41a;border:1px solid #6ee0b438;border-radius:999px;padding:5px 10px;font-size:.68rem;font-weight:700}.auth-brand-foot{color:#7a9488;margin-top:24px;font-size:.84rem}.auth-main{background:#f7faf8;border-left:1px solid #d3e3da;justify-content:flex-start;align-items:flex-start;padding:clamp(36px,5vw,64px) clamp(28px,5vw,56px);display:flex}.auth-main-inner{width:100%;max-width:none}.auth-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.auth-route-tabs{background:#e4ece7;border-radius:12px;gap:4px;padding:4px;display:inline-flex}.auth-route-tab{color:var(--muted);border-radius:9px;padding:.58rem 1.05rem;font-size:.88rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.auth-route-tab:hover{color:var(--ink)}.auth-route-tab.on{color:var(--ink);background:#fff;box-shadow:0 2px 8px #10211b14}.login-visual,.auth-visual{width:100%;margin-top:28px}.login-hero-svg{border:1px solid #6ee0b42e;border-radius:16px;width:100%;height:auto;display:block}.login-highlights{flex-direction:column;gap:11px;margin:18px 0 0;padding:0;list-style:none;display:flex}.login-highlights li{color:#c5d8cf;padding-left:18px;font-size:.92rem;line-height:1.45;position:relative}.login-highlights li:before{content:"";background:#6ee0b4;border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0;transform:translateY(-50%)}.auth-page{width:100%;min-width:0}.auth-header{margin-bottom:20px}.auth-header h1{letter-spacing:-.03em;color:var(--ink);margin-bottom:6px;font-size:clamp(1.5rem,2.5vw,1.85rem)}.auth-header p{color:var(--muted);margin:0;font-size:.92rem;line-height:1.5}.auth-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.auth-type-card{text-align:left;color:var(--ink);border:1px solid var(--line);cursor:pointer;font:inherit;background:#fff;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;min-width:0;padding:12px 14px;transition:border-color .12s,background .12s;display:flex}.auth-type-card:hover{background:#f7fbf8;border-color:#9ec9b6}.auth-type-card.on{background:#f3faf6;border-color:#1b6b54;box-shadow:0 0 0 3px #1b6b541a}.auth-type-card strong{font-size:.88rem;line-height:1.25}.auth-type-card span{color:var(--muted);font-size:.76rem;line-height:1.35}.auth-mode-tabs{background:#e8efea;border-radius:12px;flex-shrink:0;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:16px;padding:4px;display:grid}.auth-mode-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:.62rem .75rem;font-size:.9rem;font-weight:600}.auth-mode-tabs button.on{color:var(--ink);background:#fff;box-shadow:0 1px 6px #10211b12}.auth-card{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:22px;box-shadow:0 8px 28px #10211b0f}.auth-card-lead{color:var(--muted);margin:0 0 16px;font-size:.86rem;line-height:1.5}.auth-dev-otp{background:linear-gradient(135deg,#e5f7ec 0%,#f3faf6 100%);border:1px solid #b7d4c6;border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:16px;padding:14px 16px;display:flex}.auth-dev-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ok);font-size:.72rem;font-weight:700}.auth-dev-code{letter-spacing:.22em;color:var(--ink);font-size:1.45rem;font-weight:700}.auth-dev-note{color:var(--muted);flex:100%;font-size:.78rem}.auth-step-note{background:var(--info-bg);color:var(--info);border-radius:10px;margin:-6px 0 16px;padding:.55rem .75rem;font-size:.82rem;font-weight:600}.auth-fields{flex-direction:column;gap:2px;display:flex}.phone-field{align-items:stretch;width:100%;display:flex}.phone-prefix{border:1px solid var(--line);color:var(--muted);background:#f3faf6;border-right:0;border-radius:11px 0 0 11px;flex-shrink:0;align-items:center;padding:0 .85rem;font-size:.88rem;font-weight:600;display:flex}.phone-field input{border-radius:0 11px 11px 0;flex:1;min-width:0}.auth-otp-input{letter-spacing:.28em;text-align:center;font-size:1.15rem;font-weight:600}.auth-error{margin-top:12px}.auth-submit{width:100%;margin-top:16px;padding:.82rem 1rem;font-size:1rem}.auth-switch{text-align:center;color:var(--muted);margin:16px 0 0;font-size:.9rem}.auth-switch a{color:var(--accent);font-weight:600}.register-type-grid{margin-bottom:16px}.register-type-grid .pick-card{text-align:left;width:100%;min-height:88px}.register-type-grid .pick-card p{opacity:.85;margin:8px 0 0;font-size:.88rem}.auth-demo{border:1px solid var(--line);background:#fff;border-radius:14px;flex-shrink:0;max-width:100%;margin-top:16px;overflow:hidden}.auth-demo-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;font:inherit;background:#fafcfb;border:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.auth-demo-toggle strong{color:var(--ink);font-size:.92rem;display:block}.auth-demo-toggle small{color:var(--muted);margin-top:3px;font-size:.78rem;font-weight:400;display:block}.auth-demo-chevron{color:var(--muted);flex-shrink:0;font-size:.9rem}.auth-demo-body{border-top:1px solid #e8eee9;max-width:100%;padding:0 12px 12px;overflow:hidden}.auth-demo-filters{flex-wrap:wrap;gap:6px;padding:10px 0;display:flex}.auth-demo-filter{border:1px solid var(--line);color:var(--muted);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;padding:.34rem .65rem;font-size:.72rem;font-weight:600}.auth-demo-filter.on{background:var(--accent-2);color:var(--accent);border-color:#9ec9b6}.demo-list{flex-direction:column;gap:6px;max-height:220px;display:flex;overflow:hidden auto}.demo-row{text-align:left;width:100%;min-width:0;color:var(--ink);border:1px solid var(--line);cursor:pointer;font:inherit;background:#fff;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;display:grid}.demo-row:hover:not(:disabled){background:#f7fbf8;border-color:#9ec9b6}.demo-row:disabled{opacity:.55;cursor:not-allowed}.demo-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.demo-row-main strong{white-space:nowrap;text-overflow:ellipsis;font-size:.86rem;line-height:1.25;overflow:hidden}.demo-row-main small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.demo-phone{color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:.72rem;font-weight:600}.demo-role{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.18rem .48rem;font-size:.64rem;font-weight:700}.demo-role-admin{color:#175cd3;background:#eff4ff}.demo-role-client{color:#147a42;background:#e5f7ec}.demo-role-caterer{color:#0e7a58;background:#f3faf6}.demo-role-agency{color:#3d5a4f;background:#eef3f0}.demo-role-worker{color:#9a6700;background:#fff6de}.demo-role-driver{color:#0e7a58;background:#e8f4ef}.demo-role-home-pro{color:#b42318;background:#fdecea}.login-box>h1,.login-box h1{margin-bottom:4px}.account-grid{gap:8px;display:grid}.account{text-align:left;width:100%;color:var(--ink);border:1px solid var(--line);box-shadow:none;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:0;font-weight:500;display:flex}.account:hover{background:#f7fbf8;border-color:#9ec9b6}.account small{color:var(--muted);font-weight:400}.account-role{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-size:.68rem;font-weight:700}.skill-chip{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.skill-chip input{width:auto}.otp-box{background:#eef6f1;border-radius:8px;padding:2px 8px;font-family:ui-monospace,monospace;font-weight:650}.live{letter-spacing:.06em;text-transform:uppercase;color:var(--ok);align-items:center;gap:6px;font-size:.72rem;font-weight:750;display:inline-flex}.live i{background:var(--ok);border-radius:50%;width:8px;height:8px;animation:1.4s ease-out infinite live-pulse;box-shadow:0 0 #1b6b5473}@keyframes live-pulse{0%{box-shadow:0 0 #1b6b5473}to{box-shadow:0 0 0 8px #1b6b5400}}.otp-pad input{letter-spacing:.35em;text-align:center;font-family:ui-monospace,monospace;font-size:1.7rem;font-weight:700}.otp-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.otp-slot{text-align:center;background:#f4faf7;border:1px dashed #b7d4c6;border-radius:12px;padding:12px}.otp-slot.done{background:var(--ok-bg);border-style:solid}.otp-hero{letter-spacing:.22em;color:var(--ink);font-family:ui-monospace,monospace;font-size:1.7rem;font-weight:750}.otp-done{color:var(--ok);font-weight:650}.otp-steps{flex-direction:column;gap:12px;display:flex}.otp-step-done{background:var(--ok-bg);color:var(--ok);text-align:center;border-radius:10px;padding:10px 12px;font-size:.9rem;font-weight:600}.otp-steps .otp-slot{max-width:280px}.crew-card{border-top:1px solid #e8eee9;padding:12px 0}.crew-card:first-of-type{border-top:0}.crew-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.steps{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.step{color:var(--muted);grid-template-columns:14px 1fr;align-items:start;gap:10px;display:grid}.step i{background:#c9d4cd;border-radius:50%;width:10px;height:10px;margin-top:6px}.step.on{color:var(--ink)}.step.on i{background:var(--ok)}.step strong{display:block}.earn-hero{background:linear-gradient(#e8f4ef 0%,#fff 70%)}.earn-total{font-size:2.2rem}.earn-hero p{color:var(--muted);margin-top:6px}button.card.pick-card{background:var(--card);color:inherit;text-align:left;width:100%;font-weight:inherit;border:1px solid var(--line);cursor:pointer;padding:14px}button.card.pick-card.on{background:#f3faf6;border-color:#1b6b54;box-shadow:0 0 0 3px #1b6b541f}.post-steps{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.post-step{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:.42rem .78rem;font-size:.82rem;font-weight:600}.post-step.on{background:var(--accent);border-color:var(--accent);color:#fff}.post-step.done{color:var(--ok);border-color:#c7eadc}.post-wizard{flex-direction:column;width:100%;max-width:none;min-height:calc(100dvh - 170px);display:flex}.post-wizard .page-head p{max-width:none}.post-stepper{gap:0;margin:0 0 24px;padding:0;list-style:none;display:flex}.post-stepper-item{text-align:center;flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.post-stepper-item:not(:last-child):after{content:"";background:var(--line);z-index:0;width:calc(100% - 36px);height:2px;position:absolute;top:16px;left:calc(50% + 18px)}.post-stepper-item.done:not(:last-child):after{background:#9ec9b6}.post-stepper-dot{border:2px solid var(--line);z-index:1;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.82rem;font-weight:700;display:flex;position:relative}.post-stepper-item.on .post-stepper-dot{background:var(--accent);border-color:var(--accent);color:#fff}.post-stepper-item.done .post-stepper-dot{background:var(--ok-bg);border-color:var(--ok);color:var(--ok)}.post-stepper-label{color:var(--muted);padding:0 4px;font-size:.78rem;font-weight:600}.post-stepper-item.on .post-stepper-label{color:var(--accent)}.post-stepper-item.done .post-stepper-label{color:var(--ok)}.post-stepper-btn{cursor:pointer;color:inherit;font:inherit;background:0 0;border:0;flex-direction:column;align-items:center;gap:8px;width:100%;padding:0;display:flex}.post-panel{flex-direction:column;flex:1;width:100%;padding:22px 24px 24px;display:flex}.post-panel-fill .post-provider-grid,.post-panel-fill .post-category-stack{flex:1;align-content:start}.post-panel-fill .post-nav{margin-top:auto}.post-category-stack{flex-direction:column;gap:0;display:flex}.post-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.post-lead{max-width:56rem;margin-top:6px}.post-step-pill{background:var(--accent-2);color:var(--accent);letter-spacing:.02em;border-radius:999px;flex-shrink:0;padding:.32rem .72rem;font-size:.74rem;font-weight:700}.post-provider-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:14px;display:grid}@media (width>=1100px){.post-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1500px){.post-provider-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.post-pick{align-items:flex-start;gap:14px;display:flex}.post-pick-icon{background:var(--accent-2);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.25rem;display:flex}.post-pick.on .post-pick-icon{background:#d4ede2}.post-pick-body{flex:1;min-width:0}.post-pick-body p{margin-top:6px;font-size:.88rem}.post-nav{border-top:1px solid #e8eee9;justify-content:flex-end;margin-top:20px;padding-top:18px;display:flex}.post-nav .accent{min-width:160px}.post-selection-bar{background:linear-gradient(#f3faf6 0%,#fff 100%);border:1px solid #c7eadc;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;padding:12px 16px;display:flex}.post-selection-bar .post-chips{flex:1;min-width:0;margin-bottom:0}.post-selection-bar .post-back{flex-shrink:0;align-self:center;width:auto;margin:0}.post-back{border:1px solid var(--line);width:auto;color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;margin:0 0 18px;padding:.45rem .75rem;font-size:.82rem;font-weight:600;display:inline-flex}.post-back:hover{color:var(--accent);border-color:#9ec9b6}.post-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.post-chip{color:var(--ink);background:#f3faf6;border:1px solid #c7eadc;border-radius:999px;align-items:center;gap:6px;padding:.38rem .72rem;font-size:.82rem;font-weight:600;display:inline-flex}.post-section{margin-top:8px}.post-section+.post-section{margin-top:22px}.post-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.post-section-head h3,.post-form-title{color:var(--ink);margin:0;font-size:.95rem}.post-section-count{color:var(--muted);background:#eef3f0;border-radius:999px;padding:.18rem .55rem;font-size:.72rem;font-weight:700}.post-cat-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;display:grid}@media (width>=1200px){.post-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1600px){.post-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.post-cat-pick{justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.post-cat-copy{min-width:0}.post-cat-copy strong{display:block}.post-cat-badge{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;background:#eef3f0;border-radius:999px;margin-top:6px;padding:.16rem .48rem;font-size:.68rem;font-weight:700;display:inline-block}.post-cat-meta{text-align:right;color:var(--muted);flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;font-size:.78rem;font-weight:600;display:flex}.post-cat-check{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:flex}.post-chips-selected{margin-bottom:16px}.post-chip-toggle{cursor:pointer;background:#fff;border:1px solid #9ec9b6}.post-chip-toggle:hover{background:#fdecea;border-color:#e8b4b0}.skill-chip-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.skill-chip.pick{border:1px solid var(--line);color:inherit;cursor:pointer;text-align:left;font:inherit;background:#fff;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;display:flex}.skill-chip.pick.on{background:#f3faf6;border-color:#1b6b54;box-shadow:0 0 0 3px #1b6b541f}.skill-chip.pick small{color:var(--muted);font-size:.72rem}.post-mixed-note{margin-bottom:16px}.post-crew-card .post-cat-badge{margin-top:6px}.post-details-layout{flex:1;grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start;width:100%}.post-form-main{min-width:0}.post-format-tabs{margin:0 0 18px}.post-form-block{border-top:1px solid #e8eee9;margin-top:18px;padding-top:18px}.post-form-block:first-of-type{border-top:0;margin-top:0;padding-top:0}.field.span-2{grid-column:1/-1}.post-crew-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.post-crew-card{box-shadow:none;padding:16px}.post-crew-fields{margin-top:12px}.post-link-btn{padding:.35rem .7rem;font-size:.78rem}.post-summary-card{background:linear-gradient(#e8f4ef 0%,#fff 72%);border-color:#b7d4c6}.post-summary-rows{margin-top:4px}.post-summary-row{border-bottom:1px solid #b7d4c68c;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;font-size:.88rem;display:flex}.post-summary-row:last-child{border-bottom:0}.post-summary-row span{color:var(--muted)}.post-summary-row strong{text-align:right;font-weight:600}.post-submit-bar{flex-direction:column;gap:8px;display:flex}.post-submit-bar .accent{width:100%;padding:.85rem 1rem;font-size:.98rem}.post-submit-hint{text-align:center;color:var(--muted);font-size:.78rem}.pill.soon{background:var(--warn-bg);color:var(--warn);border-radius:999px;margin-top:10px;padding:.18rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}button.card.pick-card:disabled{opacity:.55;cursor:not-allowed}button.card.earn-stat,button.card.earn-row{background:var(--card);color:inherit;text-align:left;width:100%;font-weight:inherit;border:1px solid var(--line);padding:18px}button.card.earn-stat{cursor:pointer}button.card.earn-row{margin-bottom:12px}button.card.earn-stat.on,button.card.earn-row.on{background:#f3faf6;border-color:#1b6b54;box-shadow:0 0 0 3px #1b6b541f}.earn-next{color:var(--accent);margin-top:12px;font-weight:650}.plan-on{border-color:#1b6b54;box-shadow:0 0 0 3px #1b6b541f}.plan-features{margin:14px 0 16px;padding:0;list-style:none}.plan-features li{border-top:1px solid #e8eee9;padding:8px 0}.loader-wrap{justify-content:center;align-items:center;width:100%;min-height:clamp(240px,100dvh - 160px,720px);padding:clamp(16px,4vw,40px);display:flex}.tn-loader{text-align:center;flex-direction:column;align-items:center;gap:clamp(14px,3vw,22px);width:min(100%,280px);display:flex}.tn-radar{width:clamp(88px,22vw,120px);height:clamp(88px,22vw,120px);position:relative}.tn-ring{border:2px solid #0e7a5838;border-radius:50%;animation:1.8s ease-out infinite tn-ripple;position:absolute;inset:0}.tn-ring-2{animation-delay:.45s}.tn-ring-3{animation-delay:.9s}.tn-pin{background:var(--accent);border-radius:50% 50% 50% 0;width:16px;height:16px;margin:-8px 0 0 -8px;animation:1.2s ease-in-out infinite tn-bob;position:absolute;top:50%;left:50%;transform:rotate(-45deg);box-shadow:0 6px 16px #0e7a5859}.tn-pin:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:4px}.tn-loader-copy strong{letter-spacing:-.03em;font-size:clamp(1.05rem,3.4vw,1.25rem);display:block}.tn-loader-copy p{margin-top:4px;font-size:clamp(.82rem,2.6vw,.92rem)}@keyframes tn-ripple{0%{opacity:.7;transform:scale(.35)}to{opacity:0;transform:scale(1)}}@keyframes tn-bob{0%,to{transform:rotate(-45deg)translate(0)}50%{transform:rotate(-45deg)translate(2px,-3px)}}.portal-admin .main-body{background:radial-gradient(900px 320px at 100% -5%, #0e7a5812, transparent 55%), radial-gradient(700px 280px at 0% 0%, #10211b08, transparent 50%), var(--bg);padding:28px 32px 56px}.portal-admin .side-nav-section{border-top:1px solid #ffffff14;margin-top:12px;padding-top:12px}.portal-admin .side-nav-section:first-of-type{border-top:0;margin-top:0;padding-top:0}.portal-admin .side-nav-label{letter-spacing:.08em;text-transform:uppercase;color:#7aa892;padding:0 12px 6px;font-size:.62rem;font-weight:700;line-height:1.3;display:block}.portal-admin .side-nav a{padding:9px 12px;font-size:.9rem}.admin-page .page-head{border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:18px}.admin-page .page-head h1{font-size:1.85rem}.admin-page .page-head p{max-width:56rem;font-size:.95rem}.admin-alert{border-radius:12px;align-items:center;gap:10px;margin-bottom:18px;padding:12px 16px;font-size:.92rem;font-weight:500;display:flex}.admin-alert.err{background:var(--bad-bg);color:var(--bad);border:1px solid #f5c4bf}.admin-tabs{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;gap:4px;margin-bottom:20px;padding:4px}.admin-tabs button{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:.58rem 1rem;font-weight:600}.admin-tabs button:hover{color:var(--ink);background:#f4faf7}.admin-tabs button.on{background:var(--accent);color:#fff;box-shadow:0 4px 12px #0e7a5838}.admin-stats,.admin-desk-stats{gap:14px;margin-bottom:22px;display:grid}.admin-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.admin-desk-stats{grid-template-columns:repeat(auto-fill,minmax(196px,1fr))}.admin-stat,.admin-stat-link{flex-direction:column;min-height:104px;display:flex}.admin-stat-link{transition:border-color .15s,transform .15s,box-shadow .15s}.admin-stat-link:hover{border-color:#9ec9b6;transform:translateY(-2px);box-shadow:0 14px 32px #10211b14}.admin-stat-link .stat,.admin-stat .stat{margin-top:auto}.admin-workspace{align-items:start;gap:18px}.admin-workspace-main,.admin-workspace-detail{min-width:0}.admin-table-head{padding:14px 16px 0}.admin-detail-stack{gap:14px}.admin-detail-stack>.card,.side-panel>.card,.admin-workspace-detail .side-panel>.card{background:linear-gradient(#f8fcf9 0%,#fff 100%)}.admin-detail-title{margin:0 0 8px;font-size:1.15rem;line-height:1.25}.admin-detail-body .kv{margin-top:0}.admin-detail-actions,.admin-form-actions{margin-top:16px}.admin-detail.empty-state{min-height:220px;color:var(--muted);text-align:center;justify-content:center;align-items:center;display:flex}.admin-detail.empty-state p{margin:0}.admin-form-card.narrow{max-width:560px}.admin-form-card{margin-bottom:22px}.admin-form-hint{color:var(--muted);margin:0 0 14px;font-size:.92rem}.admin-board-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.admin-board-card{flex-direction:column;min-height:180px;display:flex}.admin-board-card-head{margin-bottom:8px}.admin-board-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-board-card h2{margin:0;font-size:1.08rem;line-height:1.3}.admin-board-meta{margin-top:8px}.admin-board-action{margin-top:14px}.admin-board-workers{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.admin-board-workers .worker-row:first-child{border-top:0;padding-top:0}.admin-empty{text-align:center;color:var(--muted);padding:48px 20px}.admin-section{margin-bottom:24px}.admin-section-title{margin-bottom:12px}.portal-admin .worker-row{border-radius:10px;padding:10px 8px;transition:background .12s}.portal-admin .worker-row:hover{background:#f4faf7}.portal-admin .card.flush .dt-bar,.portal-admin .card.flush .dt-foot{background:#f7fbf8}.portal-admin .side-panel.card{background:linear-gradient(#f8fcf9 0%,#fff 100%)}.admin-plan-list{flex-direction:column;gap:12px;display:flex}.admin-plan-list .earn-row.on{background:#f3faf6;border-color:#1b6b54}.admin-feature-list{flex-direction:column;gap:8px;display:flex}.admin-detail-roles{margin-bottom:12px}@media (width>=1400px){.auth-brand,.auth-main{padding-inline:clamp(40px,6vw,72px)}}@media (width<=1200px){.admin-desk-stats{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}@media (width<=1100px){.split,.split.even,.job-layout{grid-template-columns:1fr}.side-panel,.job-side{position:static}.admin-workspace.split,.admin-workspace.split.even{grid-template-columns:1fr}.admin-form-card.narrow{max-width:none}}@media (width<=1024px){.auth-shell{grid-template-columns:1fr;min-height:100dvh}.auth-brand{align-items:flex-start;padding:28px 24px 32px}.auth-brand h1{max-width:none}.auth-brand-lead{max-width:48ch}.auth-main{border-top:1px solid #d3e3da;border-left:0;align-items:flex-start;padding:28px 24px 40px}.portal-admin .main-body{padding:22px 20px 40px}.admin-board-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (width<=900px){.auth-type-grid{grid-template-columns:1fr}.admin-stats,.admin-desk-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){.app{grid-template-columns:1fr}.sidebar-desktop{display:none}.app-topbar{display:flex}.drawer-backdrop{display:block}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer{display:flex}.drawer.open{transform:translate(0)}.main-body{padding:18px 16px 40px}h1{font-size:1.45rem}.page-head{flex-direction:column;align-items:stretch;gap:12px}.page-head .btn-row{width:100%}.page-head .btn-row>*{flex:auto}.page-head .btn-row>.avail-toggle{flex:none;width:auto;margin-left:auto}.auth-brand{padding:24px 18px 28px}.auth-main{padding:24px 18px 36px}.auth-header h1{font-size:1.45rem}.auth-mode-tabs button{padding:.62rem .75rem;font-size:.92rem}.auth-card{padding:20px 18px 18px}.auth-demo-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;padding-bottom:6px;overflow-x:auto}.auth-demo-filters::-webkit-scrollbar{display:none}.auth-demo-filter{flex:none}.auth-submit{padding:.78rem 1rem}.admin-page .page-head h1{font-size:1.55rem}.admin-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs button{white-space:nowrap;flex:none}.admin-desk-stats,.admin-stats{grid-template-columns:1fr 1fr}.admin-board-grid{grid-template-columns:1fr}.admin-detail-actions .btn-row,.admin-form-actions .btn-row{flex-direction:column}.admin-detail-actions .btn-row>*,.admin-form-actions .btn-row>*{width:100%}.form-grid,.grid.two,.grid.three,.grid.four,.otp-grid,.cards,.post-wizard .split,.post-details-layout{grid-template-columns:1fr}.post-wizard .side-panel,.post-side{position:static}.post-stepper-label{font-size:.72rem}.post-panel-head,.post-selection-bar{flex-direction:column;align-items:stretch}.post-selection-bar .post-back{align-self:flex-start}.post-nav .accent{width:100%}.post-submit-bar{z-index:5;background:linear-gradient(180deg, transparent, var(--bg) 28%);padding:12px 0 4px;position:sticky;bottom:0}.tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.tabs button{white-space:nowrap;flex:none}.dt-bar,.dt-foot,.toolbar{flex-direction:column;align-items:stretch}.dt-actions{justify-content:space-between}.search{width:100%}.table{min-width:560px}.ring-card .btn-row,.ring-card h2{flex-wrap:wrap}.loader-wrap{min-height:calc(100dvh - 180px);padding:20px 12px}}@media (width<=640px){.auth-brand-head{flex-direction:column;align-items:flex-start}.auth-toolbar{margin-bottom:20px}.demo-row{grid-template-columns:auto minmax(0,1fr)}.demo-phone{display:none}.admin-desk-stats,.admin-stats{grid-template-columns:1fr}.admin-stat-link,.admin-stat{min-height:92px}.worker-row{flex-direction:column;align-items:stretch;gap:10px}.worker-row>button{width:100%}}@media (width<=520px){.main-body{padding:14px 12px 32px}.app-topbar{padding:8px 12px}.btn-row>button,.btn-row>.btn,.btn-row>a>button,.page-head .btn-row>*{width:100%}.side-user button{padding:10px}.auth-brand{padding:22px 14px 24px}.auth-main{padding:20px 14px 32px}.auth-brand .logo{font-size:1.45rem}.auth-brand h1{font-size:1.6rem}.login-visual,.auth-visual{margin-top:18px}.auth-header,.auth-mode-tabs{margin-bottom:14px}.auth-demo-toggle{padding:12px 14px}.auth-demo-body{padding:0 12px 12px}.phone-prefix{padding:0 .65rem;font-size:.82rem}.portal-admin .main-body{padding:16px 12px 32px}.admin-page .page-head{margin-bottom:16px;padding-bottom:14px}.admin-page .page-head h1{font-size:1.35rem}.admin-table-head{padding:12px 14px 0}.dt-bar,.dt-foot{padding:10px 12px}.table td,.table th{padding:11px 12px;font-size:.88rem}}@media (width<=380px){.auth-brand{padding:18px 12px 20px}.auth-main{padding:16px 12px 28px}.auth-brand h1{font-size:1.45rem}.auth-mode-tabs{grid-template-columns:1fr}.auth-mode-tabs button{width:100%}.lang-switch.compact button{padding:.35rem .55rem;font-size:.82rem}.icon-btn{width:38px;height:38px}}
