:root{
  --navy:#071f52;--navy-2:#0b2e6d;--navy-3:#153d7c;--cyan:#05abc5;--cyan-2:#0c88b4;
  --blue:#1267d6;--purple:#672db5;--green:#15933e;--ink:#12213f;--muted:#68758d;
  --line:#dfe6ef;--line-2:#edf1f6;--bg:#f5f8fc;--panel:#fff;--danger:#b42318;--danger-bg:#fff4f2;
  --success:#08783f;--success-bg:#edfdf4;--shadow:0 12px 36px rgba(8,31,82,.08);--radius:18px;
  --font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}html{background:var(--bg);color:var(--ink);font-family:var(--font)}body{margin:0;min-height:100vh;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%}
.app-shell{min-height:100vh;display:grid;grid-template-columns:276px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:24px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:block;padding:2px 10px}.brand img{display:block;width:195px;height:auto}.platform-label{margin:8px 12px 28px;font-size:11px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:800}.main-nav{display:flex;flex-direction:column;gap:5px}.nav-section-label{margin:20px 12px 8px;font-size:10px;font-weight:800;color:#9aa5b8;text-transform:uppercase;letter-spacing:.13em}.nav-link{min-height:44px;display:flex;align-items:center;gap:11px;padding:0 13px;border-radius:11px;font-size:14px;font-weight:750;color:#40506c;transition:.18s ease}.nav-link:hover{background:#f3f6fb;color:var(--navy)}.nav-link.active{background:#eef4ff;color:var(--navy)}.nav-icon{font-size:18px;width:18px;text-align:center}.nav-dot{width:9px;height:9px;border-radius:50%;background:#b9c3d2;box-shadow:0 0 0 4px #f1f4f8}.nav-link.people .nav-dot{background:var(--purple);box-shadow:0 0 0 4px #f5effd}.nav-link.intelligence .nav-dot{background:var(--blue);box-shadow:0 0 0 4px #edf5ff}.nav-link.time .nav-dot{background:var(--cyan);box-shadow:0 0 0 4px #ebfbfd}.nav-link.shift .nav-dot{background:var(--green);box-shadow:0 0 0 4px #eef9f1}.subnav{display:flex;flex-direction:column;margin:0 0 8px 43px;gap:2px}.subnav a{font-size:12.5px;color:#748096;padding:7px 10px;border-radius:8px}.subnav a:hover,.subnav a.active{color:var(--navy);background:#f6f8fb}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line-2);padding:18px 12px 2px}.org-name{font-size:13px;font-weight:800;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.version{font-size:11px;color:#97a2b5;margin-top:4px}
.workspace{min-width:0}.topbar{height:86px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 34px;position:sticky;top:0;z-index:15}.page-title{font-size:16px;font-weight:850;color:var(--navy)}.page-subtitle{font-size:11px;color:#8692a5;margin-top:3px}.user-box{display:flex;align-items:center;gap:16px}.user-meta{display:flex;flex-direction:column;align-items:flex-end}.user-meta strong{font-size:13px}.user-meta span{font-size:11px;color:#8994a7}.mobile-menu{display:none;border:0;background:none;font-size:24px;color:var(--navy)}.content{padding:30px 34px 60px;max-width:1500px;margin:0 auto}
.alert{border-radius:12px;padding:12px 15px;margin:0 0 18px;font-size:13px;font-weight:650;border:1px solid transparent}.alert-success{background:var(--success-bg);border-color:#bcebd0;color:var(--success)}.alert-error{background:var(--danger-bg);border-color:#ffd4ce;color:var(--danger)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;border:1px solid transparent;min-height:40px;padding:0 15px;font-size:13px;font-weight:800;transition:.18s ease;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--navy);color:#fff;box-shadow:0 6px 18px rgba(7,31,82,.17)}.button-primary:hover{background:var(--navy-2)}.button-secondary{background:#fff;border-color:#cfd8e6;color:var(--navy)}.button-secondary:hover,.button-ghost:hover{background:#f5f7fb}.button-ghost{background:transparent;border-color:#dfe5ed;color:#50617c}.button-danger{background:#fff;border-color:#f3b8b0;color:var(--danger)}.button-small{min-height:34px;padding:0 11px;font-size:12px}.button-block{width:100%;min-height:46px}
.eyebrow{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--cyan-2);margin-bottom:7px}.hero-panel{background:linear-gradient(130deg,var(--navy),#0d3778 62%,#087b9d);color:#fff;border-radius:22px;padding:30px 32px;display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 20px 45px rgba(7,31,82,.18);position:relative;overflow:hidden}.hero-panel:after{content:"";position:absolute;right:-50px;top:-100px;width:300px;height:300px;border:46px solid rgba(255,255,255,.055);border-radius:50%}.hero-panel .eyebrow{color:#72e2ef}.hero-panel h1{font-size:30px;margin:0 0 10px;letter-spacing:-.03em}.hero-panel p{max-width:770px;margin:0;color:#d7e5fb;font-size:14px;line-height:1.6}.hero-badge{position:relative;z-index:1;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.23);padding:12px 16px;border-radius:999px;font-weight:850;font-size:12px;white-space:nowrap}
.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.module-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;display:flex;gap:15px;align-items:flex-start;min-height:150px;box-shadow:0 5px 16px rgba(7,31,82,.04);transition:.18s ease}.module-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.module-symbol{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:950;font-size:18px;background:#f2f5fa;color:var(--navy);flex:0 0 auto}.people-card .module-symbol{color:var(--purple);background:#f6efff}.intelligence-card .module-symbol{color:var(--blue);background:#eff6ff}.time-card .module-symbol{color:#038ba1;background:#ecfbfe}.shift-card .module-symbol{color:var(--green);background:#eefaf1}.module-card h2{font-size:16px;margin:7px 0 8px;color:var(--navy);font-weight:650}.module-card h2 strong{font-weight:900}.people-card h2 strong{color:var(--purple)}.intelligence-card h2 strong{color:var(--blue)}.time-card h2 strong{color:var(--cyan-2)}.shift-card h2 strong{color:var(--green)}.module-card p{font-size:11.5px;line-height:1.55;color:var(--muted);margin:0}.module-status{font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#8290a5;background:#f3f5f8;border-radius:999px;padding:4px 7px}.module-status.active{background:#eafaf0;color:#0d8446}
.section-block{margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 5px 16px rgba(7,31,82,.03)}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:17px}.section-heading h2{font-size:19px;margin:0;color:var(--navy)}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.metric-card{border:1px solid var(--line);border-radius:14px;padding:17px 18px;display:grid;grid-template-columns:1fr auto;align-items:center}.metric-card span{font-size:12px;font-weight:800;color:#63718a}.metric-card strong{grid-row:1/3;grid-column:2;font-size:30px;color:var(--navy)}.metric-card small{font-size:10.5px;color:#98a2b3;margin-top:3px}.activity-list{display:flex;flex-direction:column}.activity-row{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:center;padding:12px 2px;border-top:1px solid var(--line-2)}.activity-row:first-child{border-top:0}.activity-dot{width:8px;height:8px;border-radius:50%;background:var(--cyan)}.activity-row div{display:flex;flex-direction:column}.activity-row strong{font-size:12.5px}.activity-row small,.activity-row time{font-size:10.5px;color:#8b96a8}
.module-header{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 26px;margin-bottom:18px;position:relative;overflow:hidden}.module-header:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--purple)}.module-header.compact{padding-top:20px;padding-bottom:20px}.module-header h1{font-size:26px;letter-spacing:-.02em;color:var(--navy);margin:0 0 6px}.module-header p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.55;max-width:760px}.people-tone .eyebrow{color:var(--purple)}
.toolbar{display:grid;grid-template-columns:minmax(250px,1fr) 190px auto auto;gap:10px;margin-bottom:14px}.toolbar input,.toolbar select,.field input,.field select{width:100%;min-height:42px;border:1px solid #d4ddea;border-radius:10px;background:#fff;padding:0 12px;color:var(--ink);outline:none;transition:.15s}.toolbar input:focus,.toolbar select:focus,.field input:focus,.field select:focus{border-color:#6baedb;box-shadow:0 0 0 3px rgba(5,171,197,.1)}
.table-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 5px 16px rgba(7,31,82,.03)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;min-width:850px}th{padding:13px 16px;background:#f8fafc;border-bottom:1px solid var(--line);text-align:left;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#7b879b}td{padding:14px 16px;border-bottom:1px solid var(--line-2);font-size:12.5px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfe}td strong{display:block;color:var(--ink);font-size:12.5px}td small{display:block;color:#8a96a9;font-size:10.5px;margin-top:3px}.code-pill{font-size:10.5px;font-weight:900;color:var(--navy);background:#eef3fb;border-radius:7px;padding:5px 7px}.actions{white-space:nowrap;text-align:right}.actions a{display:inline-block;margin-left:12px;color:var(--blue);font-size:11.5px;font-weight:800}.status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850;text-transform:capitalize}.status-active{background:#eaf9ef;color:#08783f}.status-inactive,.status-ended,.status-archived{background:#f1f3f6;color:#667085}.status-suspended{background:#fff6dd;color:#946200}.empty-state{padding:42px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;color:#7e8a9d}.empty-state strong{color:var(--navy);font-size:14px;margin-bottom:6px}.empty-state span{font-size:12px}.empty-state.wide{grid-column:1/-1;background:#fff;border:1px dashed #d5deea;border-radius:16px}
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 6px 18px rgba(7,31,82,.03)}.form-grid{display:grid;gap:18px}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.form-grid.cols-2{grid-template-columns:repeat(2,1fr)}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-size:11.5px;font-weight:850;color:#4b5b76}.field small{font-size:10px;color:#8a96a9;line-height:1.4}.field-error{color:var(--danger)!important;min-height:0}.field-error:empty{display:none}.check-field{display:flex;align-items:center;gap:9px;font-size:11.5px;color:#56667f}.check-field input{width:16px;height:16px}.form-actions{border-top:1px solid var(--line-2);margin-top:24px;padding-top:18px;display:flex;justify-content:flex-end;gap:10px}.danger-zone{margin-top:18px;border:1px solid #f4c5bf;background:var(--danger-bg);border-radius:16px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.danger-zone div{display:flex;flex-direction:column}.danger-zone strong{font-size:12.5px;color:#922a20}.danger-zone span{font-size:10.5px;color:#8d514a;margin-top:4px}
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:0 6px 18px rgba(7,31,82,.03)}.form-grid{display:grid;gap:18px}.form-grid.cols-3{grid-template-columns:repeat(3,1fr)}.form-grid.cols-2{grid-template-columns:repeat(2,1fr)}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-size:11.5px;font-weight:850;color:#4b5b76}.field small{font-size:10px;color:#8a96a9;line-height:1.4}.field-error{color:var(--danger)!important;min-height:0}.field-error:empty{display:none}.check-field{display:flex;align-items:center;gap:9px;font-size:11.5px;color:#56667f}.check-field input{width:16px;height:16px}.form-guidance{margin-top:18px;border-left:3px solid var(--purple);background:#faf8ff;border-radius:0 10px 10px 0;padding:11px 14px;display:flex;flex-direction:column}.form-guidance strong{font-size:11px;color:#563c9b}.form-guidance span{font-size:10px;color:#73698e;margin-top:3px}.form-actions{border-top:1px solid var(--line-2);margin-top:24px;padding-top:18px;display:flex;justify-content:flex-end;gap:10px}.danger-zone{margin-top:18px;border:1px solid #f4c5bf;background:var(--danger-bg);border-radius:16px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.danger-zone div{display:flex;flex-direction:column}.danger-zone strong{font-size:12.5px;color:#922a20}.danger-zone span{font-size:10.5px;color:#8d514a;margin-top:4px}
.integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.integration-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 5px 16px rgba(7,31,82,.03)}.integration-top{display:flex;align-items:center;justify-content:space-between}.integration-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eff8ff;color:var(--blue);font-size:20px;font-weight:900}.integration-card h3{font-size:16px;color:var(--navy);margin:14px 0 3px}.integration-card>p{font-size:11px;color:var(--muted);margin:0 0 14px}.integration-card dl{border-top:1px solid var(--line-2);margin:0 0 15px;padding-top:10px}.integration-card dl div{display:flex;justify-content:space-between;gap:15px;padding:6px 0}.integration-card dt{font-size:10.5px;color:#8a96a9}.integration-card dd{font-size:10.5px;font-weight:750;color:#40506c;margin:0;text-align:right}
.module-placeholder{background:#fff;border:1px solid var(--line);border-radius:22px;padding:48px;min-height:410px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.module-placeholder:after{content:"";position:absolute;right:-70px;bottom:-110px;width:340px;height:340px;border-radius:50%;border:60px solid #f3f6fa}.placeholder-badge{position:relative;z-index:1;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;background:#eef3f9;color:#66758d;border-radius:999px;padding:6px 9px}.module-placeholder h1{position:relative;z-index:1;margin:16px 0 10px;font-size:38px;color:var(--navy);letter-spacing:-.04em}.module-placeholder p{position:relative;z-index:1;max-width:720px;font-size:14px;line-height:1.65;color:#66758d}.scope-list{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 22px}.scope-list span{border:1px solid var(--line);padding:8px 11px;border-radius:10px;font-size:11px;font-weight:800}.placeholder-note{position:relative;z-index:1;border-left:3px solid var(--blue);padding:10px 14px;background:#f8fbff;border-radius:0 10px 10px 0;font-size:11.5px;color:#556680;max-width:750px}.purple-tone h1 strong{color:var(--purple)}.blue-tone h1 strong{color:var(--blue)}.cyan-tone h1 strong{color:var(--cyan-2)}.green-tone h1 strong{color:var(--green)}.green-tone .placeholder-note{border-color:var(--green)}.cyan-tone .placeholder-note{border-color:var(--cyan)}
.auth-body{background:radial-gradient(circle at 75% 18%,rgba(5,171,197,.13),transparent 30%),linear-gradient(135deg,#f8fbff,#eef4fb);display:grid;place-items:center;padding:30px}.auth-shell{width:100%;max-width:430px}.auth-card{background:#fff;border:1px solid #dde5ef;border-radius:24px;padding:34px;box-shadow:0 28px 70px rgba(7,31,82,.14)}.auth-logo{display:block;width:245px;margin:0 auto 7px}.auth-kicker{text-align:center;text-transform:uppercase;letter-spacing:.12em;color:#8491a6;font-size:9px;font-weight:850;margin-bottom:28px}.auth-heading{text-align:center;margin-bottom:22px}.auth-heading h1{font-size:24px;color:var(--navy);margin:0 0 7px}.auth-heading p{margin:0;color:#7a879a;font-size:12.5px}.form-stack{display:flex;flex-direction:column;gap:15px}.security-note{text-align:center;margin-top:17px;font-size:9.5px;color:#96a1b2}.auth-version{text-align:center;border-top:1px solid var(--line-2);padding-top:16px;margin-top:24px;font-size:9px;color:#a1aabb}.error-page{text-align:center;padding:70px 20px}.error-code{font-size:70px;font-weight:950;color:#d5deeb}.error-page h1{color:var(--navy);margin:0 0 8px}.error-page p{color:var(--muted);font-size:13px;margin-bottom:20px}
@media(max-width:1180px){.module-grid{grid-template-columns:repeat(2,1fr)}.integration-grid{grid-template-columns:repeat(2,1fr)}.form-grid.cols-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-290px;transition:left .22s ease;width:276px;box-shadow:20px 0 40px rgba(8,31,82,.15)}.sidebar.open{left:0}.mobile-menu{display:block}.topbar{padding:0 18px;height:76px}.content{padding:22px 18px 50px}.user-meta{display:none}.toolbar{grid-template-columns:1fr 160px}.toolbar .button{grid-row:2}.metric-grid{grid-template-columns:1fr}.hero-panel{align-items:flex-start}.hero-badge{display:none}}
@media(max-width:650px){.module-grid,.integration-grid,.form-grid.cols-2,.form-grid.cols-3{grid-template-columns:1fr}.module-card{min-height:0}.module-header{align-items:flex-start;flex-direction:column}.module-header .button{width:100%}.toolbar{grid-template-columns:1fr}.toolbar .button{grid-row:auto}.topbar .page-subtitle{display:none}.content{padding-left:12px;padding-right:12px}.hero-panel{padding:24px}.hero-panel h1{font-size:25px}.section-heading{align-items:flex-start;flex-direction:column}.danger-zone{align-items:flex-start;flex-direction:column}.danger-zone .button{width:100%}.module-placeholder{padding:28px}.module-placeholder h1{font-size:31px}.auth-card{padding:27px 22px}.auth-body{padding:16px}}

/* V2.0.1 — Organization & Access Console */
.nav-link.access .nav-icon{color:#7057d9}.access-tone:before{background:#7057d9}.access-tone .eyebrow{color:#7057d9}
.core-console-banner{background:#fff;border:1px solid #d9d3f5;border-left:4px solid #7057d9;border-radius:16px;padding:18px 20px;margin:0 0 22px;display:flex;justify-content:space-between;align-items:center;gap:20px}.core-console-banner>div{display:flex;flex-direction:column}.core-console-banner strong{font-size:15px;color:var(--navy)}.core-console-banner p{font-size:11px;color:var(--muted);margin:5px 0 0}.core-console-banner>span{font-size:11.5px;font-weight:850;color:#6048c6;white-space:nowrap}
.access-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:14px;margin:0 0 18px}.access-metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-height:116px;display:flex;flex-direction:column;box-shadow:0 5px 16px rgba(7,31,82,.035)}.access-metric span{font-size:11px;color:#718097;font-weight:800}.access-metric strong{font-size:26px;color:var(--navy);margin:9px 0 3px}.access-metric small{font-size:10.5px;color:#96a1b2}.access-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.access-action-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;display:flex;align-items:flex-start;gap:15px;transition:.18s ease}.access-action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.access-action-icon{width:42px;height:42px;border-radius:12px;background:#f1efff;color:#654bd1;display:grid;place-items:center;font-weight:950;flex:0 0 auto}.access-action-card strong{font-size:14px;color:var(--navy)}.access-action-card p{font-size:11.5px;line-height:1.55;color:var(--muted);margin:6px 0 0}
.one-time-secret{background:linear-gradient(135deg,#fff9e8,#fff);border:1px solid #f2d58c;border-radius:16px;padding:18px 20px;margin-bottom:18px;box-shadow:0 8px 24px rgba(116,82,13,.07)}.one-time-secret>div:first-child{display:flex;flex-direction:column}.one-time-secret strong{font-size:13px;color:#77510c}.one-time-secret span{font-size:11px;color:#866b38;margin-top:4px}.secret-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:13px}.secret-copy-row input{min-width:0;border:1px solid #e4cc94;background:#fff;border-radius:9px;padding:0 11px;font-size:11px;color:#4b3c1e}
.inline-form{display:inline}.link-button{appearance:none;border:0;background:none;color:var(--blue);font-size:11.5px;font-weight:800;padding:0;margin-left:12px;cursor:pointer}.danger-link{color:var(--danger)}.role-summary{font-size:11.5px;color:#4c5d77}.security-chip{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f1f3f6;color:#667085;font-size:9.5px;font-weight:850;text-transform:uppercase}.security-chip.enabled{background:#eaf9ef;color:#08783f}.users-table{min-width:1050px}
.role-picker{border:1px solid var(--line);border-radius:14px;margin:20px 0 0;padding:17px}.role-picker legend{font-size:12px;font-weight:850;color:var(--navy);padding:0 7px}.role-picker>p{font-size:10.5px;color:var(--muted);margin:0 0 13px}.role-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.role-option{border:1px solid var(--line);border-radius:11px;padding:12px;display:flex;align-items:center;gap:9px;cursor:pointer}.role-option:has(input:checked){border-color:#9f91e6;background:#f7f5ff}.role-option input{width:16px;height:16px}.role-option span{display:flex;flex-direction:column}.role-option strong{font-size:11.5px}.role-option small{font-size:9.5px;color:#8d97a8;margin-top:2px}
.site-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.site-admin-card{border:1px solid var(--line);border-radius:15px;padding:17px;background:#fbfcfe}.site-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}.site-card-head>div{display:flex;flex-direction:column}.site-card-head strong{font-size:13px;color:var(--navy)}.site-card-head span{font-size:10px;color:#8b96a8;margin-top:3px}.compact-fields{gap:11px}.compact-fields .field{gap:4px}.compact-fields .field input,.compact-fields .field select{min-height:36px;font-size:11px}.site-card-actions{border-top:1px solid var(--line-2);padding-top:13px;margin-top:14px;display:flex;justify-content:flex-end;align-items:center;gap:4px}
.device-cell{max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.current-session{display:inline-flex;background:#e8f8ee;color:#08783f;border-radius:999px;padding:3px 6px;font-size:8px;margin-left:5px;vertical-align:middle}.security-callout{border:1px solid #d9d3f5;background:#f8f7ff;border-radius:16px;padding:18px 20px;margin:18px 0}.security-callout strong{font-size:13px;color:#513da9}.security-callout p{font-size:11.5px;color:#655b8f;line-height:1.55;margin:5px 0 0}.role-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.role-matrix article{border:1px solid var(--line);border-radius:14px;padding:17px}.role-matrix article>div{display:flex;justify-content:space-between;gap:12px}.role-matrix strong{font-size:13px;color:var(--navy)}.role-matrix span{font-size:9px;background:#f2f4f7;color:#69768b;border-radius:999px;padding:4px 7px}.role-matrix ul{columns:2;margin:14px 0 0;padding-left:17px}.role-matrix li{font-size:10px;color:#69768b;margin-bottom:6px;break-inside:avoid}
@media(max-width:1180px){.access-metrics{grid-template-columns:repeat(2,1fr)}.role-options{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.access-action-grid,.site-admin-grid,.role-matrix{grid-template-columns:1fr}.secret-copy-row{grid-template-columns:1fr}.role-matrix ul{columns:1}}
@media(max-width:560px){.access-metrics,.role-options{grid-template-columns:1fr}}

/* V2.1.0 — Organization Structure & Contract Catalog */
.structure-count,.scope-note{font-size:10.5px;color:var(--muted)}.structure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.structure-card{border:1px solid var(--line);border-radius:15px;padding:17px;background:#fbfcfe}.structure-path{display:flex;align-items:center;gap:7px;margin-bottom:12px;color:#7c899d;font-size:9.5px}.structure-path b{color:#bdc6d3}.structure-meta{border-top:1px solid var(--line-2);margin-top:13px;padding-top:10px;font-size:9.5px;color:#8894a6}
.catalog-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.catalog-summary a{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;align-items:center;gap:12px}.catalog-summary strong{font-size:24px;color:var(--purple)}.catalog-summary span{font-size:11px;font-weight:800;color:#65738a}.catalog-section{scroll-margin-top:105px}.catalog-create-form,.catalog-edit-form{display:grid;grid-template-columns:110px minmax(180px,1.4fr) minmax(140px,1fr) 120px minmax(125px,.8fr) auto;gap:9px;align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:13px;padding:12px;margin-bottom:13px}.catalog-create-form input,.catalog-create-form select,.catalog-edit-form input,.catalog-edit-form select{width:100%;min-height:36px;border:1px solid #d4ddea;border-radius:8px;background:#fff;padding:0 9px;font-size:10.5px}.mini-check{display:flex;align-items:center;gap:6px;font-size:9.5px;color:#68758d}.mini-check input{width:14px;height:14px;min-height:0}.catalog-records{display:flex;flex-direction:column;gap:8px}.catalog-record{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.catalog-record summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 15px;cursor:pointer;list-style:none}.catalog-record summary::-webkit-details-marker{display:none}.catalog-record summary>span:first-child{display:flex;flex-direction:column}.catalog-record summary b{font-size:11.5px;color:var(--navy)}.catalog-record summary small{font-size:9.5px;color:#8591a3;margin-top:3px}.catalog-record[open] summary{background:#fbfcfe;border-bottom:1px solid var(--line-2)}.catalog-edit-form{margin:12px}.catalog-archive-form{text-align:right;padding:0 14px 13px}.compact-catalog-form{grid-template-columns:110px minmax(180px,1.4fr) minmax(180px,1fr) 120px auto}.contract-toolbar{display:flex;justify-content:flex-end;gap:9px;margin:-7px 0 13px}.contracts-catalog-table{min-width:1150px}
@media(max-width:1180px){.structure-grid{grid-template-columns:1fr}.catalog-create-form,.catalog-edit-form,.compact-catalog-form{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-create-form .button,.catalog-edit-form .button{width:100%}}

/* V2.1.2.6 · Organizational entitlements */
.scope-context-selector{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto;gap:14px;align-items:end;margin:0 0 18px;padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:0 8px 28px rgba(18,43,82,.05)}
.scope-context-selector label{display:grid;gap:7px}.scope-context-selector label span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.scope-context-summary{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--scope-accent) 24%,#dce4ef);border-radius:17px;background:linear-gradient(120deg,color-mix(in srgb,var(--scope-accent) 8%,#fff),#fff)}
.scope-module-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--scope-accent);color:#fff;font-size:20px;font-weight:900;box-shadow:0 9px 22px color-mix(in srgb,var(--scope-accent) 24%,transparent)}
.scope-context-summary>div:nth-child(2){display:grid;gap:3px}.scope-context-summary span,.scope-context-summary small{font-size:10px;color:var(--muted)}.scope-context-summary strong{font-size:16px;color:var(--ink)}
.protected-profile{margin-left:auto;padding:7px 10px;border-radius:999px;background:#e9f6ff;color:#075c98!important;font-weight:800}
.scope-entitlement-form{display:grid;gap:18px}.scope-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.scope-mode-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:3px 13px;padding:19px;border:1px solid var(--line);border-radius:17px;background:#fff;cursor:pointer;transition:.2s ease}
.scope-mode-card:hover{transform:translateY(-1px);border-color:#aebed2;box-shadow:0 10px 25px rgba(22,49,88,.07)}.scope-mode-card.selected{border-color:#178bd0;background:linear-gradient(135deg,#f1faff,#fff);box-shadow:0 0 0 3px rgba(23,139,208,.1)}
.scope-mode-card input{position:absolute;right:16px;top:16px}.scope-mode-icon{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#e9f6ff;color:#087bc1;font-size:21px}.scope-mode-card strong{padding-right:28px}.scope-mode-card small{color:var(--muted);line-height:1.45}
.scope-tree{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.2s ease}.scope-tree-disabled{opacity:.62;background:#f7f9fc}.scope-tree-disabled .scope-site-grid{pointer-events:none}
.scope-site-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.scope-site-card{overflow:hidden;border:1px solid var(--line);border-radius:15px;background:#fbfcfe}.scope-site-head{display:flex;align-items:center;gap:11px;padding:14px 15px;border-bottom:1px solid var(--line-2);background:#f4f8fc}.scope-site-head>span{display:grid;gap:2px}.scope-site-head small,.scope-unit-list small{display:block;color:var(--muted);font-size:9px}.scope-site-head b{margin-left:auto;font-size:9px;color:#087bc1;text-transform:uppercase;letter-spacing:.06em}.scope-site-head.static{padding-left:43px}
.scope-unit-list{display:grid;padding:8px}.scope-unit-list label{display:flex;align-items:center;gap:10px;padding:9px;border-radius:10px}.scope-unit-list label:hover{background:#eef6fb}.scope-unit-covered{opacity:.45}.scope-empty-units{padding:12px;color:var(--muted);font-size:10px}.scope-selection-count{font-size:10px;color:#087bc1;font-weight:800}.module-scope-summary{display:block;margin-top:9px;color:#61758c;font-weight:700}
@media(max-width:900px){.scope-context-selector{grid-template-columns:1fr}.scope-mode-grid,.scope-site-grid{grid-template-columns:1fr}.scope-context-summary{align-items:flex-start}.protected-profile{margin-left:0}}
@media(max-width:760px){.catalog-summary{grid-template-columns:repeat(2,1fr)}.catalog-create-form,.catalog-edit-form,.compact-catalog-form{grid-template-columns:1fr}.contract-toolbar{justify-content:stretch;flex-direction:column}.contract-toolbar .button{width:100%}}
@media(max-width:480px){.catalog-summary{grid-template-columns:1fr}}

/* V2.1.0.2 — Access & Security Completion */
.auth-link{display:block;text-align:center;color:var(--blue);font-size:11.5px;font-weight:800;margin-top:2px}.mfa-code-input{font-size:22px!important;letter-spacing:.18em;text-align:center;font-weight:850}.section-copy{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 18px}.security-enforcement{background:#fff7e8;border:1px solid #f0cc82;border-left:4px solid #cc8500;border-radius:14px;padding:17px 19px;margin-bottom:18px}.security-enforcement strong{font-size:13px;color:#805400}.security-enforcement p{font-size:11px;color:#886c35;margin:5px 0 0}.backup-secret{background:linear-gradient(135deg,#effdf5,#fff);border-color:#9bdab8}.backup-secret strong{color:#08783f}.backup-code-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:15px}.backup-code-grid code{background:#fff;border:1px solid #bfe7d0;border-radius:8px;padding:9px;text-align:center;color:#075f34;font-size:11px;font-weight:850}.mfa-setup-card{border-color:#cfc8f2}.technical-detail{margin:13px 0 18px;font-size:10.5px;color:#69768b}.technical-detail summary{cursor:pointer;font-weight:800;color:#6048c6}.technical-detail code{display:block;white-space:normal;word-break:break-all;background:#f7f6fd;border-radius:8px;padding:10px;margin-top:8px}.mfa-confirm-form{display:grid;grid-template-columns:minmax(200px,1fr) auto;gap:12px;align-items:end}.metric-date{font-size:18px!important}.account-security-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-security-grid .section-block{margin-top:18px}.danger-security-card{border-color:#f2c4bd}.security-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.security-status-grid .security-callout{margin:0}.success-callout{background:#f0fbf5;border-color:#b8e5cc}.success-callout strong{color:#08783f}.warning-callout{background:#fff9eb;border-color:#efd595}.warning-callout strong{color:#805400}.security-operations-link{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(130deg,var(--navy),#0d4d78);color:#fff;border-radius:16px;padding:20px 22px;margin:18px 0}.security-operations-link>div{display:flex;flex-direction:column}.security-operations-link strong{font-size:14px}.security-operations-link span{font-size:11px;color:#cfe2f5;margin-top:4px}.audit-filters{display:grid;grid-template-columns:minmax(180px,1.3fr) 130px minmax(160px,1fr) 145px 145px auto auto;gap:9px;margin-bottom:15px}.audit-filters input,.audit-filters select{min-width:0;min-height:40px;border:1px solid #d4ddea;border-radius:9px;background:#fff;padding:0 10px;font-size:11px;color:var(--ink)}.audit-table{min-width:1180px}.audit-detail summary{cursor:pointer;color:var(--blue);font-size:10.5px;font-weight:800}.audit-detail code{display:block;max-width:320px;white-space:normal;word-break:break-word;background:#f5f7fa;border-radius:7px;padding:7px;margin-top:5px;font-size:9px;color:#5d6c83}.security-alert-list{display:flex;flex-direction:column;gap:9px}.security-alert{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);border-left:4px solid #6aa6d9;border-radius:12px;padding:13px 15px}.security-alert>div{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:4px 10px}.security-alert>div>span{grid-row:1/3;text-transform:uppercase;font-size:8.5px;font-weight:900;color:#3b6f9b;background:#edf6ff;border-radius:999px;padding:5px;text-align:center}.security-alert strong{font-size:11.5px}.security-alert small{font-size:9.5px;color:#8793a5}.security-alert.severity-warning{border-left-color:#d69216}.security-alert.severity-critical{border-left-color:var(--danger)}.security-alert.resolved{opacity:.62}.maintenance-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.maintenance-row p{font-size:11.5px;color:var(--muted);margin:0 0 5px}.maintenance-row small{font-size:9.5px;color:#8b96a8}
@media(max-width:1200px){.security-status-grid{grid-template-columns:1fr}.audit-filters{grid-template-columns:repeat(3,1fr)}.backup-code-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.account-security-grid{grid-template-columns:1fr}.mfa-confirm-form{grid-template-columns:1fr}.security-operations-link,.maintenance-row,.security-alert{align-items:flex-start;flex-direction:column}.audit-filters{grid-template-columns:1fr}.backup-code-grid{grid-template-columns:1fr}.security-alert>div{grid-template-columns:1fr}.security-alert>div>span{grid-row:auto;width:max-content}}

/* V2.1.1–V2.1.2 · People assignment, imports and data quality */
.header-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.table-primary-link{color:var(--navy)}.table-primary-link:hover{text-decoration:underline}.field textarea{width:100%;border:1px solid #ccd6e4;border-radius:10px;padding:10px 12px;color:var(--ink);background:#fff;resize:vertical;font:inherit}.field textarea:focus{outline:2px solid rgba(5,171,197,.16);border-color:var(--cyan)}.checkbox-field>label{min-height:44px;border:1px solid #d8e0eb;border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:9px;font-size:12px;color:#455570}.checkbox-field input{width:17px;height:17px}.movement-form-panel{margin:22px 0 0;border:1px solid #d8c8ef;background:#faf7ff;border-radius:14px;padding:18px}.movement-form-panel>div:first-child{display:flex;flex-direction:column;margin-bottom:14px}.movement-form-panel>div:first-child strong{font-size:13px;color:var(--purple)}.movement-form-panel>div:first-child span{font-size:11px;color:var(--muted);margin-top:3px}
.people-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 20px}.summary-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;flex-direction:column;box-shadow:0 5px 16px rgba(7,31,82,.04)}.summary-card>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:850}.summary-card>strong{font-size:25px;color:var(--navy);margin:6px 0}.summary-card>small{font-size:10px;color:#7b879a}.summary-card.critical-card{border-left:4px solid var(--danger)}.summary-card.warning-card{border-left:4px solid #d69216}.capacity-bar{height:7px;background:#edf1f6;border-radius:999px;overflow:hidden;margin-top:12px}.capacity-bar i{display:block;height:100%;max-width:100%;background:linear-gradient(90deg,var(--cyan),var(--purple));border-radius:999px}.section-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;margin:0 0 20px;box-shadow:0 6px 20px rgba(7,31,82,.04)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.section-heading h2{font-size:17px;color:var(--navy);margin:0}.context-note{font-size:10px;color:#8490a4}.information-callout{display:flex;gap:10px;align-items:flex-start;border:1px solid #cbdfea;background:#f3fbfd;border-radius:13px;padding:14px 16px;margin:0 0 20px}.information-callout strong{font-size:11px;color:#08768c;white-space:nowrap}.information-callout span{font-size:10.5px;line-height:1.55;color:#617086}.information-callout code{font-size:10px}.movement-timeline{display:flex;flex-direction:column}.movement-entry{display:grid;grid-template-columns:130px minmax(0,1fr);gap:18px;padding:15px 0;border-top:1px solid var(--line-2)}.movement-entry:first-child{border-top:0;padding-top:0}.movement-date{display:flex;flex-direction:column}.movement-date strong{font-size:12px;color:var(--navy)}.movement-date span{font-size:9px;color:#8c97a9;margin-top:4px;text-transform:uppercase}.movement-body>div{display:flex;gap:9px;align-items:center}.movement-body>div strong{font-size:12.5px}.movement-body>div span{font-size:9px;background:#f0f3f8;color:#62708a;border-radius:999px;padding:4px 7px}.movement-body p{margin:6px 0 3px;font-size:11.5px;color:#41506a}.movement-body small{font-size:9.5px;color:#8591a4}
.quality-list{display:flex;flex-direction:column;gap:9px}.quality-issue{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-left:4px solid #d69216;border-radius:12px;padding:13px 14px}.quality-issue.severity-critical{border-left-color:var(--danger)}.quality-severity{font-size:8.5px;text-transform:uppercase;font-weight:900;color:#805400;background:#fff5d9;border-radius:999px;padding:6px;text-align:center}.severity-critical .quality-severity{color:var(--danger);background:var(--danger-bg)}.quality-issue strong{font-size:11.5px}.quality-issue p{font-size:10.5px;margin:3px 0;color:#59677e}.quality-issue small{font-size:9px;color:#8995a7}.success-empty{background:#f4fcf7}
.import-flow{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 22px}.import-flow span{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800;color:#8a95a6}.import-flow span b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#e8edf4;color:#6d7990}.import-flow span.active{color:var(--purple)}.import-flow span.active b{background:var(--purple);color:#fff}.import-flow i{height:1px;width:65px;background:#d8e0ea}.import-card{margin-bottom:20px}.import-rules{margin-top:18px;background:#f7f9fc;border:1px solid var(--line);border-radius:12px;padding:14px 16px}.import-rules strong{font-size:11.5px;color:var(--navy)}.import-rules ul{margin:8px 0 0;padding-left:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 24px}.import-rules li{font-size:10.5px;color:#657188}.review-actions{display:flex;gap:9px;justify-content:flex-end;margin:0 0 14px}.import-review-table{min-width:1050px}.import-review-table .row-invalid{background:#fff9f7}.row-errors{margin:7px 0 0;padding-left:16px;color:var(--danger);font-size:9.5px;line-height:1.5}.status-valid,.status-committed{background:var(--success-bg);color:var(--success)}.status-invalid{background:var(--danger-bg);color:var(--danger)}.status-preview{background:#fff7df;color:#805400}.status-cancelled{background:#f1f3f6;color:#667287}
@media(max-width:1000px){.people-summary-grid{grid-template-columns:1fr}.quality-issue{grid-template-columns:70px minmax(0,1fr)}.quality-issue .button{grid-column:2;width:max-content}.import-rules ul{grid-template-columns:1fr}}
@media(max-width:760px){.header-actions,.review-actions{justify-content:flex-start}.section-heading,.information-callout{flex-direction:column}.movement-entry{grid-template-columns:1fr}.quality-issue{grid-template-columns:1fr}.quality-issue .button{grid-column:auto}.import-flow i{width:20px}}

/* V2.1.2.2 · Secure First Owner Web Setup */
.setup-badge{display:inline-flex;margin:0 auto 12px;padding:5px 9px;border-radius:999px;background:#eef4ff;color:var(--navy);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.setup-status{display:flex;flex-direction:column;gap:5px;border:1px solid var(--line);border-radius:13px;padding:15px 16px;margin-bottom:17px}.setup-status strong{font-size:12.5px}.setup-status span{font-size:10.5px;line-height:1.5}.setup-status-success{background:var(--success-bg);border-color:#bcebd0;color:var(--success)}.setup-status-error{background:var(--danger-bg);border-color:#ffd4ce;color:var(--danger)}.setup-password-note{border-left:3px solid var(--cyan);background:#f2fbfd;border-radius:0 9px 9px 0;padding:10px 12px;color:#527080;font-size:10px;line-height:1.5}

/* V2.1.2.3 · HR Data Adapter */
.hr-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.hr-profile-card{background:#fff;border:1px solid var(--line);border-top:4px solid #8e6bbd;border-radius:14px;padding:20px}.hr-profile-card.shift{border-top-color:#4d9f83}.hr-profile-card h3{margin:8px 0}.hr-profile-card p{margin:0;color:var(--muted);line-height:1.55}.hr-profile-type{display:inline-flex;padding:4px 9px;border-radius:999px;background:#f2edf8;color:#65428e;font-size:.78rem;font-weight:700}.hr-profile-card.shift .hr-profile-type{background:#e9f5f1;color:#26755d}.hr-flow span{min-width:116px}.hr-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.hr-metrics article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px}.hr-metrics article span{display:block;color:var(--muted);font-size:.78rem}.hr-metrics article strong{font-size:1.6rem}.metric-ok strong{color:#27785f}.metric-warning strong{color:#a66c14}.metric-error strong,.text-danger{color:#a53c49}.assumption-card ul{margin-bottom:0}.inline-field{display:flex;align-items:center;gap:8px}.inline-field span{font-size:.78rem;color:var(--muted)}.inline-field input{width:68px}.hr-row-table{min-width:1100px}.hr-row-table td{vertical-align:top}.issue-list{list-style:none;padding:0;margin:0;min-width:220px}.issue-list li{margin:0 0 5px;padding-left:14px;position:relative;font-size:.78rem}.issue-list li:before{content:'•';position:absolute;left:0}.issue-error{color:#a53c49}.issue-warning{color:#8c6017}.confirm-import-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,1fr) auto;gap:24px;align-items:start}.check-field{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px}.check-field input{margin-top:4px}.status-warning,.status-needs_input,.status-pending{background:#fff3dc;color:#8c6017}.status-valid,.status-matched,.status-created,.status-imported,.status-staged{background:#e6f5ef;color:#26755d}.status-invalid,.status-conflict{background:#fdebed;color:#a53c49}.status-cancelled{background:#f0f0f0;color:#686868}.status-preview{background:#edf1fb;color:#435a99}.status-committed{background:#e6f5ef;color:#26755d}.alert-info{background:#edf4fb;border-color:#bed4eb;color:#355e82}@media(max-width:980px){.hr-profile-grid{grid-template-columns:1fr}.hr-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.confirm-import-card{grid-template-columns:1fr}}@media(max-width:640px){.hr-metrics{grid-template-columns:1fr}.hr-flow span{min-width:0}}

/* V2.1.2.3.1 · Flexible Schedule Plan Reconciliation */
.schedule-catalog-form{grid-template-columns:110px minmax(180px,1.4fr) minmax(130px,1fr) 120px 120px repeat(3,92px) minmax(170px,1.2fr) 105px auto}.schedule-distribution-editor{display:grid;grid-template-columns:repeat(4,minmax(82px,1fr));gap:7px;min-width:470px}.schedule-distribution-editor label{display:flex;flex-direction:column;gap:3px}.schedule-distribution-editor label span{font-size:.68rem;color:var(--muted)}.schedule-distribution-editor input,.schedule-distribution-editor select{min-height:32px;border:1px solid #d4ddea;border-radius:7px;background:#fff;padding:0 7px;font-size:.76rem}.schedule-distribution-editor .schedule-note{grid-column:1/-1}@media(max-width:1180px){.schedule-catalog-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.schedule-catalog-form{grid-template-columns:1fr}}@media(max-width:640px){.schedule-distribution-editor{grid-template-columns:repeat(2,minmax(82px,1fr));min-width:360px}}

/* V2.1.2.3.2 · Multi-Source Catalog Ownership & Governance */
.governance-panel{border-top:4px solid var(--purple)}.governance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.governance-card{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);border-radius:13px;padding:14px;background:#fff}.governance-card.mode-external{border-color:#b9d5e7;background:#f6fbfe}.governance-card>strong{font-size:12px;color:var(--navy)}.governance-card label{display:flex;flex-direction:column;gap:4px}.governance-card label span{font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.governance-card input,.governance-card select{min-height:36px;border:1px solid #d4ddea;border-radius:8px;background:#fff;padding:0 9px;font-size:10.5px}.governance-card small{font-size:9.5px;line-height:1.45;color:var(--muted)}.ownership-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:9.5px;font-weight:800}.ownership-badge.mode-planoria{background:#edf1fb;color:#435a99}.ownership-badge.mode-external{background:#e8f5fa;color:#25708c}.ownership-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-left:4px solid var(--purple);border-radius:12px;padding:12px 15px;margin:0 0 18px;background:#fff}.ownership-notice.mode-external{border-left-color:#2c8daf;background:#f5fbfd}.ownership-notice strong{font-size:11px;color:var(--navy)}.ownership-notice span{font-size:10px;color:var(--muted);text-align:right}.catalog-readonly-note{margin:12px 14px;padding:11px 13px;border-radius:9px;background:#f4f7fa;color:#607086;font-size:10px;line-height:1.5}@media(max-width:1000px){.governance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.governance-grid{grid-template-columns:1fr}.ownership-notice{align-items:flex-start;flex-direction:column}.ownership-notice span{text-align:left}}

/* V2.1.2.4 · Public Platform Gateway */
.gateway-target{margin:0 0 18px;padding:12px 14px;border:1px solid #cae5eb;border-left:3px solid var(--cyan);border-radius:10px;background:#f4fbfc;display:flex;flex-direction:column;gap:3px}.gateway-target span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#15879b}.gateway-target strong{font-size:12px;color:var(--navy)}.gateway-target small{font-size:9px;line-height:1.45;color:#718097}

/* V2.1.2.5 · Module Access Profiles & Secure Gateway */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.nav-access-level{margin-left:auto;font-size:7px;line-height:1;text-transform:uppercase;letter-spacing:.06em;color:#8290a5;background:#f2f5f9;border-radius:999px;padding:4px 5px}.module-card{position:relative}.module-card-locked{filter:saturate(.4);background:#f7f9fc;border-style:dashed;box-shadow:none;cursor:not-allowed}.module-card-locked:hover{transform:none;box-shadow:none}.module-card-locked .module-symbol,.module-card-locked h2,.module-card-locked p{opacity:.58}.module-lock{position:absolute;right:15px;top:15px;width:23px;height:23px;border:2px solid #9ba7b8;border-radius:7px;color:transparent}.module-lock:before{content:"";position:absolute;width:10px;height:8px;border:2px solid #9ba7b8;border-bottom:0;border-radius:8px 8px 0 0;left:4px;top:-8px}
.access-level-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.access-level-guide>div{display:grid;grid-template-columns:13px 1fr;gap:3px 9px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 15px}.access-level-guide strong{font-size:11.5px;color:var(--navy)}.access-level-guide small{grid-column:2;font-size:9.5px;line-height:1.45;color:var(--muted)}.level-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 4px #f2f4f7}.level-dot.level-none{background:#98a2b3}.level-dot.level-read{background:#3977c8;box-shadow:0 0 0 4px #edf4fd}.level-dot.level-operate{background:#00a6bd;box-shadow:0 0 0 4px #e9fafc}.level-dot.level-admin{background:#654bd1;box-shadow:0 0 0 4px #f0edff}
.module-profile-form{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(7,31,82,.045)}.module-profile-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.module-profile-table{min-width:920px}.module-profile-table thead th{height:82px;text-align:center;background:#f8fafc}.module-profile-table thead th:first-child{text-align:left;min-width:210px}.module-profile-table thead th:not(:first-child){border-top:4px solid var(--module-color)}.module-profile-table thead th>span{display:block}.profile-module-icon{width:31px;height:31px;margin:0 auto 6px;border-radius:9px;display:grid!important;place-items:center;background:color-mix(in srgb,var(--module-color) 12%,white);color:var(--module-color);font-size:13px;font-weight:950}.module-profile-table tbody th{background:#fff;text-transform:none;letter-spacing:0}.module-profile-table tbody th strong{font-size:12.5px;color:var(--ink)}.module-profile-table tbody th small{display:block;margin-top:3px;font-size:9px;color:#8994a7;font-weight:600}.protected-profile{display:inline-flex;margin-top:7px;border-radius:999px;padding:4px 7px;background:#edf4ff;color:#345f9c;font-size:7.5px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.module-profile-table td{text-align:center;background:#fff}.module-access-select{display:block;position:relative}.module-access-select:before{content:"";position:absolute;left:10px;top:50%;transform:translateY(-50%);width:7px;height:7px;border-radius:50%;z-index:1}.module-access-select.level-none:before{background:#98a2b3}.module-access-select.level-read:before{background:#3977c8}.module-access-select.level-operate:before{background:#00a6bd}.module-access-select.level-admin:before{background:#654bd1}.module-access-select select{width:100%;min-width:135px;height:39px;border:1px solid #d9e1ec;border-radius:9px;background:#fff;padding:0 29px 0 25px;font-size:10.5px;font-weight:750;color:#40506a;outline:none}.module-access-select select:focus{border-color:#6a9fd3;box-shadow:0 0 0 3px rgba(18,103,214,.1)}.module-access-select select:disabled{opacity:.74;cursor:not-allowed;background:#f7f9fc}.profile-security-note{display:flex;align-items:center;gap:12px;margin:17px 0 0;padding:14px 16px;border:1px solid #cfe0ed;border-left:4px solid var(--cyan);border-radius:12px;background:#f7fcfd}.profile-security-note>span{color:var(--cyan-2);font-size:18px}.profile-security-note>div{display:flex;flex-direction:column}.profile-security-note strong{font-size:11.5px;color:var(--navy)}.profile-security-note p{font-size:10px;line-height:1.5;color:var(--muted);margin:3px 0 0}
.module-denied{max-width:780px;margin:7vh auto 0;background:#fff;border:1px solid var(--line);border-top:5px solid var(--denied-accent);border-radius:22px;padding:42px;box-shadow:0 22px 55px rgba(7,31,82,.1);text-align:center}.denied-symbol{width:72px;height:72px;margin:0 auto 19px;border-radius:22px;display:grid;place-items:center;background:color-mix(in srgb,var(--denied-accent) 10%,white);color:var(--denied-accent);font-size:28px;font-weight:950;box-shadow:0 0 0 9px color-mix(in srgb,var(--denied-accent) 5%,white)}.module-denied h1{margin:8px 0 12px;color:var(--navy);font-size:28px;letter-spacing:-.025em}.module-denied>p{max-width:610px;margin:0 auto;color:var(--muted);font-size:12.5px;line-height:1.65}.denied-levels{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:480px;margin:24px auto}.denied-levels>div{border:1px solid var(--line);border-radius:13px;padding:14px}.denied-levels span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:#8b96a8;font-weight:850}.denied-levels strong{display:block;margin-top:6px;font-size:13px;color:var(--navy)}.denied-actions{display:flex;align-items:center;justify-content:center;gap:15px}.denied-actions>span{font-size:9.5px;color:#8a95a7}
@media(max-width:1000px){.access-level-guide{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.access-level-guide{grid-template-columns:1fr}.module-profile-form{padding:12px}.module-denied{padding:30px 20px;margin-top:2vh}.module-denied h1{font-size:23px}.denied-levels{grid-template-columns:1fr}.denied-actions{align-items:stretch;flex-direction:column}.nav-access-level{display:none}}
