/* ==========================================================================
   StudyMerit Marketplace — portal design system (v1.2)
   Everything is scoped to portal classes so themes cannot interfere.
   ========================================================================== */

:root{
  --sa-accent:#4f63d2;--sa-accent-dark:#3549b8;--sa-accent-mid:#8896e8;--sa-accent-soft:#eef0fd;
  --sa-green:#22c27a;--sa-green-soft:#e9faf3;--sa-red:#f05252;--sa-red-soft:#fef2f2;
  --sa-gold:#f59e0b;--sa-gold-soft:#fffbeb;--sa-blue:#3b82f6;--sa-blue-soft:#eff6ff;
  --sa-orange:#f97316;--sa-orange-soft:#fff4ea;
  --sa-font-head:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --sa-font:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --sa-radius:16px;--sa-radius-sm:10px;--sa-side:248px;
}
html[data-theme="light"],html:not([data-theme]){
  --sa-bg:#f6f7fb;--sa-surface:#fff;--sa-surface2:#f9fafc;--sa-surface3:#f0f2f7;
  --sa-border:#e9ebf2;--sa-border2:#dde0ea;--sa-text:#121829;--sa-text2:#4a5368;--sa-text3:#8790a4;
  --sa-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px -12px rgba(16,24,40,.08);
  --sa-shadow-md:0 2px 4px rgba(16,24,40,.04),0 16px 36px -14px rgba(16,24,40,.16);
  --sa-shadow-lg:0 24px 60px rgba(26,31,54,.22);
  color-scheme:light;
}
html[data-theme="dark"]{
  --sa-bg:#0b0d14;--sa-surface:#12151f;--sa-surface2:#171b28;--sa-surface3:#1f2434;
  --sa-border:#ffffff12;--sa-border2:#ffffff20;--sa-text:#eceef8;--sa-text2:#a5adcb;--sa-text3:#6f7799;
  --sa-shadow-md:0 2px 4px rgba(0,0,0,.3),0 16px 36px -14px rgba(0,0,0,.6);
  --sa-accent-soft:#4f63d222;--sa-green-soft:#22c27a1c;--sa-red-soft:#f052521c;--sa-gold-soft:#f59e0b1c;--sa-blue-soft:#3b82f61c;--sa-orange-soft:#f973161c;
  --sa-shadow:0 1px 2px rgba(0,0,0,.3),0 6px 24px rgba(0,0,0,.25);
  --sa-shadow-lg:0 24px 60px rgba(0,0,0,.6);
  color-scheme:dark;
}
.sa-role-administrator{--sa-accent:#6366f1;--sa-accent-dark:#4f52d3;--sa-accent-mid:#818cf8}

body.sa-portal-page{margin:0;background:var(--sa-bg);color:var(--sa-text);font-family:var(--sa-font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}
.sa-app *,.sa-login *,.sa-auth-wrap *{box-sizing:border-box}
.sa-app,.sa-login,.sa-auth-wrap{font-family:var(--sa-font);color:var(--sa-text)}
.sa-app h1,.sa-app h2,.sa-app h3,.sa-app h4,.sa-login h1,.sa-login h2,.sa-auth-card h2{font-family:var(--sa-font-head);margin:0;letter-spacing:-.01em;color:inherit}
.sa-app p,.sa-login p{margin:0}
.sa-app a{color:inherit;text-decoration:none}
.sa-app button,.sa-login button{font-family:inherit;cursor:pointer}
.sa-i{display:block;flex-shrink:0}
.sa-flip{transform:rotate(180deg)}
.sa-muted{color:var(--sa-text3)}
.sa-center{text-align:center}
[hidden]{display:none!important}


/* Post-assignment form: aligned with the public Post Your Order form */
.sa-post-section-head{display:flex;align-items:center;gap:10px;margin:18px 0 12px;padding-top:4px}
.sa-post-step{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--sa-accent-soft);color:var(--sa-accent);font-size:12px;font-weight:800;flex:none}
.sa-post-section-head div{display:grid;gap:2px}
.sa-post-section-head strong{font-size:14px;color:var(--sa-text)}
.sa-post-section-head small{font-size:12px;color:var(--sa-text3);font-weight:400}
.sa-post-paper-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.sa-post-order-grid{display:grid;grid-template-columns:1.1fr .7fr 1fr;gap:14px}
.sa-post-deadline-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.sa-post-deadline .sa-deadline-control{position:relative}
.sa-post-deadline .sa-deadline-control input,.sa-post-deadline .sa-deadline-control select{padding-left:38px}
.sa-deadline-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);z-index:1;font-size:15px;pointer-events:none}
@media(max-width:760px){.sa-post-paper-grid,.sa-post-order-grid,.sa-post-deadline-grid{grid-template-columns:1fr}}

