:root{--color-bg: #f2f2f3;--color-surface: #ffffff;--color-surface-2: #f8f9fa;--color-surface-3: #f0f0f0;--color-text: #333333;--color-text-muted: #666666;--color-text-subtle: #999999;--color-text-on-brand: #ffffff;--color-border: #dddddd;--color-border-subtle: #eeeeee;--color-brand: #005677;--color-brand-strong: #002a3b;--color-brand-text: #005677;--color-accent: #f26027;--color-accent-text: #f26027;--color-brand-green: #69b345;--color-sky: #00a8e1;--gradient-header: linear-gradient(135deg, #005677 0%, #002a3b 100%);--color-success: #2e7d32;--color-success-bg: #e8f5e9;--color-success-text: #155724;--color-success-border: #c3e6cb;--color-danger: #d32f2f;--color-danger-bg: #ffebee;--color-danger-text: #721c24;--color-danger-border: #f5c6cb;--color-warning: #f57c00;--color-warning-bg: #fff3cd;--color-warning-text: #856404;--color-warning-border: #ffe0b2;--color-info: #1976d2;--color-info-bg: #e3f2fd;--color-info-text: #0d47a1;--color-info-border: #bbdefb;--color-neutral: #6c757d;--color-neutral-hover: #5a6268;--color-purple: #9c27b0;--color-purple-bg: #f3e5f5;--color-purple-text: #6a1b9a;--color-shadow: rgba(0, 0, 0, .1);--color-shadow-strong: rgba(0, 0, 0, .3);--color-overlay: rgba(0, 0, 0, .5);color-scheme:light}:root[data-theme=dark]{--color-bg: #0f1519;--color-surface: #1a2228;--color-surface-2: #222c33;--color-surface-3: #2a353c;--color-text: #e6edf1;--color-text-muted: #a7b3bb;--color-text-subtle: #7a858d;--color-text-on-brand: #ffffff;--color-border: #333f47;--color-border-subtle: #2a343b;--color-brand: #0a6a8f;--color-brand-strong: #063243;--color-brand-text: #4bb8dd;--color-accent: #f26027;--color-accent-text: #ff8a5c;--color-brand-green: #7cc257;--color-sky: #38bdf0;--gradient-header: linear-gradient(135deg, #063243 0%, #010f16 100%);--color-success: #4caf50;--color-success-bg: #16331c;--color-success-text: #a5d6a7;--color-success-border: #2e5233;--color-danger: #f26a6a;--color-danger-bg: #3a1e21;--color-danger-text: #f4b6ba;--color-danger-border: #5c2f33;--color-warning: #ffa726;--color-warning-bg: #3a2f14;--color-warning-text: #ffe082;--color-warning-border: #5c4a1f;--color-info: #64b5f6;--color-info-bg: #14283a;--color-info-text: #90caf9;--color-info-border: #2a4a66;--color-neutral: #3a444b;--color-neutral-hover: #4a555d;--color-purple: #ce93d8;--color-purple-bg: #2a1a30;--color-purple-text: #ce93d8;--color-shadow: rgba(0, 0, 0, .4);--color-shadow-strong: rgba(0, 0, 0, .6);--color-overlay: rgba(0, 0, 0, .7);color-scheme:dark}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-bg);color:var(--color-text)}.App{min-height:100vh;display:flex;flex-direction:column}.App-header{background:linear-gradient(135deg,var(--color-brand) 0%,var(--color-brand-strong) 100%);color:var(--color-text-on-brand);padding:1rem .75rem;box-shadow:0 2px 10px var(--color-shadow);display:flex;justify-content:space-between;align-items:center}.App-header h1{margin:0;font-size:2.5rem;font-weight:700}.App-header p{margin:.5rem 0 0;font-size:1.1rem;opacity:.9}.App-nav{display:flex;gap:.5rem;align-items:center}.user-dropdown-container{position:relative;margin-left:1rem;padding-left:1rem;border-left:1px solid rgba(255,255,255,.3)}.user-dropdown-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:#ffffff1a;color:var(--color-text-on-brand);border:1px solid rgba(255,255,255,.3);border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.user-dropdown-button:hover{background-color:#fff3;border-color:#ffffff80}.dropdown-arrow{font-size:.7rem;opacity:.8}.user-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;min-width:200px;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;overflow:hidden;z-index:1000}.dropdown-item{display:block;width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;font-size:.95rem;font-weight:500;color:var(--color-text);cursor:pointer;transition:all .2s;border-bottom:1px solid var(--color-surface-3)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:var(--color-surface-2);color:var(--color-brand-text)}.dropdown-item.logout{color:var(--color-danger)}.dropdown-item.logout:hover{background-color:var(--color-danger-bg);color:var(--color-danger)}.nav-button{padding:.75rem 1.5rem;background-color:#fff3;color:var(--color-text-on-brand);border:2px solid rgba(255,255,255,.3);border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.nav-button:hover{background-color:#ffffff4d;border-color:#ffffff80}.nav-button.active{background-color:var(--color-surface);color:var(--color-brand-text);border-color:var(--color-border)}.App-main{flex:1;padding:1rem .75rem;max-width:100%;width:100%;margin:0 auto}.error-message{background-color:var(--color-danger-bg);border:1px solid var(--color-danger-bg);border-radius:8px;padding:1rem;margin:1rem 0;color:var(--color-danger)}.loading-message{text-align:center;padding:3rem;font-size:1.2rem;color:var(--color-brand-text)}.loading-message:after{content:"...";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}@media(max-width:768px){.App-header{flex-direction:column;align-items:flex-start;gap:1rem}.App-header h1{font-size:1.8rem}.App-header p{font-size:1rem}.App-nav{width:100%}.nav-button{flex:1;padding:.6rem 1rem;font-size:.9rem}.App-main{padding:.75rem}}.theme-toggle{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:var(--color-text-on-brand);font-size:1.1rem;line-height:1;width:2.25rem;height:2.25rem;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease}.theme-toggle:hover{background:#ffffff38}.identity-selector{background:var(--color-surface);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px var(--color-shadow);margin-bottom:2rem}.identity-selector h2{margin:0 0 1.5rem;color:var(--color-text);font-size:1.5rem}.search-box{margin-bottom:1rem}.search-input{width:100%;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:8px;font-size:1rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:var(--color-brand)}.identity-stats{margin-bottom:1rem;padding:.75rem;background-color:var(--color-surface-2);border-radius:6px;font-size:.9rem;color:var(--color-text-muted)}.identity-stats strong{color:var(--color-text);font-weight:600}.identity-list{max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.identity-item{padding:1rem;border-bottom:1px solid var(--color-surface-3);cursor:pointer;transition:all .2s}.identity-item:last-child{border-bottom:none}.identity-item:hover{background-color:var(--color-surface-2)}.identity-item.selected{background-color:var(--color-brand);color:var(--color-text-on-brand)}.identity-item.compare1{background-color:var(--color-accent);color:var(--color-text-on-brand)}.identity-item.compare2{background-color:var(--color-sky);color:var(--color-text-on-brand)}.identity-item.disabled{cursor:not-allowed!important;opacity:.5}.identity-item.selected .identity-email,.identity-item.selected .state-badge,.identity-item.compare1 .identity-email,.identity-item.compare1 .state-badge,.identity-item.compare2 .identity-email,.identity-item.compare2 .state-badge{color:#ffffffe6;border-color:#ffffff80}.identity-item.compare1 .detail-label,.identity-item.compare2 .detail-label{color:#fffc}.identity-name{font-weight:600;font-size:1rem;margin-bottom:.25rem}.identity-email{font-size:.85rem;color:var(--color-text-muted);margin-bottom:.5rem}.identity-details{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0;font-size:.8rem}.identity-item.selected .identity-details{color:#fffffff2}.detail-item{display:inline-flex;align-items:center;gap:.25rem}.detail-label{font-weight:600;color:var(--color-text-subtle)}.identity-item.selected .detail-label{color:#ffffffb3}.identity-state{margin-top:.5rem}.state-badge{display:inline-block;padding:.25rem .75rem;background-color:var(--color-surface-2);color:var(--color-brand-text);border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;border:1px solid var(--color-text-subtle)}.loading,.no-results{text-align:center;padding:2rem;color:var(--color-text-subtle)}@media(max-width:768px){.identity-selector{padding:1rem}.identity-list{max-height:300px}}.ag-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.ag-modal{background:var(--color-surface, #fff);color:var(--color-text, #1a1a1a);border-radius:10px;width:min(1200px,97vw);height:min(90vh,940px);display:flex;flex-direction:column;box-shadow:0 10px 40px #00000059;overflow:hidden}.ag-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border, #e2e2e2)}.ag-header h2{margin:0;font-size:1.15rem}.ag-subtitle{margin:.25rem 0 0;font-size:.85rem;color:var(--color-text-muted, #6b7280)}.ag-close{background:transparent;border:none;font-size:1.1rem;cursor:pointer;color:var(--color-text-muted, #6b7280);padding:.25rem .5rem;border-radius:6px}.ag-close:hover{background:var(--color-border, #eee)}.ag-toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;padding:.7rem 1.25rem;border-bottom:1px solid var(--color-border, #e2e2e2)}.ag-search{flex:1 1 220px;min-width:180px;padding:.45rem .7rem;border:1px solid var(--color-border, #d1d5db);border-radius:6px;font-size:.9rem;background:var(--color-bg, #fff);color:inherit}.ag-toolbar-group{display:flex;align-items:center;gap:.35rem}.ag-toolbar button{padding:.4rem .7rem;border:1px solid var(--color-border, #d1d5db);background:var(--color-bg, #fff);color:inherit;border-radius:6px;font-size:.82rem;cursor:pointer}.ag-toolbar button:hover{background:var(--color-border, #f3f4f6)}.ag-export-wrap{position:relative}.ag-export-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:20;background:var(--color-surface, #fff);border:1px solid var(--color-border, #d1d5db);border-radius:6px;box-shadow:0 6px 20px #0000002e;display:flex;flex-direction:column;min-width:140px;overflow:hidden}.ag-export-menu button{border:none;border-radius:0;text-align:left;padding:.5rem .75rem;background:transparent}.ag-export-menu button:hover{background:var(--color-border, #f3f4f6)}.ag-legend{display:flex;gap:.75rem;flex-wrap:wrap;margin-left:auto;font-size:.75rem;color:var(--color-text-muted, #6b7280)}.ag-legend-item{display:inline-flex;align-items:center;gap:.3rem}.ag-legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.ag-filters{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap;padding:.55rem 1.25rem;border-bottom:1px solid var(--color-border, #e2e2e2);font-size:.82rem}.ag-filters-label{font-weight:600;color:var(--color-text-muted, #4b5563)}.ag-filter{display:inline-flex;align-items:center;gap:.3rem;cursor:pointer;-webkit-user-select:none;user-select:none}.ag-filter input{cursor:pointer}.ag-filters-note{margin-left:auto;font-size:.75rem;color:var(--color-text-muted, #6b7280);font-style:italic}.ag-canvas{position:relative;flex:1;min-height:0;overflow:hidden;background-color:var(--color-bg, #fafafa)}.ag-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted, #6b7280)}.ag-error{color:var(--color-danger, #b91c1c)}.ag-detail{position:absolute;top:12px;right:12px;width:260px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e2e2e2);border-radius:8px;box-shadow:0 4px 16px #00000026;overflow:hidden}.ag-detail-head{display:flex;align-items:center;gap:.4rem;padding:.6rem .75rem;border-bottom:1px solid var(--color-border, #eee);font-size:.9rem}.ag-detail-head strong{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ag-detail-close{background:transparent;border:none;cursor:pointer;color:var(--color-text-muted, #6b7280);font-size:.85rem;padding:0 .25rem}.ag-detail-body{padding:.6rem .75rem;font-size:.82rem;display:flex;flex-direction:column;gap:.35rem}.ag-detail-k{display:inline-block;min-width:92px;color:var(--color-text-muted, #6b7280)}@media(prefers-color-scheme:dark){.ag-detail-body,.ag-detail-head{color:var(--color-text, #e5e7eb)}}.identity-analysis{background:var(--color-surface);border-radius:12px;box-shadow:0 2px 8px var(--color-shadow);overflow:hidden}.tabs{display:flex;border-bottom:2px solid var(--color-border);background-color:var(--color-surface-2);overflow-x:auto}.tab{flex:1;min-width:150px;padding:1rem 1.5rem;border:none;background:none;cursor:pointer;font-size:1rem;font-weight:500;color:var(--color-text-muted);transition:all .2s;position:relative;display:flex;align-items:center;justify-content:center;gap:.5rem}.tab:hover{background-color:var(--color-surface-3);color:var(--color-text)}.tab.active{color:var(--color-brand-text);background-color:var(--color-surface)}.tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background-color:var(--color-brand)}.tab .badge{background-color:var(--color-accent);color:var(--color-text-on-brand);border-radius:12px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.tab-content{padding:2rem}.summary-content .identity-info{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.summary-content .identity-info h3{margin:0 0 .5rem;font-size:1.8rem;color:var(--color-text)}.summary-content .identity-info .email{margin:.5rem 0;color:var(--color-text-muted);font-size:1rem}.identity-attributes{margin-top:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.identity-attributes .attribute{display:flex;flex-direction:column;gap:.25rem}.identity-attributes .attribute-label{font-size:.75rem;color:var(--color-text-subtle);text-transform:uppercase;font-weight:600;letter-spacing:.5px}.identity-attributes .attribute-value{font-size:.95rem;color:var(--color-text);font-weight:500}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stat-card{padding:1.5rem;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-surface-2)}.stat-card.clickable{transition:border-color .15s,background-color .15s,transform .05s}.stat-card.clickable:hover{border-color:var(--color-brand);background-color:var(--color-info-bg)}.stat-card.clickable:active{transform:translateY(1px)}.stat-card.clickable:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.stat-card h4{margin:0 0 1rem;font-size:.9rem;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.stat-number{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:1rem}.stat-breakdown{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.stat-breakdown>div{display:flex;justify-content:space-between;font-size:.9rem}.stat-breakdown .label{color:var(--color-text-muted)}.stat-breakdown .value{font-weight:600;color:var(--color-brand-green)}.stat-breakdown .value.warning{color:var(--color-accent-text)}.stat-breakdown .info{color:var(--color-text-muted);font-size:.85rem;font-style:italic}.stat-percentage{padding-top:.75rem;border-top:1px solid var(--color-border);font-size:.85rem;color:var(--color-text-muted);font-weight:600}.section{margin-bottom:2rem}.section h3{margin:0 0 .5rem;font-size:1.3rem;color:var(--color-text)}.section-description{margin:0 0 1rem;color:var(--color-text-muted);font-size:.9rem}.item-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.item-card{padding:1rem;border-radius:8px;border:1px solid var(--color-border);background-color:var(--color-surface-2);transition:transform .2s,box-shadow .2s}.item-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--color-shadow)}.item-card.warning{border-color:var(--color-warning-border);background-color:var(--color-warning-bg)}.item-card.compact{padding:.75rem}.item-name{font-weight:600;color:var(--color-text);margin-bottom:.5rem;font-size:1rem}.item-description{font-size:.85rem;color:var(--color-text-muted);margin-bottom:.5rem;line-height:1.4}.item-source{font-size:.8rem;color:var(--color-text-subtle);margin-bottom:.25rem}.item-id{font-size:.75rem;color:var(--color-text-subtle);font-family:monospace;margin-top:.5rem}.empty-state{text-align:center;padding:3rem 2rem;color:var(--color-text-subtle);font-size:1.1rem;background-color:var(--color-surface-2);border:2px dashed var(--color-border);border-radius:8px}.empty-state.success{color:var(--color-brand-green);background-color:var(--color-success-bg);border-color:var(--color-success-border)}details{margin-top:1rem}details summary{cursor:pointer;padding:.75rem;background-color:var(--color-surface-2);border-radius:6px;font-weight:600;color:var(--color-brand-text);transition:background-color .2s}details summary:hover{background-color:var(--color-surface-3)}details[open] summary{margin-bottom:1rem}.item-card.clickable{cursor:pointer}.item-card.clickable:active{transform:translateY(0)}.entitlements-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.entitlements-section h4{margin:0 0 .75rem;font-size:.9rem;color:var(--color-brand-text);text-transform:uppercase;font-weight:600}.entitlements-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.entitlement-item{padding:.5rem;background-color:var(--color-surface);border-radius:4px;border:1px solid var(--color-border);font-size:.85rem}.entitlement-item .ent-name{font-weight:500;color:var(--color-text);margin-bottom:.25rem}.entitlement-item .ent-source{font-size:.75rem;color:var(--color-text-subtle)}.loading{text-align:center;padding:1rem;color:var(--color-text-subtle);font-style:italic}.role-details-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.role-section{margin-bottom:1rem}.role-section:last-child{margin-bottom:0}.role-section h4{margin:0 0 .75rem;font-size:.9rem;color:var(--color-brand-text);text-transform:uppercase;font-weight:600}.role-items-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.role-item{padding:.5rem;background-color:var(--color-surface);border-radius:4px;border:1px solid var(--color-border);font-size:.85rem}.role-item-name{font-weight:500;color:var(--color-text);margin-bottom:.25rem}.role-item-source{font-size:.75rem;color:var(--color-text-subtle)}.role-item.clickable{cursor:pointer;transition:background-color .2s}.role-item.clickable:hover{background-color:var(--color-surface-2)}.nested-entitlements{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.nested-header{font-size:.8rem;font-weight:600;color:var(--color-info);text-transform:uppercase;margin-bottom:.5rem}.nested-empty{font-size:.8rem;color:var(--color-text-subtle);font-style:italic;padding:.5rem}.nested-list{display:flex;flex-direction:column;gap:.4rem;max-height:200px;overflow-y:auto}.nested-item{padding:.4rem;background-color:var(--color-surface-2);border-radius:3px;border:1px solid var(--color-surface-3);font-size:.8rem}.nested-item-name{font-weight:500;color:var(--color-text);margin-bottom:.2rem}.nested-item-source{font-size:.7rem;color:var(--color-text-subtle)}.role-category-header{margin:1.5rem 0 1rem;font-size:1.1rem;color:var(--color-brand-text);font-weight:600;padding-bottom:.5rem;border-bottom:2px solid var(--color-brand)}.role-category-header:first-child{margin-top:0}.role-subcategory{margin:1rem 0}.role-subcategory-header{margin:1rem 0 .75rem;font-size:1rem;color:var(--color-text);font-weight:600;padding:.5rem .75rem;background-color:var(--color-surface-2);border-left:3px solid var(--color-brand);display:flex;align-items:center}.role-subcategory-header.clickable:hover{background-color:var(--color-surface-3)}@media(max-width:768px){.tab-content{padding:1rem}.stats-grid,.item-list{grid-template-columns:1fr}.tabs{flex-wrap:nowrap}.tab{min-width:120px;padding:.75rem 1rem;font-size:.9rem}.stat-number{font-size:2rem}}.account-tag{display:inline-block;margin-left:.4rem;padding:.05rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;vertical-align:middle;background:var(--color-surface-3);color:var(--color-text-muted);border:1px solid var(--color-border)}.account-tag.authoritative{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.account-tag.disabled,.account-tag.locked{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:var(--color-danger-border)}.account-tag.privileged{background:var(--color-warning-bg);color:var(--color-warning-text);border-color:var(--color-warning-border)}.access-path{margin-top:.4rem;display:flex;flex-direction:column;gap:.25rem}.access-path-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.access-path-label{font-size:.75rem;font-weight:600;color:var(--color-text-muted);min-width:6.5rem}.access-path-none{font-size:.75rem;color:var(--color-text-subtle);font-style:italic}.access-path-chip{display:inline-block;padding:.05rem .45rem;border-radius:10px;font-size:.75rem;font-weight:500;border:1px solid var(--color-border)}.access-path-chip.ap{background:var(--color-info-bg);color:var(--color-info-text);border-color:var(--color-info-border)}.access-path-chip.role{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-border)}.access-path-hint{font-size:.72rem;color:var(--color-text-subtle);font-style:italic}.identity-comparison{background:var(--color-surface);border-radius:12px;box-shadow:0 2px 8px var(--color-shadow);padding:2rem}.comparison-header{text-align:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border)}.comparison-header h1{margin:0;font-size:2rem;color:var(--color-text)}.identity-headers{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.identity-header{padding:1.5rem;background-color:var(--color-surface-2);border-radius:8px;border:2px solid var(--color-brand)}.identity-header h2{margin:0 0 1rem;font-size:1.2rem;color:var(--color-brand-text);text-transform:uppercase;font-weight:700;letter-spacing:.5px}.identity-info-compact{display:flex;flex-direction:column;gap:.5rem}.info-name{font-size:1.3rem;font-weight:600;color:var(--color-text)}.info-email{font-size:.95rem;color:var(--color-text-muted)}.info-detail{font-size:.85rem;color:var(--color-text-subtle)}.comparison-section{margin-bottom:3rem}.comparison-section h3{margin:0 0 1.5rem;font-size:1.5rem;color:var(--color-text);padding-bottom:.5rem;border-bottom:2px solid var(--color-brand)}.comparison-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.stat-item{padding:1rem;border-radius:8px;text-align:center}.stat-item.common{background-color:var(--color-success-bg);border:2px solid var(--color-brand-green)}.stat-item.unique1{background-color:var(--color-warning-bg);border:2px solid var(--color-accent)}.stat-item.unique2{background-color:var(--color-info-bg);border:2px solid var(--color-sky)}.stat-label{font-size:.85rem;color:var(--color-text-muted);margin-bottom:.5rem;font-weight:600}.stat-value{font-size:2rem;font-weight:700;color:var(--color-text)}.comparison-lists{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.comparison-column h4{margin:0 0 1rem;font-size:1rem;color:var(--color-text-muted);font-weight:600}.item-list-compact{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto;padding-right:.5rem}.item-card-compact{padding:.75rem;border-radius:6px;border:1px solid var(--color-border);transition:transform .2s,box-shadow .2s}.item-card-compact:hover{transform:translateY(-1px);box-shadow:0 2px 6px var(--color-shadow)}.common-item{background-color:var(--color-success-bg);border-color:var(--color-brand-green)}.unique1-item{background-color:var(--color-warning-bg);border-color:var(--color-accent)}.unique2-item{background-color:var(--color-info-bg);border-color:var(--color-sky)}.item-name-compact{font-weight:600;color:var(--color-text);font-size:.9rem;margin-bottom:.25rem}.item-source-compact{font-size:.75rem;color:var(--color-text-subtle)}.empty-message{text-align:center;padding:2rem;color:var(--color-text-subtle);font-style:italic}@media(max-width:1200px){.identity-headers,.comparison-lists,.comparison-stats{grid-template-columns:1fr}}.admin-page{max-width:100%;margin:0;padding:0}.admin-page h1{margin-bottom:10px;color:var(--color-text)}.admin-nav{display:flex;gap:10px;margin-bottom:15px;border-bottom:2px solid var(--color-border);padding-bottom:0}.admin-nav-button{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;font-size:1em;font-weight:600;color:var(--color-text-muted);cursor:pointer;transition:all .2s;position:relative;bottom:-2px}.admin-nav-button:hover{color:var(--color-brand-text);background-color:var(--color-surface-2)}.admin-nav-button.active{color:var(--color-brand-text);border-bottom-color:var(--color-brand)}.admin-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:15px;margin-bottom:15px}.admin-section h2{margin-top:0;margin-bottom:15px;color:var(--color-text);font-size:1.3em;border-bottom:2px solid var(--color-brand);padding-bottom:8px}.admin-message{padding:12px;border-radius:4px;margin-bottom:15px;font-weight:500}.admin-message.success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-brand-green)}.admin-message.error{background-color:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.cache-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.status-item{display:flex;justify-content:space-between;padding:12px;background-color:var(--color-surface-2);border-radius:4px;border-left:4px solid var(--color-brand)}.status-label{font-weight:600;color:var(--color-text)}.status-value{font-weight:500;color:var(--color-brand-text)}.button-group{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap}.admin-button{padding:10px 20px;border:none;border-radius:4px;font-size:1em;cursor:pointer;transition:background-color .2s}.admin-button:disabled{opacity:.5;cursor:not-allowed}.admin-button{background-color:var(--color-brand-strong);color:var(--color-text-on-brand)}.admin-button:hover:not(:disabled){background-color:var(--color-brand-strong)}.admin-button.primary{background-color:var(--color-brand);color:var(--color-text-on-brand)}.admin-button.primary:hover:not(:disabled){background-color:var(--color-brand-strong)}.admin-button.warning{background-color:var(--color-accent);color:var(--color-text-on-brand)}.admin-button.warning:hover:not(:disabled){background-color:var(--color-accent)}.refresh-info{background-color:var(--color-surface-2);padding:15px;border-radius:4px;border-left:4px solid var(--color-sky)}.refresh-info.warning-info{background-color:var(--color-warning-bg);border-left-color:var(--color-accent);margin-bottom:15px}.refresh-info.warning-info p{color:var(--color-warning-text);font-weight:600}.refresh-info p{margin:8px 0;color:var(--color-text);font-size:.95em}.refresh-info strong{color:var(--color-text)}.schedule-form{max-width:600px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text)}.form-group .help-text{display:block;font-weight:400;font-size:.9em;color:var(--color-text-muted);margin-top:4px}.form-group input[type=number]{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:4px;font-size:1em}.form-group input[type=number]:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #0056771a}.form-group.checkbox-group{margin-bottom:20px}.form-group.checkbox-group label{display:flex;align-items:flex-start;cursor:pointer}.form-group.checkbox-group input[type=checkbox]{margin-right:10px;margin-top:3px;width:18px;height:18px;cursor:pointer}.form-group.checkbox-group .checkbox-label{font-weight:600;color:var(--color-text);font-size:1em}.form-group.checkbox-group .help-text{margin-left:28px}.form-group input[type=text],.form-group input[type=password],.form-group select{width:100%;padding:10px;border:1px solid var(--color-border);border-radius:4px;font-size:1em}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group select:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #0056771a}.user-management h3{margin-top:25px;margin-bottom:15px;color:var(--color-text);font-size:1.1em}.user-management h3:first-child{margin-top:0}.users-list{overflow-x:auto}.users-table{width:100%;border-collapse:collapse;margin-top:10px}.users-table th,.users-table td{text-align:left;padding:12px;border-bottom:1px solid var(--color-border)}.users-table th{background-color:var(--color-surface-2);font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-brand)}.users-table tbody tr:hover{background-color:var(--color-surface-2)}.users-table tbody tr:last-child td{border-bottom:none}.delete-button{padding:6px 12px;background-color:var(--color-danger);color:var(--color-text-on-brand);border:none;border-radius:4px;font-size:.9em;cursor:pointer;transition:background-color .2s}.delete-button:hover:not(:disabled){background-color:var(--color-danger)}.delete-button:disabled{opacity:.5;cursor:not-allowed}.refresh-schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:20px}.refresh-column{min-width:0}.refresh-column h3{color:var(--color-text);font-size:1.1em;border-bottom:2px solid var(--color-brand);padding-bottom:8px}@media(max-width:900px){.refresh-schedule-grid{grid-template-columns:1fr;gap:20px}}.user-status{display:flex;align-items:center;gap:8px}.status-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-enabled{background-color:var(--color-success-bg);color:var(--color-success-text)}.status-disabled{background-color:var(--color-danger-bg);color:var(--color-danger-text)}.btn-toggle-status{padding:4px 12px;font-size:12px;background-color:var(--color-neutral);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.btn-toggle-status:hover:not(:disabled){background-color:var(--color-neutral-hover)}.btn-toggle-status:disabled{opacity:.5;cursor:not-allowed}.utilities-page{max-width:1100px;margin:2rem auto;padding:0 1.5rem}.utilities-header h2{color:var(--color-brand-text);margin-bottom:.25rem}.utilities-header p{color:var(--color-text-muted);margin-top:0}.utility-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px var(--color-shadow);margin-top:1.5rem}.utility-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.utility-card-header h3{color:var(--color-brand-text);margin:0}.utility-badge{background:var(--color-warning-bg);color:var(--color-warning-text);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:.2rem .5rem;border-radius:4px}.utility-description{color:var(--color-text-muted);line-height:1.55;font-size:.92rem}.utility-description code{background:var(--color-surface-3);color:var(--color-text);padding:.1rem .35rem;border-radius:3px;font-size:.85em}.utility-controls{display:flex;flex-direction:column;gap:.75rem;margin:1.25rem 0;padding:1rem;background:var(--color-surface-2);border-radius:6px}.utility-radio{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--color-text)}.utility-field{display:flex;flex-direction:column;gap:.3rem;color:var(--color-text);font-weight:500}.utility-field input{padding:.5rem .65rem;border:1px solid var(--color-border);border-radius:5px;font-size:.9rem;max-width:320px;background:var(--color-surface);color:var(--color-text)}.hint{color:var(--color-text-subtle);font-weight:400;font-size:.85em}.utility-actions{display:flex;gap:.75rem;margin-top:.5rem;flex-wrap:wrap}.btn{padding:.55rem 1.1rem;border-radius:5px;border:1px solid transparent;font-size:.9rem;font-weight:600;cursor:pointer}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(.92)}.btn-secondary{background:var(--color-surface);color:var(--color-brand-text);border-color:var(--color-brand)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-2)}.utility-error{margin-top:1rem;padding:.75rem 1rem;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:5px;color:var(--color-danger-text)}.utility-results{margin-top:1.5rem}.utility-summary{padding:.75rem 1rem;border-radius:5px;font-size:.9rem;color:var(--color-text);line-height:1.6}.utility-summary.is-dryrun{background:var(--color-info-bg);border:1px solid var(--color-info-border)}.utility-summary.is-apply{background:var(--color-success-bg);border:1px solid var(--color-success-border)}.utility-summary .stat{font-weight:700}.utility-summary .stat.error,.utility-summary .stat.err{color:var(--color-danger)}.utility-summary .tag{display:inline-block;margin-left:.5rem;background:var(--color-surface-3);color:var(--color-text-muted);font-size:.75rem;padding:.1rem .45rem;border-radius:3px}.utility-table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.85rem}.utility-table th,.utility-table td{text-align:left;padding:.5rem .65rem;border-bottom:1px solid var(--color-border-subtle);vertical-align:top;color:var(--color-text)}.utility-table th{background:var(--color-surface-2);color:var(--color-text-muted);font-weight:600}.utility-table tr.row-error{background:var(--color-danger-bg)}.utility-table .mono,.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.detail-list{margin:0;padding-left:1.1rem;color:var(--color-text-muted)}.status{font-weight:600}.status.ok{color:var(--color-success)}.status.err{color:var(--color-danger)}.status.pending{color:var(--color-text-subtle)}.utility-log{margin-top:1.25rem}.utility-log summary{cursor:pointer;color:var(--color-brand-text);font-weight:600}.utility-log pre{margin-top:.5rem;background:#1e2a30;color:#d6e2e8;padding:1rem;border-radius:6px;overflow-x:auto;font-size:.8rem;line-height:1.5;max-height:420px}.cpr-owner-field{position:relative;max-width:420px}.cpr-owner-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 6px 18px var(--color-shadow-strong);max-height:260px;overflow-y:auto;margin-top:2px}.cpr-owner-option{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;padding:.45rem .7rem;background:none;border:none;border-bottom:1px solid var(--color-border-subtle);cursor:pointer}.cpr-owner-option:hover{background:var(--color-surface-2)}.cpr-owner-name{font-weight:600;color:var(--color-text)}.cpr-owner-email{font-size:.78rem;color:var(--color-text-subtle)}.cpr-owner-empty{padding:.5rem .7rem;color:var(--color-text-subtle);font-size:.85rem}.cpr-owner-selected{margin-top:.4rem;color:var(--color-success);font-weight:600;font-size:.85rem}.cpr-table .cpr-check{width:34px;text-align:center}.cpr-row-selected{background:var(--color-info-bg)}.cpr-mgmt-badge{display:inline-block;margin-top:.35rem;background:var(--color-purple-bg);color:var(--color-purple-text)}.cpr-chips{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.cpr-chip{display:inline-flex;align-items:center;gap:.3rem;background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:12px;padding:.1rem .35rem .1rem .55rem;font-size:.8rem}.cpr-chip-inuse{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-success-text);font-weight:600}.cpr-chip-x{border:none;background:none;cursor:pointer;color:var(--color-text-subtle);font-size:1rem;line-height:1;padding:0 .1rem}.cpr-chip-x:hover{color:var(--color-danger)}.cpr-restore{border:none;background:none;cursor:pointer;color:var(--color-info);font-size:.78rem;text-decoration:underline;padding:0}.cpr-manual{margin-top:1.25rem;padding:1rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px}.cpr-manual-title{margin:0 0 .75rem;color:var(--color-brand-text)}.cpr-manual-grid{display:flex;flex-wrap:wrap;gap:1rem}.cpr-manual-grid .utility-field{flex:1 1 240px}.cpr-manual-grid select,.cpr-manual-grid input{padding:.5rem .65rem;border:1px solid var(--color-border);border-radius:5px;font-size:.9rem;background:var(--color-surface);color:var(--color-text)}.cpr-manual-preview{margin-top:.85rem;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--color-text)}.cpr-manual-label{font-weight:600;color:var(--color-text-muted)}.cpr-divider{margin:1.5rem 0 1rem;border:none;border-top:1px solid var(--color-border)}.intake-admin-page{padding:2rem;max-width:1600px;margin:0 auto}.intake-admin-page h1{color:var(--color-brand-text);margin-bottom:1.5rem;font-size:2rem}.action-button-group{display:flex;gap:.5rem}.action-button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:.9rem;color:var(--color-text-on-brand);transition:all .2s}.action-button.create{background:var(--color-success)}.action-button.create:hover{opacity:.88}.action-button.update{background:var(--color-info)}.action-button.update:hover{opacity:.88}.action-button.delete{background:var(--color-danger)}.action-button.delete:hover{opacity:.88}.sailpoint-alert{padding:1rem 1.5rem;margin-bottom:1.5rem;border-radius:8px;font-size:1rem;line-height:1.5;border-left:4px solid}.success-alert{background-color:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success-text)}.error-alert{background-color:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger-text)}.sailpoint-alert strong{display:block;margin-bottom:.25rem;font-size:1.1rem}.actions-log-container{background:var(--color-surface);padding:2rem;border-radius:8px;box-shadow:0 2px 8px var(--color-shadow)}.actions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.actions-header h2{margin:0;color:var(--color-brand-text)}.refresh-button{padding:.5rem 1rem;background:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;font-weight:600}.refresh-button:hover{background:var(--color-brand-strong)}.export-button{padding:.5rem 1rem;background:var(--color-success);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;font-weight:600}.export-button:hover:not(:disabled){opacity:.88}.export-button:disabled{opacity:.5;cursor:not-allowed}.action-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.stat-card{background:var(--color-surface-2);padding:1.5rem;border-radius:8px;text-align:center;border:2px solid var(--color-border)}.stat-card.success{background:var(--color-success-bg);border-color:var(--color-success)}.stat-card.error{background:var(--color-danger-bg);border-color:var(--color-danger)}.stat-card.pending{background:var(--color-warning-bg);border-color:var(--color-warning)}.stat-value{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem}.stat-label{font-size:.9rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.actions-table{width:100%;border-collapse:collapse;margin-top:1rem}.actions-table th{background:var(--color-surface-2);padding:1rem;text-align:left;font-weight:600;color:var(--color-text);border-bottom:2px solid var(--color-border)}.actions-table td{padding:1rem;border-bottom:1px solid var(--color-border)}.actions-table tbody tr:hover{background:var(--color-surface-2)}.status-badge.completed{background:var(--color-success);color:var(--color-text-on-brand);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.status-badge.failed{background:var(--color-danger);color:var(--color-text-on-brand);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.status-badge.pending{background:var(--color-warning);color:var(--color-text-on-brand);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600}.view-details-button{padding:.4rem 1rem;background:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;font-size:.85rem}.view-details-button:hover{background:var(--color-brand-strong)}.intake-nav{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:2px solid var(--color-border)}.intake-nav-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;font-size:1rem;font-weight:600;cursor:pointer;color:var(--color-text-muted);transition:all .2s}.intake-nav-button:hover{color:var(--color-brand-text);background-color:var(--color-surface-2)}.intake-nav-button.active{color:var(--color-brand-text);border-bottom-color:var(--color-brand)}.intake-message{padding:1rem 1.5rem;margin-bottom:1.5rem;border-radius:6px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.intake-message.success{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.intake-message.error{background-color:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.message-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;padding:0;margin-left:1rem}.intake-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.25rem;background:linear-gradient(135deg,var(--color-surface-2) 0%,var(--color-surface-3) 100%);border-radius:8px;box-shadow:0 2px 4px var(--color-shadow)}.filter-group{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.filter-group label{font-weight:600;color:var(--color-text);margin-right:.25rem}.filter-group .show-closed-toggle{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--color-text);cursor:pointer;margin-right:0}.filter-group .show-closed-toggle input{cursor:pointer;margin:0}.filter-group select{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:4px;font-size:.95rem;background-color:var(--color-surface);color:var(--color-text);cursor:pointer}.filter-group select:hover{border-color:var(--color-brand)}.sync-button{padding:.5rem 1.5rem;background-color:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:.95rem;transition:background-color .2s}.sync-button:hover:not(:disabled){background-color:var(--color-brand-strong)}.sync-button:disabled{opacity:.5;cursor:not-allowed}.sync-status{display:flex;gap:1.5rem;font-size:.9rem;color:var(--color-text-muted);align-items:center;flex-wrap:wrap}.status-indicator{font-weight:700;padding:.25rem .75rem;border-radius:12px}.status-indicator.enabled{background-color:var(--color-success-bg);color:var(--color-success-text)}.status-indicator.disabled{background-color:var(--color-danger-bg);color:var(--color-danger-text)}.tickets-table-container{overflow-x:auto;background:var(--color-surface);border-radius:8px;box-shadow:0 2px 8px var(--color-shadow)}.loading-message,.no-tickets-message{padding:3rem;text-align:center;color:var(--color-text-muted);font-size:1.1rem}.tickets-table{width:100%;border-collapse:collapse}.tickets-table th{background-color:var(--color-brand);color:var(--color-text-on-brand);padding:1rem;text-align:left;font-weight:600;position:sticky;top:0;z-index:10}.tickets-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.tickets-table tbody tr{transition:background-color .15s}.tickets-table tbody tr.clickable-row{cursor:pointer}.tickets-table tbody tr.clickable-row:hover{background-color:var(--color-surface-2)}.description-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-type-badge{display:inline-block;padding:.35rem .65rem;border-radius:4px;font-size:.85rem;font-weight:700}.ticket-type-badge.RITM{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-border)}.ticket-type-badge.REQ{background-color:var(--color-purple-bg);color:var(--color-purple-text);border:1px solid var(--color-purple)}.ticket-type-badge.INC{background-color:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.ticket-type-badge.TASK{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.approval-badge{display:inline-block;padding:.35rem .65rem;border-radius:4px;font-size:.85rem;font-weight:600}.approval-badge.approved{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.approval-badge.rejected{background-color:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border)}.approval-badge.pending{background-color:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.approval-badge.ignored{background-color:var(--color-surface-3);color:var(--color-text-muted);border:1px solid var(--color-border)}.action-buttons{display:flex;gap:.5rem}.approve-button,.reject-button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s}.approve-button{background-color:var(--color-brand-green);color:var(--color-text-on-brand)}.approve-button:hover{opacity:.88;box-shadow:0 2px 4px var(--color-shadow)}.reject-button{background-color:var(--color-danger);color:var(--color-text-on-brand)}.reject-button:hover{opacity:.88;box-shadow:0 2px 4px var(--color-shadow)}.ignore-button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:.85rem;transition:all .2s;background-color:var(--color-neutral);color:var(--color-text-on-brand)}.ignore-button:hover{background-color:var(--color-neutral-hover);box-shadow:0 2px 4px var(--color-shadow)}.intake-settings{max-width:800px}.intake-settings h2{color:var(--color-brand-text);margin-bottom:1.5rem}.settings-description{margin-bottom:1.5rem;color:var(--color-text-muted);line-height:1.6}.settings-divider{height:2px;background:linear-gradient(90deg,var(--color-brand) 0%,transparent 100%);margin:3rem 0}.settings-info{background-color:var(--color-info-bg);padding:1.25rem;border-radius:6px;border-left:4px solid var(--color-info)}.settings-info strong{color:var(--color-info-text);display:block;margin-bottom:.5rem}.settings-info ul{margin:.5rem 0 .75rem 1.5rem;padding:0}.settings-info li{margin-bottom:.35rem;color:var(--color-text)}.settings-info code{background-color:var(--color-surface);padding:.2rem .4rem;border-radius:3px;font-size:.9em;color:var(--color-danger-text);border:1px solid var(--color-border)}.settings-info p{margin-top:.5rem;margin-bottom:0;color:var(--color-text-muted);font-size:.9rem}.form-group select{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-surface);color:var(--color-text);cursor:pointer;transition:border-color .2s}.form-group select:focus{outline:none;border-color:var(--color-brand)}.settings-form{background:var(--color-surface);padding:2rem;border-radius:8px;box-shadow:0 2px 8px var(--color-shadow)}.form-group{margin-bottom:1.75rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--color-text)}.form-group input[type=text],.form-group input[type=password],.form-group input[type=number]{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;background-color:var(--color-surface);color:var(--color-text);transition:border-color .2s}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.form-group input[type=number]:focus{outline:none;border-color:var(--color-brand)}.form-group input[type=checkbox]{margin-right:.5rem;width:18px;height:18px;cursor:pointer}.form-help{margin-top:.5rem;font-size:.85rem;color:var(--color-text-muted);font-style:italic}.save-button{padding:.75rem 2rem;background-color:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s}.save-button:hover:not(:disabled){background-color:var(--color-brand-strong)}.save-button:disabled{opacity:.5;cursor:not-allowed}.test-button{padding:.75rem 1.5rem;background-color:transparent;color:var(--color-brand);border:1px solid var(--color-brand);border-radius:6px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s,color .2s}.test-button:hover:not(:disabled){background-color:var(--color-brand);color:var(--color-text-on-brand)}.test-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--color-overlay);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--color-surface);border-radius:8px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px var(--color-shadow-strong)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:2px solid var(--color-border);background-color:var(--color-surface-2)}.modal-header h2{margin:0;color:var(--color-brand-text)}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:var(--color-text-muted);padding:0;line-height:1}.modal-close:hover{color:var(--color-text)}.modal-body{padding:2rem}.detail-group{margin-bottom:1.5rem;display:flex;gap:1rem}.detail-group.full-width{flex-direction:column;gap:.5rem}.detail-group label{font-weight:600;color:var(--color-text);min-width:120px}.detail-group span,.detail-group p{color:var(--color-text-muted)}.description-text{white-space:pre-wrap;background-color:var(--color-surface-2);padding:1rem;border-radius:4px;border:1px solid var(--color-border);margin:0}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:2px solid var(--color-border);background-color:var(--color-surface-2)}.mapping-modal{max-width:900px;max-height:95vh}.mapping-form .form-group{margin-bottom:1.5rem}.mapping-form textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-family:inherit;font-size:1rem;background-color:var(--color-surface);color:var(--color-text);transition:border-color .2s}.mapping-form textarea:focus{outline:none;border-color:var(--color-brand)}.entitlement-row{display:flex;gap:.5rem;margin-bottom:.5rem}.entitlement-row input{flex:1;padding:.5rem;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-surface);color:var(--color-text)}.entitlement-row .remove-btn{padding:.5rem .75rem;background-color:var(--color-danger);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;line-height:1}.entitlement-row .remove-btn:hover{opacity:.88}.add-btn{padding:.5rem 1rem;background-color:var(--color-success);color:var(--color-text-on-brand);border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:.9rem;margin-top:.5rem}.add-btn:hover{opacity:.88}.send-button{padding:.75rem 1.5rem;background-color:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s}.send-button:hover:not(:disabled){background-color:var(--color-brand-strong)}.send-button:disabled{opacity:.5;cursor:not-allowed}.cancel-button{padding:.75rem 1.5rem;background-color:var(--color-neutral);color:var(--color-text-on-brand);border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:1rem;transition:background-color .2s}.cancel-button:hover:not(:disabled){background-color:var(--color-neutral-hover)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.error-message{padding:1rem;margin-bottom:1rem;background-color:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid var(--color-danger-border);border-radius:4px;font-weight:600}.success-message{padding:1rem;margin-bottom:1rem;background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border);border-radius:4px;font-weight:600}@media(max-width:1200px){.intake-controls{flex-direction:column;align-items:flex-start;gap:1rem}.sync-status{width:100%}}@media(max-width:768px){.intake-admin-page{padding:1rem}.tickets-table{font-size:.85rem}.tickets-table th,.tickets-table td{padding:.5rem}.action-buttons{flex-direction:column}.modal-content{width:95%}.detail-group{flex-direction:column;gap:.25rem}.detail-group label{min-width:auto}}.auto-populated-indicator{display:inline-block;margin-left:.5rem;color:var(--color-success);font-weight:700;font-size:1.1rem;cursor:help}.mapping-form input.auto-populated,.mapping-form textarea.auto-populated{background-color:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-text)}.mapping-form input.auto-populated:focus,.mapping-form textarea.auto-populated:focus{background-color:var(--color-info-bg);border-color:var(--color-brand)}.form-help.auto-help{color:var(--color-info-text);font-weight:500}.loading-message{text-align:center;padding:2rem;color:var(--color-text-muted);font-style:italic}.error-message{background-color:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning-text);padding:1rem;border-radius:6px;margin-bottom:1rem}.success-message{background-color:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-text);padding:1rem;border-radius:6px;margin-bottom:1rem}.ritm-variables-section{margin-top:2rem;padding-top:1.5rem;border-top:2px solid var(--color-border)}.section-header{font-size:1.1rem;font-weight:600;color:var(--color-brand-text);margin-bottom:1rem;display:flex;align-items:center}.section-header:before{content:"📋";margin-right:.5rem;font-size:1.2rem}.ritm-variables-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;background-color:var(--color-surface-2);padding:1.5rem;border-radius:8px;border:1px solid var(--color-border)}.ritm-variables-grid .detail-group{margin-bottom:0}.ritm-variables-grid .variable-value{font-weight:500;color:var(--color-text)}.ritm-variables-grid .variable-value:empty:after{content:"(empty)";color:var(--color-text-subtle);font-style:italic}@media(max-width:768px){.ritm-variables-grid{grid-template-columns:1fr}}.two-pane-modal{max-width:1600px;width:98vw}.two-pane-body{display:flex;gap:2rem;align-items:flex-start;max-height:85vh;overflow:hidden}.left-pane{flex:0 0 600px;background-color:var(--color-surface-2);border-radius:8px;padding:1.5rem;overflow-y:auto;max-height:80vh;border:1px solid var(--color-border);font-size:.85rem}.ticket-reference-pane{position:sticky;top:0}.right-pane{flex:1;overflow-y:auto;max-height:75vh;padding-right:1rem}.pane-header{font-size:1rem;font-weight:600;color:var(--color-brand-text);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-brand)}.reference-section{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.reference-section:last-child{border-bottom:none}.reference-section-title{font-size:.85rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.5rem}.reference-section .reference-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem}.reference-field{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;line-height:1.4}.reference-field.full-width{grid-column:1 / -1}.reference-field label{font-weight:600;color:var(--color-text-muted);font-size:.75rem;text-transform:none}.reference-field span{color:var(--color-text);word-break:break-word;overflow-wrap:break-word;font-size:.85rem;padding:.25rem 0}.reference-field span.empty-value{color:var(--color-text-subtle);font-style:italic}.ritm-variables-grid .variable-value{color:var(--color-text)}.ritm-variables-grid span.variable-value:empty:after,.ritm-variables-grid span.variable-value.empty-value:after{content:"(empty)";color:var(--color-text-subtle);font-style:italic}.reference-description{margin:0;padding:.75rem;background-color:var(--color-surface);border-radius:4px;border:1px solid var(--color-border);font-size:.9rem;line-height:1.5}.left-pane::-webkit-scrollbar,.right-pane::-webkit-scrollbar{width:8px}.left-pane::-webkit-scrollbar-track,.right-pane::-webkit-scrollbar-track{background:var(--color-surface-2);border-radius:4px}.left-pane::-webkit-scrollbar-thumb,.right-pane::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.left-pane::-webkit-scrollbar-thumb:hover,.right-pane::-webkit-scrollbar-thumb:hover{background:var(--color-text-subtle)}@media(max-width:1200px){.two-pane-body{flex-direction:column}.left-pane{flex:0 0 auto;width:100%;max-height:40vh}.right-pane{width:100%;max-height:50vh}.two-pane-modal{max-width:900px}}.entitlement-search{margin-bottom:.75rem}.entitlement-search-row{display:flex;gap:.5rem;align-items:center}.entitlement-search-row input{width:100%}.entitlement-search-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;margin-top:2px;max-height:260px;overflow-y:auto;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 12px #00000026}.entitlement-search-item{padding:.5rem .75rem;cursor:pointer;border-bottom:1px solid var(--color-border)}.entitlement-search-item:last-child{border-bottom:none}.entitlement-search-item:hover{background-color:var(--color-surface-2)}.entitlement-search-name{color:var(--color-text);font-weight:500}.entitlement-search-meta{color:var(--color-text-muted);font-family:monospace;font-size:.8em;margin-top:2px}.entitlement-search-empty{padding:.5rem .75rem;color:var(--color-text-muted);font-style:italic}.entitlement-search-selected{margin-top:.25rem;font-family:monospace;font-size:.78em;color:var(--color-success);word-break:break-all}.entitlement-search-unselected{margin-top:.25rem;font-size:.78em;color:var(--color-warning-text)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-brand) 0%,var(--color-brand-strong) 100%);padding:20px}.login-box{background:var(--color-surface);border-radius:12px;padding:40px;max-width:450px;width:100%;box-shadow:0 10px 40px #0003}.login-box h1{margin:0 0 10px;color:var(--color-brand-text);font-size:1.8rem;text-align:center}.login-subtitle{margin:0 0 30px;color:var(--color-text-muted);text-align:center;font-size:1rem}.login-error{background-color:var(--color-danger-bg);border:1px solid var(--color-accent);border-radius:6px;padding:12px;margin-bottom:20px;color:var(--color-danger);text-align:center;font-weight:500}.form-field{margin-bottom:20px}.form-field label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text);font-size:.95rem}.form-field input{width:100%;padding:12px;border:2px solid var(--color-border);border-radius:6px;font-size:1rem;transition:border-color .2s}.form-field input:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px #0056771a}.form-field input:disabled{background-color:var(--color-surface-2);cursor:not-allowed}.login-button{width:100%;padding:14px;background-color:var(--color-brand);color:var(--color-text-on-brand);border:none;border-radius:6px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.login-button:hover:not(:disabled){background-color:var(--color-brand-strong)}.login-button:disabled{opacity:.6;cursor:not-allowed}.sso-button{width:100%;padding:13px;display:flex;align-items:center;justify-content:center;gap:10px;background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-text-subtle);border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,border-color .2s}.sso-button:hover:not(:disabled){background-color:var(--color-surface-2);border-color:var(--color-brand)}.sso-button:disabled{opacity:.6;cursor:not-allowed}.sso-button-icon{color:var(--color-info);font-size:1.2rem;line-height:1}.login-divider{display:flex;align-items:center;text-align:center;color:var(--color-text-subtle);font-size:.85rem;margin:18px 0}.login-divider:before,.login-divider:after{content:"";flex:1;border-bottom:1px solid var(--color-border)}.login-divider span{padding:0 12px}.login-info{margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border)}.login-info p{margin:8px 0;font-size:.85rem;color:var(--color-text-muted);text-align:center}.login-info .warning{color:var(--color-accent-text);font-weight:500}@media(max-width:768px){.login-box{padding:30px 20px}.login-box h1{font-size:1.5rem}}
