:root{--navy:#10283d;--blue:#0875b9;--blue-dark:#075d93;--pale:#e9f5fb;--ink:#142431;--muted:#637586;--line:#d9e4eb;--line2:#c1d2dd;--bg:#f4f7f9;--white:#fff;--success:#17734a;--warning:#fff4d6;--radius:16px;--small:10px;--shadow:0 12px 34px rgba(16,40,61,.07);--hover:0 16px 38px rgba(16,40,61,.12)}
*{box-sizing:border-box}html{color:var(--ink);background:var(--bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0;min-height:100vh;line-height:1.5;background:linear-gradient(180deg,#f8fafb 0,var(--bg) 340px)}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,p{margin-top:0}h1{margin-bottom:.45rem;font-size:clamp(2rem,4vw,3rem);line-height:1.05;letter-spacing:-.035em}h2{font-size:1.15rem;letter-spacing:-.01em}button,input,select{font:inherit}
.container{width:min(1240px,calc(100% - 40px));margin:0 auto;padding:42px 0 72px}.container.narrow{display:grid;width:min(470px,calc(100% - 28px));min-height:100vh;align-items:center;padding:35px 0}.topbar{position:sticky;z-index:10;top:0;display:flex;min-height:72px;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1240px)/2));color:#fff;background:rgba(16,40,61,.98);box-shadow:0 3px 16px rgba(10,28,43,.16);backdrop-filter:blur(10px)}.brand{color:#fff;font-weight:850;letter-spacing:.11em}.brand:hover{text-decoration:none}.brand span{margin-left:.75rem;color:#bfd5e4;font-weight:450;letter-spacing:0}.nav{display:flex;align-items:center;gap:8px}.nav>a,.link-button{padding:9px 12px;border:0;border-radius:8px;color:#eef7fc;background:none;cursor:pointer}.nav>a:hover,.nav>a[aria-current="page"],.nav .link-button:hover{text-decoration:none;background:rgba(255,255,255,.1);color:#fff}.logout-form,.actions form,.mapping-list form{margin:0}.menu-toggle{display:none;padding:8px 12px;border:1px solid #627c90;border-radius:8px;color:#fff;background:transparent}
.auth-card,.panel,.empty-state{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow)}.auth-card{position:relative;overflow:hidden;padding:clamp(28px,6vw,46px)}.auth-card:before{position:absolute;top:0;right:0;left:0;height:5px;background:linear-gradient(90deg,var(--blue),#55b4df);content:""}.auth-brand{margin-bottom:28px;color:var(--blue);font-size:1.4rem;font-weight:900;letter-spacing:.14em}.auth-help{margin:24px 0 0;text-align:center}.stack{display:grid;gap:17px}.stack label,.form-grid label,.inline-form label,.filters label{color:#344b5d;font-size:.84rem;font-weight:750}.stack small,.form-grid small{display:block;color:var(--muted);font-weight:400}.stack input,.form-grid input,.inline-form input,.filters input,.filters select,.form-grid select{display:block;width:100%;min-height:46px;margin-top:7px;padding:11px 13px;border:1px solid var(--line2);border-radius:var(--small);color:var(--ink);background:#fff}.stack input:focus,.form-grid input:focus,.inline-form input:focus,.filters input:focus,.filters select:focus,.form-grid select:focus,.quick-search input:focus{outline:4px solid rgba(8,117,185,.13);border-color:var(--blue)}
.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:10px 17px;border:1px solid transparent;border-radius:var(--small);font-weight:750;cursor:pointer;transition:.15s ease}.button:hover{text-decoration:none;transform:translateY(-1px)}.button.primary{color:#fff;background:var(--blue);box-shadow:0 7px 16px rgba(8,117,185,.18)}.button.primary:hover{background:var(--blue-dark)}.button.secondary{border-color:var(--line2);color:var(--ink);background:#fff}.button.small{min-height:34px;padding:6px 10px;font-size:.8rem}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}
.page-heading{display:flex;min-height:112px;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 28px}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.muted{color:var(--muted)}.lead{margin-bottom:0;color:var(--muted);font-size:1.08rem}.back-link{display:inline-block;margin-bottom:20px;font-weight:650}.quick-search{display:flex;gap:11px;margin-bottom:24px}.quick-search input{min-width:0;min-height:54px;flex:1;padding:14px 17px;border:1px solid var(--line2);border-radius:12px;background:#fff;box-shadow:0 5px 20px rgba(16,40,61,.04)}.quick-search .button{min-width:94px}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat{position:relative;display:flex;min-height:132px;flex-direction:column;justify-content:space-between;padding:23px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:var(--white);box-shadow:var(--shadow);transition:.18s ease}.stat:after{position:absolute;top:22px;right:22px;width:9px;height:9px;border-radius:50%;background:#9dcce6;content:""}.stat:hover{transform:translateY(-2px);border-color:#a6c7dc;text-decoration:none;box-shadow:var(--hover)}.stat span{color:var(--muted);font-size:.87rem;font-weight:600}.stat strong{margin-top:10px;font-size:2.25rem;line-height:1}.stat.warning{background:var(--warning)}.stat.warning:after{background:#e0aa34}
.split{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);gap:20px}.panel{margin-bottom:20px;padding:24px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.panel-heading h2{margin:0}.status-list,.mapping-list{margin:0;padding:0;list-style:none}.status-list li,.mapping-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 2px;border-bottom:1px solid var(--line)}.status-list li:last-child,.mapping-list li:last-child{border-bottom:0}.status-list strong{display:grid;min-width:31px;height:31px;place-items:center;border-radius:50%;color:#195d87;background:var(--pale);font-size:.83rem}.cards-list{display:grid;gap:10px}.compact-card{display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;color:var(--ink);transition:.15s ease}.compact-card:hover{border-color:#a9c8db;text-decoration:none;background:#f9fcfd}.compact-card div{display:grid;min-width:0}.compact-card span:not(.badge){overflow:hidden;color:var(--muted);font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-block;max-width:220px;padding:5px 10px;border:1px solid #d9ebf5;border-radius:999px;color:#175b84;background:var(--pale);font-size:.75rem;font-weight:800;line-height:1.25;text-align:center;white-space:normal}.badge.large{padding:8px 14px;font-size:.9rem}.badge.success{border-color:#cce8d9;color:var(--success);background:#e8f6ee}.muted-badge{border-color:#e1e6e9;color:var(--muted);background:#edf1f3}
.filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(125px,.7fr)) auto auto;align-items:end;gap:11px;margin-bottom:22px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.filters label,.filters .grow{min-width:0}.table-wrap{overflow-x:auto;border-radius:12px}.table-wrap table{width:100%;border-collapse:collapse;background:#fff}.table-wrap th{padding:13px 12px;color:#536979;background:#eef4f7;font-size:.71rem;font-weight:800;text-align:left;text-transform:uppercase;letter-spacing:.065em;white-space:nowrap}.table-wrap td{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:middle}.table-wrap tbody tr{transition:background .12s ease}.table-wrap tbody tr:hover{background:#f8fbfc}.table-wrap tr:last-child td{border-bottom:0}.row-link{font-weight:750;white-space:nowrap}.mobile-cards{display:none}.data-card{display:block;padding:17px;border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);background:#fff;box-shadow:0 5px 18px rgba(16,40,61,.05)}.data-card:hover{text-decoration:none}.card-top{display:flex;align-items:start;justify-content:space-between;gap:10px}.data-card p{margin:11px 0;color:var(--muted)}dl{margin:0}dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}dt{color:var(--muted);font-size:.8rem}dd{margin:0;font-size:.85rem;font-weight:750;text-align:right}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:22px}
.details-grid,.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.details-grid>div,.detail-grid>div{display:grid;gap:5px;min-height:91px;align-content:center;padding:17px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.details-grid>div:nth-child(3n),.detail-grid>div:nth-child(3n){border-right:0}.details-grid>div:nth-last-child(-n+3),.detail-grid>div:nth-last-child(-n+3){border-bottom:0}.details-grid span,.detail-grid span{color:var(--muted);font-size:.78rem;font-weight:600}.details-grid strong,.detail-grid strong{overflow-wrap:anywhere;font-size:1rem}.detail-grid{overflow:hidden;margin:18px 0;border:1px solid var(--line);border-radius:12px;background:#f9fbfc}.empty-state{margin-top:25px;padding:58px 24px;text-align:center}.alert{margin-bottom:18px;padding:13px 15px;border-radius:10px}.alert-error{border:1px solid #efc2c2;color:#7c1717;background:#fdecec}.alert-success{border:1px solid #bce0cb;color:#145d39;background:#e9f7ef}.inline-form{display:flex;align-items:end;gap:11px}.grow{flex:1}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.form-actions{display:flex;align-items:end}.actions{display:flex;align-items:center;gap:7px}.actions details{position:relative}.actions summary{color:var(--blue);font-size:.82rem;cursor:pointer}.reset-form{position:absolute;z-index:2;right:0;display:flex;width:320px;gap:7px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:var(--hover)}.reset-form input{min-width:0}.danger{color:#ffb8b8!important}code{padding:3px 6px;border-radius:5px;background:#edf2f5}.sr-only{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:980px){.filters{grid-template-columns:2fr 1fr 1fr}.filters .grow{grid-column:span 3}.form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{background:var(--bg)}.container{width:min(100% - 24px,1240px);padding:24px 0 48px}.topbar{min-height:64px;flex-wrap:wrap;padding:0 16px}.brand span{display:none}.menu-toggle{display:block}.nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:3px;padding:7px 0 14px}.nav.open{display:flex}.nav>a,.nav .link-button{width:100%;padding:10px 12px;text-align:left}.page-heading{min-height:0;align-items:start;flex-direction:column;margin:9px 0 22px}h1{font-size:clamp(2rem,10vw,2.65rem)}.stats{grid-template-columns:1fr 1fr}.stat{min-height:116px;padding:19px}.stat:last-child{grid-column:1/-1}.split{grid-template-columns:1fr}.desktop-table{display:none}.mobile-cards{display:grid;gap:12px}.filters{grid-template-columns:1fr 1fr;padding:15px}.filters .grow{grid-column:1/-1}.details-grid,.detail-grid{grid-template-columns:1fr 1fr}.details-grid>div,.detail-grid>div,.details-grid>div:nth-child(3n),.detail-grid>div:nth-child(3n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.details-grid>div:nth-child(2n),.detail-grid>div:nth-child(2n){border-right:0}.details-grid>div:nth-last-child(-n+2),.detail-grid>div:nth-last-child(-n+2){border-bottom:0}.form-grid{grid-template-columns:1fr}.inline-form,.quick-search{align-items:stretch;flex-direction:column}.panel{padding:18px}.panel.details-grid{padding:0}.pagination{justify-content:space-between}.pagination span{font-size:.8rem}.actions{align-items:flex-start;flex-direction:column}}
@media(max-width:460px){.container{width:min(100% - 18px,1240px)}.stats{grid-template-columns:1fr;gap:11px}.stat:last-child{grid-column:auto}.filters{grid-template-columns:1fr}.filters .grow{grid-column:auto}.filters .button{width:100%}.details-grid,.detail-grid{grid-template-columns:1fr}.details-grid>div,.detail-grid>div,.details-grid>div:nth-child(2n),.detail-grid>div:nth-child(2n){border-right:0;border-bottom:1px solid var(--line)}.details-grid>div:last-child,.detail-grid>div:last-child{border-bottom:0}.auth-card{padding:30px 22px}.badge{max-width:145px}.compact-card{align-items:flex-start}.pagination .button{min-height:40px;padding:8px 10px;font-size:.8rem}}
.status-waiting{border-color:#dce3e8;color:#536575;background:#f0f3f5}.status-cut{border-color:#c9e4f2;color:#17638d;background:#e8f5fb}.status-working{border-color:#b9d9ee;color:#075d93;background:#dfedf8}.status-external{border-color:#d7cbef;color:#62449a;background:#f0ebfa}.status-complete{border-color:#bfe2ce;color:#176b45;background:#e7f6ed}.status-warehouse{border-color:#a9d8be;color:#0d623c;background:#dff3e8}.status-delivered,.status-shipped{border-color:#9fd2b6;color:#075633;background:#d6efe1}.status-cancelled{border-color:#efc1c4;color:#95262d;background:#fce8e9}.status-neutral{border-color:#dce3e8;color:#60717e;background:#f0f3f5}.status-callout{margin:-4px 0 20px;padding:13px 16px;border-width:1px;border-style:solid;border-radius:var(--small);font-weight:650}.status-description{margin:5px 0 0;color:var(--muted);font-size:.9rem}.progress-panel{padding-bottom:28px}.work-progress{display:grid;grid-template-columns:repeat(5,1fr);margin:8px 0 0;padding:0;list-style:none}.work-progress li{position:relative;display:grid;justify-items:center;gap:8px;color:#85939d;text-align:center;font-size:.76rem}.work-progress li:before{position:absolute;z-index:0;top:15px;right:50%;left:-50%;height:3px;background:#dbe4e9;content:""}.work-progress li:first-child:before{display:none}.work-progress li>span{position:relative;z-index:1;display:grid;width:32px;height:32px;place-items:center;border:3px solid #dbe4e9;border-radius:50%;background:#fff;font-weight:800}.work-progress li.is-done:before,.work-progress li.is-current:before{background:var(--blue)}.work-progress li.is-done>span{border-color:var(--blue);color:#fff;background:var(--blue)}.work-progress li.is-current>span{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 5px rgba(8,117,185,.1)}.work-progress li.is-done strong,.work-progress li.is-current strong{color:var(--ink)}
@media(max-width:460px){.work-progress{grid-template-columns:1fr;gap:0}.work-progress li{min-height:58px;grid-template-columns:34px 1fr;align-items:start;justify-items:start;text-align:left}.work-progress li:before{top:-26px;bottom:auto;left:15px;width:3px;height:29px}.work-progress li>span{width:31px;height:31px}.work-progress li strong{padding-top:5px}}
.impersonation-banner{display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 20px;border-bottom:1px solid #e5c46f;color:#5a4512;background:#fff2c9;font-size:.88rem}.impersonation-banner form{margin:0}.impersonation-banner .button{min-height:34px;background:#fffaf0}
@media(max-width:760px){.impersonation-banner{align-items:stretch;flex-direction:column;gap:8px;padding:12px 16px}.impersonation-banner .button{width:100%}}
.users-heading{align-items:flex-end}.work-filter{display:flex;align-items:center;gap:9px;margin:0}.work-filter label{color:var(--muted);font-size:.8rem;font-weight:700}.work-filter select{min-height:39px;padding:7px 34px 7px 11px;border:1px solid var(--line2);border-radius:9px;color:var(--ink);background:#fff}.work-presence{display:grid;grid-template-columns:10px auto;column-gap:8px;align-items:center;white-space:nowrap}.work-presence i{grid-row:1/3;width:9px;height:9px;border-radius:50%;background:#20a366;box-shadow:0 0 0 4px rgba(32,163,102,.12)}.work-presence strong{font-size:.8rem;color:var(--success)}.work-presence small{font-size:.73rem;color:var(--muted)}.no-work{color:#8a98a3;font-size:.8rem;white-space:nowrap}
@media(max-width:760px){.users-heading{align-items:stretch;flex-direction:column}.work-filter{align-items:stretch;flex-direction:column}.work-filter select{width:100%}}
.nav-badge{display:inline-grid;min-width:20px;height:20px;place-items:center;margin-left:4px;padding:0 5px;border-radius:99px;color:var(--navy);background:#fff;font-size:.7rem;font-weight:900}.chat-panel{padding:0;overflow:hidden}.chat-history{display:flex;max-height:58vh;min-height:320px;overflow-y:auto;flex-direction:column;gap:12px;padding:24px;background:#edf3f6}.chat-message{width:min(76%,680px);padding:13px 15px;border:1px solid var(--line);border-radius:14px 14px 14px 4px;background:#fff;box-shadow:0 4px 12px rgba(16,40,61,.05)}.chat-message.mine{align-self:flex-end;border-color:#b9daeb;border-radius:14px 14px 4px;background:#e5f3fa}.chat-message header{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.75rem}.chat-message p{margin:7px 0;overflow-wrap:anywhere;white-space:normal}.chat-message small{display:block;color:var(--muted);font-size:.68rem;text-align:right}.chat-empty{margin:auto}.chat-compose{display:grid;grid-template-columns:1fr auto;gap:10px;padding:20px}.chat-compose label{grid-column:1/-1;font-size:.82rem;font-weight:750}.chat-compose textarea{width:100%;resize:vertical;padding:12px;border:1px solid var(--line2);border-radius:10px}.chat-compose textarea:focus{outline:4px solid rgba(8,117,185,.13);border-color:var(--blue)}.chat-compose .button{align-self:end}.email-status{margin-bottom:24px}.test-results{margin-top:22px;padding:18px;border-radius:12px;background:var(--pale)}.test-results p{margin:5px 0}.inline-form select{display:block;width:100%;min-height:46px;margin-top:7px;padding:11px 13px;border:1px solid var(--line2);border-radius:var(--small);background:#fff}
@media(max-width:760px){.chat-history{max-height:55vh;min-height:280px;padding:14px}.chat-message{width:90%}.chat-compose{grid-template-columns:1fr;padding:14px}.chat-compose .button{width:100%}}
.user-edit-form{position:absolute;z-index:20;right:0;display:grid;width:min(440px,90vw);grid-template-columns:1fr 1fr;gap:9px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--hover)}.user-edit-form input,.user-edit-form select{min-width:0;padding:8px;border:1px solid var(--line2);border-radius:8px}.user-edit-form label{display:flex;align-items:center;gap:7px;font-size:.8rem}.user-edit-form label input{width:auto}.user-edit-form .button{grid-column:1/-1}.actions details{position:relative}
@media(max-width:760px){.user-edit-form{position:fixed;top:10%;right:5%;left:5%;width:90%;grid-template-columns:1fr}}
