:root{--bg:#F0F3F6;--panel:#FFFFFF;--panel-strong:#E8ECF0;--ink:#1A1A2E;--muted:#5A6478;--line:#D4DAE3;--accent:#1F4E79;--accent-hover:#173B5E;--accent-soft:#E3EDF6;--accent-dark:#0F2A45;--secondary:#2E7D6E;--secondary-soft:#E0F2ED;--highlight:#7A4E9A;--highlight-soft:#F0E6F6;--success:#2E7D6E;--success-soft:#E0F2ED;--warning:#C37A16;--warning-soft:#FEF6E8;--danger:#C0392B;--danger-soft:#FCE8E6;--info:#1F4E79;--info-soft:#E3EDF6;--client-accent:#1F4E79;--client-soft:#E3EDF6;--talent-accent:#2E7D6E;--talent-soft:#E0F2ED;--admin-accent:#7A4E9A;--admin-soft:#F0E6F6;--shadow-sm:0 1px 2px rgba(26,26,46,0.06);--shadow:0 2px 8px rgba(26,26,46,0.08);--shadow-lg:0 12px 36px rgba(26,26,46,0.1);--shadow-focus:0 0 0 2px rgba(31,78,121,0.25);--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--font:"Aptos","Segoe UI","Helvetica Neue",sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:14px;-webkit-font-smoothing:antialiased}body{font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.45;min-height:100vh}.page-shell{max-width:1960px;margin:0 auto;padding:24px 36px}.card{background:var(--panel);border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.card--elevated{box-shadow:var(--shadow)}.card__header{padding:12px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.card__header h2{font-size:.95rem;font-weight:600;color:var(--ink)}.card__body{padding:16px}.card__footer{padding:10px 16px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.hero{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 60%,#2A6090 100%);border-radius:var(--radius-lg);padding:24px 28px;color:#f5f9ff;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:radial-gradient(circle,rgba(122,78,154,.1) 0,transparent 70%);pointer-events:none}.hero__eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-bottom:4px}.hero__title{font-size:clamp(1.3rem,2.5vw,1.8rem);font-weight:700;line-height:1.2;margin-bottom:6px}.hero__subtitle{font-size:.85rem;line-height:1.5;opacity:.8;max-width:550px}.nav-bar{background:var(--panel);border-bottom:1px solid var(--line);padding:0 24px;justify-content:space-between;height:48px;position:-webkit-sticky;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}.nav-bar,.nav-bar__brand{display:flex;align-items:center}.nav-bar__brand{gap:10px;font-weight:700;font-size:.95rem;color:var(--ink);text-decoration:none}.nav-bar__brand-icon{width:30px;height:30px;background:linear-gradient(135deg,var(--danger) 0,#9B2C2C 100%);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:white;font-weight:800;font-size:.7rem}.nav-bar__links{display:flex;gap:2px;list-style:none}.nav-bar__link{padding:6px 12px;border-radius:var(--radius-sm);color:var(--muted);text-decoration:none;font-size:.82rem;font-weight:500;transition:all .14s ease}.nav-bar__link--active,.nav-bar__link:hover{background:var(--accent-soft);color:var(--accent)}.nav-bar__link--active{font-weight:600}.nav-bar__user{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted)}.nav-bar__avatar{width:30px;height:30px;border-radius:50%;background:var(--highlight-soft);color:var(--highlight);display:flex;font-size:.72rem}.btn,.nav-bar__avatar{align-items:center;justify-content:center;font-weight:600}.btn{display:inline-flex;gap:6px;padding:8px 18px;border-radius:var(--radius-sm);font-family:var(--font);font-size:.82rem;border:1px solid transparent;cursor:pointer;transition:all .14s ease;text-decoration:none;line-height:1.4;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:linear-gradient(180deg,#2A6090 0,var(--accent) 100%);color:white;border-color:var(--accent-hover);box-shadow:0 2px 0 var(--accent-dark),0 3px 6px rgba(0,0,0,.15)}.btn--primary:hover:not(:disabled){background:linear-gradient(180deg,#336FA3,#2A6090);box-shadow:0 2px 0 var(--accent-dark),0 4px 8px rgba(0,0,0,.2)}.btn--primary:active:not(:disabled){box-shadow:0 1px 0 var(--accent-dark);transform:translateY(1px)}.btn--accent{background:linear-gradient(180deg,#2A6090 0,var(--accent) 100%);color:white;border-color:var(--accent-hover);box-shadow:0 2px 0 var(--accent-dark),0 3px 6px rgba(0,0,0,.15)}.btn--accent:hover:not(:disabled){background:linear-gradient(180deg,#336FA3,#2A6090);box-shadow:0 2px 0 var(--accent-dark),0 4px 8px rgba(0,0,0,.2)}.btn--secondary{background:linear-gradient(180deg,#f8f9fa,#e9ecef);color:var(--accent);border:1px solid #ced4da;box-shadow:0 2px 0 #adb5bd,0 3px 6px rgba(0,0,0,.08)}.btn--secondary:hover:not(:disabled){background:linear-gradient(180deg,#ffffff,#f1f3f5);box-shadow:0 2px 0 #adb5bd,0 4px 8px rgba(0,0,0,.12)}.btn--success{background:linear-gradient(180deg,#34C280 0,var(--secondary) 100%);color:white;border-color:#256B5D;box-shadow:0 2px 0 #1B4D43,0 3px 6px rgba(0,0,0,.15)}.btn--success:hover:not(:disabled){background:linear-gradient(180deg,#3DD494,#34C280)}.btn--highlight{background:linear-gradient(180deg,#8B5FB5 0,var(--highlight) 100%);color:white;box-shadow:0 2px 0 #4A2570,0 3px 6px rgba(0,0,0,.15)}.btn--highlight:hover:not(:disabled){background:linear-gradient(180deg,#9B6FC5,#8B5FB5)}.btn--danger{background:linear-gradient(180deg,#E04A3A 0,var(--danger) 100%);color:white;border-color:#A83226;box-shadow:0 2px 0 #7A241A,0 3px 6px rgba(0,0,0,.15)}.btn--danger:hover:not(:disabled){background:linear-gradient(180deg,#E8574A,#E04A3A)}.btn--ghost{background:linear-gradient(180deg,#f8f9fa,#e9ecef);color:var(--accent);padding:8px 18px;border:1px solid #ced4da;box-shadow:0 2px 0 #adb5bd,0 3px 6px rgba(0,0,0,.08)}.btn--ghost:hover:not(:disabled){background:linear-gradient(180deg,#ffffff,#f1f3f5);box-shadow:0 2px 0 #adb5bd,0 4px 8px rgba(0,0,0,.12)}.btn--sm{padding:3px 10px;font-size:.72rem}.btn--lg{padding:10px 24px;font-size:.88rem}.btn--full{width:100%}.field{display:flex;flex-direction:column;gap:4px}.field__label{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.field__label--required:after{content:" *";color:var(--danger)}.field__input{min-height:34px;padding:7px 11px;font-family:var(--font);font-size:.85rem;color:var(--ink);background:#f7f8fa;border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-top:1px solid #b8bfc9;border-left:1px solid #c2c9d3;border-radius:var(--radius-sm);box-shadow:inset 0 1.5px 3px rgba(0,0,0,.08),inset 0 0 0 .5px rgba(0,0,0,.03);transition:all .14s ease;outline:none;width:100%}.field__input:hover{border-color:var(--muted);background:#f3f5f7}.field__input:focus{border-color:var(--accent);background:#fff;box-shadow:inset 0 1px 2px rgba(0,0,0,.06),0 0 0 2.5px rgba(31,78,121,.12)}.field__input--error{border-color:var(--danger)}.field__input--error:focus{box-shadow:0 0 0 2px rgba(192,57,43,.2)}.field__error{font-size:.72rem;color:var(--danger)}.field__hint{font-size:.72rem;color:var(--muted)}select.field__input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%235A6478' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px}textarea.field__input{min-height:72px;resize:vertical}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:6px}.checkbox-item,.radio-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.82rem}.checkbox-item input,.radio-item input{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.chip-group{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:.78rem;font-weight:500;border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer;transition:all .14s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chip--active,.chip:hover{border-color:var(--accent);color:var(--accent)}.chip--active{background:var(--accent-soft);font-weight:600}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.badge--draft{background:var(--panel-strong);color:var(--muted)}.badge--active{background:var(--info-soft);color:var(--info)}.badge--accent{background:var(--accent-soft);color:var(--accent)}.badge--pending{background:var(--warning-soft);color:var(--warning)}.badge--processing,.badge--submitted{background:var(--highlight-soft);color:var(--highlight)}.badge--paid,.badge--success{background:var(--success-soft);color:var(--success)}.badge--cancelled{background:var(--danger-soft);color:var(--danger)}.badge--signed{background:var(--success-soft);color:var(--success)}.badge--sent{background:var(--info-soft);color:var(--info)}.badge--warning{background:var(--warning-soft);color:var(--warning)}.table-wrap{overflow-x:auto}.data-table,.table{width:100%;border-collapse:collapse;font-size:.82rem}.data-table th,.table th{text-align:left;padding:8px 12px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:2px solid var(--line);white-space:nowrap;background:var(--panel-strong)}.data-table td,.table td{padding:8px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table tbody tr:hover,.table tbody tr:hover{background:var(--accent-soft)}.data-table tbody tr:last-child td,.table tbody tr:last-child td{border-bottom:none}tr[data-clickable]{cursor:pointer}tr[data-clickable]:hover{background:rgba(31,78,121,.05)}tr[data-clickable] td a{color:inherit;text-decoration:none}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));grid-gap:10px;gap:10px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.stat-card__label{font-size:.7rem;font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px}.stat-card__value{font-size:1.5rem;font-weight:700}.stat-card__value--success{color:var(--success)}.stat-card__value--warning{color:var(--warning)}.stat-card__value--danger{color:var(--danger)}.stat-card__value--accent{color:var(--accent)}.stat-card__value--highlight{color:var(--highlight)}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:14px}.grid-2,.grid-3{display:grid;gap:14px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:14px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.grid-sidebar{display:grid;grid-template-columns:280px 1fr;grid-gap:16px;gap:16px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.text-muted{color:var(--muted)}.text-sm{font-size:.78rem}.text-xs{font-size:.68rem}.text-center{text-align:center}.font-semibold{font-weight:600}.empty-state{padding:32px 16px;text-align:center;color:var(--muted)}.empty-state__icon{font-size:2rem;margin-bottom:8px;opacity:.4}.empty-state__title{font-size:.95rem;font-weight:600;color:var(--ink);margin-bottom:4px}.empty-state__desc{font-size:.82rem;margin-bottom:14px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 60%,#2A6090 100%);padding:24px}.auth-card{background:var(--panel);border-radius:var(--radius-lg);padding:36px 32px;width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.auth-card__logo{gap:10px;margin-bottom:24px}.auth-card__logo,.auth-card__logo-icon{display:flex;align-items:center;justify-content:center}.auth-card__logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--danger) 0,#9B2C2C 100%);border-radius:var(--radius);color:white;font-weight:800;font-size:1rem}.auth-card__logo-text{font-size:1.15rem;font-weight:700;color:var(--ink)}.auth-card__title{font-size:1.15rem;font-weight:700;text-align:center;margin-bottom:6px}.auth-card__subtitle{font-size:.82rem;color:var(--muted);text-align:center;margin-bottom:20px}.auth-card__form{display:flex;flex-direction:column;gap:14px}.auth-card__footer{margin-top:16px;text-align:center;font-size:.82rem;color:var(--muted)}.auth-card__footer a{color:var(--accent);text-decoration:none;font-weight:600}.auth-card__footer a:hover{text-decoration:underline}.alert{padding:10px 14px;border-radius:var(--radius-sm);font-size:.82rem;display:flex;align-items:flex-start;gap:8px}.alert--error{background:var(--danger-soft);color:var(--danger);border:1px solid #e8a8a4}.alert--success{background:var(--success-soft);color:var(--success);border:1px solid #8ecfbe}.alert--warning{background:var(--warning-soft);color:var(--warning);border:1px solid #f5d08a}.alert--info{background:var(--info-soft);color:var(--info);border:1px solid #9bbede}.section-divider{margin:20px 0;border:none;border-top:1px solid var(--line)}.action-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-decoration:none;color:inherit;transition:all .14s ease;display:flex;align-items:center;gap:12px}.action-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-1px)}.action-card__icon{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.action-card__icon--blue{background:var(--accent-soft)}.action-card__icon--green{background:var(--secondary-soft)}.action-card__icon--purple{background:var(--highlight-soft)}.action-card__text h3{font-size:.85rem;font-weight:600;margin-bottom:2px}.action-card__text p{font-size:.72rem;color:var(--muted);line-height:1.4}@media (max-width:1080px){.stat-grid{grid-template-columns:repeat(3,1fr)}.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-sidebar{grid-template-columns:1fr}}@media (max-width:720px){.page-shell{padding:12px}.stat-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.nav-bar{padding:0 12px;height:44px}.nav-bar__links{display:none}.hero{padding:16px 20px}.auth-card{padding:24px 20px}}