/* ---------- shell ---------- */
.sa-app{display:flex;min-height:100vh;background:var(--sa-bg)}
.sa-side{position:fixed;inset:0 auto 0 0;width:var(--sa-side);background:var(--sa-surface);border-right:1px solid var(--sa-border);display:flex;flex-direction:column;z-index:60;transition:transform .25s ease}
.sa-brand{display:flex;align-items:center;gap:10px;padding:22px 20px 18px}
.sa-brand-mark{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,var(--sa-accent),var(--sa-accent-mid));color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px var(--sa-accent-soft)}
.sa-brand-text{font-family:var(--sa-font-head);font-weight:800;font-size:19px;letter-spacing:-.3px}
.sa-brand-text em{color:var(--sa-accent);font-style:normal}
.sa-side .sa-side-close{margin-left:auto;display:none}
.sa-nav{flex:1;overflow-y:auto;padding:4px 12px 12px}
.sa-nav-label{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sa-text3);padding:14px 10px 6px}
.sa-nav-item{position:relative;display:flex;align-items:center;gap:11px;padding:10px 12px;margin-bottom:2px;border-radius:var(--sa-radius-sm);color:var(--sa-text2)!important;font-weight:500;font-size:13.5px;transition:background .15s,color .15s}
.sa-nav-item:hover{background:var(--sa-surface2);color:var(--sa-text)!important}
.sa-nav-item.is-active{background:var(--sa-accent-soft);color:var(--sa-accent)!important;font-weight:600}
.sa-nav-item.is-active::before{content:"";position:absolute;left:-12px;top:20%;bottom:20%;width:3px;border-radius:0 3px 3px 0;background:var(--sa-accent)}
.sa-nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--sa-accent);color:#fff;font-size:11px;font-weight:700;display:inline-grid;place-items:center}
.sa-nav-badge[data-zero]{display:none}
.sa-side-foot{padding:12px;border-top:1px solid var(--sa-border);display:grid;gap:6px}
.sa-usercard{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--sa-radius-sm)}
.sa-usercard:hover{background:var(--sa-surface2)}
.sa-usercard-text{display:grid;min-width:0}
.sa-usercard-text strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-usercard-text small{color:var(--sa-text3);font-size:11.5px}
.sa-logout{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--sa-radius-sm);color:var(--sa-text2)!important;font-size:13px;font-weight:500}
.sa-logout:hover{background:var(--sa-red-soft);color:var(--sa-red)!important}
.sa-scrim{display:none;position:fixed;inset:0;background:rgba(10,12,24,.5);z-index:55;backdrop-filter:blur(2px)}
.sa-main{margin-left:var(--sa-side);flex:1;min-width:0;display:flex;flex-direction:column}
.sa-top{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;padding:14px 32px;background:color-mix(in srgb,var(--sa-bg) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--sa-border)}
.sa-crumb{min-width:0;flex:1}
.sa-crumb h1{font-size:22px;font-weight:700;line-height:1.2}
.sa-eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--sa-accent)}
.sa-top-actions{display:flex;align-items:center;gap:8px}
.sa-icon-btn{position:relative;width:38px;height:38px;display:inline-grid;place-items:center;border-radius:11px;border:1px solid var(--sa-border);background:var(--sa-surface);color:var(--sa-text2);transition:.15s}
.sa-icon-btn:hover{border-color:var(--sa-border2);color:var(--sa-text);background:var(--sa-surface2)}
.sa-burger{display:none}
.sa-dot{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--sa-red);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;border:2px solid var(--sa-bg)}
html[data-theme="dark"] .sa-when-light,html[data-theme="light"] .sa-when-dark,html:not([data-theme]) .sa-when-dark{display:none}
.sa-content{padding:28px 32px 60px;max-width:1360px;width:100%}
html.sa-js .sa-view{display:none;animation:sa-in .25s ease}
html.sa-js .sa-view.is-active{display:block}
@keyframes sa-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* ---------- buttons ---------- */
.sa-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:11px;border:1px solid var(--sa-border2);background:var(--sa-surface);color:var(--sa-text)!important;font-weight:600;font-size:13px;line-height:1.2;transition:.15s;white-space:nowrap;text-decoration:none}
.sa-btn:hover{background:var(--sa-surface2);border-color:var(--sa-accent-mid)}
.sa-btn:disabled{opacity:.5;cursor:not-allowed}
.sa-btn-primary{background:linear-gradient(135deg,var(--sa-accent),var(--sa-accent-dark));border-color:transparent;color:#fff!important;box-shadow:0 6px 16px var(--sa-accent-soft)}
.sa-btn-primary:hover{background:linear-gradient(135deg,var(--sa-accent-dark),var(--sa-accent-dark));border-color:transparent;filter:brightness(1.05)}
.sa-btn-soft{background:var(--sa-accent-soft);border-color:transparent;color:var(--sa-accent)!important}
.sa-btn-soft:hover{background:var(--sa-accent-soft);filter:brightness(.97)}
.sa-btn-ghost{border-color:transparent;background:transparent;color:var(--sa-text2)!important}
.sa-btn-white{background:#fff;border-color:#fff;color:var(--sa-accent-dark)!important}
.sa-btn-white:hover{background:#f4f6ff}
.sa-btn-danger-soft{background:var(--sa-red-soft);border-color:transparent;color:var(--sa-red)!important}
.sa-btn-sm{padding:6px 11px;font-size:12px;border-radius:9px}
.sa-btn-lg{padding:12px 20px;font-size:14px;border-radius:12px}
.sa-btn-block{width:100%}
.sa-btn:focus-visible,.sa-icon-btn:focus-visible,.sa-nav-item:focus-visible,.sa-field input:focus-visible{outline:2px solid var(--sa-accent);outline-offset:2px}
.sa-link{color:var(--sa-accent)!important;font-weight:600;font-size:13px}
.sa-link:hover{text-decoration:underline}
.sa-btn-row{display:flex;flex-wrap:wrap;gap:10px}

/* ---------- cards / layout ---------- */
.sa-card{background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:var(--sa-radius);padding:22px;margin-bottom:20px;box-shadow:var(--sa-shadow);min-width:0}
.sa-card.sa-flush{padding:0;overflow:hidden}
.sa-card.sa-pad,.sa-pad{padding:22px 22px 6px}
.sa-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}
.sa-card-head h3{font-size:16px;font-weight:700}
.sa-card-head p{color:var(--sa-text3);font-size:12.5px;margin-top:3px}
.sa-count{border:1px solid var(--sa-border);border-radius:99px;padding:3px 10px;font-size:12px;font-weight:600;color:var(--sa-text2)}
.sa-card-note{display:flex;gap:14px;background:var(--sa-accent-soft);border-color:transparent;color:var(--sa-accent)}
.sa-card-note p{margin:3px 0 8px}
.sa-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sa-grid-2-1{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px}
.sa-align-start{align-items:start}
.sa-col{min-width:0}
.sa-col>.sa-card:last-child,.sa-grid-2>.sa-card{margin-bottom:20px}
.sa-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sa-row-3{grid-template-columns:repeat(3,1fr)}
.sa-stack{display:grid;gap:14px}
.sa-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.sa-grow{flex:1;min-width:220px}

.sa-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 32px;margin-bottom:20px;border-radius:20px;color:#fff;background:radial-gradient(900px 300px at 100% 0,rgba(255,255,255,.18),transparent 60%),linear-gradient(135deg,var(--sa-accent),var(--sa-accent-dark));box-shadow:0 18px 40px var(--sa-accent-soft)}
.sa-hero h2{font-size:26px;font-weight:700;margin:6px 0 8px;max-width:640px;color:#fff}
.sa-hero p{color:rgba(255,255,255,.85);max-width:600px}
.sa-hero-kicker{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75)}

.sa-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.sa-stat{display:flex;gap:14px;align-items:center;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:var(--sa-radius);padding:18px;box-shadow:var(--sa-shadow);min-width:0}
.sa-stat-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex-shrink:0;background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-stat.sa-tone-green .sa-stat-ico{background:var(--sa-green-soft);color:var(--sa-green)}
.sa-stat.sa-tone-gold .sa-stat-ico{background:var(--sa-gold-soft);color:var(--sa-gold)}
.sa-stat.sa-tone-blue .sa-stat-ico{background:var(--sa-blue-soft);color:var(--sa-blue)}
.sa-stat-body{display:grid;min-width:0}
.sa-stat-label{font-size:12px;color:var(--sa-text3);font-weight:500}
.sa-stat-value{font-family:var(--sa-font-head);font-size:25px;font-weight:700;line-height:1.2;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-stat-sub{font-size:11.5px;color:var(--sa-text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---------- forms ---------- */
.sa-form{display:grid;gap:16px}
.sa-inline-form{display:inline-flex;margin:0}
.sa-field{display:grid;align-content:start;gap:7px;font-size:12.5px;font-weight:600;color:var(--sa-text2)}
.sa-field em{font-weight:400;color:var(--sa-text3);font-style:normal}
.sa-field small{font-weight:400;color:var(--sa-text3);font-size:11.5px}
.sa-field input:not([type=checkbox]),.sa-field select,.sa-field textarea,.sa-select,.sa-search input,.sa-composer textarea{width:100%;background:var(--sa-surface2);border:1px solid var(--sa-border2);color:var(--sa-text);border-radius:var(--sa-radius-sm);padding:10px 12px;font:inherit;font-size:13.5px;font-weight:400;outline:none;transition:border-color .15s,box-shadow .15s}
.sa-field input:focus,.sa-field select:focus,.sa-field textarea:focus,.sa-select:focus,.sa-search input:focus,.sa-composer textarea:focus{border-color:var(--sa-accent);box-shadow:0 0 0 3px var(--sa-accent-soft);background:var(--sa-surface)}
.sa-field textarea{resize:vertical;min-height:80px}
.sa-field input[type=file]{padding:9px;background:var(--sa-surface)}
.sa-select{width:auto;min-width:170px}
.sa-search{position:relative;display:flex;align-items:center;min-width:220px}
.sa-search .sa-i{position:absolute;left:12px;color:var(--sa-text3);pointer-events:none}
.sa-search input{padding-left:36px}
.sa-presets{display:flex;gap:6px;margin-top:2px}
.sa-presets button{border:1px solid var(--sa-border2);background:var(--sa-surface);color:var(--sa-text2);border-radius:99px;padding:3px 10px;font-size:11.5px;font-weight:600}
.sa-presets button:hover{border-color:var(--sa-accent);color:var(--sa-accent)}
.sa-check{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--sa-border);border-radius:var(--sa-radius-sm);background:var(--sa-surface2);cursor:pointer}
.sa-check input{margin-top:3px;width:16px;height:16px;accent-color:var(--sa-accent)}
.sa-check span{display:grid;gap:2px}
.sa-check small{color:var(--sa-text3)}
.sa-pw{position:relative;display:block}
.sa-pw .sa-icon-btn{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:0;background:transparent}
.sa-pw input{padding-right:42px!important}

/* ---------- tabs ---------- */
.sa-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:4px;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:12px}
.sa-tabs button{display:inline-flex;gap:7px;align-items:center;border:0;background:transparent;color:var(--sa-text2);padding:7px 12px;border-radius:9px;font-size:12.5px;font-weight:600}
.sa-tabs button b{font-size:11px;background:var(--sa-surface3);color:var(--sa-text2);border-radius:99px;padding:1px 7px}
.sa-tabs button:hover{background:var(--sa-surface2)}
.sa-tabs button.is-active{background:var(--sa-accent);color:#fff}
.sa-tabs button.is-active b{background:rgba(255,255,255,.22);color:#fff}

/* ---------- avatars / pills / chips ---------- */
.sa-avatar{width:var(--s,36px);height:var(--s,36px);border-radius:50%;display:inline-grid;place-items:center;flex-shrink:0;color:#fff;font-weight:700;font-size:calc(var(--s,36px)*.36);font-family:var(--sa-font-head)}
.sa-status,.sa-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:11.5px;font-weight:700;white-space:nowrap;background:var(--sa-surface3);color:var(--sa-text2)}
.sa-status::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.sa-bidding,.sa-open,.sa-pending{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-in_progress{background:var(--sa-gold-soft);color:#b7791f}
.sa-submitted,.sa-accepted,.sa-resolved{background:var(--sa-green-soft);color:#12945a}
.sa-revision{background:var(--sa-orange-soft);color:#c2570c}
.sa-closed,.sa-withdrawn{background:var(--sa-surface3);color:var(--sa-text2)}
.sa-rejected,.sa-failed{background:var(--sa-red-soft);color:var(--sa-red)}
.sa-demo{}
.sa-pill.sa-tone-ok{background:var(--sa-green-soft);color:#12945a}
.sa-pill.sa-tone-warn{background:var(--sa-gold-soft);color:#b7791f}
.sa-pill.sa-tone-danger{background:var(--sa-red-soft);color:var(--sa-red)}
.sa-pill.sa-tone-neutral{background:var(--sa-surface3);color:var(--sa-text2)}
.sa-tone-pill-ok{display:inline-flex;align-items:center;gap:6px;background:var(--sa-green-soft);color:#12945a;padding:7px 12px;border-radius:99px;font-weight:700;font-size:12.5px}
.sa-chips{display:flex;flex-wrap:wrap;gap:6px}
.sa-chip{display:inline-block;padding:3px 9px;border-radius:7px;background:var(--sa-surface3);color:var(--sa-text2);font-size:11.5px;font-weight:600}
.sa-chip-accent{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-due{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600}
.sa-due.sa-tone-ok,.sa-tone-ok{color:var(--sa-text2)}
.sa-due.sa-tone-soon,.sa-tone-soon{color:#b7791f}
.sa-due.sa-tone-warn,.sa-tone-warn{color:var(--sa-orange)}
.sa-due.sa-tone-danger,.sa-tone-danger{color:var(--sa-red)}
.sa-due.sa-tone-neutral{color:var(--sa-text3)}

/* ---------- orders ---------- */
.sa-order{display:flex;gap:20px;justify-content:space-between;align-items:center;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:var(--sa-radius);padding:18px 20px;box-shadow:var(--sa-shadow);transition:border-color .15s,transform .15s}
.sa-order:hover{border-color:var(--sa-accent-mid);transform:translateY(-1px)}
.sa-order-main{display:grid;gap:10px;min-width:0;flex:1}
.sa-order-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sa-order-head h3{font-size:15.5px;font-weight:700}
.sa-order-id{font-size:12px;font-weight:700;color:var(--sa-text3)}
.sa-order-meta{display:flex;flex-wrap:wrap;gap:18px;color:var(--sa-text2);font-size:12.5px}
.sa-order-meta>span{display:inline-flex;align-items:center;gap:7px}
.sa-price{font-weight:700;color:var(--sa-text)}
.sa-price small{font-weight:500;color:var(--sa-green)}
.sa-order-actions{display:flex;gap:8px;flex-shrink:0}
.sa-steps{display:flex;list-style:none;margin:2px 0 0;padding:0;gap:0}
.sa-steps li{flex:1;display:flex;flex-direction:column;gap:6px;position:relative;font-size:11px;color:var(--sa-text3);font-weight:600}
.sa-steps li i{display:block;height:4px;border-radius:4px;background:var(--sa-surface3);margin-right:4px}
.sa-steps li.is-done i{background:var(--sa-green)}
.sa-steps li.is-current i{background:var(--sa-accent)}
.sa-steps.is-revision li.is-current i{background:var(--sa-orange)}
.sa-steps li.is-done,.sa-steps li.is-current{color:var(--sa-text2)}

/* ---------- lists ---------- */
.sa-list{display:grid}
.sa-list-row{display:flex;align-items:center;gap:14px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid var(--sa-border);padding:13px 4px;color:inherit}
.sa-list-row:first-child{border-top:0}
.sa-list-row:hover{background:var(--sa-surface2)}
.sa-list-main{flex:1;min-width:0;display:grid}
.sa-list-main strong{font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-list-main small{color:var(--sa-text3);font-size:12px}
.sa-list-amt{font-family:var(--sa-font-head);font-size:14px}
.sa-attn{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:12px;border-radius:12px;border:1px solid var(--sa-border);background:var(--sa-surface2);color:inherit;margin-bottom:10px}
.sa-attn:hover{border-color:var(--sa-accent-mid)}
.sa-attn:last-child{margin-bottom:0}
.sa-attn-ico{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--sa-accent-soft);color:var(--sa-accent);flex-shrink:0}
.sa-attn.sa-tone-green .sa-attn-ico{background:var(--sa-green-soft);color:var(--sa-green)}
.sa-attn.sa-tone-orange .sa-attn-ico{background:var(--sa-orange-soft);color:var(--sa-orange)}
.sa-attn-text{flex:1;min-width:0;display:grid}
.sa-attn-text strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-attn-text small{color:var(--sa-text3);font-size:12px}
.sa-pipeline{display:grid;gap:14px}
.sa-pipe{display:grid;grid-template-columns:120px 1fr 28px;align-items:center;gap:12px;font-size:12.5px;color:var(--sa-text2)}
.sa-pipe b{text-align:right;color:var(--sa-text)}
.sa-bar-track{height:8px;border-radius:99px;background:var(--sa-surface3);overflow:hidden}
.sa-bar-fill{display:block;height:100%;border-radius:99px;min-width:0}
.sa-fill-accent{background:var(--sa-accent)}.sa-fill-gold{background:var(--sa-gold)}.sa-fill-green{background:var(--sa-green)}.sa-fill-orange{background:var(--sa-orange)}.sa-fill-muted{background:var(--sa-text3)}
.sa-mini-msg{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid var(--sa-border)}
.sa-mini-msg:first-child{border-top:0}
.sa-mini-msg:hover{background:var(--sa-surface2)}
.sa-mini-msg>span:not(.sa-avatar){flex:1;min-width:0;display:grid}
.sa-mini-msg strong{font-size:13px}
.sa-mini-msg small{color:var(--sa-text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-mini-msg time{font-size:11.5px;color:var(--sa-text3)}
.sa-empty-state{display:grid;justify-items:center;gap:6px;padding:28px 16px;text-align:center;color:var(--sa-text2)}
.sa-empty-ico{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--sa-accent-soft);color:var(--sa-accent);margin-bottom:6px}
.sa-empty-state strong{font-family:var(--sa-font-head);font-size:16px;color:var(--sa-text)}
.sa-empty-state p{font-size:13px;max-width:380px;color:var(--sa-text3)}
.sa-empty-state .sa-btn{margin-top:8px}

/* ---------- tables ---------- */
.sa-table-wrap{overflow-x:auto}
.sa-table{width:100%;border-collapse:collapse}
.sa-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--sa-text3);text-align:left;padding:13px 16px;border-bottom:1px solid var(--sa-border);background:var(--sa-surface2);white-space:nowrap}
.sa-table td{padding:14px 16px;border-bottom:1px solid var(--sa-border);vertical-align:middle;font-size:13px}
.sa-table tbody tr:last-child td{border-bottom:0}
.sa-table tbody tr:hover td{background:var(--sa-surface2)}
.sa-table td strong{display:block;font-size:13.5px}
.sa-table td small{display:block;color:var(--sa-text3);font-size:12px;margin-top:2px}
.sa-num{text-align:right!important;font-variant-numeric:tabular-nums;white-space:nowrap}
.sa-pos{color:#12945a;font-weight:700}.sa-neg{color:var(--sa-red);font-weight:700}
.sa-actions-cell{text-align:right;white-space:nowrap}
.sa-usercell{display:flex;align-items:center;gap:12px}
.sa-usercell>span:last-child{display:grid}

/* ---------- jobs ---------- */
.sa-jobs{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.sa-job{display:flex;flex-direction:column;gap:10px;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:var(--sa-radius);padding:18px;box-shadow:var(--sa-shadow);transition:.15s}
.sa-job:hover{border-color:var(--sa-accent-mid);transform:translateY(-2px)}
.sa-job-top{display:flex;justify-content:space-between;font-size:12px}
.sa-job h3{font-size:15.5px;font-weight:700;line-height:1.3}
.sa-job-desc{color:var(--sa-text2);font-size:13px;flex:1}
.sa-job-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--sa-border)}
.sa-job-foot>div{display:grid}
.sa-job-budget{font-family:var(--sa-font-head);font-size:20px;font-weight:700}
.sa-job-bids{color:var(--sa-text3);font-size:11.5px}
.sa-noresults{grid-column:1/-1}

/* ---------- charts ---------- */
.sa-big{font-family:var(--sa-font-head);font-size:24px;display:grid;text-align:right}
.sa-big small{font-family:var(--sa-font);font-size:11.5px;color:var(--sa-text3);font-weight:500}
.sa-bars{display:flex;align-items:flex-end;gap:12px;height:190px;padding:8px 4px 0}
.sa-bars-sm{height:150px}
.sa-barcol{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}
.sa-barcol i{display:block;width:100%;max-width:46px;border-radius:9px 9px 4px 4px;background:linear-gradient(180deg,var(--sa-accent-mid),var(--sa-accent));min-height:4px;transition:filter .15s}
.sa-barcol:hover i{filter:brightness(1.1)}
.sa-barcol small{color:var(--sa-text3);font-size:11.5px;font-weight:600}
.sa-barval{font-size:11px;font-weight:700;color:var(--sa-text2);min-height:14px}
.sa-balance strong{display:block;font-family:var(--sa-font-head);font-size:38px;letter-spacing:-.03em;margin:6px 0}
.sa-estimate{background:linear-gradient(135deg,var(--sa-accent-soft),transparent)}
.sa-estimate-val{display:block;font-family:var(--sa-font-head);font-size:38px;margin:4px 0;letter-spacing:-.03em}
.sa-estimate .sa-btn{margin-top:14px}
.sa-topups{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.sa-tips{list-style:none;margin:0;padding:0;display:grid;gap:10px;color:var(--sa-text2);font-size:13px}
.sa-tips li{display:flex;gap:10px;align-items:flex-start}
.sa-tips .sa-i{color:var(--sa-green);margin-top:2px}

/* ---------- dialogs ---------- */
.sa-dialog{border:0;padding:0;background:transparent;color:var(--sa-text);width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 32px);font-family:var(--sa-font);overflow:visible}
.sa-dialog-lg{width:min(760px,calc(100vw - 24px))}
.sa-dialog::backdrop{background:rgba(10,12,24,.55);backdrop-filter:blur(3px)}
.sa-dialog[open]{animation:sa-pop .2s ease}
@keyframes sa-pop{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.sa-dialog-card{background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:20px;box-shadow:var(--sa-shadow-lg);display:flex;flex-direction:column;max-height:calc(100vh - 32px)}
.sa-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--sa-border)}
.sa-dialog-head h3{font-size:16.5px;font-weight:700;line-height:1.3}
.sa-dialog-body{padding:20px 22px 24px;overflow-y:auto;display:grid;gap:14px;align-content:start}
.sa-dialog-body h4{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--sa-text3);margin-top:4px}
.sa-dialog-status{display:flex;align-items:center;gap:12px;color:var(--sa-text3);font-size:12.5px}
.sa-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0}
.sa-info>div{background:var(--sa-surface2);border:1px solid var(--sa-border);border-radius:10px;padding:10px 12px}
.sa-info dt{font-size:11px;color:var(--sa-text3);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.sa-info dd{margin:2px 0 0;font-weight:600;font-size:13.5px}
.sa-info-1{grid-template-columns:1fr}
.sa-prose{font-size:13.5px;color:var(--sa-text2);line-height:1.7}
.sa-prose p{margin:0 0 10px}
.sa-callout{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:12px;background:var(--sa-accent-soft);color:var(--sa-accent);font-size:13px}
.sa-callout p{color:var(--sa-text2);margin-top:2px}
.sa-callout-warn{background:var(--sa-orange-soft);color:#c2570c}
.sa-callout-ok{background:var(--sa-green-soft);color:#12945a}
.sa-files{display:grid;gap:8px}
.sa-file{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--sa-border);border-radius:10px;background:var(--sa-surface2);font-size:13px;font-weight:600}
.sa-file span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-file:hover{border-color:var(--sa-accent)}
.sa-bid{display:flex;gap:14px;align-items:flex-start;padding:14px;border:1px solid var(--sa-border);border-radius:12px;background:var(--sa-surface2)}
.sa-bid-main{flex:1;min-width:0;display:grid;gap:2px}
.sa-bid-main small{color:var(--sa-text3)}
.sa-bid-main p{color:var(--sa-text2);font-size:13px;margin-top:6px}
.sa-bid-side{display:grid;gap:8px;justify-items:end}
.sa-bid-side>strong{font-family:var(--sa-font-head);font-size:18px}
.sa-split{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sa-earn-preview{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:12px;background:var(--sa-green-soft);color:#12945a;font-size:13px;font-weight:600}
.sa-earn-preview strong{font-family:var(--sa-font-head);font-size:20px}

/* ---------- messages ---------- */
.sa-msg{display:grid;grid-template-columns:330px 1fr;height:calc(100vh - 190px);min-height:520px;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:var(--sa-radius);overflow:hidden;box-shadow:var(--sa-shadow)}
.sa-msg-list{border-right:1px solid var(--sa-border);overflow-y:auto;display:flex;flex-direction:column}
.sa-msg-list .sa-search{margin:14px;min-width:0}
.sa-convo{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px;border:0;border-top:1px solid var(--sa-border);background:transparent;color:inherit}
.sa-convo:hover{background:var(--sa-surface2)}
.sa-convo.is-active{background:var(--sa-accent-soft)}
.sa-convo-text{flex:1;min-width:0;display:grid;gap:1px}
.sa-convo-text strong{font-size:13.5px}
.sa-convo-text em{font-style:normal;font-size:11.5px;color:var(--sa-accent);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-convo-text small{color:var(--sa-text3);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-convo-meta{display:grid;justify-items:end;gap:6px}
.sa-convo-meta small{font-size:11px;color:var(--sa-text3);white-space:nowrap}
.sa-msg-pane{position:relative;min-width:0;display:flex}
.sa-thread{display:none;flex-direction:column;width:100%;min-height:0}
.sa-thread.is-open{display:flex}
.sa-thread-empty{margin:auto;display:grid;justify-items:center;gap:10px;color:var(--sa-text3)}
.sa-thread.is-open~.sa-thread-empty{display:none}
.sa-thread-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--sa-border)}
.sa-thread-head>div{flex:1;min-width:0;display:grid}
.sa-thread-head small{color:var(--sa-text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sa-thread-back{display:none}
.sa-thread-body{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;background:var(--sa-surface2)}
.sa-bubble{max-width:75%;padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.55;position:relative}
.sa-bubble p{white-space:normal;word-break:break-word}
.sa-bubble time{display:block;font-size:10.5px;opacity:.7;margin-top:4px}
.sa-bubble.is-theirs{align-self:flex-start;background:var(--sa-surface);border:1px solid var(--sa-border);border-bottom-left-radius:4px}
.sa-bubble.is-mine{align-self:flex-end;background:var(--sa-accent);color:#fff;border-bottom-right-radius:4px}
.sa-bubble-tag{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;opacity:.85}
.sa-bubble.is-tagged.is-theirs{border-left:3px solid var(--sa-orange)}
.sa-composer{display:flex;gap:10px;align-items:flex-end;padding:14px 16px;border-top:1px solid var(--sa-border);background:var(--sa-surface)}
.sa-composer textarea{flex:1;resize:none;max-height:140px;min-height:40px}
.sa-thread-lite{display:grid;gap:10px}
.sa-thread-lite .sa-bubble{max-width:100%}

/* ---------- support / faq / profile ---------- */
.sa-tickets{display:grid;gap:10px}
.sa-ticket{border:1px solid var(--sa-border);border-radius:12px;background:var(--sa-surface2)}
.sa-ticket summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;cursor:pointer}
.sa-ticket summary::-webkit-details-marker{display:none}
.sa-ticket summary span{display:grid;min-width:0}
.sa-ticket summary small{color:var(--sa-text3)}
.sa-ticket-body{display:grid;gap:10px;padding:0 14px 14px}
.sa-ticket-body .sa-bubble{max-width:100%}
.sa-faq{display:grid;gap:8px}
.sa-faq details{border:1px solid var(--sa-border);border-radius:12px;background:var(--sa-surface2)}
.sa-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;font-weight:600;font-size:13.5px;cursor:pointer}
.sa-faq summary::-webkit-details-marker{display:none}
.sa-faq details[open] summary .sa-i{transform:rotate(180deg)}
.sa-faq p{padding:0 16px 16px;color:var(--sa-text2);font-size:13.5px;line-height:1.7}
.sa-profile-head{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.sa-profile-head h3{font-size:19px}
.sa-profile-head p{color:var(--sa-text3);margin:2px 0 8px}
.sa-profile-head+.sa-info{margin-bottom:18px}

/* ---------- toasts ---------- */
.sa-toasts{position:fixed;top:16px;right:16px;z-index:200;display:grid;gap:10px;pointer-events:none}
.sa-toast{pointer-events:auto;min-width:260px;max-width:380px;padding:13px 16px;border-radius:12px;background:var(--sa-surface);border:1px solid var(--sa-border);border-left:4px solid var(--sa-green);box-shadow:var(--sa-shadow-lg);font-size:13.5px;font-weight:500;animation:sa-in .25s ease}
.sa-toast-error{border-left-color:var(--sa-red)}
.sa-toast-info{border-left-color:var(--sa-accent)}
.sa-content>.sa-toast{margin-bottom:16px;max-width:none}

/* ---------- auth / login ---------- */
.sa-login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);background:var(--sa-bg)}
.sa-login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:40px 56px;color:#fff;background:radial-gradient(700px 400px at 90% 0,rgba(255,255,255,.2),transparent 60%),radial-gradient(500px 400px at 0 100%,rgba(245,166,35,.25),transparent 60%),linear-gradient(145deg,var(--sa-accent),var(--sa-accent-dark) 70%)}
.sa-login-visual .sa-brand{padding:0}
.sa-login-visual .sa-brand-mark{background:rgba(255,255,255,.18);box-shadow:none}
.sa-login-visual .sa-brand-text em{color:#ffcf6b}
.sa-login-copy{max-width:520px}
.sa-kicker{display:inline-block;padding:5px 12px;border-radius:99px;background:rgba(255,255,255,.16);font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.sa-login-copy h2{font-size:40px;line-height:1.1;margin:18px 0 14px;font-weight:700;color:#fff}
.sa-login-copy p{color:rgba(255,255,255,.85);font-size:16px;line-height:1.6}
.sa-login-copy ul{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}
.sa-login-copy li{display:flex;gap:10px;align-items:center;font-weight:500}
.sa-login-foot{color:rgba(255,255,255,.6)}
.sa-login-panel{display:grid;place-items:center;padding:32px 20px}
.sa-login-card{width:100%;max-width:430px;display:grid;gap:16px}
.sa-login-card h1{font-size:32px;font-weight:700}
.sa-alert{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;font-size:13px;font-weight:500}
.sa-alert-error{background:var(--sa-red-soft);color:var(--sa-red)}
.sa-alert-info{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-demo{border:1px dashed var(--sa-border2);border-radius:14px;padding:14px;display:grid;gap:8px;background:var(--sa-surface)}
.sa-demo-head{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px}
.sa-demo-head>span{display:inline-flex;gap:8px;align-items:center;color:var(--sa-accent)}
.sa-demo-row{display:flex;justify-content:space-between;gap:12px;font-size:12.5px;color:var(--sa-text3);align-items:center}
.sa-demo-row code{background:var(--sa-surface3);color:var(--sa-text);padding:3px 8px;border-radius:7px;font-size:12.5px;word-break:break-all}
.sa-switch{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--sa-text3);padding-top:6px;flex-wrap:wrap;gap:8px}
.sa-switch div{display:flex;gap:6px}
.sa-switch a{padding:5px 11px;border-radius:99px;border:1px solid var(--sa-border);color:var(--sa-text2);font-weight:600;text-decoration:none}
.sa-switch a:hover{border-color:var(--sa-accent);color:var(--sa-accent)}
.sa-switch a.is-current{background:var(--sa-accent-soft);border-color:transparent;color:var(--sa-accent)}
.sa-auth-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--sa-bg)}
.sa-auth-card{max-width:440px;text-align:center;display:grid;justify-items:center;gap:12px;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:20px;padding:36px;box-shadow:var(--sa-shadow);color:var(--sa-text)}
.sa-auth-card>.sa-i{color:var(--sa-accent)}
.sa-auth-card p{color:var(--sa-text2)}
.sa-auth-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:8px}

/* ==========================================================================
   responsive
   ========================================================================== */
@media (max-width:1180px){
  .sa-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sa-grid-2-1{grid-template-columns:1fr}
}
@media (max-width:900px){
  .sa-side{transform:translateX(-100%);box-shadow:var(--sa-shadow-lg)}
  .sa-app.nav-open .sa-side{transform:none}
  .sa-app.nav-open .sa-scrim{display:block}
  .sa-side .sa-side-close{display:inline-grid}
  .sa-main{margin-left:0}
  .sa-burger{display:inline-grid}
  .sa-top{padding:12px 16px}
  .sa-content{padding:18px 16px 48px}
  .sa-crumb h1{font-size:19px}
  .sa-cta span{display:none}
  .sa-grid-2{grid-template-columns:1fr}
  .sa-hero{flex-direction:column;align-items:flex-start;padding:24px}
  .sa-hero h2{font-size:22px}
  .sa-login{grid-template-columns:1fr}
  .sa-login-visual{padding:28px 24px}
  .sa-login-copy h2{font-size:28px}
  .sa-login-copy ul,.sa-login-foot{display:none}
  .sa-msg{grid-template-columns:1fr;height:calc(100vh - 150px)}
  .sa-msg .sa-thread{display:none}
  .sa-msg.has-thread .sa-msg-list{display:none}
  .sa-msg.has-thread .sa-thread.is-open{display:flex}
  .sa-thread-back{display:inline-grid}
  .sa-thread-empty{display:none}
}
@media (max-width:720px){
  .sa-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .sa-stat{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}
  .sa-stat-value{font-size:21px}
  .sa-row,.sa-row-3,.sa-split{grid-template-columns:1fr}
  .sa-order{flex-direction:column;align-items:stretch}
  .sa-order-actions{justify-content:stretch}.sa-order-actions .sa-btn{flex:1}
  .sa-pipe{grid-template-columns:96px 1fr 24px}
  .sa-toolbar{align-items:stretch}.sa-toolbar>*{width:100%}.sa-search{min-width:0}
  .sa-bid{flex-wrap:wrap}.sa-bid-side{justify-items:start;width:100%;grid-auto-flow:column;justify-content:space-between;align-items:center}
  .sa-bars{gap:6px}
  /* tables become stacked cards */
  .sa-table thead{display:none}
  .sa-table,.sa-table tbody,.sa-table tr,.sa-table td{display:block;width:100%}
  .sa-table tr{padding:12px 14px;border-bottom:1px solid var(--sa-border)}
  .sa-table td{border:0!important;padding:5px 0;display:flex;justify-content:space-between;gap:14px;text-align:right}
  .sa-table td::before{content:attr(data-label);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--sa-text3);text-align:left;flex-shrink:0}
  .sa-table td:first-child{display:block;text-align:left}.sa-table td:first-child::before{display:none}
  .sa-table td.sa-actions-cell{justify-content:flex-end}.sa-table td.sa-actions-cell::before{display:none}
  .sa-table tbody tr:hover td{background:transparent}
  .sa-login-card h1{font-size:26px}
  .sa-dialog-body{padding:16px}
}
@media (prefers-reduced-motion:reduce){.sa-app *,.sa-dialog{animation:none!important;transition:none!important}}
@media print{.sa-side,.sa-top,.sa-toasts{display:none}.sa-main{margin:0}}

/* ===== order pages, pay-now, edit/delete, admin assignment ===== */
.sa-page{max-width:980px}
.sa-back{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:var(--sa-text2);margin:0 0 14px;padding:6px 10px 6px 6px;border-radius:9px}
.sa-back:hover{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 16px;flex-wrap:wrap}
.sa-page-head h2{margin:0;font-family:Outfit,Inter,system-ui,sans-serif;font-size:24px;line-height:1.25;letter-spacing:-.01em}
.sa-page-body{padding:26px}
.sa-page-body h4{margin:26px 0 10px;font-size:14px}
.sa-page-body>h4:first-child{margin-top:0}
.sa-tone-pill-warn{display:inline-flex;align-items:center;gap:6px;background:var(--sa-gold-soft,#fff5df);color:#b7791f;padding:4px 10px;border-radius:99px;font-weight:700;font-size:12px}
.sa-btn-danger{background:transparent;border:1px solid #f3b8b8;color:#d64545}
.sa-btn-danger:hover{background:#d64545;border-color:#d64545;color:#fff}
.sa-manage{display:grid;gap:14px;margin-top:26px;padding-top:22px;border-top:1px solid var(--sa-border)}
.sa-manage-card,.sa-danger-zone,.sa-assign{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:18px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-manage-card h4,.sa-assign h4{margin:0 0 6px;display:flex;align-items:center;gap:8px}
.sa-manage-card p,.sa-danger-zone p,.sa-assign p{margin:4px 0 0;max-width:560px;font-size:13px}
.sa-danger-zone{border-color:#f3c9c9;background:transparent}
.sa-assign{flex-direction:column;align-items:stretch;margin:18px 0;border-color:var(--sa-accent-mid);background:var(--sa-accent-soft)}
.sa-assign-form{display:grid;gap:12px;max-width:520px}
.sa-collapse{border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface)}
.sa-collapse>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:14px 18px;font-weight:700;font-size:14px}
.sa-collapse>summary::-webkit-details-marker{display:none}
.sa-collapse[open]>summary{border-bottom:1px solid var(--sa-border)}
.sa-collapse>form{padding:18px;display:grid;gap:14px}
.sa-mode{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sa-mode-opt{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1.5px solid var(--sa-border);border-radius:14px;cursor:pointer;background:var(--sa-surface)}
.sa-mode-opt input{margin-top:3px;accent-color:var(--sa-accent)}
.sa-mode-opt strong{display:block;font-size:14px}
.sa-mode-opt small{display:block;margin-top:4px;color:var(--sa-text3);font-size:12.5px;line-height:1.45}
.sa-mode-opt.is-selected{border-color:var(--sa-accent);background:var(--sa-accent-soft)}
@media (max-width:720px){.sa-mode{grid-template-columns:1fr}.sa-page-body{padding:18px}.sa-page-head h2{font-size:20px}}

/* ===== wallet top-up / payment methods ===== */
.sa-amounts{display:flex;gap:8px;flex-wrap:wrap;margin-top:-4px}
.sa-amounts button{border:1px solid var(--sa-border2);background:var(--sa-surface);color:var(--sa-text);border-radius:99px;padding:6px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.sa-amounts button:hover,.sa-amounts button.is-active{border-color:var(--sa-accent);background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-methods{display:grid;gap:10px}
.sa-method-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--sa-accent-soft);color:var(--sa-accent);flex:none}
.sa-methods .sa-mode-opt{align-items:center}
.sa-gw-status{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 4px}
.sa-secret-hint{color:var(--sa-text3);font-size:12px}
.sa-check{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;cursor:pointer}
.sa-check input{width:18px;height:18px;accent-color:var(--sa-accent)}
.sa-mt{margin-top:16px}
.sa-order-status-section{margin:12px 0 18px;padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface)}
.sa-order-status-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:13px;font-weight:700;color:var(--sa-text)}
.sa-order-status-heading .sa-status{font-size:11px}
.sa-order-dispute-status{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 12px;border-radius:11px;border:1px solid var(--sa-border);background:var(--sa-surface2)}
.sa-order-dispute-status.is-open{border-color:color-mix(in srgb,var(--sa-orange) 28%,var(--sa-border));background:color-mix(in srgb,var(--sa-orange) 6%,var(--sa-surface))}
.sa-order-dispute-status.is-auto,.sa-order-dispute-status.is-resolved{border-color:color-mix(in srgb,var(--sa-green) 24%,var(--sa-border));background:color-mix(in srgb,var(--sa-green) 5%,var(--sa-surface))}
.sa-order-dispute-icon{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:8px;color:var(--sa-orange);background:color-mix(in srgb,var(--sa-orange) 10%,transparent)}
.sa-order-dispute-status.is-auto .sa-order-dispute-icon,.sa-order-dispute-status.is-resolved .sa-order-dispute-icon{color:var(--sa-green);background:color-mix(in srgb,var(--sa-green) 10%,transparent)}
.sa-order-dispute-copy{display:grid;gap:2px;min-width:0;font-size:12px;line-height:1.45;color:var(--sa-text3)}
.sa-order-dispute-copy strong{font-size:12.5px;color:var(--sa-text)}
.sa-order-dispute-copy span{display:block}
.sa-dispute-penalty{font-weight:650}
.sa-order-main>.sa-order-dispute-status{margin-top:8px}
@media(max-width:700px){.sa-order-status-section{padding:12px}.sa-order-status-heading{margin-bottom:8px}}
.sa-steps-list{padding-left:20px;display:grid;gap:8px;list-style:decimal}
/* radio inside a method card must not inherit the text-field styles */
.sa-field .sa-mode-opt input[type=radio],.sa-mode-opt input[type=radio]{width:18px;height:18px;padding:0;flex:none;margin:0}
.sa-methods .sa-mode-opt>span:last-child{min-width:0}
.sa-table td[data-label="Date"]{white-space:nowrap}
.sa-actions-cell{white-space:nowrap}
.sa-steps-list li{display:list-item;list-style:decimal;padding-left:4px}

/* ===== writer/student panel, edit bar ===== */
.sa-partner{display:flex;align-items:center;gap:14px;padding:14px 16px;margin:16px 0 4px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-partner>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}
.sa-partner small{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--sa-text3);font-weight:700}
.sa-partner strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-partner .sa-btn{flex:none}
.sa-partner.is-empty{border-style:dashed}
.sa-partner-ico{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--sa-gold-soft);color:var(--sa-gold);flex:none}
.sa-who small{color:var(--sa-text3);font-weight:600;margin-right:2px}
.sa-editbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:22px 0 0;padding-top:18px;border-top:1px solid var(--sa-border)}
.sa-editbar form{margin:0}
.sa-edit-panel{margin-top:16px;padding:18px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface)}
.sa-edit-panel[hidden]{display:none}
.sa-edit-panel form{display:grid;gap:14px}
.sa-form-actions{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:560px){.sa-partner{flex-wrap:wrap}.sa-partner .sa-btn{width:100%;justify-content:center}.sa-editbar .sa-btn,.sa-editbar form{flex:1 1 140px}.sa-editbar form .sa-btn{width:100%;justify-content:center}}

/* ===== responsive polish ===== */
@media (max-width:900px){
  .sa-wallet>.sa-col:last-child{order:-1}            /* balance + Add funds first on tablets/phones */
}
@media (max-width:720px){
  .sa-ledger tr{display:grid !important;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:12px 14px}
  .sa-ledger td{display:block !important;padding:0 !important;border:0 !important;min-width:0}
  .sa-ledger td::before{display:none !important}
  .sa-ledger td[data-label="Description"]{grid-column:1;grid-row:1;font-weight:600;overflow:hidden;text-overflow:ellipsis}
  .sa-ledger td[data-label="Amount"]{grid-column:2;grid-row:1;text-align:right}
  .sa-ledger td[data-label="Date"]{grid-column:1;grid-row:2;color:var(--sa-text3);font-size:12px}
  .sa-ledger td[data-label="Type"]{grid-column:2;grid-row:2;text-align:right}
}

@media (max-width:720px){
  .sa-paytable tr,.sa-payhist tr{display:grid !important;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 14px}
  .sa-paytable td,.sa-payhist td{display:block !important;padding:0 !important;border:0 !important;min-width:0}
  .sa-paytable td::before,.sa-payhist td::before{display:none !important}
  .sa-paytable td:nth-child(1){display:none !important}
  .sa-paytable td[data-label="Student"]{grid-column:1;grid-row:1;font-weight:600}
  .sa-paytable td[data-label="Amount"]{grid-column:2;grid-row:1;text-align:right;font-weight:700}
  .sa-paytable td[data-label="Date"]{grid-column:1;grid-row:2;color:var(--sa-text3);font-size:12px}
  .sa-paytable td[data-label="Status"]{grid-column:2;grid-row:2;text-align:right}
  .sa-paytable td[data-label="Method"]{grid-column:1/-1;grid-row:3;color:var(--sa-text3);font-size:12px}
  .sa-paytable td[data-label="Details"]{grid-column:1/-1;grid-row:4;text-align:left}
  .sa-paytable td.sa-actions-cell{grid-column:1/-1;grid-row:5;text-align:right}
  .sa-payhist td[data-label="Date"]{grid-column:1;grid-row:1;font-weight:600;white-space:normal}
  .sa-payhist td[data-label="Amount"]{grid-column:2;grid-row:1;text-align:right;font-weight:700}
  .sa-payhist td[data-label="Method"]{grid-column:1/-1;grid-row:3;color:var(--sa-text3);font-size:12px}
  .sa-payhist td[data-label="Status"]{grid-column:1;grid-row:2}
  .sa-payhist td.sa-actions-cell{grid-column:2;grid-row:2;text-align:right}
}
@media (max-width:720px){
  .sa-ledger td[data-label="Description"],.sa-ledger td[data-label="Date"],.sa-payhist td[data-label="Date"],.sa-payhist td[data-label="Status"],.sa-paytable td[data-label="Student"],.sa-paytable td[data-label="Date"],.sa-paytable td[data-label="Status"]{text-align:left !important}
  .sa-ledger td[data-label="Amount"],.sa-ledger td[data-label="Type"],.sa-payhist td[data-label="Amount"],.sa-paytable td[data-label="Amount"]{text-align:right !important}
}
@media (max-width:720px){.sa-paytable td[data-label="Method"],.sa-payhist td[data-label="Method"],.sa-paytable td[data-label="Details"]{text-align:left !important}}

/* ==========================================================================
   DESIGN v2 — clean, calm, modern (loaded last so it refines everything above)
   One font (Inter), hairline borders, soft shadows, generous spacing.
   ========================================================================== */
.sa-app,.sa-login{--sa-ring:0 0 0 3px color-mix(in srgb,var(--sa-accent) 24%,transparent);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased}
.sa-app ::selection{background:color-mix(in srgb,var(--sa-accent) 22%,transparent)}
.sa-app :focus{outline:none}
.sa-app :focus-visible{box-shadow:var(--sa-ring);border-radius:10px}
.sa-stat-value,.sa-price,.sa-num,.sa-balance strong,.sa-progress-cap,.sa-table td{font-variant-numeric:tabular-nums}
.sa-app h1,.sa-app h2,.sa-app h3,.sa-app h4{letter-spacing:-.018em}

/* ----- shell ----- */
.sa-side{width:var(--sa-side);box-shadow:none}
.sa-brand{padding:20px 18px 14px}
.sa-brand-mark{width:34px;height:34px;border-radius:10px;background:var(--sa-accent);box-shadow:0 1px 2px rgba(16,24,40,.18),inset 0 1px 0 rgba(255,255,255,.22)}
.sa-brand-text{font-weight:800;font-size:18px;letter-spacing:-.03em}
.sa-nav{padding:6px 12px}
.sa-nav-label{padding:16px 10px 6px;font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--sa-text3)}
.sa-nav-item{height:40px;padding:0 11px;gap:12px;margin-bottom:2px;border-radius:10px;font-size:14px;font-weight:500;color:var(--sa-text2)!important;transition:background .15s,color .15s}
.sa-nav-item .sa-i{color:var(--sa-text3);transition:color .15s}
.sa-nav-item:hover{background:var(--sa-surface3);color:var(--sa-text)!important}
.sa-nav-item:hover .sa-i{color:var(--sa-text2)}
.sa-nav-item.is-active{background:var(--sa-accent-soft);color:var(--sa-accent)!important;font-weight:600}
.sa-nav-item.is-active .sa-i{color:var(--sa-accent)}
.sa-nav-item.is-active::before{display:none}
.sa-nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:99px;font-size:11px;font-weight:700;display:inline-grid;place-items:center;background:var(--sa-accent);color:#fff}
.sa-side-foot{padding:10px 12px 14px;border-top:1px solid var(--sa-border)}
.sa-usercard{padding:8px 10px;border-radius:12px}
.sa-logout{height:38px;border-radius:10px;color:var(--sa-text3);font-size:13.5px;font-weight:500}
.sa-logout:hover{background:var(--sa-surface3);color:var(--sa-text)}

.sa-top{padding:14px 32px;border-bottom:1px solid var(--sa-border);background:color-mix(in srgb,var(--sa-bg) 78%,transparent);backdrop-filter:saturate(1.6) blur(16px);-webkit-backdrop-filter:saturate(1.6) blur(16px)}
.sa-crumb .sa-eyebrow{font-size:11px;font-weight:600;letter-spacing:.09em;color:var(--sa-text3)}
.sa-crumb h1{font-size:22px;font-weight:700;letter-spacing:-.025em}
.sa-top-actions{gap:8px}
.sa-icon-btn{width:38px;height:38px;border-radius:10px;background:var(--sa-surface);border:1px solid var(--sa-border);color:var(--sa-text2);transition:background .15s,border-color .15s,color .15s}
.sa-icon-btn:hover{background:var(--sa-surface3);color:var(--sa-text);border-color:var(--sa-border2)}
.sa-chip-link{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px;border-radius:99px;background:var(--sa-surface);border:1px solid var(--sa-border);font-weight:650;font-size:13.5px;color:var(--sa-text)!important;font-variant-numeric:tabular-nums;transition:border-color .15s,background .15s}
.sa-chip-link .sa-i{color:var(--sa-accent)}
.sa-chip-link:hover{border-color:var(--sa-accent-mid);background:var(--sa-accent-soft)}
.sa-content{padding:28px 32px 72px}
.sa-view.is-active{animation:sa-in .24s cubic-bezier(.2,.7,.2,1) both}
@keyframes sa-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sa-view.is-active{animation:none}.sa-app *{transition:none!important}}

/* ----- surfaces ----- */
.sa-card{padding:22px 24px;border-radius:var(--sa-radius);border:1px solid var(--sa-border);box-shadow:var(--sa-shadow)}
.sa-card-head{margin-bottom:16px}
.sa-card-head h3{font-size:15px;font-weight:650;letter-spacing:-.015em}
.sa-card-head p{font-size:12.5px;color:var(--sa-text3);margin-top:2px}
.sa-count{background:var(--sa-surface3);border:0;color:var(--sa-text2);font-weight:650}

/* ----- buttons ----- */
.sa-btn{height:38px;padding:0 15px;border-radius:10px;font-size:13.5px;font-weight:600;gap:8px;border:1px solid var(--sa-border2);background:var(--sa-surface);color:var(--sa-text)!important;box-shadow:0 1px 1px rgba(16,24,40,.03);transition:background .15s,border-color .15s,box-shadow .15s,transform .05s}
.sa-btn:hover{background:var(--sa-surface2);border-color:color-mix(in srgb,var(--sa-text3) 45%,var(--sa-border2))}
.sa-btn:active{transform:translateY(1px)}
.sa-btn-primary{background:var(--sa-accent);border-color:var(--sa-accent);color:#fff!important;box-shadow:0 1px 2px rgba(16,24,40,.14),inset 0 1px 0 rgba(255,255,255,.16)}
.sa-btn-primary:hover{background:var(--sa-accent-dark);border-color:var(--sa-accent-dark);filter:none}
.sa-btn-soft{background:var(--sa-accent-soft);border-color:transparent;color:var(--sa-accent)!important;box-shadow:none}
.sa-btn-soft:hover{background:color-mix(in srgb,var(--sa-accent) 16%,var(--sa-surface))}
.sa-btn-ghost{background:transparent;border-color:transparent;box-shadow:none;color:var(--sa-text2)!important}
.sa-btn-ghost:hover{background:var(--sa-surface3);border-color:transparent;color:var(--sa-text)!important}
.sa-btn-danger{background:transparent;border-color:color-mix(in srgb,var(--sa-red) 35%,transparent);color:var(--sa-red)!important;box-shadow:none}
.sa-btn-danger:hover{background:var(--sa-red);border-color:var(--sa-red);color:#fff!important}
.sa-btn-sm{height:32px;padding:0 12px;font-size:12.5px;border-radius:9px}
.sa-btn-lg{height:44px;padding:0 20px;font-size:14.5px;border-radius:12px}
.sa-btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}

/* ----- overview hero + stats ----- */
.sa-hero{padding:28px 32px;border-radius:20px;color:var(--sa-text);border:1px solid var(--sa-border);box-shadow:var(--sa-shadow);
  background:radial-gradient(520px 220px at 100% 0,color-mix(in srgb,var(--sa-accent) 13%,transparent),transparent 70%),radial-gradient(420px 200px at 0 100%,color-mix(in srgb,var(--sa-green) 9%,transparent),transparent 70%),var(--sa-surface)}
.sa-hero h2{color:var(--sa-text);font-size:28px;font-weight:750;letter-spacing:-.03em;margin:6px 0 8px}
.sa-hero p{color:var(--sa-text2);font-size:14.5px}
.sa-hero-kicker{color:var(--sa-text3);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:none}
.sa-stats{gap:16px}
.sa-stat{flex-direction:row-reverse;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px;border-radius:var(--sa-radius);transition:box-shadow .2s,border-color .2s}
.sa-stat:hover{box-shadow:var(--sa-shadow-md)}
.sa-stat-ico{width:36px;height:36px;border-radius:10px}
.sa-stat-body{gap:2px;flex:1}
.sa-stat-label{font-size:12.5px;font-weight:550;color:var(--sa-text3)}
.sa-stat-value{font-size:28px;font-weight:750;letter-spacing:-.035em;line-height:1.15;margin-top:2px}
.sa-stat-sub{font-size:12px;margin-top:2px}

/* ----- tabs = segmented control ----- */
.sa-tabs{gap:2px;padding:4px;background:var(--sa-surface3);border:0;border-radius:12px}
.sa-tabs button{height:32px;padding:0 12px;border-radius:9px;font-size:13px;font-weight:600;color:var(--sa-text2);transition:background .15s,color .15s,box-shadow .15s}
.sa-tabs button b{background:transparent;color:var(--sa-text3);padding:0;font-weight:600;font-size:12px}
.sa-tabs button:hover{background:color-mix(in srgb,var(--sa-surface) 60%,transparent)}
.sa-tabs button.is-active{background:var(--sa-surface);color:var(--sa-text);box-shadow:0 1px 2px rgba(16,24,40,.10),0 0 0 1px var(--sa-border)}
.sa-tabs button.is-active b{background:transparent;color:var(--sa-accent)}

/* ----- status + labels ----- */
.sa-status,.sa-pill{padding:3px 10px;font-size:12px;font-weight:650}
.sa-chip{border-radius:8px;padding:3px 9px;font-weight:550}

/* ----- order cards (list) ----- */
.sa-order{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:28px;padding:20px 22px;border-radius:var(--sa-radius);transition:border-color .18s,box-shadow .18s,transform .18s}
.sa-order:hover{border-color:color-mix(in srgb,var(--sa-accent) 30%,var(--sa-border));box-shadow:var(--sa-shadow-md);transform:translateY(-1px)}
.sa-order-main{gap:9px}
.sa-order-head{gap:10px}
.sa-order-head h3{font-size:15.5px;font-weight:650;letter-spacing:-.015em}
.sa-order-id{font-size:12px;font-weight:600;color:var(--sa-text3);background:var(--sa-surface3);padding:2px 7px;border-radius:6px}
.sa-subline{color:var(--sa-text3);font-size:12.75px;line-height:1.4}
.sa-order-meta{gap:8px 22px;font-size:13px;margin-top:2px}
.sa-order-meta .sa-price{font-weight:650;color:var(--sa-text)}
.sa-order-meta .sa-price .sa-i{color:var(--sa-text3)}
.sa-order-actions{flex-direction:column;align-items:stretch;gap:8px;width:220px}
.sa-order-actions .sa-btn{width:100%}
.sa-progress{display:flex;align-items:center;gap:12px;margin-top:4px}
.sa-progress-cap{font-size:12px;font-weight:600;color:var(--sa-text3);white-space:nowrap}
.sa-steps-compact{flex:1;gap:4px;margin:0}
.sa-steps-compact li{gap:0}
.sa-steps-compact li span{display:none}
.sa-steps-compact li i{height:5px;margin:0;border-radius:5px}
.sa-who small{color:var(--sa-text3);font-weight:550}

/* ----- order / job pages ----- */
.sa-page{max-width:1000px}
.sa-back{font-size:13px;font-weight:600;color:var(--sa-text2);padding:6px 10px 6px 6px;border-radius:10px}
.sa-back:hover{background:var(--sa-surface3);color:var(--sa-text)}
.sa-page-head h2{font-size:26px;font-weight:750;letter-spacing:-.03em}
.sa-page-body{padding:28px 30px;border-radius:20px}
.sa-page-body h4{font-size:13px;font-weight:650;letter-spacing:.02em;text-transform:none;color:var(--sa-text);margin:28px 0 12px}
.sa-info{gap:0;background:var(--sa-border);border:1px solid var(--sa-border);border-radius:14px;overflow:hidden;margin-top:16px}
.sa-info>div{background:var(--sa-surface);border:0;border-radius:0;padding:14px 16px;margin:0 0 0 0}
.sa-info{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px}
.sa-info dt{font-size:11px;font-weight:600;letter-spacing:.07em}
.sa-info dd{font-size:14px;font-weight:600;margin-top:3px}
.sa-partner{border-radius:14px;background:var(--sa-surface2);margin:18px 0 0}
.sa-bid{border-radius:14px;border:1px solid var(--sa-border);background:var(--sa-surface);transition:border-color .15s,box-shadow .15s}
.sa-bid:hover{border-color:var(--sa-accent-mid);box-shadow:var(--sa-shadow)}
.sa-editbar{border-top:1px solid var(--sa-border)}
.sa-callout{border-radius:12px}

/* ----- forms ----- */
.sa-field{gap:7px;font-size:13px;font-weight:600;color:var(--sa-text)}
.sa-field em{font-weight:500}
.sa-field small{font-size:12px;font-weight:450}
.sa-field input:not([type=checkbox]):not([type=radio]):not([type=file]),.sa-field select,.sa-select,.sa-search input{height:42px;padding:0 13px;border-radius:10px;background:var(--sa-surface);border:1px solid var(--sa-border2);font-size:14px;font-weight:450;color:var(--sa-text);box-shadow:0 1px 1px rgba(16,24,40,.03);transition:border-color .15s,box-shadow .15s}
.sa-field textarea,.sa-composer textarea{padding:11px 13px;border-radius:10px;background:var(--sa-surface);border:1px solid var(--sa-border2);font-size:14px;line-height:1.5;box-shadow:0 1px 1px rgba(16,24,40,.03)}
.sa-field input::placeholder,.sa-field textarea::placeholder,.sa-search input::placeholder{color:color-mix(in srgb,var(--sa-text3) 80%,transparent)}
.sa-field input:hover,.sa-field select:hover,.sa-field textarea:hover{border-color:color-mix(in srgb,var(--sa-text3) 50%,var(--sa-border2))}
.sa-field input:focus,.sa-field select:focus,.sa-field textarea:focus,.sa-select:focus,.sa-search input:focus,.sa-composer textarea:focus{border-color:var(--sa-accent);box-shadow:var(--sa-ring)}
.sa-field select,.sa-select{appearance:none;-webkit-appearance:none;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238790a4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.sa-field input[type=file]{height:auto;padding:7px;background:var(--sa-surface2);border:1px dashed var(--sa-border2);color:var(--sa-text2);font-size:13px}
.sa-field input[type=file]::file-selector-button{margin-right:12px;height:30px;padding:0 12px;border:1px solid var(--sa-border2);border-radius:8px;background:var(--sa-surface);color:var(--sa-text);font:600 12.5px var(--sa-font);cursor:pointer}
.sa-field input[type=file]::file-selector-button:hover{background:var(--sa-surface3)}
.sa-field input[type=number]{font-variant-numeric:tabular-nums}
.sa-mode-opt{border-radius:14px}

/* ----- tables ----- */
.sa-table th{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sa-text3);background:transparent;padding:12px 16px;border-bottom:1px solid var(--sa-border)}
.sa-table td{padding:14px 16px;border-bottom:1px solid var(--sa-border);font-size:13.5px}
.sa-table tbody tr:last-child td{border-bottom:0}
.sa-table tbody tr:hover td{background:var(--sa-surface2)}

/* ----- wallet ----- */
.sa-balance{color:#fff;border:0;background:radial-gradient(420px 200px at 100% 0,rgba(255,255,255,.22),transparent 60%),linear-gradient(135deg,var(--sa-accent),color-mix(in srgb,var(--sa-accent-dark) 78%,#1b2470));box-shadow:0 14px 34px -14px color-mix(in srgb,var(--sa-accent) 70%,transparent)}
.sa-balance .sa-eyebrow{color:rgba(255,255,255,.78)}
.sa-balance strong{color:#fff;font-size:40px;font-weight:750;letter-spacing:-.04em}
.sa-balance p{color:rgba(255,255,255,.78)}
.sa-amounts button{height:34px;padding:0 15px;font-weight:650}

/* ----- messages, toasts, dialogs ----- */
.sa-msg{border-radius:var(--sa-radius);box-shadow:var(--sa-shadow)}
.sa-toast{border-radius:12px;box-shadow:var(--sa-shadow-md);font-weight:550}
.sa-dialog-card{border-radius:20px}

/* ----- small screens ----- */
@media (max-width:900px){
  .sa-content{padding:20px 16px 72px}
  .sa-top{padding:12px 16px}
  .sa-order{grid-template-columns:1fr;gap:16px}
  .sa-order-actions{flex-direction:row;width:auto}
  .sa-order-actions .sa-btn{width:auto;flex:1}
  .sa-hero{padding:22px 20px}
  .sa-hero h2{font-size:23px}
  .sa-page-body{padding:20px 18px}
  .sa-chip-link span{display:none}
  .sa-chip-link{padding:0 11px}
}
@media (max-width:560px){
  .sa-chip-link{display:none}
  .sa-stat-value{font-size:24px}
  .sa-balance strong{font-size:34px}
}

/* ----- v2 refinements after review ----- */
.sa-search input{padding-left:38px}
.sa-hero p{max-width:560px;text-wrap:balance}
/* order card actions: side by side instead of stacked */
.sa-order{grid-template-columns:minmax(0,1fr) 262px}
.sa-order-actions{flex-direction:row;width:262px;gap:8px}
.sa-order-actions .sa-btn{flex:1 1 0;padding:0 10px;white-space:nowrap}
.sa-order-actions .sa-btn:first-child:not(:last-child){flex:1.35 1 0}
@media (max-width:900px){.sa-order{grid-template-columns:1fr}.sa-order-actions{width:auto}}
/* fact grid: individual tiles, no filled empty cells */
.sa-info{gap:10px;background:transparent;border:0;border-radius:0;overflow:visible;margin-top:18px}
.sa-info>div{background:var(--sa-surface2);border:1px solid var(--sa-border);border-radius:12px;padding:12px 14px}
/* the status already sits in the page header */
.sa-page-body .sa-dialog-status .sa-status{display:none}
.sa-page-body .sa-dialog-status{margin-bottom:6px;color:var(--sa-text3);font-size:12.5px}
@media (max-width:720px){
  .sa-info{grid-template-columns:1fr 1fr;gap:8px}
  .sa-info>div{padding:10px 12px}
  .sa-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .sa-tabs::-webkit-scrollbar{display:none}
  .sa-tabs button{flex:none}
}

/* ===== admin: overview chips, toolbars, users, payouts, settings ===== */
.sa-toolbar{align-items:center}
.sa-toolbar-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.sa-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:900px){.sa-stats-3{grid-template-columns:1fr}}
.sa-attn-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.sa-attn-chip{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:99px;background:var(--sa-surface);border:1px solid var(--sa-border2);font-size:13px;font-weight:550;color:var(--sa-text)!important;box-shadow:0 1px 1px rgba(16,24,40,.03);transition:border-color .15s,background .15s}
.sa-attn-chip .sa-i{color:var(--sa-accent)}
.sa-attn-chip b{font-weight:750}
.sa-attn-chip:hover{border-color:var(--sa-accent-mid);background:var(--sa-accent-soft)}
.sa-pos{color:#12945a}.sa-neg{color:var(--sa-red)}
.sa-list-row.sa-static{cursor:default}.sa-list-row.sa-static:hover{background:transparent}
.sa-btn-danger-soft{color:var(--sa-red)!important}
.sa-btn-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sa-btn-row form{margin:0}
.sa-check-card{padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2);align-items:flex-start}
.sa-check-card small{display:block;font-weight:450;color:var(--sa-text3);margin-top:2px}
.sa-code-block{display:block;padding:12px 14px;border-radius:12px;background:var(--sa-surface3);color:var(--sa-text);font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;word-break:break-word}
.sa-add-method{margin-bottom:20px}
.sa-add-method>form{padding:18px;display:grid;gap:14px}

/* new-account credentials shown once */
.sa-cred{border:1px solid color-mix(in srgb,var(--sa-green) 40%,var(--sa-border));background:color-mix(in srgb,var(--sa-green) 7%,var(--sa-surface));border-radius:16px;padding:18px 20px;margin-bottom:20px}
.sa-cred-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}
.sa-cred-head .sa-i{color:var(--sa-green);margin-top:2px}
.sa-cred-head p{color:var(--sa-text2);font-size:13px;margin-top:2px}
.sa-cred dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:0 0 12px}
.sa-cred dt{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--sa-text3)}
.sa-cred dd{margin:2px 0 0}
.sa-cred code{display:inline-block;padding:6px 10px;border-radius:8px;background:var(--sa-surface);border:1px solid var(--sa-border);font:13.5px ui-monospace,SFMono-Regular,Menlo,monospace;user-select:all;word-break:break-all}

/* user page */
.sa-user-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.sa-user-head h3{font-size:20px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sa-user-head>div:nth-child(2){flex:1;min-width:180px}
.sa-user-pills{display:flex;gap:8px}
.sa-tools{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}
.sa-tool{border:1px solid var(--sa-border);border-radius:14px;padding:18px;background:var(--sa-surface2)}
.sa-tool h4{display:flex;align-items:center;gap:8px;margin:0 0 4px!important;font-size:14px}
.sa-tool .sa-form{margin-top:12px;gap:12px}
.sa-tool p{font-size:13px;margin:2px 0 12px}
@media (max-width:900px){.sa-tools{grid-template-columns:1fr}}
@media (max-width:720px){.sa-toolbar-actions{margin-left:0;width:100%}.sa-toolbar-actions .sa-btn{flex:1}}

/* admin polish */
.sa-tool .sa-inline-form{display:grid;gap:10px;justify-items:start}
.sa-tool .sa-inline-form p{margin:0}
.sa-form>.sa-card-head:not(:first-child){border-top:1px solid var(--sa-border);padding-top:22px;margin-top:8px}
.sa-form>.sa-card-head{margin-bottom:0}
@media (max-width:560px){
  .sa-stat{flex-direction:column;align-items:flex-start;gap:10px;padding:16px}
  .sa-stat-ico{width:32px;height:32px;border-radius:9px}
  .sa-stat-body{width:100%}
  .sa-stat-value{white-space:normal}
  .sa-stat-sub{white-space:normal;line-height:1.35}
}

/* ===== 1.5.1: compact overview hero, writer track record, reviews ===== */
/* Emoji images injected by WordPress / other plugins must never blow up to their natural size. */
.sa-app img.emoji,.sa-app img.wp-smiley,.sa-login img.emoji,.sa-hero img{display:inline!important;width:1em!important;height:1em!important;max-width:1em!important;margin:0 .07em!important;vertical-align:-.1em!important;border:0!important;box-shadow:none!important;background:none!important;padding:0!important}
.sa-hero{align-items:center;padding:22px 28px}
.sa-hero>div{min-width:0}
.sa-hero h2{font-size:26px;margin:4px 0 6px}
.sa-hero p{margin:0}

.sa-partner-rich{flex-wrap:wrap}
.sa-partner>.sa-wstats{flex:1 1 100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:4px;padding-top:14px;border-top:1px solid var(--sa-border)}
.sa-wstat{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:10px 12px;border-radius:12px;background:var(--sa-surface);border:1px solid var(--sa-border)}
.sa-wstat-ico{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex:none;background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-wstat.sa-tone-gold .sa-wstat-ico{background:var(--sa-gold-soft);color:var(--sa-gold)}
.sa-wstat.sa-tone-green .sa-wstat-ico{background:var(--sa-green-soft);color:var(--sa-green)}
.sa-wstat.sa-tone-blue .sa-wstat-ico{background:var(--sa-blue-soft);color:var(--sa-blue)}
.sa-wstat>div{display:grid;gap:1px;min-width:0}
.sa-wstat-label{font-size:11px;font-weight:600;color:var(--sa-text3);letter-spacing:.02em}
.sa-wstat strong{font-size:17px;font-weight:750;letter-spacing:-.02em;line-height:1.25;white-space:normal;overflow:visible;color:var(--sa-text)}
.sa-wstat em{font-style:normal;font-size:11.5px;color:var(--sa-text3);display:flex;align-items:center;min-height:14px}
.sa-partner .sa-wstat strong{font-size:17px;white-space:normal;overflow:visible}

.sa-stars{display:inline-flex;gap:1px;vertical-align:middle}
.sa-star{display:inline-grid;color:var(--sa-border2)}
.sa-star svg{fill:currentColor;stroke:none}
.sa-star.is-on{color:var(--sa-gold)}

.sa-bid-stats{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:4px;font-size:12px;color:var(--sa-text3)}
.sa-bid-stats .sa-ws-rate{display:inline-flex;align-items:center;gap:3px;font-weight:700;color:var(--sa-gold)}
.sa-bid-stats .sa-ws-rate svg{fill:currentColor;stroke:none}

.sa-review{display:grid;gap:6px;justify-items:start;padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-review p{margin:0;color:var(--sa-text2);font-size:13.5px}
.sa-review-form{padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-rate{position:relative;display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:2px}
.sa-rate input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.sa-rate label{cursor:pointer;color:var(--sa-border2);display:inline-grid;padding:2px;transition:color .12s,transform .12s}
.sa-rate label svg{fill:currentColor;stroke:none}
.sa-rate label:hover,.sa-rate label:hover~label,.sa-rate input:checked~label{color:var(--sa-gold)}
.sa-rate label:hover{transform:scale(1.08)}
.sa-rate input:focus-visible+label{outline:2px solid var(--sa-accent);outline-offset:2px;border-radius:6px}

@media (max-width:900px){.sa-partner>.sa-wstats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.sa-hero{flex-direction:column;align-items:flex-start;padding:20px}.sa-hero h2{font-size:22px}}
@media (max-width:420px){.sa-partner>.sa-wstats{grid-template-columns:1fr}}

/* ===== 1.5.2: live bids + sound toggle ===== */
.sa-sound .sa-snd-off{display:none}
.sa-sound.is-off .sa-snd-on{display:none}
.sa-sound.is-off .sa-snd-off{display:inline-grid}
.sa-sound.is-off{color:var(--sa-text3)}
.sa-bid.is-new{animation:sa-bid-in 1.8s ease both}
@keyframes sa-bid-in{0%{transform:translateY(-8px);opacity:0;box-shadow:0 0 0 0 var(--sa-accent-soft)}20%{transform:none;opacity:1;border-color:var(--sa-accent);box-shadow:0 0 0 6px var(--sa-accent-soft)}100%{border-color:var(--sa-border);box-shadow:none}}
@media (prefers-reduced-motion:reduce){.sa-bid.is-new{animation:none;border-color:var(--sa-accent)}}

/* ===== 1.5.3: pay & assign a writer confirmation ===== */
.sa-paydlg-intro{display:flex;gap:14px;align-items:flex-start}
.sa-paydlg-intro strong{font-size:15.5px;display:block;margin-bottom:4px}
.sa-paydlg-intro p{margin:0;color:var(--sa-text2);font-size:13.5px;line-height:1.55}
.sa-paydlg-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;flex:none;background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-paydlg-sum{margin:0;border:1px solid var(--sa-border);border-radius:14px;overflow:hidden;background:var(--sa-surface2)}
.sa-paydlg-sum>div{display:flex;justify-content:space-between;gap:12px;padding:11px 16px;border-top:1px solid var(--sa-border)}
.sa-paydlg-sum>div:first-child{border-top:0}
.sa-paydlg-sum dt{color:var(--sa-text2);font-size:13px}
.sa-paydlg-sum dd{margin:0;font-weight:700}
.sa-paydlg-sum .is-total{background:var(--sa-green-soft)}
.sa-paydlg-sum .is-total dd{color:var(--sa-green)}
.sa-paydlg-sum .is-short{background:var(--sa-orange-soft)}
.sa-paydlg-sum .is-short dd{color:var(--sa-orange)}
.sa-paydlg-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:0}
.sa-callout-warn{background:var(--sa-orange-soft);color:var(--sa-orange)}
.sa-pay-banner{align-items:center;justify-content:space-between;margin-bottom:16px}
.sa-pay-banner>div{flex:1;min-width:0}
.sa-pay-banner p{margin:2px 0 0;color:var(--sa-text2);font-size:13px}
@media (max-width:560px){.sa-paydlg-actions .sa-btn{flex:1 1 100%;justify-content:center}.sa-pay-banner{flex-direction:column;align-items:flex-start}}

/* ===== 1.5.5: rich text editor for instructions ===== */
.sa-rte{position:relative;border:1px solid var(--sa-border2);border-radius:var(--sa-radius-sm);background:var(--sa-surface2);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.sa-rte:focus-within{border-color:var(--sa-accent);box-shadow:0 0 0 3px var(--sa-accent-soft);background:var(--sa-surface)}
.sa-rte.is-invalid{border-color:var(--sa-red);box-shadow:0 0 0 3px var(--sa-red-soft)}
.sa-rte-bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--sa-border);background:var(--sa-surface)}
.sa-rte-btn{display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 6px;border:0;border-radius:8px;background:transparent;color:var(--sa-text2);font:inherit;font-size:13.5px;cursor:pointer;transition:background .12s,color .12s}
.sa-rte-btn:hover{background:var(--sa-surface3);color:var(--sa-text)}
.sa-rte-btn.is-on{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-rte-btn:focus-visible{outline:2px solid var(--sa-accent);outline-offset:1px}
.sa-rte-sep{width:1px;height:20px;background:var(--sa-border);margin:0 6px}
.sa-rte-area{min-height:220px;max-height:560px;overflow-y:auto;resize:vertical;padding:14px 16px;outline:none;font-size:14px;line-height:1.65;color:var(--sa-text);word-break:break-word}
.sa-rte-area:empty::before{content:attr(data-placeholder);color:var(--sa-text3);pointer-events:none}
.sa-rte-area>*:first-child{margin-top:0}
.sa-rte-foot{display:flex;justify-content:space-between;gap:12px;padding:6px 14px;border-top:1px solid var(--sa-border);font-size:11.5px;color:var(--sa-text3);background:var(--sa-surface)}
.sa-rte .sa-rte-src{position:absolute;left:0;right:0;bottom:0;width:100%;height:1px;min-height:0;padding:0;border:0;opacity:0;pointer-events:none;resize:none}
.sa-prose h3,.sa-rte-area h3{font-size:15.5px;font-weight:700;margin:14px 0 6px;color:var(--sa-text)}
.sa-prose ul,.sa-prose ol,.sa-rte-area ul,.sa-rte-area ol{margin:0 0 10px;padding-left:22px}
.sa-prose li,.sa-rte-area li{margin:2px 0}
.sa-prose blockquote,.sa-rte-area blockquote{margin:0 0 10px;padding:6px 14px;border-left:3px solid var(--sa-accent-mid);background:var(--sa-surface2);border-radius:0 8px 8px 0;color:var(--sa-text2)}
.sa-prose a,.sa-rte-area a{color:var(--sa-accent);text-decoration:underline}
.sa-rte-area p{margin:0 0 10px}
@media (max-width:560px){.sa-rte-foot span:last-child{display:none}.sa-rte-bar{padding:6px}.sa-rte-sep{margin:0 3px}}

/* ===== 1.5.6: writer job board ===== */
.sa-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}
.sa-pilltab{border:1.5px solid var(--sa-border2);background:var(--sa-surface);color:var(--sa-text2);border-radius:99px;padding:9px 18px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:.15s}
.sa-pilltab:hover{border-color:var(--sa-accent-mid);color:var(--sa-text)}
.sa-pilltab.is-active{background:var(--sa-accent-soft);border-color:var(--sa-accent);color:var(--sa-accent)}
.sa-board-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.sa-feed-note{display:flex;align-items:center;gap:10px;padding:13px 18px;margin-bottom:18px;border:1px solid color-mix(in srgb,var(--sa-green) 30%,transparent);border-radius:14px;background:var(--sa-green-soft);color:#0f8f56;font-size:14px;font-weight:500}
.sa-feed-note strong{font-weight:800}
.sa-live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--sa-green);flex:none;box-shadow:0 0 0 0 color-mix(in srgb,var(--sa-green) 55%,transparent);animation:sa-pulse 2s infinite}
@keyframes sa-pulse{70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
@media (prefers-reduced-motion:reduce){.sa-live-dot{animation:none}}
.sa-jobs2{display:grid;gap:20px}
.sa-jc{display:grid;gap:14px;padding:24px 26px 20px;background:var(--sa-surface);border:1px solid var(--sa-border);border-left:6px solid var(--sa-accent);border-radius:20px;box-shadow:var(--sa-shadow);transition:box-shadow .18s,transform .18s}
.sa-jc:hover{box-shadow:var(--sa-shadow-md);transform:translateY(-2px)}
.sa-jc[hidden]{display:none!important}
.sa-jc-urgent{border-left-color:#f04f5f}
.sa-jc-soon{border-left-color:var(--sa-orange)}
.sa-jc-ok{border-left-color:var(--sa-accent)}
.sa-jc.has-bid{border-left-color:var(--sa-green)}
.sa-jc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.sa-jc-title{min-width:0;display:grid;gap:6px;justify-items:start}
.sa-jc-id{border:0;background:none;padding:0;font:inherit;font-size:15px;font-weight:700;color:var(--sa-accent);cursor:pointer}
.sa-jc-id:hover{text-decoration:underline}
.sa-jc h3{font-size:20px;font-weight:750;letter-spacing:-.02em;line-height:1.3}
.sa-jc-price{display:grid;justify-items:end;flex:none}
.sa-jc-price strong{font-family:var(--sa-font-head);font-size:26px;font-weight:800;color:#12b76a;letter-spacing:-.02em}
.sa-jc-price small{color:var(--sa-text3);font-size:13px}
.sa-jc-tags{display:flex;flex-wrap:wrap;gap:8px}
.sa-jc-tags span{padding:6px 14px;border-radius:99px;border:1px solid var(--sa-border2);background:var(--sa-surface2);font-size:13px;font-weight:600;color:var(--sa-text2)}
.sa-jc-tags span.is-main{background:var(--sa-accent-soft);border-color:color-mix(in srgb,var(--sa-accent) 30%,transparent);color:var(--sa-accent)}
.sa-jc-desc{margin:0;color:var(--sa-text2);font-size:14.5px;line-height:1.7}
.sa-jc-meta{display:flex;flex-wrap:wrap;gap:8px 22px;color:var(--sa-text3);font-size:14px}
.sa-jc-meta span{display:inline-flex;align-items:center;gap:7px}
.sa-jc-meta strong{color:var(--sa-text);font-weight:700}
.sa-jc-status{display:flex;align-items:center;gap:9px;color:var(--sa-text3);font-size:14px}
.sa-jc-foot{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--sa-border)}
.sa-jc-foot .sa-btn{border-radius:99px;padding-left:22px;padding-right:22px}
.sa-board-side{display:grid;gap:20px;position:sticky;top:84px}
.sa-board-count{display:grid;justify-items:center;gap:4px;padding:30px 20px;border-radius:22px;color:#fff;background:linear-gradient(135deg,var(--sa-accent),var(--sa-accent-dark));box-shadow:0 18px 40px var(--sa-accent-soft)}
.sa-board-count strong{font-family:var(--sa-font-head);font-size:52px;font-weight:800;line-height:1;letter-spacing:-.03em}
.sa-board-count span{font-size:16px;opacity:.9}
.sa-board-count em{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-style:normal;font-size:15px;opacity:.95}
.sa-board-card{padding:22px 24px;display:grid;gap:14px}
.sa-board-card h4{display:flex;align-items:center;gap:8px;font-size:16.5px;font-weight:750}
.sa-check{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14.5px;color:var(--sa-text2)}
.sa-check input{width:19px;height:19px;accent-color:var(--sa-accent);margin:0;flex:none}
.sa-tipslist{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:13.5px;color:var(--sa-text2);line-height:1.5}
.sa-tipslist li{display:flex;gap:10px;align-items:flex-start}
.sa-tipslist svg{flex:none;margin-top:2px}
.sa-tipslist .is-ok svg{color:var(--sa-green)}
.sa-tipslist .is-warn svg{color:var(--sa-gold)}
@media (max-width:1100px){.sa-board-grid{grid-template-columns:1fr}.sa-board-side{position:static;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.sa-board-count{grid-column:1/-1}}
@media (max-width:640px){.sa-jc{padding:18px 16px}.sa-jc-head{flex-direction:column;gap:8px}.sa-jc-price{justify-items:start;grid-auto-flow:column;align-items:baseline;gap:8px}.sa-jc h3{font-size:18px}.sa-jc-foot .sa-btn{flex:1;justify-content:center}.sa-pills{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-right:-16px;padding-right:16px}.sa-pilltab{white-space:nowrap}}

/* ===== 1.5.6: writer withdrawals ===== */
.sa-withdraw{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px;padding:22px 26px;background:radial-gradient(520px 200px at 100% 0,color-mix(in srgb,var(--sa-green) 12%,transparent),transparent 70%),var(--sa-surface)}
.sa-withdraw-main{display:flex;align-items:center;gap:16px;min-width:0}
.sa-withdraw-main>div{display:grid;gap:2px;min-width:0}
.sa-withdraw-main small{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sa-text3)}
.sa-withdraw-main strong{font-family:var(--sa-font-head);font-size:34px;font-weight:800;letter-spacing:-.03em;line-height:1.1}
.sa-withdraw-ico{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;flex:none;background:var(--sa-green-soft);color:var(--sa-green)}
.sa-withdraw-cta{display:grid;gap:8px;justify-items:end;max-width:420px}
.sa-withdraw-cta .sa-callout{margin:0}
.sa-amount-row{display:flex;gap:10px}
.sa-amount-row input{flex:1;min-width:0}
@media (max-width:640px){.sa-withdraw-cta{justify-items:stretch;width:100%;max-width:none}.sa-withdraw-cta .sa-btn{justify-content:center;width:100%}.sa-withdraw-main strong{font-size:28px}}

/* ===== 1.5.7: board card after bidding ===== */
.sa-jc-foot{flex-wrap:wrap}
.sa-jc-mybid{margin-right:auto}
.sa-btn-outline-danger{background:transparent;border:1.5px solid #f05252;color:#e23b3b!important;border-radius:99px;padding-left:22px;padding-right:22px;font-weight:700}
.sa-btn-outline-danger:hover{background:#f05252;color:#fff!important}
.sa-jc-foot .sa-inline-form{margin:0}
@media (max-width:640px){.sa-jc-mybid{flex:1 1 100%;justify-content:center}.sa-jc-foot .sa-inline-form{flex:1}.sa-jc-foot .sa-inline-form .sa-btn{width:100%;justify-content:center}}

/* ===== 1.5.8 ===== */
.sa-withdraw-pending{display:inline-flex;align-items:center;gap:6px;color:var(--sa-text2);font-size:12.5px;text-align:right}
.sa-withdraw-cta .sa-muted{font-size:12.5px;text-align:right}

/* ===== 1.6.1: responsive hardening (phones 320px+, tablets, small laptops, landscape) ===== */
.sa-app{max-width:100%;overflow-x:clip}
.sa-app img,.sa-app video,.sa-app canvas{max-width:100%;height:auto}
.sa-app input,.sa-app select,.sa-app textarea{max-width:100%;min-width:0}
.sa-app .sa-field,.sa-row>*,.sa-row-3>*,.sa-split>*,.sa-grid-2>*,.sa-grid-2-1>*,.sa-stats>*,.sa-card,.sa-order>*,.sa-manage-card>*,.sa-partner>*,.sa-page-body>*,.sa-list-main,.sa-file>*,.sa-bid>*{min-width:0}
.sa-file{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.sa-presets{flex-wrap:wrap}
.sa-view .sa-muted,.sa-view small{overflow-wrap:anywhere}
.sa-barcol{min-width:0}
.sa-barcol small,.sa-barval{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-order-actions{flex-wrap:wrap}
@supports (height:100dvh){
  .sa-side{height:100dvh}
  .sa-dialog,.sa-dialog-card{max-height:calc(100dvh - 24px)}
  @media (max-width:900px){.sa-msg{height:calc(100dvh - 150px)}}
}
.sa-content{padding-bottom:calc(48px + env(safe-area-inset-bottom,0px))}

/* tablets and below */
@media (max-width:900px){
  .sa-order{grid-template-columns:minmax(0,1fr)!important}
  .sa-board-grid{display:flex;flex-direction:column;gap:18px}
  .sa-board-side{display:contents;position:static}
  .sa-board-main{order:1}
  .sa-board-count{order:-3;flex-direction:row;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;text-align:left}
  .sa-board-count strong{font-size:34px}
  .sa-board-count span{flex:1;font-size:14px}
  .sa-board-count em{margin:0;font-size:13px}
  .sa-bc-filters{order:-2}
  .sa-bc-tips{order:2}
}
/* phones */
@media (max-width:720px){
  .sa-row,.sa-row-3,.sa-split{grid-template-columns:minmax(0,1fr)!important}
  .sa-list-row:has(.sa-list-amt){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;align-items:center}
  .sa-list-row:has(.sa-list-amt) .sa-list-main{grid-column:1/-1}
  .sa-list-row:has(.sa-list-amt)>.sa-pill,.sa-list-row:has(.sa-list-amt)>span:not(.sa-list-main){justify-self:start}
  .sa-manage-card .sa-btn,.sa-assign .sa-btn{width:100%;justify-content:center}
  .sa-file{font-size:12.5px}
  .sa-bc-filters{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center}
  .sa-bc-filters h4{flex:1 1 100%}
  .sa-withdraw-pending{text-align:left}
}
@media (max-width:600px){
  .sa-top{gap:8px;padding:10px 12px}
  .sa-crumb .sa-eyebrow{display:none}
  .sa-crumb h1{font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sa-top-actions{gap:6px;flex:none}
  .sa-top .sa-icon-btn,.sa-top .sa-burger{width:38px;height:38px;min-width:38px}
  .sa-content{padding-left:12px;padding-right:12px}
  .sa-btn{white-space:normal;text-align:center}
  .sa-bars{gap:4px}
  .sa-barcol small,.sa-barval{font-size:10px}
  .sa-dialog{width:calc(100vw - 16px)}
  .sa-dialog-head{padding-left:16px;padding-right:12px}
  .sa-toasts{left:12px;right:12px;width:auto}
}
@media (max-width:380px){
  .sa-top .sa-sound{display:none}
  .sa-page-body{padding:14px}
  .sa-stat-value{font-size:19px}
  .sa-jc{padding:16px 14px}
}
/* short screens (landscape phones): keep dialogs and the drawer usable */
@media (max-height:520px){
  .sa-dialog-body{max-height:calc(100dvh - 90px)}
  .sa-side{overflow-y:auto}
}
/* touch: comfortable tap targets */
@media (hover:none) and (pointer:coarse){
  .sa-btn,.sa-pilltab,.sa-nav a,.sa-side a{min-height:40px}
  .sa-rte-btn{min-width:38px;height:38px}
  .sa-check input{width:22px;height:22px}
}
@media (max-width:640px){.sa-pills{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}}
@media (max-width:600px){.sa-pills{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}}
/* dialog content must never be squeezed by the dialog's max-height: it scrolls instead */
.sa-dialog-body{grid-auto-rows:max-content}
.sa-dialog-body>*{min-height:0}
.sa-paydlg-sum{overflow:visible}
.sa-paydlg-sum>div:first-child{border-radius:14px 14px 0 0}.sa-paydlg-sum>div:last-child{border-radius:0 0 14px 14px}.sa-paydlg-sum>div:only-child{border-radius:14px}
.sa-paydlg-intro p strong{display:inline;font-size:inherit;margin:0}
.sa-rte-area,.sa-rte-foot,.sa-rte-bar{font-weight:400;letter-spacing:normal}
.sa-rte-area:empty::before{font-weight:400}

/* messages: the composer must always stay visible; only the message list scrolls */
.sa-msg{grid-template-rows:minmax(0,1fr)}
.sa-msg-list{min-height:0;overflow-y:auto}
.sa-thread,.sa-thread-body{min-height:0}
.sa-thread-head{flex:none}.sa-composer{flex:none}
.sa-thread-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-thread-head .sa-status{flex:none}
@media (max-width:420px){.sa-thread-head{padding:12px}.sa-thread-head .sa-status{display:none}.sa-thread-body{padding:14px}.sa-composer{padding:10px 12px}}

/* ===== 1.6.1: order timeline + file sharing ===== */
.sa-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.sa-timeline li{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:8px 0 8px 22px;position:relative;font-size:13.5px}
.sa-timeline li::before{content:"";position:absolute;left:4px;top:15px;width:9px;height:9px;border-radius:50%;background:var(--sa-accent);box-shadow:0 0 0 3px var(--sa-accent-soft)}
.sa-timeline li::after{content:"";position:absolute;left:8px;top:26px;bottom:-9px;width:1px;background:var(--sa-border2)}
.sa-timeline li:last-child::after{display:none}
.sa-timeline span{font-weight:650}
.sa-timeline time{color:var(--sa-text3);font-size:12.5px;text-align:right}
.sa-share{display:grid;gap:12px;padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-share p{margin:0;font-size:13px}
.sa-share-list{display:grid;gap:6px}

/* ===== 1.6.2: scroll-to-action + student file card ===== */
[data-anchor]{scroll-margin-top:92px}
.sa-anchor-flash{animation:sa-anchor 1.6s ease}
@keyframes sa-anchor{0%,100%{box-shadow:0 0 0 0 transparent}25%{box-shadow:0 0 0 8px var(--sa-accent-soft)}}
.sa-anchor{border-radius:14px}
@media (prefers-reduced-motion:reduce){.sa-anchor-flash{animation:none}}
.sa-share-student p{margin:2px 0 0;font-size:13px}

/* ===== 2.2.3: modern bid cards ===== */
.sa-bids{display:grid;gap:12px}
.sa-bids-intro{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:14px;background:linear-gradient(135deg,var(--sa-accent-soft),var(--sa-blue-soft));border:1px solid var(--sa-border)}
.sa-bids-intro-ico{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--sa-surface);color:var(--sa-accent);box-shadow:var(--sa-shadow)}
.sa-bids-intro p{margin:0;font-size:13.5px;line-height:1.5;color:var(--sa-text2);font-weight:500}
.sa-bidc{display:grid;grid-template-columns:minmax(0,1fr) 258px;background:var(--sa-surface);border:1px solid var(--sa-border);border-radius:18px;overflow:hidden;box-shadow:var(--sa-shadow);transition:box-shadow .18s,border-color .18s,transform .18s}
.sa-bidc:hover{box-shadow:var(--sa-shadow-md);border-color:var(--sa-border2)}
.sa-bidc-main{display:grid;gap:12px;padding:16px 18px;align-content:start;min-width:0}
.sa-bidc-head{display:flex;align-items:center;gap:12px}
.sa-bidc-who{display:grid;gap:4px;min-width:0;flex:1}
.sa-bidc-who strong{font-family:var(--sa-font-head);font-size:17px;font-weight:800;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-bidc-substatus{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sa-bidc-substatus .sa-pres-text{display:inline-flex;align-items:center;gap:6px;font-size:12px}
.sa-bidc-substatus .sa-pres-text.is-on{padding:2px 9px 2px 7px;border-radius:99px;background:var(--sa-green-soft);color:#0f9d63}
.sa-bidc-substatus .sa-pres-text.is-on::before{content:"";width:6px;height:6px;border-radius:50%;background:#22c27a;box-shadow:0 0 0 0 rgba(34,194,122,.5);animation:sa-pulse 2.4s infinite}
.sa-bidc-substatus .sa-linkbtn{display:inline-flex;align-items:center;gap:4px;color:var(--sa-text3)}
.sa-bidc-substatus .sa-linkbtn svg{width:12px;height:12px}
.sa-linkbtn{border:0;background:none;padding:0;font:inherit;font-size:13px;color:var(--sa-text3);cursor:pointer;text-align:left;width:fit-content}
.sa-linkbtn:hover{color:var(--sa-accent);text-decoration:underline}
.sa-chatbtn{position:relative;flex:none;display:inline-grid;place-items:center;width:64px;height:48px;border:0;border-radius:14px;background:var(--sa-surface3);color:var(--sa-text2);cursor:pointer;transition:background .15s,color .15s,transform .15s}
.sa-chatbtn:hover{background:var(--sa-accent-soft);color:var(--sa-accent);transform:translateY(-1px)}
.sa-chatbtn b{position:absolute;top:-6px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:99px;display:grid;place-items:center;background:var(--sa-accent);color:#fff;font-size:12px;font-weight:700;border:2px solid var(--sa-surface)}
.sa-bidc-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:12px 8px;border-radius:14px;background:var(--sa-surface2)}
.sa-bidc-stat{display:grid;gap:2px;justify-items:center;text-align:center;padding:0 6px;border-left:1px solid var(--sa-border)}
.sa-bidc-stat:first-child{border-left:0}
.sa-bidc-stat-ico{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;margin-bottom:3px}
.sa-bidc-stat-ico.sa-tone-gold{background:var(--sa-gold-soft);color:var(--sa-gold)}
.sa-bidc-stat-ico.sa-tone-accent{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-bidc-stat-ico.sa-tone-green{background:var(--sa-green-soft);color:#0f9d63}
.sa-bidc-stat-ico.sa-tone-blue{background:var(--sa-blue-soft);color:var(--sa-blue)}
.sa-bidc-stat strong{font-family:var(--sa-font-head);font-size:18px;font-weight:800;display:inline-flex;align-items:center;gap:4px;letter-spacing:-.02em}
.sa-bidc-stat strong.sa-gold{color:var(--sa-gold)}
.sa-bidc-stat strong svg{fill:currentColor;stroke:none}
.sa-bidc-stat span{font-size:11.5px;color:var(--sa-text2);font-weight:650}
.sa-bidc-stat em{font-style:normal;font-size:10px;color:var(--sa-text3)}
.sa-bidc-stat em.sa-bidc-stat-tag{display:inline-flex;align-items:center;gap:3px;margin-top:1px;padding:2px 7px;border-radius:99px;background:var(--sa-green-soft);color:#0f9d63;font-weight:700;font-size:10px}
.sa-bidc-stat em.sa-bidc-stat-tag svg{fill:currentColor;stroke:none}
.sa-bidc-chips{display:flex;flex-wrap:wrap;gap:6px}
.sa-bidc-chips span{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:9px;background:var(--sa-surface3);font-size:11.5px;font-weight:600;color:var(--sa-text2)}
.sa-bidc-chips .is-top{background:var(--sa-gold-soft);color:#b7791f}
.sa-bidc-chips .is-new{background:var(--sa-accent-soft);color:var(--sa-accent)}
.sa-bidc-note{display:flex;gap:8px;align-items:flex-start;margin:0;padding:9px 12px;border-radius:12px;background:var(--sa-surface2);font-size:13px;line-height:1.5;color:var(--sa-text2)}
.sa-bidc-note-ico{flex:none;color:var(--sa-accent);opacity:.75;margin-top:1px}
.sa-bidc-note details{flex:1;min-width:0}
.sa-bidc-note summary{cursor:pointer;list-style:none;font-style:italic}.sa-bidc-note summary::-webkit-details-marker{display:none}
.sa-bidc-note summary em{font-style:normal;color:var(--sa-accent);font-weight:600;margin-left:6px}
.sa-bidc-note[open] summary{display:none}
.sa-bidc-note p{margin:0;font-style:italic;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.sa-bidc-side{display:flex;flex-direction:column;justify-content:space-between;gap:12px;padding:18px;border-left:1px solid var(--sa-border);background:linear-gradient(180deg,var(--sa-surface),var(--sa-surface2))}
.sa-bidc-price{display:grid;gap:6px}
.sa-bidc-price>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.sa-bidc-price-amt{display:inline-flex;align-items:center;gap:6px}
.sa-bidc-price strong{font-family:var(--sa-font-head);font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1}
.sa-tip-i{display:inline-grid;color:var(--sa-text3);cursor:help}
.sa-badge-new{display:inline-flex;align-items:center;gap:4px;font-style:normal;padding:4px 11px;border-radius:99px;background:linear-gradient(135deg,#7c5cf0,#6d4fe0);color:#fff;font-size:11.5px;font-weight:700;box-shadow:0 6px 14px rgba(109,79,224,.3)}
.sa-badge-new svg{fill:currentColor;stroke:none}
.sa-bidc-price small{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--sa-text3);font-weight:600}
.sa-bidc-price small.is-good{color:#0f9d63}.sa-bidc-price small.is-up{color:var(--sa-orange)}
.sa-bidc-price small.is-ontime,.sa-bidc-price small.is-late{padding:5px 2px;font-weight:700}
.sa-bidc-price small.is-ontime{color:#c2751a}
.sa-bidc-price small.is-late{color:#d33}
.sa-bidc-price small.sa-bidc-fee{padding:7px 10px;border-radius:11px;background:var(--sa-green-soft);color:#0f9d63;font-weight:700}
.sa-bidc-price small.sa-bidc-fee svg{fill:currentColor;stroke:none}
.sa-hire-form{margin:0}
.sa-hire{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;height:48px;padding:0 6px 0 20px;border:0;border-radius:13px;background:linear-gradient(135deg,#34ae8a,#2f9e7b);color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 8px 18px rgba(47,158,123,.3);transition:transform .15s,box-shadow .15s,background .15s}
.sa-hire:hover{background:#278a6a;transform:translateY(-1px);box-shadow:0 12px 22px rgba(47,158,123,.36)}
.sa-hire i{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.2)}
.sa-bidc.is-new{animation:sa-bid-in 1.8s ease both}
.sa-wprof-head{display:flex;align-items:center;gap:14px}
.sa-wprof-head strong{display:block;font-size:19px}
.sa-dialog .sa-wstats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media (max-width:420px){.sa-dialog .sa-wstats{grid-template-columns:1fr}}
.sa-dialog .sa-review{padding:12px 14px}
@media (max-width:820px){
  .sa-bidc{grid-template-columns:minmax(0,1fr)}
  .sa-bidc-side{border-left:0;border-top:1px solid var(--sa-border);flex-direction:row;align-items:center;flex-wrap:wrap}
  .sa-bidc-price{flex:1 1 200px}
  .sa-hire-form{flex:1 1 200px}
}
@media (max-width:480px){.sa-bids-intro{padding:12px}.sa-bidc-main,.sa-bidc-side{padding:14px}.sa-bidc-price strong{font-size:26px}.sa-bidc-who strong{font-size:15px}.sa-chatbtn{width:52px}}

/* ===== 1.6.5: hire pop-up, sidebar chat ===== */
.sa-chatbtn{width:auto;min-width:0;height:46px;padding:0 18px;gap:8px;display:inline-flex;align-items:center;background:var(--sa-accent);color:#fff!important;font:inherit;font-size:14px;font-weight:700;box-shadow:0 8px 18px var(--sa-accent-soft)}
.sa-chatbtn:hover{background:var(--sa-accent-dark,#3f52c0);color:#fff!important;transform:translateY(-1px)}
.sa-chatbtn svg{flex:none}
.sa-chatbtn b{background:#ff5a67;border-color:var(--sa-surface)}
@media (max-width:420px){.sa-chatbtn span{display:none}.sa-chatbtn{padding:0 14px}}
.sa-hiredlg .sa-dialog-body{gap:16px}
.sa-hd-writer{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:var(--sa-surface2)}
.sa-hd-writer strong{display:block;font-size:19px}
.sa-hd-writer>div>span:not(.sa-pres-text){color:var(--sa-text3);font-size:13.5px}
.sa-hd-writer .sa-avatar{color:#fff}
.sa-hd-total{display:grid;gap:6px}
.sa-hd-total span{color:var(--sa-text2);font-size:15px}
.sa-hd-total strong{font-family:var(--sa-font-head);font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1.05}
.sa-hd-row{display:flex;justify-content:space-between;gap:12px;font-size:16px;color:var(--sa-text2)}
.sa-hd-row b{font-weight:700;color:var(--sa-text)}
.sa-hd-row.is-short,.sa-hd-row.is-short b{color:#e5484d}
.sa-hd-row.is-ok b{color:#0f9d63}
.sa-hd-note{margin:0;color:var(--sa-text2);font-size:14.5px;line-height:1.65}
.sa-hd-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:0}
.sa-btn-hire{background:#2f9e7b;border-color:#2f9e7b;color:#fff!important;font-weight:700;padding:11px 20px;border-radius:12px}
.sa-btn-hire:hover{background:#278a6a}
.sa-hd-actions .sa-btn-primary{padding:11px 22px;font-size:15px;border-radius:12px}
@media (max-width:480px){.sa-hd-actions .sa-btn{flex:1 1 100%;justify-content:center}.sa-hd-total strong{font-size:36px}}

.sa-chatpanel{position:fixed;top:0;right:0;bottom:0;z-index:80;width:min(440px,100vw);display:flex;flex-direction:column;background:var(--sa-surface);border-left:1px solid var(--sa-border);box-shadow:-18px 0 50px rgba(15,18,40,.18);transform:translateX(100%);transition:transform .26s cubic-bezier(.2,.8,.2,1);color:var(--sa-text);font-family:var(--sa-font,inherit)}
.sa-chatpanel.is-open{transform:none}
.sa-chatpanel[hidden]{display:none}
.sa-cp-scrim{position:fixed;inset:0;z-index:79;background:rgba(10,12,24,.35);backdrop-filter:blur(2px)}
.sa-cp-scrim[hidden]{display:none}
@media (min-width:1100px){.sa-cp-scrim{background:transparent;backdrop-filter:none;pointer-events:none}}
.sa-cp-head{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--sa-border);background:var(--sa-surface)}
.sa-cp-avatar{flex:none;display:inline-grid}
.sa-cp-who{flex:1;min-width:0;display:grid}
.sa-cp-who strong{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-cp-who small{color:var(--sa-text3);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-cp-note{display:flex;gap:10px;align-items:flex-start;padding:12px 16px;background:var(--sa-surface2);color:var(--sa-text2);font-size:12.5px;line-height:1.5;border-bottom:1px solid var(--sa-border)}
.sa-cp-note svg{flex:none;margin-top:1px;width:16px;height:16px}
.sa-cp-body{flex:1;min-height:0;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px;background:var(--sa-surface);overscroll-behavior:contain}
.sa-cp-day,.sa-cp-new{display:flex;align-items:center;gap:12px;color:var(--sa-text3);font-size:12.5px}
.sa-cp-day::before,.sa-cp-day::after,.sa-cp-new::before,.sa-cp-new::after{content:"";flex:1;height:1px;background:var(--sa-border)}
.sa-cp-new{color:var(--sa-accent);font-weight:600}.sa-cp-new::before,.sa-cp-new::after{background:var(--sa-accent);opacity:.55}
.sa-cp-msg{display:flex;gap:10px;align-items:flex-start;max-width:100%}
.sa-cp-msg>div:not(.sa-cp-bubble){min-width:0}
.sa-cp-av{flex:none;display:inline-grid}
.sa-cp-line{display:flex;align-items:baseline;gap:8px}
.sa-cp-line strong{font-size:14px}
.sa-cp-msg time{color:var(--sa-text3);font-size:11.5px}
.sa-cp-text{margin-top:2px;font-size:14.5px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.sa-cp-msg.is-mine{flex-direction:column;align-items:flex-end;gap:3px}
.sa-cp-bubble{max-width:85%;padding:10px 14px;border-radius:16px 16px 4px 16px;background:var(--sa-accent);color:#fff;font-size:14.5px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.sa-cp-msg.is-pending{opacity:.6}
.sa-cp-empty{margin:auto;display:grid;gap:6px;text-align:center;color:var(--sa-text3);font-size:13.5px;max-width:280px}
.sa-cp-empty strong{color:var(--sa-text);font-size:16px}
.sa-cp-form{display:flex;align-items:flex-end;gap:10px;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--sa-border);background:var(--sa-surface)}
.sa-cp-form textarea{flex:1;resize:none;height:46px;min-height:46px;max-height:130px;box-sizing:border-box;margin:0;padding:11px 14px;border:1px solid var(--sa-border2);border-radius:14px;background:var(--sa-surface2);color:var(--sa-text);font:inherit;font-size:14.5px;line-height:1.45}
.sa-cp-form textarea:focus{outline:none;border-color:var(--sa-accent);box-shadow:0 0 0 3px var(--sa-accent-soft);background:var(--sa-surface)}
.sa-cp-send{flex:none;width:46px;height:46px;border:0;border-radius:14px;display:grid;place-items:center;background:var(--sa-accent);color:#fff;cursor:pointer;transition:transform .15s,background .15s}
.sa-cp-send:hover{background:var(--sa-accent-dark,#3f52c0);transform:translateY(-1px)}
.sa-chat-open{overflow:hidden}
@media (min-width:1100px){.sa-chat-open{overflow:auto}}
@media (prefers-reduced-motion:reduce){.sa-chatpanel{transition:none}}

/* ===== 1.6.6: online status + message toasts ===== */
.sa-av-wrap{position:relative;display:inline-grid;flex:none;--d:12px}
.sa-pdot{position:absolute;right:-1px;bottom:-1px;width:var(--d);height:var(--d);border-radius:50%;background:#a3abbf;border:2.5px solid var(--sa-surface,#fff);box-sizing:content-box;transition:background .3s}
.sa-av-wrap[data-online="1"] .sa-pdot{background:#22c27a;box-shadow:0 0 0 0 rgba(34,194,122,.5);animation:sa-pulse 2.4s infinite}
.sa-av-wrap[data-hidden="1"] .sa-pdot{display:none}
.sa-pres-text{color:var(--sa-text3);font-size:12.5px;font-weight:500}
.sa-pres-text.is-on{color:#0f9d63;font-weight:650}
.sa-pres-text:empty{display:none}
.sa-bidc-who .sa-pres-text{display:block;margin-top:-1px}
.sa-hd-writer .sa-pres-text,.sa-wprof-head .sa-pres-text{display:block}
.sa-partner .sa-pres-text{display:block}
.sa-convo .sa-av-wrap{align-self:flex-start}
.sa-cp-who small{display:flex;flex-wrap:wrap;align-items:baseline;overflow:hidden}
.sa-cp-pres{white-space:pre}
.sa-toast-msg{display:grid;gap:2px;text-align:left;cursor:pointer;border:0;font:inherit;max-width:min(360px,calc(100vw - 24px))}
.sa-toast-msg strong{font-size:13.5px}
.sa-toast-msg span{font-size:13px;opacity:.9;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.sa-check-row{align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-check-row span{display:grid;gap:2px}.sa-check-row small{color:var(--sa-text3);font-size:12.5px;font-weight:400}
.sa-check-row input{margin-top:2px}
@media (prefers-reduced-motion:reduce){.sa-av-wrap[data-online="1"] .sa-pdot{animation:none}}

/* ===== 1.6.7: service charge lines ===== */
.sa-hd-break{display:grid;gap:8px;padding:12px 14px;border:1px dashed var(--sa-border2);border-radius:12px;background:var(--sa-surface2)}
.sa-hd-break .sa-hd-row{font-size:14.5px}

/* ===== 1.7.0: admin tools ===== */
.sa-imp-bar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:95;display:flex;align-items:center;gap:14px;padding:8px 10px 8px 16px;border-radius:99px;background:#1c2140;color:#fff;box-shadow:0 14px 40px rgba(10,12,30,.4);font-size:13.5px;max-width:calc(100vw - 24px)}
.sa-imp-bar span{display:inline-flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-imp-bar strong{font-weight:700}
.sa-imp-bar form{margin:0}
@media (max-width:520px){.sa-imp-bar{bottom:10px;border-radius:16px;padding:8px 10px 8px 12px}.sa-imp-bar span{font-size:12.5px}}

.sa-picker{display:grid;gap:10px;padding:14px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-picker[hidden]{display:none}
.sa-picker-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sa-picker-actions .sa-muted{margin-left:auto;font-size:12.5px}
.sa-picker-list{max-height:260px;overflow:auto;display:grid;gap:2px;border:1px solid var(--sa-border);border-radius:12px;background:var(--sa-surface);padding:6px}
.sa-picker-row{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:9px;cursor:pointer}
.sa-picker-row:hover{background:var(--sa-surface2)}
.sa-picker-row[hidden]{display:none}
.sa-picker-row span{display:grid;gap:1px;min-width:0}
.sa-picker-row small{color:var(--sa-text3);font-size:12px;overflow:hidden;text-overflow:ellipsis}

/* ===== 1.6.9: admin manual payments, order management ===== */
.sa-manual-item summary{display:flex;justify-content:space-between;align-items:center;gap:12px}
.sa-manual-t{display:inline-flex;align-items:center;gap:10px}
.sa-manual-item form{margin-top:12px}
.sa-manual-admin .sa-card-head p{max-width:520px}
.sa-manual-req{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px 24px;padding:16px 0;border-top:1px solid var(--sa-border);align-items:start}
.sa-manual-req:first-of-type{border-top:0}
.sa-manual-req-main{display:grid;gap:4px;min-width:0}
.sa-manual-req-main small{color:var(--sa-text3)}
.sa-manual-ref{font-size:13px;color:var(--sa-text2);overflow-wrap:anywhere}
.sa-manual-actions{display:grid;gap:10px;min-width:0}
.sa-manual-actions form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end;margin:0}
.sa-manual-actions form .sa-field{margin:0}
.sa-manual-decline{grid-template-columns:minmax(0,1fr) auto!important}
@media (max-width:820px){.sa-manual-req{grid-template-columns:1fr}.sa-manual-actions form{grid-template-columns:1fr}.sa-manual-actions form .sa-btn{width:100%}}
.sa-admin-manage{display:grid;gap:12px;padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-admin-manage>h4,.sa-admin-files h4{display:flex;align-items:center;gap:8px;margin:0}
.sa-admin-manage>p{margin:0;font-size:13px}
.sa-admin-files h4{margin-bottom:2px}

/* student wallet: pay outside the site */
.sa-manual-panel{display:grid;gap:14px}
.sa-manual-card{display:grid;gap:12px;padding:16px;border:1px dashed var(--sa-accent);border-radius:14px;background:var(--sa-accent-soft)}
.sa-manual-steps{font-size:13.5px;line-height:1.65;color:var(--sa-text2)}
.sa-manual-details{margin:0;display:grid;gap:8px}
.sa-manual-details>div{display:grid;grid-template-columns:minmax(70px,auto) minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:var(--sa-surface)}
.sa-manual-details dt{font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--sa-text3);font-weight:700}
.sa-manual-details dd{margin:0;font-weight:650;overflow-wrap:anywhere}

/* ===== 1.7.1: payment method switches, user delete ===== */
.sa-gw-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.sa-switch-form{margin:0}
.sa-onoff{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:2px;cursor:pointer;font:inherit;font-size:12.5px;font-weight:700;color:var(--sa-text3)}
.sa-onoff i{position:relative;width:38px;height:22px;border-radius:99px;background:var(--sa-border2);transition:background .18s;flex:none}
.sa-onoff i::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .18s}
.sa-onoff.is-on{color:#0f9d63}
.sa-onoff.is-on i{background:#22c27a}
.sa-onoff.is-on i::after{transform:translateX(16px)}
.sa-onoff:disabled{opacity:.5;cursor:not-allowed}
.sa-onoff:focus-visible{outline:2px solid var(--sa-accent);outline-offset:2px;border-radius:99px}
.sa-manual-item{padding:12px 0;border-top:1px solid var(--sa-border)}
.sa-manual-item:first-of-type{border-top:0}
.sa-manual-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.sa-manual-head .sa-manual-t{min-width:0;flex-wrap:wrap}
.sa-row-actions{display:inline-flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.sa-row-actions form{margin:0}
.sa-btn-danger-soft{color:#e23b3b!important;border-color:color-mix(in srgb,#e23b3b 35%,transparent);background:transparent}
.sa-btn-danger-soft:hover:not(:disabled){background:#e23b3b;color:#fff!important}
.sa-btn-danger-soft:disabled{opacity:.45;cursor:not-allowed}
.sa-blockers{margin:8px 0 0;padding-left:18px;display:grid;gap:4px;font-size:13px;color:var(--sa-orange)}

/* ===== 1.8.0: sign up, writer applications, pending status ===== */
.sa-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.sa-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:18px;border-radius:14px;background:var(--sa-surface3)}
.sa-auth-tabs button{border:0;background:transparent;padding:10px 12px;border-radius:11px;font:inherit;font-weight:700;font-size:14px;color:var(--sa-text2);cursor:pointer;transition:.15s}
.sa-auth-tabs button.is-active{background:var(--sa-surface);color:var(--sa-accent);box-shadow:var(--sa-shadow)}
.sa-signup .sa-callout{margin-bottom:2px}
.sa-signup textarea{min-height:96px}
.sa-auth-alt{margin:14px 0 0;text-align:center;font-size:13.5px;color:var(--sa-text3)}
.sa-auth-alt a{color:var(--sa-accent);font-weight:700}
.sa-auth-alt-btn{margin-top:14px}
[data-auth-panel][hidden]{display:none!important}
.sa-status-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}
.sa-status-card{max-width:560px;width:100%;display:grid;gap:14px;text-align:left;padding:32px}
.sa-status-card .sa-brand{margin-bottom:6px}
.sa-status-ico{width:60px;height:60px;border-radius:18px;display:grid;place-items:center}
.sa-status-ico.is-wait{background:var(--sa-gold-soft);color:var(--sa-gold)}
.sa-status-ico.is-bad{background:var(--sa-red-soft);color:var(--sa-red)}
.sa-status-card h2{margin:0;font-size:24px;letter-spacing:-.02em}
.sa-status-card p{margin:0}
.sa-status-steps{list-style:none;margin:6px 0;padding:0;display:grid;gap:0}
.sa-status-steps li{display:flex;gap:14px;align-items:flex-start;padding:10px 0;position:relative}
.sa-status-steps li::after{content:"";position:absolute;left:11px;top:34px;bottom:-10px;width:2px;background:var(--sa-border2)}
.sa-status-steps li:last-child::after{display:none}
.sa-status-steps li>span{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--sa-surface3);border:2px solid var(--sa-border2);color:#fff}
.sa-status-steps li.is-done>span{background:var(--sa-green);border-color:var(--sa-green)}
.sa-status-steps li.is-now>span{border-color:var(--sa-gold);background:var(--sa-gold-soft);box-shadow:0 0 0 4px var(--sa-gold-soft)}
.sa-status-steps strong{display:block;font-size:14.5px}
.sa-status-steps small{color:var(--sa-text3);font-size:12.5px}
.sa-status-app{padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-status-app h4{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--sa-text3)}
.sa-status-app dl{margin:0;display:grid;gap:6px}
.sa-status-app dl>div{display:flex;gap:12px;font-size:13.5px}
.sa-status-app dt{width:90px;flex:none;color:var(--sa-text3)}
.sa-status-app dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.sa-status-note{font-size:13px}
@media (max-width:520px){.sa-status-card{padding:22px 18px}.sa-status-app dl>div{flex-direction:column;gap:0}}

.sa-apps{margin-bottom:18px}
.sa-app-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--sa-border);flex-wrap:wrap}
.sa-app-row:first-of-type{border-top:0}
.sa-app-main{flex:1 1 260px;min-width:0;display:grid;gap:2px}
.sa-app-main small{color:var(--sa-text3)}
.sa-app-main span{font-size:13px;color:var(--sa-text2);overflow-wrap:anywhere}
.sa-app-panel{display:grid;gap:12px;padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-app-panel h4{display:flex;align-items:center;gap:10px;margin:0;flex-wrap:wrap}
.sa-app-actions{display:grid;gap:12px}
.sa-app-reject{padding:12px;border:1px dashed var(--sa-border2);border-radius:12px}
.sa-status-app,.sa-status-steps{justify-self:stretch}

.sa-rate-hint{margin:-4px 0 10px;font-size:13px}

/* ===== 1.9.0: writers rate students, Pay online checklist ===== */
.sa-rate-row{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--sa-border)}
.sa-rate-row strong{display:block;font-size:14px}
.sa-rate-row small{color:var(--sa-text3);font-size:12.5px}
.sa-rate-line{display:flex;align-items:center;gap:12px;font-size:13.5px}
.sa-rate-line span{width:120px;color:var(--sa-text2)}
.sa-review-form .sa-rate-row+.sa-field{margin-top:12px}
.sa-setup{display:flex;flex-wrap:wrap;gap:8px}
.sa-setup span{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:99px;background:var(--sa-surface3);color:var(--sa-text3);font-size:12.5px;font-weight:600}
.sa-setup span.is-ok{background:var(--sa-green-soft);color:#0f9d63}
.sa-student-rating{display:flex;align-items:center;gap:8px;margin:0}
.sa-student-rating svg{color:var(--sa-gold);fill:currentColor;stroke:none}

/* ===== 1.9.1: modern download cards for delivered work ===== */
.sa-dl{display:grid;gap:12px}
.sa-dl-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13.5px;font-weight:650;color:var(--sa-text2)}
.sa-dl-head>span{display:inline-flex;align-items:center;gap:8px}
.sa-dl-all{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:99px;border:1.5px solid var(--sa-accent);color:var(--sa-accent)!important;font-weight:700;font-size:13px;text-decoration:none;transition:.15s}
.sa-dl-all:hover{background:var(--sa-accent);color:#fff!important}
.sa-dlcard{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--sa-border);border-radius:16px;background:var(--sa-surface);box-shadow:var(--sa-shadow);transition:box-shadow .18s,transform .18s,border-color .18s}
.sa-dlcard:hover{box-shadow:var(--sa-shadow-md);border-color:var(--sa-accent-mid);transform:translateY(-1px)}
.sa-dl-type{flex:none;width:50px;height:50px;border-radius:14px;display:grid;place-items:center;font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--c,#4f63d2);background:color-mix(in srgb,var(--c,#4f63d2) 14%,transparent)}
.sa-ft-pdf{--c:#e5484d}.sa-ft-doc{--c:#3b82f6}.sa-ft-xls{--c:#16a34a}.sa-ft-ppt{--c:#f97316}.sa-ft-zip{--c:#64748b}.sa-ft-img{--c:#8b5cf6}.sa-ft-other{--c:#4f63d2}
.sa-dl-info{flex:1;min-width:0;display:grid;gap:2px}
.sa-dl-info strong{font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sa-dl-info small{color:var(--sa-text3);font-size:12.5px}
.sa-dl-btn{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 20px;border-radius:12px;background:linear-gradient(135deg,var(--sa-accent),var(--sa-accent-dark));color:#fff!important;font-weight:700;font-size:14.5px;text-decoration:none;box-shadow:0 8px 18px var(--sa-accent-soft);transition:transform .15s,box-shadow .15s,filter .15s}
.sa-dl-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px var(--sa-accent-soft);filter:brightness(1.06)}
.sa-dl-btn:focus-visible,.sa-dl-all:focus-visible{outline:3px solid var(--sa-accent-soft);outline-offset:2px}
@media (max-width:560px){.sa-dlcard{flex-wrap:wrap;padding:14px}.sa-dl-info{flex:1 1 calc(100% - 70px)}.sa-dl-btn{flex:1 1 100%}.sa-dl-info strong{white-space:normal;overflow-wrap:anywhere}.sa-dl-all{flex:1 1 100%;justify-content:center}}

/* ===== 1.9.2: create administrators from the plugin dashboard ===== */
[data-admin-warn]{margin-top:-4px}

/* ===== 1.9.2: content moderation ===== */
.sa-mb{margin-bottom:16px}
.sa-mod-checks{display:flex;flex-wrap:wrap;gap:10px 22px;padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-mod-checks .sa-check{flex:none}

/* ===== 2.0.0: profile photos, writer badges ===== */
.sa-avatar-photo{overflow:hidden;padding:0;background:var(--sa-surface3)}
.sa-avatar-photo img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.sa-avatar-upload{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:14px 0 18px;padding:14px 16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface2)}
.sa-avatar-upload form{flex:1 1 260px;margin:0}
.sa-avatar-upload .sa-inline-form{margin:0}

.sa-wbadge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px 2px 7px;border-radius:99px;font-size:11.5px;font-weight:700;line-height:1.6;white-space:nowrap;vertical-align:middle;margin-left:6px}
.sa-wbadge svg{width:12px;height:12px;fill:currentColor;stroke:none;flex:none}
.sa-wbadge-verified{background:var(--sa-blue-soft);color:var(--sa-blue)}
.sa-wbadge-top{background:var(--sa-gold-soft);color:#b7791f}
.sa-wbadge-rec{background:var(--sa-green-soft);color:#0f9d63}
.sa-bidc-who strong{display:inline}
.sa-wprof-head strong{display:inline-flex;align-items:center;flex-wrap:wrap}

.sa-badges-card{margin-top:16px;padding:18px 20px;display:grid;gap:14px}
.sa-badges-card h4{display:flex;align-items:center;gap:8px;margin:0}
.sa-badges-current{display:flex;flex-wrap:wrap;gap:6px}
.sa-badges-current .sa-wbadge{margin-left:0}
.sa-badgerow{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-top:1px solid var(--sa-border)}
.sa-badgerow:first-of-type{border-top:0}
.sa-badgerow>div:first-child{min-width:0}
.sa-badgerow strong{display:block;font-size:14px}
.sa-badgerow small{color:var(--sa-text3);font-size:12.5px}
.sa-badgerow-auto{align-items:flex-start}
@media (max-width:520px){.sa-avatar-upload{flex-direction:column;align-items:stretch}.sa-badgerow{flex-direction:column;align-items:flex-start;gap:8px}}

/* ===== 2.1.0: writer application documents ===== */
.sa-app-docs{margin-top:4px}
.sa-app-docs>small{display:block;margin-bottom:8px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:11px}
.sa-app-doclist{display:flex;flex-wrap:wrap;gap:10px}
.sa-app-doclist .sa-file{flex:0 0 auto}

/* ===== 2.1.0: removable writer files, plagiarism notice ===== */
.sa-file-row{display:flex;align-items:center;gap:8px}
.sa-file-row .sa-file{flex:1;min-width:0}
.sa-file-del{margin:0;flex:none}
.sa-file-del .sa-icon-btn{color:var(--sa-text3)}
.sa-file-del .sa-icon-btn:hover{color:var(--sa-red);background:var(--sa-red-soft)}

/* Dispute controls */
.sa-dispute-action{margin-top:9px;padding-top:9px;border-top:1px solid var(--sa-border);display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.sa-dispute-action .sa-dispute-btn{font-size:11.5px;height:29px;padding:0 10px;border-radius:8px;box-shadow:none}
.sa-dispute-action small{font-size:11px;line-height:1.45;color:var(--sa-text3);max-width:340px;font-weight:450}
.sa-dispute-status{margin-top:10px;padding:9px 11px;border:1px solid #f0d9c8;background:#fff8f2;border-radius:9px;display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--sa-text2)}
.sa-dispute-status strong{font-size:12px;color:#a95418}
.sa-dispute-status.is-resolved{border-color:#ccebdc;background:#f1fbf6}
.sa-dispute-status.is-resolved strong{color:#087a4b}
.sa-callout-warn .sa-inline-form{margin-top:10px}


/* StudyMerit delivered-work review panel */
.sa-delivery-panel{margin-top:26px}
.sa-delivery-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:22px;padding:0 2px}
.sa-delivery-title{display:flex;align-items:center;gap:18px;min-width:0}
.sa-delivery-check{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;flex:none;background:#12c987;color:#fff;box-shadow:0 10px 24px rgba(18,201,135,.18)}
.sa-delivery-title h2{margin:0 0 4px;font-size:30px;line-height:1.08;letter-spacing:-.03em;color:#13235b}
.sa-delivery-title p{margin:0;color:#66719a;font-size:15px;line-height:1.55}
.sa-delivery-date{display:flex;align-items:center;gap:13px;padding:14px 20px;border-radius:18px;background:#edf4ff;color:#1764d8;min-width:300px}
.sa-delivery-date>svg{flex:none}
.sa-delivery-date span{display:grid;gap:2px}
.sa-delivery-date small{font-size:13px;color:#66719a}
.sa-delivery-date strong{font-size:15px;color:#172455}
.sa-delivery-panel .sa-dl-head{display:none}
.sa-delivery-panel .sa-dlcard{min-height:104px;padding:16px 20px;border-radius:18px;border-color:#e1e8f7;background:#fff;box-shadow:0 8px 28px rgba(32,54,100,.06)}
.sa-delivery-panel .sa-dl-type{font-size:0;width:92px;height:92px;border-radius:18px;font-size:14px;background:#e9f2ff;color:#1467e8;position:relative;overflow:hidden}
.sa-delivery-panel .sa-dl-type:before{content:'';width:40px;height:52px;border-radius:5px;background:#1467e8;display:block;box-shadow:inset -10px 0 0 rgba(255,255,255,.1)}
.sa-delivery-panel .sa-dl-type:after{content:attr(data-label);position:absolute;color:#fff;font-size:11px;font-weight:800;letter-spacing:.03em}
.sa-delivery-panel .sa-dl-info strong{font-size:19px;color:#172455}
.sa-delivery-panel .sa-dl-info small{font-size:13px;color:#68739b}
.sa-delivery-panel .sa-dl-btn{min-width:190px;min-height:52px;border-radius:14px;font-size:16px;background:linear-gradient(135deg,#1267ed,#0f5ee0);box-shadow:0 10px 22px rgba(18,103,237,.18)}
.sa-delivery-review-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.85fr);gap:22px;margin-top:24px}
.sa-delivery-change-card,.sa-delivery-accept-card{border:1px solid #e6ebf6;border-radius:20px;background:#fff;padding:26px;box-shadow:0 8px 28px rgba(32,54,100,.045)}
.sa-delivery-accept-card{border-color:#d9f2e7;background:linear-gradient(180deg,#fbfffd,#f6fffa)}
.sa-delivery-card-head{display:flex;align-items:flex-start;gap:15px;margin-bottom:20px}
.sa-delivery-card-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;flex:none}
.sa-tone-blue{background:#eaf2ff;color:#1267ed}
.sa-tone-green{background:#e9fbf2;color:#08a765}
.sa-delivery-card-head h3{margin:2px 0 5px;font-size:24px;color:#14245d;letter-spacing:-.025em}
.sa-delivery-card-head p{margin:0;color:#66719a;font-size:15px;line-height:1.5}
.sa-delivery-revision-form .sa-field{position:relative;margin:0}
.sa-delivery-revision-form textarea{min-height:128px;border:1.5px solid #cdd8f2;border-radius:16px;padding:15px 18px;font-size:15px;color:#1b285a;background:#fff;resize:vertical;box-shadow:none}
.sa-delivery-revision-form textarea:focus{border-color:#1267ed;box-shadow:0 0 0 4px rgba(18,103,237,.08);outline:0}
.sa-delivery-count{text-align:right;color:#7580a3;font-size:12px;margin-top:5px}
.sa-delivery-revision-btn,.sa-delivery-accept-btn{width:100%;min-height:52px;border:1px solid transparent;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:800;font-size:15px;cursor:pointer;transition:.16s ease}
.sa-delivery-revision-btn{margin-top:8px;background:#eff6ff;color:#1267ed;border-color:#d5e5ff}
.sa-delivery-revision-btn:hover{background:#e5f0ff;border-color:#bcd6ff}
.sa-delivery-accept-btn{margin-top:4px;background:#10b977;color:#fff;box-shadow:0 10px 20px rgba(16,185,119,.18)}
.sa-delivery-accept-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}
.sa-delivery-dispute{align-items:center!important;margin-top:18px!important;padding-top:16px!important;border-top:0!important}
.sa-dispute-link{border:0;background:transparent;color:#7a84a9;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;cursor:pointer}
.sa-dispute-link:hover{color:#b14e1b}
.sa-delivery-dispute:before,.sa-delivery-dispute:after{content:'';height:1px;background:#e4e8f2;flex:1}
.sa-delivery-dispute{display:grid!important;grid-template-columns:1fr auto 1fr;gap:10px;text-align:center}
.sa-delivery-dispute small{grid-column:1/-1;color:#7882a5;font-size:11.5px}
.sa-delivery-refund{margin-top:20px}
@media (max-width:900px){.sa-delivery-hero{align-items:flex-start;flex-direction:column}.sa-delivery-date{min-width:0;width:100%;box-sizing:border-box}.sa-delivery-review-grid{grid-template-columns:1fr}}
@media (max-width:560px){.sa-delivery-title{align-items:flex-start}.sa-delivery-check{width:58px;height:58px}.sa-delivery-title h2{font-size:25px}.sa-delivery-title p{font-size:13.5px}.sa-delivery-panel .sa-dlcard{align-items:flex-start;flex-wrap:wrap}.sa-delivery-panel .sa-dl-type{width:70px;height:70px}.sa-delivery-panel .sa-dl-info{flex:1 1 calc(100% - 85px)}.sa-delivery-panel .sa-dl-btn{flex:1 1 100%;width:100%}.sa-delivery-change-card,.sa-delivery-accept-card{padding:20px}.sa-delivery-card-head h3{font-size:21px}}

/* ===== 2.2.6: compact delivered-work review layout ===== */
.sa-delivery-panel{margin:18px auto 0;max-width:1080px;width:100%;box-sizing:border-box}
.sa-delivery-hero{gap:18px;margin-bottom:16px}
.sa-delivery-check{width:58px;height:58px;box-shadow:0 7px 18px rgba(18,201,135,.15)}
.sa-delivery-title{gap:14px}
.sa-delivery-title h2{font-size:27px;margin-bottom:3px}
.sa-delivery-title p{font-size:13.5px;line-height:1.45;max-width:650px}
.sa-delivery-date{gap:10px;padding:11px 15px;border-radius:14px;min-width:245px}
.sa-delivery-date small{font-size:11.5px}
.sa-delivery-date strong{font-size:13.5px}
.sa-delivery-panel .sa-dlcard{min-height:78px;padding:11px 14px;border-radius:14px;box-shadow:0 5px 18px rgba(32,54,100,.045)}
.sa-delivery-panel .sa-dl-type{width:64px;height:64px;border-radius:14px}
.sa-delivery-panel .sa-dl-type:before{width:29px;height:39px;border-radius:4px;box-shadow:inset -7px 0 0 rgba(255,255,255,.1)}
.sa-delivery-panel .sa-dl-type:after{font-size:9px}
.sa-delivery-panel .sa-dl-info strong{font-size:16px}
.sa-delivery-panel .sa-dl-info small{font-size:11.5px}
.sa-delivery-panel .sa-dl-btn{min-width:150px;min-height:46px;padding:0 18px;border-radius:12px;font-size:14px;box-shadow:0 7px 16px rgba(18,103,237,.15)}
.sa-delivery-review-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px;margin-top:16px}
.sa-delivery-change-card,.sa-delivery-accept-card{border-radius:16px;padding:20px;box-shadow:0 5px 18px rgba(32,54,100,.035)}
.sa-delivery-card-head{gap:11px;margin-bottom:13px}
.sa-delivery-card-icon{width:44px;height:44px;border-radius:13px}
.sa-delivery-card-head h3{font-size:20px;margin:1px 0 3px}
.sa-delivery-card-head p{font-size:13px;line-height:1.45}
.sa-delivery-revision-form textarea{min-height:94px;height:94px;padding:12px 14px;border-radius:13px;font-size:13.5px;line-height:1.5}
.sa-delivery-count{font-size:11px;margin-top:4px}
.sa-delivery-revision-btn,.sa-delivery-accept-btn{min-height:46px;border-radius:12px;font-size:14px;gap:8px}
.sa-delivery-revision-btn{margin-top:6px}
.sa-delivery-accept-btn{margin-top:2px;box-shadow:0 7px 16px rgba(16,185,119,.14)}
.sa-delivery-dispute{margin-top:12px!important;padding-top:10px!important;gap:7px}
.sa-dispute-link{font-size:11px;padding:4px 7px;gap:5px}
.sa-delivery-dispute small{font-size:10.5px;line-height:1.4}
.sa-delivery-refund{margin-top:16px}
@media (max-width:900px){.sa-delivery-panel{max-width:100%}}
@media (max-width:560px){.sa-delivery-panel{margin-top:14px}.sa-delivery-check{width:50px;height:50px}.sa-delivery-title{gap:12px}.sa-delivery-title h2{font-size:23px}.sa-delivery-title p{font-size:12.5px}.sa-delivery-panel .sa-dlcard{align-items:flex-start;flex-wrap:wrap}.sa-delivery-panel .sa-dl-type{width:58px;height:58px}.sa-delivery-panel .sa-dl-info{flex:1 1 calc(100% - 72px)}.sa-delivery-panel .sa-dl-btn{flex:1 1 100%;width:100%}.sa-delivery-change-card,.sa-delivery-accept-card{padding:16px}.sa-delivery-card-head h3{font-size:19px}.sa-delivery-revision-form textarea{height:88px;min-height:88px}}

/* ===== Order status + dispute panel (2.2.8) ===== */
.sa-order-status-panel{margin:12px 0 18px;padding:18px 20px;border:1px solid var(--sa-border);border-radius:18px;background:var(--sa-surface);box-shadow:0 8px 28px rgba(20,35,80,.045)}
.sa-order-status-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.sa-order-status-top h3{margin:0 0 3px;font-size:18px;line-height:1.2;color:var(--sa-text)}
.sa-order-status-top span{font-size:12px;color:var(--sa-text3)}
.sa-order-status-id{font-size:12px!important;color:var(--sa-text3)!important;white-space:nowrap;padding-top:2px}
.sa-order-status-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sa-order-status-step{min-width:0;text-align:left;position:relative;color:var(--sa-text3)}
.sa-order-status-line{height:28px;display:flex;align-items:center;position:relative;margin-bottom:7px}
.sa-order-status-line:before{content:'';position:absolute;left:0;right:-10px;top:50%;height:4px;border-radius:99px;background:var(--sa-surface3);transform:translateY(-50%)}
.sa-order-status-step:last-child .sa-order-status-line:before{right:0}
.sa-order-status-node{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--sa-surface3);color:var(--sa-text3);border:3px solid var(--sa-surface)}
.sa-order-status-step.is-done{color:var(--sa-text2)}
.sa-order-status-step.is-done .sa-order-status-line:before{background:var(--sa-green)}
.sa-order-status-step.is-done .sa-order-status-node{background:var(--sa-green);color:#fff}
.sa-order-status-step.is-current{color:var(--sa-text)}
.sa-order-status-step.is-current .sa-order-status-line:before{background:var(--sa-accent)}
.sa-order-status-step.is-current .sa-order-status-node{background:var(--sa-accent);color:#fff;box-shadow:0 5px 14px rgba(35,90,220,.18)}
.sa-order-status-step strong{display:block;font-size:12.5px;line-height:1.25}
.sa-order-status-step time{display:block;margin-top:4px;font-size:10.5px;line-height:1.35;color:var(--sa-text3);white-space:normal}
.sa-order-dispute-panel{margin-top:18px;padding:17px 18px;border:1px solid #f2d5d8;border-radius:15px;background:linear-gradient(90deg,#fff7f7,#fffafa);display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px;align-items:center}
.sa-order-dispute-panel.is-resolved{border-color:#cfeadd;background:#f5fcf8}
.sa-order-dispute-main{display:flex;gap:13px;align-items:flex-start;min-width:0}
.sa-order-dispute-badge{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;background:#ef5350;color:#fff}
.sa-order-dispute-panel.is-resolved .sa-order-dispute-badge{background:var(--sa-green)}
.sa-order-dispute-main h4{margin:1px 0 5px;font-size:16px;line-height:1.25;color:#a61e22}
.sa-order-dispute-panel.is-resolved .sa-order-dispute-main h4{color:#087a4b}
.sa-order-dispute-main p{margin:0;color:var(--sa-text2);font-size:12.5px;line-height:1.55}
.sa-order-dispute-main p strong{font-weight:800;color:var(--sa-text)}
.sa-order-dispute-link{display:inline-flex;align-items:center;gap:4px;margin-top:9px;padding:0;border:0;background:transparent;color:var(--sa-accent);font:inherit;font-size:12px;font-weight:750;cursor:pointer}
.sa-order-dispute-link:hover{text-decoration:underline}
.sa-order-dispute-link-text{display:inline-block;margin-top:9px;color:var(--sa-accent);font-size:12px;font-weight:750}
.sa-order-dispute-deadline{border-left:1px solid #f0d6d8;padding-left:22px;display:grid;gap:4px;min-width:0}
.sa-order-dispute-panel.is-resolved .sa-order-dispute-deadline{border-color:#d4eadf}
.sa-order-dispute-deadline span{display:flex;align-items:center;gap:7px;color:var(--sa-text3);font-size:12px}
.sa-order-dispute-deadline strong{font-size:13px;color:var(--sa-text);line-height:1.3}
.sa-order-dispute-deadline em{font-style:normal;color:#c72d2d;font-size:12px;font-weight:700}
.sa-order-dispute-penalty{display:inline-block;margin-left:8px;color:#b14e1b;font-weight:750}
@media(max-width:760px){
  .sa-order-status-panel{padding:15px 14px;border-radius:15px}
  .sa-order-status-top{margin-bottom:15px}
  .sa-order-status-top h3{font-size:16px}
  .sa-order-status-track{gap:4px}
  .sa-order-status-line{height:24px;margin-bottom:6px}
  .sa-order-status-line:before{height:3px;right:-4px}
  .sa-order-status-node{width:24px;height:24px;border-width:2px}
  .sa-order-status-step strong{font-size:11px}
  .sa-order-status-step time{font-size:9.5px}
  .sa-order-dispute-panel{grid-template-columns:1fr;gap:14px;padding:14px}
  .sa-order-dispute-deadline{border-left:0;border-top:1px solid #f0d6d8;padding:12px 0 0}
  .sa-order-dispute-panel.is-resolved .sa-order-dispute-deadline{border-top-color:#d4eadf}
}
@media(max-width:480px){
  .sa-order-status-id{display:none}
  .sa-order-status-step time{font-size:9px}
  .sa-order-status-main{gap:9px}
}

.sa-order-dispute-closed-note{display:block;margin-top:6px;font-size:12px;font-weight:700;color:#15803d}
.sa-settings-methods{margin:14px 0 16px;border:1px solid #e7edf7;border-radius:12px;background:#fbfcff;overflow:hidden}.sa-settings-methods-title{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 13px;border-bottom:1px solid #e7edf7;font-size:13px}.sa-settings-method-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;background:#fff;border-bottom:1px solid #edf1f7}.sa-settings-method-row:last-child{border-bottom:0}.sa-settings-method-row strong{display:block;font-size:13px}.sa-settings-method-row small{display:block;margin-top:2px;color:#7b879d;font-size:11px}

.sa-delivery-time-fields{display:flex;gap:8px;align-items:end}
.sa-delivery-time-fields label{display:flex;align-items:center;gap:5px;flex:1;min-width:0}
.sa-delivery-time-fields input{width:100%;min-width:0}
.sa-delivery-time-fields small{color:var(--sa-text3);font-size:12px;white-space:nowrap}
.sa-field-help{display:block;margin-top:5px;color:var(--sa-text3);font-size:12px;line-height:1.35}
.sa-bid-time-row{align-items:start}
@media(max-width:680px){.sa-delivery-time-fields{max-width:220px}}

/* Writer directory */
.sa-writers-hero{display:flex;justify-content:space-between;gap:28px;align-items:center;margin-bottom:18px;padding:4px 2px}
.sa-writers-hero h2{margin:4px 0 6px;font-size:34px;letter-spacing:-.04em;color:var(--sa-text)}
.sa-writers-hero h2 em{font-style:normal;color:var(--sa-accent)}
.sa-writers-hero p{margin:0;color:var(--sa-text2);font-size:15px}
.sa-writers-trust{display:flex;gap:0;border:1px solid var(--sa-border);background:var(--sa-surface);border-radius:16px;padding:10px 4px;box-shadow:var(--sa-shadow-sm)}
.sa-writers-trust span{min-width:150px;padding:4px 18px;display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:center;border-right:1px solid var(--sa-border)}
.sa-writers-trust span:last-child{border-right:0}.sa-writers-trust .sa-i{grid-row:1/3;color:var(--sa-accent)}.sa-writers-trust b{font-size:12px}.sa-writers-trust small{font-size:10px;color:var(--sa-text3)}
.sa-writers-searchbar{display:flex;gap:10px;padding:9px;border:1px solid var(--sa-border);background:var(--sa-surface);border-radius:14px;box-shadow:var(--sa-shadow-sm)}
.sa-writers-search{flex:1;background:var(--sa-surface2);border:0;min-height:44px}.sa-writers-search input{font-size:14px}
.sa-writers-popular{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 18px;font-size:12px}.sa-writers-popular button,.sa-writers-popular span{border:1px solid var(--sa-border);background:var(--sa-surface2);color:var(--sa-text2);padding:7px 12px;border-radius:999px;cursor:pointer}.sa-writers-popular button:hover{border-color:var(--sa-accent);color:var(--sa-accent)}
.sa-writers-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;align-items:start}.sa-writers-filters{padding:18px;position:sticky;top:16px}.sa-writers-filters h3{margin:0 0 18px}.sa-writer-filter-group{border-top:1px solid var(--sa-border);margin-top:15px;padding-top:15px}.sa-writer-filter-group>strong{display:block;margin-bottom:9px;font-size:12px}.sa-writer-filter-group label{display:flex;align-items:center;gap:9px;margin:8px 0;font-size:12px}.sa-writer-filter-group input{accent-color:var(--sa-accent)}.sa-writer-filter-group span{display:flex;gap:7px;align-items:center}.sa-writers-apply{width:100%;margin-top:16px}.sa-writers-clear{width:100%;justify-content:center;margin-top:5px}
.sa-writers-results-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.sa-writers-results-head strong{font-size:15px}.sa-writers-results-head label{font-size:12px;color:var(--sa-text2);display:flex;gap:7px;align-items:center}.sa-writers-results-head select{border:1px solid var(--sa-border);border-radius:9px;padding:7px 28px 7px 9px;background:var(--sa-surface)}
.sa-writer-list{display:grid;gap:10px}.sa-writer-directory-card{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:14px;padding:16px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface);box-shadow:var(--sa-shadow-sm)}.sa-writer-dir-head{display:flex;gap:12px;align-items:center}.sa-writer-dir-head h3{margin:0 0 3px;font-size:16px}.sa-writer-dir-head p{margin:4px 0 0;font-size:12px;color:var(--sa-text2)}.sa-writer-dir-status{font-size:11px;color:var(--sa-text3)}.sa-writer-dir-status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#18b879;margin-right:5px}.sa-writer-dir-stats{display:flex;margin:13px 0 9px;border-top:1px solid var(--sa-border);border-bottom:1px solid var(--sa-border);padding:9px 0}.sa-writer-dir-stats span{flex:1;padding:0 12px;border-right:1px solid var(--sa-border)}.sa-writer-dir-stats span:first-child{padding-left:0}.sa-writer-dir-stats span:last-child{border-right:0}.sa-writer-dir-stats b{display:block;font-size:15px}.sa-writer-dir-stats small{color:var(--sa-text3);font-size:10px}.sa-writer-dir-chips{display:flex;gap:6px;flex-wrap:wrap}.sa-writer-dir-chips span{font-size:10px;padding:5px 8px;border-radius:7px;background:var(--sa-surface2);color:var(--sa-text2)}.sa-writer-dir-actions{display:flex;flex-direction:column;justify-content:center;gap:8px;border-left:1px solid var(--sa-border);padding-left:14px}.sa-writer-dir-actions .sa-btn{width:100%;justify-content:center}.sa-wprof-head{display:flex;gap:12px;align-items:center;margin-bottom:18px}.sa-wprof-head h3{margin:0 0 4px}.sa-wprof-head p{margin:0 0 5px;color:var(--sa-text2)}.sa-wprof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.sa-wprof-grid>div{padding:12px;border:1px solid var(--sa-border);border-radius:10px;background:var(--sa-surface2)}.sa-wprof-grid strong{display:block;font-size:18px}.sa-wprof-grid span{font-size:10px;color:var(--sa-text3)}
@media(max-width:1050px){.sa-writers-hero{align-items:flex-start;flex-direction:column}.sa-writers-trust{width:100%}.sa-writers-layout{grid-template-columns:1fr}.sa-writers-filters{position:static}.sa-writer-directory-card{grid-template-columns:1fr}.sa-writer-dir-actions{border-left:0;border-top:1px solid var(--sa-border);padding:12px 0 0;flex-direction:row}.sa-writer-dir-actions .sa-btn{width:auto;flex:1}}
@media(max-width:650px){.sa-writers-trust{display:none}.sa-writers-hero h2{font-size:27px}.sa-writers-searchbar{flex-direction:column}.sa-writers-searchbar .sa-btn{width:100%}.sa-writers-results-head{align-items:flex-start;gap:10px;flex-direction:column}.sa-writer-dir-stats{gap:0}.sa-writer-dir-stats span{padding:0 7px}.sa-writer-dir-actions{flex-direction:column}.sa-writer-dir-actions .sa-btn{width:100%}.sa-wprof-grid{grid-template-columns:1fr}}

/* Full student-facing writer profile */
.sa-public-writer{--pw-blue:#1f5fe8;--pw-green:#12b878;max-width:1180px;margin:0 auto}.sa-public-profile-head{display:flex;justify-content:space-between;gap:26px;padding:22px;border:1px solid var(--sa-border);border-radius:16px;background:var(--sa-surface);box-shadow:var(--sa-shadow-sm);margin-bottom:14px}.sa-public-profile-main{display:flex;gap:22px;align-items:center;min-width:0}.sa-public-profile-main>.sa-avatar{flex:0 0 auto}.sa-public-profile-copy{min-width:0}.sa-public-breadcrumb{font-size:11px;color:var(--sa-text3);margin-bottom:9px}.sa-public-breadcrumb span{padding:0 5px}.sa-public-name-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.sa-public-name-row h1{font-size:28px;letter-spacing:-.03em;margin:0;color:var(--sa-text)}.sa-public-status{font-size:12px;color:var(--sa-text2);margin:7px 0}.sa-public-status i,.sa-public-online i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#aab3c4;margin-right:7px}.sa-public-status i.is-online,.sa-public-online i.is-online{background:#19b97a;box-shadow:0 0 0 5px rgba(25,185,122,.12)}.sa-public-role{font-size:14px;color:var(--sa-text2);font-weight:600;margin:8px 0}.sa-public-role span{color:var(--sa-border-strong,#cfd6e4);padding:0 7px}.sa-public-credentials{display:flex;gap:22px;flex-wrap:wrap;margin:13px 0 11px}.sa-public-credentials span{display:flex;gap:7px;align-items:center;font-size:12px;color:var(--sa-text2)}.sa-public-credentials .sa-i{color:var(--pw-blue)}.sa-public-chips,.sa-public-subjects{display:flex;gap:7px;flex-wrap:wrap}.sa-public-chips span,.sa-public-subjects span{font-size:11px;padding:7px 10px;border-radius:9px;background:var(--sa-surface2);color:var(--sa-text2);border:1px solid rgba(31,95,232,.05)}.sa-public-profile-side{min-width:265px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:17px}.sa-public-topbadge{display:flex;gap:10px;align-items:center;background:#eefbf5;border-radius:12px;padding:12px 14px;color:#087c52}.sa-public-topbadge .sa-i{color:#0aa76d}.sa-public-topbadge strong,.sa-public-topbadge small{display:block}.sa-public-topbadge strong{font-size:13px}.sa-public-topbadge small{font-size:10px;margin-top:3px;color:#4b7768}.sa-public-rating{display:flex;align-items:center;gap:8px;justify-content:flex-end}.sa-public-rating-num{font-size:20px;font-weight:800;color:var(--sa-text)}.sa-public-rating-reviews{font-size:11px;color:var(--sa-text3)}.sa-public-profile-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start}.sa-public-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--sa-border);background:var(--sa-surface);border-radius:13px;margin-bottom:14px;overflow:auto}.sa-public-tabs a{display:flex;align-items:center;gap:6px;padding:11px 13px;border-radius:9px;color:var(--sa-text2);font-size:12px;white-space:nowrap;text-decoration:none}.sa-public-tabs a.is-active,.sa-public-tabs a:hover{color:var(--pw-blue);background:#edf3ff}.sa-public-card{scroll-margin-top:24px}.sa-public-tabs a{transition:background .18s ease,color .18s ease}padding:20px;border:1px solid var(--sa-border);border-radius:15px;background:var(--sa-surface);box-shadow:var(--sa-shadow-sm);margin-bottom:14px}.sa-public-card-title{display:flex;align-items:center;gap:9px;margin-bottom:15px}.sa-public-card-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#edf3ff;color:var(--pw-blue)}.sa-public-card-title h2,.sa-public-card-title h3{margin:0;color:var(--sa-text)}.sa-public-card-title h2{font-size:19px}.sa-public-card-title h3{font-size:16px}.sa-about-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:22px}.sa-public-card p{font-size:13px;line-height:1.75;color:var(--sa-text2);margin:0}.sa-public-checks,.sa-public-why ul{list-style:none;padding:0;margin:16px 0 0}.sa-public-checks li{display:flex;align-items:center;gap:8px;margin:9px 0;font-size:12px;color:var(--sa-text2)}.sa-public-checks .sa-i{color:#12aa6e}.sa-public-why{background:#f3f7ff;border-radius:12px;padding:15px}.sa-public-why h3{font-size:14px;margin:0 0 9px}.sa-public-why li{display:flex;gap:8px;margin:9px 0;font-size:11px;color:var(--sa-text2)}.sa-public-why .sa-i{color:var(--pw-blue);flex:0 0 auto}.sa-public-review{padding:14px 0;border-bottom:1px solid var(--sa-border)}.sa-public-review:first-child{padding-top:0}.sa-public-review:last-child{border-bottom:0;padding-bottom:0}.sa-public-review-top{display:flex;align-items:center;gap:10px}.sa-review-avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#eaf1ff;color:var(--pw-blue);font-weight:700;font-size:12px}.sa-public-review-top strong,.sa-public-review-top small{display:block}.sa-public-review-top strong{font-size:12px}.sa-public-review-top small{font-size:10px;color:var(--sa-text3);margin-top:2px}.sa-public-review-stars{margin-left:auto;white-space:nowrap}.sa-public-review-stars b{font-size:11px;margin-left:3px}.sa-public-review p{margin:9px 0 0!important}.sa-public-empty{padding:18px;background:var(--sa-surface2);border-radius:10px;color:var(--sa-text3);font-size:12px}.sa-public-action-card{padding:18px;border:1px solid var(--sa-border);border-radius:15px;background:var(--sa-surface);box-shadow:var(--sa-shadow-sm);margin-bottom:14px}.sa-public-action-card .sa-btn{width:100%;justify-content:center;margin-bottom:9px}.sa-public-hire{background:var(--pw-green)!important;border-color:var(--pw-green)!important}.sa-public-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:13px;background:var(--sa-border);border:1px solid var(--sa-border);border-radius:11px;overflow:hidden}.sa-public-stat-grid div{padding:12px;background:var(--sa-surface)}.sa-public-stat-grid strong,.sa-public-stat-grid span{display:block}.sa-public-stat-grid strong{font-size:16px}.sa-public-stat-grid span{font-size:10px;color:var(--sa-text3);margin-top:3px}.sa-public-availability h3{margin:0 0 15px}.sa-public-online{display:flex;gap:10px;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--sa-border)}.sa-public-online strong,.sa-public-online span{display:block}.sa-public-online strong{font-size:14px;color:#0a9761}.sa-public-online span{font-size:11px;color:var(--sa-text3);margin-top:3px}.sa-public-side-row{display:flex;justify-content:space-between;gap:10px;padding-top:14px;font-size:11px}.sa-public-side-row span{display:flex;gap:7px;align-items:center;color:var(--sa-text2)}.sa-public-side-row .sa-i{color:var(--pw-blue)}.sa-public-side-row b{font-size:11px}.sa-public-card .sa-public-subjects span{background:#eef3fb}.sa-public-profile-head .sa-avatar{width:150px;height:150px}
@media(max-width:950px){.sa-public-profile-head{flex-direction:column}.sa-public-profile-side{min-width:0}.sa-public-rating{justify-content:flex-start}.sa-public-profile-grid{grid-template-columns:1fr}.sa-about-layout{grid-template-columns:1fr}.sa-public-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sa-public-sidebar .sa-public-card{margin-bottom:0}.sa-public-action-card{margin-bottom:0}}
@media(max-width:620px){.sa-public-profile-head{padding:15px}.sa-public-profile-main{align-items:flex-start;flex-direction:column}.sa-public-profile-head .sa-avatar{width:100px;height:100px}.sa-public-name-row h1{font-size:24px}.sa-public-profile-side{gap:12px}.sa-public-profile-grid{display:block}.sa-public-sidebar{display:block}.sa-public-sidebar .sa-public-card{margin-bottom:14px}.sa-public-tabs a{padding:10px 9px;font-size:11px}.sa-public-card{padding:15px}.sa-public-stat-grid{grid-template-columns:1fr 1fr}}

/* ===== 2.3.11: modern writer bid board refresh ===== */
.sa-board-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 18px;padding:24px 28px;border:1px solid var(--sa-border);border-radius:22px;background:linear-gradient(135deg,var(--sa-surface),var(--sa-blue-soft));box-shadow:var(--sa-shadow)}
.sa-board-hero-main{min-width:0}
.sa-board-eyebrow{display:block;margin-bottom:5px;color:var(--sa-text3);font-size:11px;font-weight:800;letter-spacing:.12em}
.sa-board-hero h1{margin:0;font-family:var(--sa-font-head);font-size:30px;line-height:1.1;letter-spacing:-.035em;color:var(--sa-text)}
.sa-board-hero p{margin:7px 0 0;color:var(--sa-text2);font-size:14px;line-height:1.5}
.sa-board-hero-actions{display:flex;align-items:center;gap:10px;flex:none}
.sa-board-balance,.sa-board-live{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:9px 12px;border-radius:11px;background:var(--sa-surface);border:1px solid var(--sa-border);color:var(--sa-text2);font-size:12px;font-weight:700}
.sa-board-live{color:#0f9d63;background:var(--sa-green-soft);border-color:color-mix(in srgb,var(--sa-green) 22%,transparent)}
.sa-board-tools{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.sa-board-tools .sa-search{min-height:48px;border-radius:14px;background:var(--sa-surface);box-shadow:0 6px 20px rgba(23,43,77,.045)}
.sa-board-tools .sa-search input{font-size:14px}
.sa-board-browse{min-height:48px;white-space:nowrap;border-radius:13px;padding:0 18px}
.sa-board-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;margin-bottom:14px}
.sa-board-summary>div{display:flex;align-items:baseline;gap:8px;padding:12px 15px;border:1px solid var(--sa-border);border-radius:14px;background:var(--sa-surface)}
.sa-board-summary strong{font-family:var(--sa-font-head);font-size:18px;font-weight:800;color:var(--sa-text)}
.sa-board-summary span{font-size:12px;color:var(--sa-text3);font-weight:650}
.sa-board-summary-live{justify-content:center;align-items:center!important;background:var(--sa-green-soft)!important;border-color:color-mix(in srgb,var(--sa-green) 20%,transparent)!important}
.sa-board-summary-live span{color:#0f9d63}
.sa-board .sa-pills{gap:8px;margin-bottom:16px}
.sa-board .sa-pilltab{padding:8px 14px;font-size:12.5px;background:var(--sa-surface)}
.sa-board .sa-pilltab.is-active{box-shadow:0 3px 10px var(--sa-accent-soft)}
.sa-feed-note{margin-bottom:12px;padding:10px 13px;border-radius:12px;font-size:12.5px}
.sa-jobs2{gap:12px}
.sa-jc{gap:11px;padding:18px 20px 15px;border-left-width:4px;border-radius:17px;box-shadow:0 5px 18px rgba(23,43,77,.055)}
.sa-jc:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(23,43,77,.09)}
.sa-jc-head{gap:16px}
.sa-jc-title{gap:4px}
.sa-jc-id{font-size:12px}
.sa-jc h3{font-size:17px;line-height:1.28}
.sa-jc-price strong{font-size:23px}
.sa-jc-price small{font-size:11px}
.sa-jc-tags{gap:6px}
.sa-jc-tags span{padding:4px 9px;font-size:11px}
.sa-jc-desc{font-size:13px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sa-jc-meta{gap:6px 16px;font-size:12px}
.sa-jc-meta span{gap:5px}
.sa-jc-status{font-size:11.5px}
.sa-jc-foot{gap:8px;padding-top:11px}
.sa-jc-foot .sa-btn{padding:8px 13px;font-size:12px}
.sa-board-side{gap:14px;top:76px}
.sa-board-count{padding:22px 18px;border-radius:18px;box-shadow:0 12px 28px var(--sa-accent-soft)}
.sa-board-count strong{font-size:42px}
.sa-board-count span{font-size:14px}
.sa-board-count em{font-size:12px;margin-top:7px}
.sa-board-card{padding:17px 18px;gap:11px;border-radius:17px}
.sa-board-card h4{font-size:14px}
.sa-check{font-size:12.5px;gap:9px;padding:6px 8px;border-radius:9px}
.sa-check:hover{background:var(--sa-surface2)}
.sa-tipslist{gap:9px;font-size:12px}
@media (max-width:900px){
  .sa-board-hero{padding:20px;align-items:flex-start}
  .sa-board-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sa-board-summary-live{grid-column:1/-1}
}
@media (max-width:620px){
  .sa-board-hero{display:block;padding:18px;border-radius:16px}
  .sa-board-hero h1{font-size:25px}
  .sa-board-hero-actions{margin-top:13px;display:flex;flex-wrap:wrap}
  .sa-board-tools{display:block}
  .sa-board-tools .sa-search{width:100%;margin-bottom:9px}
  .sa-board-browse{width:100%;justify-content:center}
  .sa-board-summary{grid-template-columns:1fr 1fr;gap:8px}
  .sa-board-summary>div{padding:10px 11px;display:grid;gap:1px}
  .sa-board-summary-live{display:flex!important}
  .sa-jc{padding:15px 14px 13px}
  .sa-jc-head{display:block}
  .sa-jc-price{margin-top:7px;display:flex;align-items:baseline;gap:7px;justify-content:flex-start}
  .sa-jc-foot{flex-wrap:wrap}
  .sa-jc-foot .sa-btn{flex:1;justify-content:center;min-width:120px}
}

/* automatic sign-out warning */
.sa-timeout-dlg{width:min(420px,calc(100vw - 24px))}
.sa-timeout-dlg .sa-dialog-body{text-align:center}
.sa-timeout-count{font-size:40px;font-weight:800;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--sa-accent,#4f63d2);line-height:1.1}
.sa-timeout-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:4px}
.sa-timeout-actions .sa-btn{min-width:150px;justify-content:center}
