:root{font-family:Inter,Manrope,system-ui,-apple-system,sans-serif;color:#172235;background:#f2f5f8;font-synthesis:none;--navy: #12233f;--ink: #172235;--muted: #66748a;--line: #dce3ea}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.eyebrow{color:#75849a;font-size:.72rem;font-weight:800;letter-spacing:.16em;margin:0 0 .7rem}.primary{border:0;border-radius:10px;background:var(--navy);color:#fff;font-weight:700;padding:.9rem 1.15rem}.primary:disabled{opacity:.48;cursor:not-allowed}.quiet{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:.5rem .75rem}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);background:#fff}.login-brand{background:radial-gradient(circle at 25% 20%,#274b7d 0,var(--navy) 42%,#091426 100%);color:#fff;padding:clamp(3rem,9vw,8rem);display:flex;flex-direction:column;justify-content:center}.login-brand .eyebrow{color:#a9bdd9}.brand-mark{width:74px;height:74px;display:grid;place-items:center;border:1px solid #7e9abf;border-radius:22px 6px;font-size:2.5rem;font-weight:800;margin-bottom:2rem;background:#ffffff0d}.login-brand h1{font-size:clamp(2.8rem,7vw,5.6rem);letter-spacing:-.06em;margin:0}.login-brand>p:last-child{max-width:620px;color:#c8d5e6;font-size:1.15rem;line-height:1.7}.login-panel{width:min(420px,calc(100% - 3rem));margin:auto;display:grid;gap:1rem}.login-panel h2{font-size:2rem;margin:0 0 1rem}.login-panel label{display:grid;gap:.45rem;font-size:.85rem;font-weight:700;color:#46546a}.login-panel input{width:100%;border:1px solid #ccd5df;border-radius:10px;padding:.85rem 1rem;outline:none}.login-panel input:focus{border-color:#50749e;box-shadow:0 0 0 3px #50749e22}.login-panel small{color:#7a8798;line-height:1.55}.form-error{background:#fff1ef;color:#9d2d26;border:1px solid #f0c2bd;padding:.75rem;border-radius:8px;font-size:.85rem}.app-header{height:70px;background:var(--navy);color:#fff;display:grid;grid-template-columns:240px 1fr auto;align-items:center;gap:1rem;padding:0 2rem;position:sticky;top:0;z-index:10;box-shadow:0 8px 24px #0b182b1f}.wordmark{color:#fff;border:0;background:transparent;font-weight:800;letter-spacing:.08em;display:flex;align-items:center;gap:.65rem}.wordmark span{border:1px solid #7189aa;border-radius:9px 3px;width:32px;height:32px;display:grid;place-items:center}.context-title{display:flex;align-items:center;gap:.85rem;min-width:0}.context-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-badge{border-left:3px solid var(--company);background:#ffffff12;color:#eaf0f7;border-radius:4px;padding:.38rem .65rem;font-size:.72rem;font-weight:700;white-space:nowrap}.user-block{display:flex;align-items:center;gap:.8rem;font-size:.78rem;color:#b7c4d6}.user-block .quiet{background:transparent;color:#fff;border-color:#ffffff36}.matrix{max-width:1360px;margin:0 auto;padding:3rem clamp(1rem,4vw,3rem) 5rem}.matrix-intro{display:grid;grid-template-columns:1fr minmax(320px,460px);column-gap:4rem;align-items:end;border-bottom:1px solid var(--line);padding-bottom:2.2rem}.matrix-intro .eyebrow,.matrix-intro h1,.matrix-intro>p{grid-column:1}.matrix-intro h1{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.04em;margin:0 0 .6rem}.matrix-intro>p{color:var(--muted);margin:0;max-width:640px}.company-select{grid-column:2;grid-row:1 / span 3;display:grid;gap:.55rem;color:#526075;font-size:.8rem;font-weight:800}.company-select select{width:100%;border:1px solid #c5d0dc;background:#fff;border-radius:12px;padding:1rem;color:var(--ink)}.company-confirm{grid-column:2;border-left:4px solid var(--company);background:#fff;padding:.75rem 1rem;margin-top:.8rem;display:flex;justify-content:space-between;gap:1rem;font-size:.76rem;box-shadow:0 5px 18px #10213a0c}.company-confirm span{color:var(--muted)}.company-pending{grid-column:2;border:1px solid color-mix(in srgb,var(--company),white 55%);border-left:4px solid var(--company);background:color-mix(in srgb,var(--company),white 96%);border-radius:10px;padding:1rem;margin-top:.8rem;display:grid;gap:.9rem;box-shadow:0 8px 22px #10213a10}.company-pending>div:first-child{display:grid;gap:.25rem}.company-pending span{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.company-pending strong{color:var(--ink)}.company-pending small{color:var(--muted);line-height:1.45}.company-pending-actions{display:flex;flex-wrap:wrap;gap:.55rem}.company-pending-actions button{padding:.65rem .85rem;font-size:.78rem}.specialties{transition:opacity .2s}.specialties.is-locked{opacity:.47;pointer-events:none}.section-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin:2.8rem 0 1.5rem}.section-heading h2{font-size:1.8rem;margin:0}.section-heading>p{color:var(--muted);font-size:.84rem}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.specialty-card{background:#fff;min-height:310px;border:1px solid #e0e6ec;border-top:4px solid var(--specialty);border-radius:6px 6px 14px 14px;padding:1.35rem;display:flex;flex-direction:column;box-shadow:0 8px 30px #16243b0a}.specialty-card.planned{background:#f8fafb}.card-top{display:flex;justify-content:space-between;align-items:start}.specialty-mark{min-width:48px;height:48px;padding:0 .45rem;display:inline-grid;place-items:center;border:1px solid color-mix(in srgb,var(--specialty),white 45%);color:var(--specialty);background:color-mix(in srgb,var(--specialty),white 92%);border-radius:14px 4px;font-weight:800;font-size:.78rem}.specialty-mark.large{min-width:74px;height:74px;font-size:1rem}.status{color:#7c899a;background:#edf1f4;padding:.35rem .55rem;border-radius:99px;font-size:.66rem;font-weight:700}.specialty-card h3{font-size:1.25rem;margin:1.2rem 0 .35rem}.specialty-card>strong{color:#6b788b;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.specialty-card>p{color:var(--muted);line-height:1.6;font-size:.88rem;flex:1}.specialty-card footer{border-top:1px solid #e8edf1;padding-top:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.specialty-card footer span{font-size:.68rem;color:#788596;font-weight:700}.specialty-card footer button{background:transparent;border:0;color:var(--specialty);font-weight:800}.specialty-card footer button:disabled{color:#a3adb9;cursor:not-allowed}.module-page{max-width:1180px;margin:0 auto;padding:2rem clamp(1rem,4vw,3rem) 5rem}.breadcrumbs{display:flex;gap:.55rem;align-items:center;color:#7a8797;font-size:.77rem;margin-bottom:2rem}.breadcrumbs button{border:0;background:transparent;padding:0;color:#53647a}.module-hero{display:flex;gap:1.4rem;align-items:center;border-bottom:1px solid var(--line);padding-bottom:2rem}.module-hero h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.04em;margin:0}.module-hero p:last-child{color:var(--muted)}.integration-card{margin-top:2rem;background:#fff;border:1px solid var(--line);border-radius:14px;padding:2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;box-shadow:0 12px 35px #15223a0a}.integration-card h2{margin:0 0 .6rem}.integration-card p{max-width:720px;color:var(--muted);line-height:1.6}.blocked-module{border-left:5px solid #b8544b}.blocked-module h1{margin:0 0 .6rem}.integration-actions{display:grid;gap:.7rem;min-width:190px}.link-button{text-decoration:none;text-align:center}@media(max-width:980px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.matrix-intro{grid-template-columns:1fr}.company-select,.company-confirm,.company-pending{grid-column:1;grid-row:auto;margin-top:1.2rem}.login-page{grid-template-columns:1fr}.login-brand{padding:3rem 2rem;min-height:40vh}.login-panel{padding:3rem 0}}@media(max-width:680px){.app-header{grid-template-columns:1fr auto;height:auto;min-height:66px;padding:.8rem 1rem}.context-title{grid-column:1 / -1;grid-row:2;flex-wrap:wrap}.user-block>span{display:none}.card-grid{grid-template-columns:1fr}.section-heading,.integration-card{align-items:stretch;flex-direction:column}.matrix{padding-top:2rem}}
