:root{--font-sans:Inter,"Segoe UI",Roboto,Arial,sans-serif;--color-bg:#f6f6f8;--color-surface:#fff;--color-surface-muted:#f1f1f4;--color-text:#1a1a1f;--color-text-muted:#63636e;--color-text-inverse:#fff;--color-link:#1a1a1f;--color-brand-dark:#17171c;--color-brand-dark-2:#22222a;--color-primary:#e61f6f;--color-primary-hover:#ca1a61;--color-primary-contrast:#fff;--color-border:#dedee3;--color-border-strong:#cfcfd6;--color-badge-bg:#eaf2ff;--color-badge-text:#194ea8;--color-success-bg:#eaf8ee;--color-success-text:#146c2e;--color-warning-bg:#fff4d6;--color-warning-text:#7a5a00;--color-danger-bg:#ffe7ec;--color-danger-text:#a11443;--radius-card:12px;--radius-control:8px;--radius-pill:999px;--space-page:20px;--space-card:16px;--space-cell:10px;--shadow-card:0 1px 4px rgba(0,0,0,.08);--shadow-soft:0 6px 20px rgba(16,16,20,.08)}*{box-sizing:border-box}body{font-family:var(--font-sans);margin:0;background:var(--color-bg);color:var(--color-text)}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-primary)}.container{max-width:1120px;margin:0 auto;padding:var(--space-page)}.card{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-card);box-shadow:var(--shadow-card);border:1px solid var(--color-border)}.grid{display:grid;grid-gap:12px;gap:12px}.grid-2{grid-template-columns:1fr 1fr}label{color:var(--color-text);font-size:13px;font-weight:550}input,select,textarea{width:100%;padding:10px 12px;margin-top:6px;margin-bottom:12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);font:inherit;color:var(--color-text);background:var(--color-surface);min-height:44px}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(230,31,111,.28)}button{background:var(--color-primary);color:var(--color-primary-contrast);border:1px solid var(--color-primary);border-radius:var(--radius-control);padding:10px 14px;min-height:44px;cursor:pointer;font:inherit;font-weight:600}button:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}button:disabled{opacity:.65;cursor:not-allowed}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong)}.btn-secondary:hover{background:var(--color-surface-muted);border-color:var(--color-text)}.btn-ghost{background:transparent;color:var(--color-text);border:1px solid transparent}.btn-ghost:hover{background:var(--color-surface-muted)}table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;overflow:hidden}td,th{text-align:left;border-bottom:1px solid var(--color-border);padding:var(--space-cell);font-size:14px}th{background:var(--color-surface-muted);color:var(--color-text);font-weight:600}tbody tr:hover{background:#fbfbfd}h1,h2,h3,h4,h5,h6,label,p{color:var(--color-text)}h2,h3,p{margin:0 0 10px}.badge,.chip{display:inline-flex;align-items:center;padding:4px 10px;background:var(--color-badge-bg);color:var(--color-badge-text);border-radius:var(--radius-pill);font-size:12px;font-weight:600}.chip-success{background:var(--color-success-bg);color:var(--color-success-text)}.chip-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.chip-danger{background:var(--color-danger-bg);color:var(--color-danger-text)}header{background:var(--color-brand-dark);border-bottom:1px solid #2c2c35}header a,header strong{color:var(--color-text-inverse)}header a{opacity:.92}header a:hover{color:#ff6aa3}header .nav-link-button{background:none;border:none;color:var(--color-text-inverse);cursor:pointer;font:inherit;font-weight:400;line-height:normal;min-height:auto;opacity:.92;padding:0;text-decoration:none}header .nav-link-button:hover{color:#ff6aa3;opacity:1}.notice-error{color:var(--color-danger-text)}.notice-warning{color:var(--color-warning-text)}.notice-success{color:var(--color-success-text)}.login-container{display:flex;justify-content:center;align-items:center;min-height:calc(80vh - 100px);padding:20px}.login-card{width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:22px}.alert{padding:12px 14px;margin-bottom:16px;border:1px solid transparent;border-radius:var(--radius-control);font-size:14px}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}@media (max-width:900px){.grid-2{grid-template-columns:1fr}}.order-form-v2{display:grid;grid-gap:18px;gap:18px}.order-section{border:1px solid var(--color-border);border-radius:var(--radius-card);padding:16px;background:var(--color-surface);box-shadow:var(--shadow-card);display:grid;grid-gap:14px;gap:14px}.order-block{border:1px dashed var(--color-border);border-radius:var(--radius-card);padding:12px;margin-bottom:10px;background:var(--color-surface-muted)}.job-detail-page{display:grid;grid-gap:16px;gap:16px}.job-detail-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:start;padding:18px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);box-shadow:var(--shadow-soft)}.job-detail-hero h1{margin:4px 0 0;font-size:32px;line-height:1.1}.job-detail-actions,.job-detail-badges,.job-detail-subtitle{display:flex;flex-wrap:wrap;gap:8px}.job-detail-subtitle{margin-top:8px;color:var(--color-text-muted)}.job-detail-subtitle span,.job-detail-subtitle strong{overflow-wrap:anywhere}.job-detail-badges{margin-top:14px}.job-detail-actions{justify-content:flex-end;max-width:420px}.job-detail-action{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-size:14px;font-weight:700}.job-detail-action:hover{border-color:var(--color-text);background:var(--color-surface-muted);color:var(--color-text)}.job-detail-action.is-primary{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-primary-contrast)}.job-detail-action.is-primary:hover{border-color:var(--color-primary-hover);background:var(--color-primary-hover);color:var(--color-primary-contrast)}.job-detail-signal-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px}.job-detail-signal-grid>div{min-height:86px;display:grid;align-content:space-between;grid-gap:8px;gap:8px;padding:12px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.job-detail-label,.job-detail-list dt,.job-detail-signal-grid span{color:var(--color-text-muted);font-size:12px;font-weight:700;text-transform:uppercase}.job-detail-signal-grid strong{min-width:0;overflow-wrap:anywhere;font-size:18px;line-height:1.15}.job-detail-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start}.job-detail-layout,.job-detail-main,.job-detail-side{display:grid;grid-gap:16px;gap:16px}.job-detail-side{position:-webkit-sticky;position:sticky;top:16px}.job-detail-panel{display:grid;grid-gap:14px;gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:var(--shadow-card)}.job-detail-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.job-detail-panel-heading h2{margin:4px 0 0;font-size:20px}.job-detail-panel-heading .badge{flex:0 0 auto}.job-detail-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.job-detail-list{display:grid;grid-gap:10px;gap:10px;margin:0}.job-detail-list>div{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);grid-gap:10px;gap:10px;align-items:baseline;padding-bottom:10px;border-bottom:1px solid var(--color-border)}.job-detail-list>div:last-child{padding-bottom:0;border-bottom:0}.job-detail-list dd{min-width:0;margin:0;overflow-wrap:anywhere}.job-detail-side .job-detail-list>div{grid-template-columns:1fr;gap:4px}.job-detail-copy-block{min-height:44px;padding:12px;border:1px solid var(--color-border);border-radius:10px;background:#fbfbfd;color:var(--color-text);overflow-wrap:anywhere;white-space:pre-wrap}.job-detail-table-wrap{overflow-x:auto}.job-detail-table td:first-child,.job-detail-table th:first-child{width:92px}.job-detail-checks{display:grid;grid-gap:10px;gap:10px}.job-detail-checks>div{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center}.job-detail-checks strong{min-width:0;overflow-wrap:anywhere}.job-detail-muted{color:var(--color-text-muted);margin:0}.job-detail-panel form h3{margin-top:0}.order-wizard-shell{width:min(980px,100%);margin:0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow-soft);padding:18px;display:grid;grid-gap:16px;gap:16px}.order-wizard-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.order-wizard-header>button{flex:0 0 auto}.order-wizard-choice h3,.order-wizard-header h1,.order-wizard-header h2{margin:4px 0 0}.order-wizard-header p{color:var(--color-text-muted);margin:6px 0 0;max-width:720px}.order-wizard-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;padding:8px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-muted)}.order-wizard-step{min-height:56px;padding:8px 10px;display:flex;align-items:center;gap:8px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:10px;text-align:left}.order-wizard-step:hover{background:#fbfbfd;border-color:var(--color-primary);color:var(--color-text)}.order-wizard-step span{width:24px;height:24px;flex:0 0 24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:12px;font-weight:800}.order-wizard-step strong{min-width:0;overflow-wrap:anywhere;font-size:13px}.order-wizard-step.is-current{background:var(--color-brand-dark);border-color:var(--color-brand-dark);color:var(--color-text-inverse)}.order-wizard-step.is-current span{background:var(--color-primary);color:var(--color-primary-contrast)}.order-wizard-step.is-visited:not(.is-current) span{background:var(--color-badge-bg);color:var(--color-badge-text)}.order-wizard-step-description{margin:-4px 0 0;color:var(--color-text-muted)}.order-wizard-section{padding:16px;background:var(--color-surface)}.order-wizard-context,.order-wizard-section{border:1px solid var(--color-border);border-radius:12px}.order-wizard-context{display:grid;grid-gap:4px;gap:4px;padding:12px;background:#fbfbfd}.order-wizard-footer{position:-webkit-sticky;position:sticky;bottom:0;z-index:2;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px;background:linear-gradient(to bottom,hsla(0,0%,100%,.78),var(--color-surface) 34%)}.order-wizard-footer>div{display:flex;gap:8px;flex-wrap:wrap}.order-wizard-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.order-wizard-choice{min-height:180px;display:grid;align-content:space-between;grid-gap:14px;gap:14px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface)}.order-wizard-choice:hover{border-color:var(--color-primary);box-shadow:var(--shadow-card)}.order-wizard-mini-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.order-wizard-mini-flow span{padding:10px 12px;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-muted);color:var(--color-text);font-size:13px;font-weight:700}@media (max-width:900px){.job-detail-hero,.job-detail-layout,.job-detail-list>div,.job-detail-two-column{grid-template-columns:1fr}.job-detail-side{position:static}.job-detail-actions{justify-content:flex-start;max-width:none}.job-detail-signal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.order-wizard-choice-grid,.order-wizard-mini-flow,.order-wizard-stepper{grid-template-columns:1fr}.order-wizard-header{display:grid}.order-wizard-header>button{justify-self:start}}@media (max-width:560px){.job-detail-hero h1{font-size:26px}.job-detail-signal-grid{grid-template-columns:1fr}}