:root{--ink:#17213b;--muted:#69738a;--line:#e4e8f1;--paper:#fff;--wash:#f5f7fb;--nav:#101a31;--nav2:#172542;--blue:#315bea;--blue2:#2348c4;--violet:#7254d7;--green:#1b9c68;--amber:#e59b26;--red:#d94a5a;--radius:14px;--shadow:0 8px 28px rgba(24,38,72,.08)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--wash)}body{margin:0;font-size:14px}.skip-link{position:fixed;top:-50px;left:10px;z-index:99;background:#fff;padding:10px}.skip-link:focus{top:10px}.shell{display:flex;min-height:100vh}.sidebar{width:244px;background:linear-gradient(180deg,var(--nav),#0c1428);color:#d9e1f3;position:fixed;inset:0 auto 0 0;padding:22px 14px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;padding:0 9px 28px}.brand strong,.brand small{display:block}.brand strong{font-size:17px;letter-spacing:-.3px}.brand small{font-size:10px;text-transform:uppercase;letter-spacing:1.1px;color:#8593b0;margin-top:2px}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#6481ff,#315bea);display:grid;place-items:center;color:#fff;font-weight:800;box-shadow:0 7px 20px rgba(49,91,234,.35)}.brand-mark.large{width:52px;height:52px;border-radius:15px;font-size:18px}.nav-label{margin:17px 12px 8px;color:#70809f;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:1.2px}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;color:#aebbd3;text-decoration:none;border-radius:9px;margin:2px 0;font-weight:550}.nav-item span{font-size:17px;width:18px;text-align:center}.nav-item:hover,.nav-item.active{background:var(--nav2);color:#fff}.nav-item.active{box-shadow:inset 3px 0 #6680ff}.sidebar-foot{margin-top:auto;border-top:1px solid #26334c;padding:17px 7px 0;display:flex;align-items:center;gap:10px}.sidebar-foot strong,.sidebar-foot small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:145px}.sidebar-foot strong{font-size:12px;color:#fff}.sidebar-foot small{font-size:10px;color:#7f8dac;margin-top:3px}.avatar{width:34px;height:34px;border-radius:50%;background:#dde5ff;color:#2b4bc4;display:grid;place-items:center;font-weight:800;border:0}.main{margin-left:244px;min-width:0;flex:1}.topbar{height:66px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:13px;padding:0 28px;position:sticky;top:0;z-index:15}.global-search{max-width:550px;flex:1;display:flex;align-items:center;background:#f5f7fb;border:1px solid transparent;border-radius:9px;padding:0 11px;color:#8b94a7}.global-search:focus-within{background:#fff;border-color:#9db0f5;box-shadow:0 0 0 3px #edf0ff}.global-search input{flex:1;border:0;background:transparent;padding:10px;outline:none;color:var(--ink)}kbd{font:10px inherit;border:1px solid #dce1ea;background:#fff;padding:2px 5px;border-radius:4px}.icon-button{border:0;background:transparent;width:36px;height:36px;border-radius:9px;font-size:18px;cursor:pointer;position:relative}.icon-button:hover{background:#f0f3f9}.icon-button i{position:absolute;width:7px;height:7px;background:var(--red);border:2px solid white;border-radius:50%;right:6px;top:5px}.avatar-button{cursor:pointer}.menu-button{display:none}.content{max-width:1440px;margin:0 auto;padding:30px}.page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px}.page-head h1{font-size:27px;letter-spacing:-.6px;margin:3px 0 5px}.page-head p{margin:0;color:var(--muted)}.eyebrow{text-transform:uppercase!important;color:#5670cf!important;font-size:10px!important;letter-spacing:1.35px!important;font-weight:800!important}.head-actions{display:flex;gap:9px}.button{border:1px solid #d7ddea;background:#fff;color:#26334e;padding:9px 15px;border-radius:9px;text-decoration:none;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit}.button:hover{border-color:#aab7d2;background:#f9faff}.button-primary{background:var(--blue);border-color:var(--blue);color:#fff}.button-primary:hover{background:var(--blue2);border-color:var(--blue2)}.button-danger{color:var(--red)}.button.compact{padding:8px 13px}.button.full{width:100%;padding:11px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;gap:13px;align-items:center;box-shadow:0 2px 9px rgba(34,47,79,.025)}.stat-icon{width:41px;height:41px;border-radius:11px;display:grid;place-items:center;font-size:17px;font-weight:800}.stat-icon.blue{background:#eaf0ff;color:var(--blue)}.stat-icon.violet{background:#f0ecff;color:var(--violet)}.stat-icon.orange{background:#fff3de;color:#d18216}.stat-icon.green{background:#e5f7ef;color:var(--green)}.stat small,.stat strong,.stat em{display:block}.stat small{color:var(--muted);font-size:11px}.stat strong{font-size:22px;margin:2px 0}.stat em{font-style:normal;color:#8790a3;font-size:10px}.stat em.bad{color:var(--red)}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 2px 10px rgba(34,47,79,.025)}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.panel-head h2{margin:3px 0 0;font-size:16px}.panel-head p{margin:0}.panel-head a{color:var(--blue);font-size:12px;text-decoration:none;font-weight:700}.project-row{display:flex;align-items:center;gap:12px;padding:12px 3px;border-top:1px solid #edf0f5;color:inherit;text-decoration:none}.project-row:hover{background:#fbfcff}.project-row strong,.project-row small{display:block}.project-row small{color:var(--muted);font-size:10px;margin-top:3px}.grow{flex:1;min-width:0}.health{width:8px;height:8px;border-radius:50%}.health.green,.health-circle.green{background:var(--green)}.health.amber,.health-circle.amber{background:var(--amber)}.health.red,.health-circle.red{background:var(--red)}.progress-wrap{width:140px;display:flex;align-items:center;gap:8px}.progress-wrap>span,.meter{height:6px;background:#edf0f5;border-radius:8px;overflow:hidden;flex:1}.progress-wrap i,.meter i{height:100%;display:block;background:var(--blue);border-radius:8px}.progress-wrap b{font-size:10px;color:#64708a}.badge{display:inline-flex;align-items:center;border-radius:20px;background:#eef1f6;color:#59657a;padding:4px 8px;font-size:10px;font-weight:700;text-transform:capitalize;white-space:nowrap}.badge.active,.badge.done,.badge.approved{background:#e4f6ee;color:#128157}.badge.planning,.badge.review,.badge.in_progress,.badge.technical_review{background:#e8efff;color:#3156bf}.badge.on_hold,.badge.submitted,.badge.financial_review,.badge.prioritization{background:#fff1da;color:#a9690b}.badge.critical,.badge.rejected{background:#ffe8eb;color:#b83343}.task-mini{display:flex;gap:9px;align-items:center;padding:11px 0;border-top:1px solid #edf0f5}.task-mini strong,.task-mini small{display:block;font-size:11px}.task-mini small{color:var(--muted);margin-top:3px}.priority-dot{width:6px;height:6px;border-radius:50%;background:#94a3b8}.priority-dot.high{background:var(--amber)}.priority-dot.critical{background:var(--red)}.health-summary{display:flex;align-items:center;gap:45px;padding:5px 4px}.health-summary>div{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center}.health-summary small{color:var(--muted);font-size:10px}.health-circle{grid-row:1/3;width:43px;height:43px;border-radius:50%;display:grid;place-items:center;color:white;font-weight:800}.health-summary .budget-summary{margin-left:auto;display:block;min-width:260px}.budget-summary strong{font-size:20px;display:block;margin:3px 0}.muted{color:var(--muted)}.alert{padding:12px 14px;border-radius:9px;margin-bottom:18px}.alert.success{background:#e6f7ef;color:#12754e}.alert.error{background:#fff0f1;color:#a92f3d}.alert ul{margin:6px 0 0}.empty{color:var(--muted);text-align:center;padding:18px}.login-page{background:#0f1930}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-brand{padding:11vh 10vw;color:#fff;background:radial-gradient(circle at 80% 20%,rgba(74,107,237,.25),transparent 30%),linear-gradient(145deg,#101a31,#17284a)}.login-brand h1{font-size:48px;max-width:680px;line-height:1.08;letter-spacing:-1.8px;margin:28px 0 20px}.login-brand>p{font-size:17px;line-height:1.7;max-width:580px;color:#aebbd4}.login-proof{display:flex;gap:24px;margin-top:40px;color:#ccd6eb;font-size:12px}.login-panel{background:#f6f8fc;display:grid;place-items:center;padding:30px}.login-card{background:#fff;border:1px solid #e2e7f0;border-radius:18px;box-shadow:var(--shadow);padding:36px;width:min(440px,100%)}.login-card h2{font-size:25px;margin:5px 0}.login-card>p{color:var(--muted)}.form-stack{display:grid;gap:16px;margin-top:24px}.form-stack label,.field{display:grid;gap:6px;font-weight:700;font-size:11px;color:#4e5a70}.form-stack input,.form-stack select,.form-stack textarea,.field input,.field select,.field textarea{width:100%;border:1px solid #d7ddea;background:#fff;border-radius:8px;padding:10px 11px;font:inherit;color:var(--ink);outline:none}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#8299ed;box-shadow:0 0 0 3px #edf0ff}.security-note{display:block;text-align:center;color:#8a93a6;margin-top:17px;line-height:1.5}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:10px;color:#788397;font-size:10px;text-transform:uppercase;letter-spacing:.7px;border-bottom:1px solid var(--line)}.data-table td{padding:12px 10px;border-bottom:1px solid #edf0f5;vertical-align:middle}.data-table a{color:var(--ink);text-decoration:none;font-weight:700}.data-table small{display:block;color:var(--muted);margin-top:3px}.filters{display:flex;gap:8px;margin-bottom:16px}.filters input,.filters select{border:1px solid #d7ddea;border-radius:8px;padding:9px}.pagination{margin-top:18px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-grid .span-2{grid-column:span 2}.page-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line);margin-bottom:20px}.tabs a{padding:10px 12px;color:#657086;text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;font-size:11px;font-weight:700}.tabs a.active{color:var(--blue);border-color:var(--blue)}.detail-hero{background:linear-gradient(135deg,#17294c,#1e3d77);color:#fff;border-radius:16px;padding:25px;margin-bottom:18px;display:flex;justify-content:space-between;gap:20px}.detail-hero p{color:#c1cce0}.detail-hero h1{margin:5px 0}.detail-kpis{display:flex;gap:25px;align-items:center}.detail-kpis div small,.detail-kpis div strong{display:block}.detail-kpis strong{font-size:20px}.kanban{display:grid;grid-template-columns:repeat(4,minmax(230px,1fr));gap:13px;overflow:auto;padding-bottom:12px}.kanban-column{background:#f0f3f8;border-radius:12px;padding:11px;min-height:420px}.kanban-head{display:flex;justify-content:space-between;padding:3px 4px 11px;text-transform:uppercase;font-weight:800;font-size:10px;color:#657086}.kanban-list{min-height:350px}.task-card{background:#fff;border:1px solid #dfe4ee;border-radius:10px;padding:12px;margin-bottom:9px;box-shadow:0 2px 4px rgba(30,43,71,.04);cursor:grab}.task-card.dragging{opacity:.45}.task-card strong{display:block}.task-card small{display:block;color:var(--muted);margin-top:7px}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px}.heatmap{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;max-width:420px}.heat-cell{aspect-ratio:1;border-radius:7px;display:grid;place-items:center;font-weight:800;color:#24304a;background:#edf1f5}.heat-cell.low{background:#dff3e8}.heat-cell.medium{background:#ffefbd}.heat-cell.high{background:#ffd8ad}.heat-cell.critical{background:#f7b7bd}.portfolio-card{border:1px solid var(--line);border-radius:13px;padding:18px;margin-bottom:13px}.portfolio-card>header{display:flex;justify-content:space-between;align-items:start}.tree{margin:15px 0 0 13px;border-left:1px solid #dce2ec;padding-left:20px}.tree a{display:flex;align-items:center;gap:10px;padding:9px;text-decoration:none;color:var(--ink)}.capacity-bar{width:130px;height:7px;background:#edf0f5;border-radius:8px;overflow:hidden}.capacity-bar i{display:block;height:100%;background:var(--green)}.capacity-bar i.over{background:var(--red)}.audit-list{max-height:520px;overflow:auto}.audit-item{border-bottom:1px solid var(--line);padding:10px 0}.audit-item small{color:var(--muted)}.toast{position:fixed;right:24px;bottom:24px;background:#15213b;color:#fff;padding:11px 15px;border-radius:9px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.page-grid{grid-template-columns:1fr}.login-brand{padding:9vh 6vw}.login-brand h1{font-size:38px}}
@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.main{margin-left:0}.menu-button{display:block}.content{padding:20px 15px}.topbar{padding:0 14px}.topbar .button{display:none}kbd{display:none}.page-head{display:block}.head-actions{margin-top:15px}.stats-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .span-2{grid-column:auto}.health-summary{gap:18px;flex-wrap:wrap}.health-summary .budget-summary{margin-left:0;width:100%}.progress-wrap{display:none}.login-shell{grid-template-columns:1fr}.login-brand{display:none}.login-panel{min-height:100vh}.detail-hero{display:block}.detail-kpis{margin-top:18px;flex-wrap:wrap}.login-proof{flex-direction:column;gap:9px}}
.tenant-switcher{display:grid;gap:2px;min-width:175px}.tenant-switcher label{font-size:9px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:800}.tenant-switcher select{max-width:220px;border:1px solid #d7ddea;border-radius:8px;background:#fff;padding:7px 28px 7px 9px;color:var(--ink);font:inherit;font-size:11px;font-weight:700}.membership-picker{border:1px solid var(--line);border-radius:11px;padding:14px;margin:0}.membership-picker legend{font-size:11px;font-weight:800;color:#4e5a70;padding:0 6px}.membership-picker>p{margin:0 0 10px}.membership-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.membership-options label,.check-card{display:flex!important;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px;background:#fbfcff;cursor:pointer}.membership-options input,.check-card input{width:auto!important}.membership-options strong,.membership-options small{display:block}.membership-options small{font-size:9px;color:var(--muted);margin-top:2px}.relationship-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.relationship-card{border:1px solid var(--line);border-radius:11px;padding:14px}.relationship-card>div{display:flex;align-items:center;gap:8px}.relationship-card p{color:var(--muted);margin:8px 0}.inline-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.isolation-note{border-left:4px solid var(--blue)}
@media(max-width:760px){.tenant-switcher{min-width:120px}.tenant-switcher label{display:none}.tenant-switcher select{max-width:145px}.membership-options,.relationship-map{grid-template-columns:1fr}}

/* Multiempresa: panel de empresas y grupos */
.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}.organization-page-head{align-items:center}.organization-page-head>div{max-width:760px}.tenant-safety-banner{display:flex;align-items:flex-start;gap:13px;padding:15px 17px;margin-bottom:18px;border:1px solid #cad8ff;border-left:4px solid var(--blue);border-radius:12px;background:#f5f8ff}.tenant-safety-banner.compact{margin:0 0 16px}.tenant-safety-banner strong{display:block;color:#263e82}.tenant-safety-banner p{margin:3px 0 0;color:#5e6d8d;line-height:1.5}.tenant-safety-icon{width:32px;height:32px;flex:0 0 32px;border-radius:9px;display:grid;place-items:center;background:#e3eaff;color:var(--blue);font-size:18px;font-weight:900}.organization-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.organization-stats article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 2px 10px rgba(34,47,79,.025)}.organization-stats span,.organization-stats strong,.organization-stats small{display:block}.organization-stats span{color:#6b7690;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.7px}.organization-stats strong{font-size:25px;margin:4px 0}.organization-stats small{color:#8a93a6}.organization-section-nav{display:flex;gap:5px;align-items:center;overflow:auto;margin-bottom:18px;padding:6px;background:#e9edf5;border-radius:11px}.organization-section-nav.sticky{position:sticky;top:76px;z-index:10;box-shadow:0 6px 18px rgba(24,38,72,.08)}.organization-section-nav a{padding:8px 13px;border-radius:8px;color:#4e5a70;text-decoration:none;font-size:11px;font-weight:800;white-space:nowrap}.organization-section-nav a:hover{background:#fff;color:var(--blue)}.organization-panel-head{align-items:flex-end}.organization-panel-head>div{max-width:780px}.organization-panel-head .muted{margin-top:5px;line-height:1.5}.result-count{padding:6px 9px;border-radius:20px;background:#eef2f8;color:#657086;font-size:10px;font-weight:800;white-space:nowrap}.organization-filters{display:flex;gap:8px;align-items:center;margin-bottom:17px}.organization-filters select,.organization-search{height:39px;border:1px solid #d7ddea;border-radius:9px;background:#fff}.organization-filters select{padding:0 30px 0 11px;color:var(--ink)}.organization-search{display:flex;align-items:center;gap:3px;min-width:270px;padding:0 10px;color:#8b94a7}.organization-search:focus-within{border-color:#8299ed;box-shadow:0 0 0 3px #edf0ff}.organization-search input{width:100%;border:0;outline:none;background:transparent;padding:9px;color:var(--ink)}.organization-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.organization-card{display:grid;gap:14px;border:1px solid var(--line);border-radius:13px;padding:16px;background:#fff;transition:.18s}.organization-card:hover{transform:translateY(-2px);border-color:#c9d4ef;box-shadow:var(--shadow)}.organization-card header{display:flex;align-items:center;justify-content:space-between}.organization-monogram{width:38px;height:38px;flex:0 0 38px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#e4eaff,#edf1ff);color:#3659c9;font-size:11px;font-weight:900;letter-spacing:.5px}.organization-monogram.large{width:56px;height:56px;flex-basis:56px;border-radius:14px;background:rgba(255,255,255,.14);color:#fff;font-size:16px}.organization-card h3{margin:0 0 5px;font-size:15px}.organization-card code{color:#6f7890;font-size:10px}.organization-card dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border-top:1px solid #edf0f5;border-bottom:1px solid #edf0f5}.organization-card dl div{padding:11px 5px}.organization-card dt{color:#8992a5;font-size:9px;text-transform:uppercase;font-weight:800}.organization-card dd{margin:4px 0 0;font-weight:750;font-size:11px;word-break:break-word}.organization-empty{grid-column:1/-1;padding:34px;text-align:center;border:1px dashed #d7ddea;border-radius:12px;background:#fafbfe;color:var(--muted)}.organization-empty.compact{padding:22px}.organization-empty>span{font-size:24px}.organization-empty h3{margin:6px 0;color:#4b5770;font-size:14px}.organization-empty p{margin:0;line-height:1.5}.organization-lower-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px}.relationship-list,.shared-user-list{display:grid}.relationship-row{display:grid;grid-template-columns:1.3fr 1fr auto;gap:13px;align-items:center;padding:13px 3px;border-top:1px solid #edf0f5;color:inherit;text-decoration:none}.relationship-row:hover{background:#fafbff}.relationship-row strong,.relationship-row small{display:block}.relationship-row small{margin-top:3px;color:var(--muted);font-size:10px}.relationship-direction{display:flex;align-items:center;gap:8px;font-size:11px}.relationship-direction i{color:#8191ba;font-style:normal}.shared-user-list article{display:flex;gap:10px;align-items:center;padding:12px 3px;border-top:1px solid #edf0f5}.shared-user-list strong,.shared-user-list small{display:block}.shared-user-list small{color:var(--muted);font-size:10px;margin-top:2px}.organization-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.organization-chips span{display:inline-flex;padding:4px 7px;background:#edf2ff;color:#4961ad;border-radius:20px;font-size:9px;font-weight:700}.organization-create-panel{margin-top:18px;padding:0;overflow:hidden}.organization-create-panel>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:18px 20px}.organization-create-panel>summary::-webkit-details-marker,.organization-inline-create>summary::-webkit-details-marker,.relationship-detail-card>summary::-webkit-details-marker{display:none}.organization-create-panel>summary span:first-child{display:grid;gap:3px}.organization-create-panel>summary small{color:#5670cf;text-transform:uppercase;letter-spacing:1px;font-weight:800}.summary-action{color:var(--blue);font-size:11px;font-weight:800}.organization-create-panel[open] .summary-action{font-size:0}.organization-create-panel[open] .summary-action:after{content:'Cerrar formulario';font-size:11px}.organization-create-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;padding:20px;border-top:1px solid var(--line);background:#fbfcff}.organization-create-body h3{margin:0 0 7px}.organization-create-body p,.organization-create-body li{color:var(--muted);line-height:1.55}.form-actions{display:flex;align-items:center;gap:8px}.field small,.check-card small{color:#8790a3;font-weight:500;line-height:1.4}.badge.inactive,.badge.suspended{background:#f0f1f4;color:#6b7280}.badge.pending{background:#fff1da;color:#a9690b}

/* Ficha de empresa */
.organization-detail-head{margin-bottom:18px}.organization-back-link{display:inline-flex;margin-bottom:10px;color:#586780;text-decoration:none;font-size:11px;font-weight:800}.organization-back-link:hover{color:var(--blue)}.organization-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:21px 23px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#17294c,#244c91);box-shadow:0 10px 28px rgba(24,48,96,.16)}.organization-hero .eyebrow{color:#afc1ff!important}.organization-hero h1{margin:4px 0;font-size:26px}.organization-hero p{margin:0;color:#cbd5e8}.organization-hero>.badge.active{background:#dff7eb;color:#117a51}.organization-hero>.badge.inactive{background:#fff;color:#69738a}.organization-identity{display:flex;align-items:center;gap:15px}.detail-stats{margin-top:18px}.organization-settings-panel,.organization-members-panel,.organization-relationships-panel{scroll-margin-top:145px}.organization-members-panel,.organization-relationships-panel{margin-top:18px}.organization-inline-create{margin:0 0 16px;border:1px solid #cfd9f3;border-radius:11px;background:#f8faff;overflow:hidden}.organization-inline-create>summary{list-style:none;cursor:pointer;padding:13px 15px;color:#3156bf;font-size:11px;font-weight:850}.organization-inline-create[open]>summary{border-bottom:1px solid #dce4f7;background:#eef3ff}.member-add-form{display:grid;grid-template-columns:1fr 1.4fr 1.2fr 1fr auto;gap:10px;align-items:end;padding:15px}.member-add-form .check-card{min-height:59px}.member-add-form .button{min-height:39px;margin-bottom:1px}.member-list{display:grid;gap:10px}.member-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.member-card.is-suspended{background:#fafbfc}.member-card-identity{display:flex;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid #edf0f5}.member-card-identity a{display:block;color:var(--ink);text-decoration:none;font-weight:800}.member-card-identity a:hover{color:var(--blue)}.member-card-identity small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.membership-default{display:inline-flex;padding:5px 9px;border-radius:20px;background:#e7ecff;color:#3c57bd;font-size:10px;font-weight:800}.member-settings-form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(130px,.7fr) auto auto;gap:10px;align-items:end;padding:12px 15px}.fixed-field{min-height:39px;display:flex;align-items:center;padding:10px 11px;border:1px solid #dfe4ec;border-radius:8px;background:#f5f7fa;color:#5d687c;font-size:12px}.member-default-choice{min-height:39px;display:flex;align-items:center;gap:7px;padding:0 5px;color:#59657a;font-size:11px;font-weight:700;white-space:nowrap}.member-card-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 15px;border-top:1px solid #edf0f5;background:#fafbfe}.member-card-footer>div{min-width:0}.member-card-footer small{display:block}.member-context-label{display:block;color:#7a8498;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.6px;margin-bottom:3px}.relationship-detail-list{display:grid;gap:10px}.relationship-detail-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.relationship-detail-card>summary{display:flex;align-items:center;gap:12px;padding:13px 15px;list-style:none;cursor:pointer}.relationship-detail-card>summary:hover{background:#fafbff}.relationship-detail-card>summary strong,.relationship-detail-card>summary small{display:block}.relationship-detail-card>summary small{margin-top:3px;color:var(--muted);font-size:10px}.details-chevron{color:#7d88a1;font-size:18px;transition:.18s}.relationship-detail-card[open] .details-chevron{transform:rotate(180deg)}.relationship-detail-body{padding:15px;border-top:1px solid var(--line);background:#fafbfe}.relationship-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.date-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;align-items:center}.date-pair span{color:var(--muted);font-size:10px}.relationship-delete{display:flex;justify-content:flex-end;margin-top:11px;padding-top:11px;border-top:1px solid var(--line)}

@media(max-width:1180px){.organization-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-add-form{grid-template-columns:1fr 1fr}.member-add-form .button{align-self:end}.user-picker-search{grid-column:span 2}}
@media(max-width:900px){.organization-lower-grid,.organization-create-body{grid-template-columns:1fr}.relationship-row{grid-template-columns:1fr auto}.relationship-row>span:nth-child(2){grid-row:2;grid-column:1/-1}.member-settings-form{grid-template-columns:1fr 1fr}.member-card-footer{align-items:flex-start;flex-direction:column}.organization-section-nav.sticky{top:72px}}
@media(max-width:760px){.organization-page-head .button{margin-top:14px}.organization-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.organization-card-grid{grid-template-columns:1fr}.organization-filters{align-items:stretch;flex-direction:column}.organization-search{min-width:0}.organization-filters select{width:100%}.organization-panel-head{align-items:flex-start}.organization-panel-head .result-count{margin-left:8px}.organization-hero{align-items:flex-start;flex-direction:column}.organization-hero h1{font-size:22px}.organization-section-nav.sticky{position:static}.member-add-form,.relationship-edit-form{grid-template-columns:1fr}.member-add-form .user-picker-search,.relationship-edit-form .span-2{grid-column:auto}.member-settings-form{grid-template-columns:1fr}.member-default-choice{padding:4px 0}.date-pair{grid-template-columns:1fr}.date-pair span{display:none}.relationship-detail-card>summary{align-items:flex-start}.relationship-detail-card>summary .badge{margin-left:auto}.details-chevron{display:none}}

/* Identidad global y contexto empresarial */
.global-brand-logo{width:34px;height:34px;object-fit:contain;border-radius:9px;background:#fff;padding:3px}.active-organization-card{margin:0 0 8px;padding:11px;border:1px solid #354361;border-left:3px solid var(--tenant-brand);border-radius:10px;background:#162441}.active-organization-heading{display:flex;align-items:center;gap:9px}.active-organization-heading>img,.active-organization-heading>span{width:34px;height:34px;flex:0 0 34px;object-fit:contain;border-radius:8px;background:#fff;display:grid;place-items:center;color:var(--tenant-brand);font-size:10px;font-weight:900}.active-organization-heading small,.active-organization-heading strong{display:block}.active-organization-heading small{color:#8292b3;font-size:8px;text-transform:uppercase;letter-spacing:.7px;font-weight:800}.active-organization-heading strong{max-width:150px;margin-top:2px;color:#fff;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.active-organization-card select{width:100%;margin-top:9px;padding:6px 24px 6px 7px;border:1px solid #40506f;border-radius:7px;background:#101b32;color:#dce5f7;font-size:9px}.active-context-confirmation{display:block;margin:7px 0 0 43px;color:#7f8dac;font-size:8px}.platform-mode-card{display:grid;gap:4px;margin:0 0 8px;padding:11px;border:1px solid #4b3e71;border-radius:10px;background:#251d43;color:#e7ddff;text-decoration:none}.platform-mode-card strong{font-size:10px;text-transform:uppercase}.platform-mode-card small{font-size:9px;color:#a89fc1;line-height:1.4}.platform-admin-entry{margin-top:7px!important;border:1px solid #45396f;color:#d9ccff!important}.topbar-organization-context{display:flex;align-items:center;gap:8px;max-width:220px;padding:5px 9px;border:1px solid #d9dfec;border-left:3px solid var(--tenant-brand);border-radius:9px;background:#fff}.topbar-organization-context>img,.topbar-organization-context>span{width:29px;height:29px;flex:0 0 29px;object-fit:contain;border-radius:7px;background:#edf1ff;display:grid;place-items:center;color:var(--tenant-brand);font-size:9px;font-weight:900}.topbar-organization-context small,.topbar-organization-context strong{display:block}.topbar-organization-context small{font-size:7px;color:#7d879b;text-transform:uppercase;letter-spacing:.6px}.topbar-organization-context strong{max-width:135px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-admin-global-link{margin-left:auto;color:#6746d9!important}.branding-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px}.brand-preview-card{display:flex;align-items:center;gap:13px;padding:17px;border:1px solid var(--line);border-left:4px solid var(--preview-brand,var(--tenant-brand));border-radius:12px;background:#f8f9fc}.brand-preview-card img,.brand-preview-fallback{width:58px;height:58px;object-fit:contain;border-radius:11px;background:#fff;border:1px solid #e1e5ee;display:grid;place-items:center;color:var(--tenant-brand);font-weight:900}.brand-preview-card strong,.brand-preview-card small{display:block}.brand-preview-card small{margin:3px 0;color:#717b90}.settings-scope-list{display:grid}.settings-scope-list>a,.settings-scope-list>span{display:block;padding:12px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}.settings-scope-list>a:hover strong{color:var(--blue)}.settings-scope-list strong,.settings-scope-list small{display:block}.settings-scope-list small{margin-top:4px;color:var(--muted);line-height:1.45}.organization-hero-actions{display:flex;align-items:center;gap:9px}.organization-hero-actions .button{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.35);color:#fff}.login-global-logo{max-width:190px;max-height:74px;object-fit:contain;object-position:left center;margin-bottom:20px}.login-divider{display:flex;align-items:center;gap:12px;margin:18px 0}.login-divider hr{flex:1;border:0;border-top:1px solid var(--line)}.field input[type=color]{min-height:43px;padding:5px}.platform-safety-callout{margin-bottom:18px;padding:15px 17px;border:1px solid #d7cff7;border-left:4px solid #6746d9;border-radius:11px;background:#f8f6ff}.platform-safety-callout strong{display:block;color:#4e358f}.platform-safety-callout p{margin:4px 0 0;color:#675f7d;line-height:1.5}
@media(max-width:1050px){.branding-layout{grid-template-columns:1fr}.topbar-organization-context{max-width:180px}}
@media(max-width:760px){.topbar-organization-context{margin-left:auto}.topbar-organization-context div{display:none}.topbar-organization-context{padding:4px}.company-admin-global-link{margin-left:0}.organization-hero-actions{align-items:flex-start;flex-direction:column}}

/* Estructura y catálogos aislados por empresa */
.catalog-accordion{display:grid;gap:9px}.catalog-accordion>details{border:1px solid var(--line);border-radius:11px;overflow:hidden}.catalog-accordion>details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;cursor:pointer;background:#fbfcff}.catalog-accordion>details>summary::-webkit-details-marker{display:none}.catalog-accordion>details>summary strong,.catalog-accordion>details>summary small{display:block}.catalog-accordion>details>summary small{margin-top:3px;color:var(--muted);font-size:9px}.catalog-option-list{display:grid;border-top:1px solid var(--line)}.catalog-option{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #edf0f5}.catalog-option-form{display:grid;grid-template-columns:120px minmax(180px,1fr) 100px 75px 110px auto;gap:8px;align-items:center;flex:1}.catalog-option input,.catalog-option select,.catalog-new-option input{min-width:0;border:1px solid #d7ddea;border-radius:8px;padding:8px;font:inherit;color:var(--ink)}.base-option{display:grid;grid-template-columns:120px 1fr auto;color:#687286;background:#fafbfc}.catalog-new-option{display:grid;grid-template-columns:120px 1fr 100px 75px auto;gap:8px;padding:12px 14px;background:#f6f8ff}.structure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.structure-grid>section{border:1px solid var(--line);border-radius:12px;padding:15px;background:#fbfcff}.structure-grid h3{margin:0 0 10px;font-size:13px}.structure-list{display:grid}.structure-list article{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-top:1px solid var(--line)}.structure-list strong,.structure-list small{display:block}.structure-list small{margin-top:3px;color:var(--muted);font-size:9px}.structure-grid .organization-inline-create{margin:12px 0 0}.structure-grid .organization-inline-create .form-stack{padding:14px;margin:0}
@media(max-width:1100px){.catalog-option-form{grid-template-columns:100px 1fr 80px 70px}.catalog-option-form .button{grid-column:4}.catalog-new-option{grid-template-columns:100px 1fr 80px 70px}.catalog-new-option .button{grid-column:1/-1}.structure-grid{grid-template-columns:1fr}}
@media(max-width:760px){.catalog-option,.catalog-option-form,.base-option,.catalog-new-option{display:grid;grid-template-columns:1fr}.catalog-option>form:last-child{justify-self:start}.catalog-option-form .button,.catalog-new-option .button{grid-column:auto}}

/* Gobierno y ámbito jerárquico del proyecto */
.project-form-section{border:1px solid var(--line);background:#fafbfe;border-radius:12px;padding:16px}.project-form-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:14px}.project-form-section-head h3{font-size:15px;margin:3px 0 0}.project-form-section-head p{margin:0}.project-form-section-head>p{max-width:520px;color:var(--muted);font-size:11px;line-height:1.5}.project-form-section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.field-help{color:var(--muted);font-size:10px;font-weight:500;line-height:1.45}.form-rule-note{margin:13px 0 0;padding-top:11px;border-top:1px solid var(--line);color:#57647c;font-size:10px}.field select.is-unavailable{background:#f0f2f7;color:#7f899c}
@media(max-width:1050px){.project-form-section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.project-form-section-head{display:block}.project-form-section-head>p{margin-top:8px}.project-form-section-grid{grid-template-columns:1fr}}


/* Ficha empresarial: permisos y relaciones B2B explícitas */
.member-permission-summary{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 15px;border-bottom:1px solid #edf0f5;background:#fcfdff}
.member-permission-summary>span:first-child{color:#7a8498;font-size:9px;text-transform:uppercase;font-weight:850;letter-spacing:.55px}
.member-permission-summary .button{margin-left:auto}
.organization-chips.global span{background:#eee9ff;color:#5e43a7}
.permission-warning{display:inline-flex;padding:7px 9px;border:1px solid #f0cf8e;border-radius:8px;background:#fff8e8;color:#8a5c08;font-size:10px;font-weight:750;line-height:1.4}
.relationship-direction-card{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-bottom:14px;padding:12px;border:1px solid #dce4f7;border-radius:10px;background:#fff}
.relationship-direction-card div{min-width:0}.relationship-direction-card small,.relationship-direction-card strong{display:block}.relationship-direction-card small{color:#7a8498;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.5px}.relationship-direction-card strong{margin-top:3px;color:#1b2943}.relationship-direction-card>span{color:#5573d4;font-size:19px}
.relationship-sharing-summary{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef4ff;color:#304a80;font-size:10px}.relationship-sharing-summary strong,.relationship-sharing-summary span{display:block}
@media(max-width:760px){.member-permission-summary{align-items:flex-start;flex-direction:column}.member-permission-summary .button{margin-left:0}.relationship-direction-card{grid-template-columns:1fr}.relationship-direction-card>span{transform:rotate(90deg);justify-self:start}.relationship-sharing-summary{flex-direction:column}}

.platform-mode-card>a{color:inherit;text-decoration:none}.platform-mode-card select{width:100%;margin-top:4px;padding:7px 24px 7px 8px;border:1px solid #504575;border-radius:7px;background:#19142f;color:#f0eaff;font-size:10px}.company-admin-context-hint{align-self:center;color:#68738c;font-size:12px;padding:8px 10px}.company-admin-tabs form{display:inline-flex;align-items:center}.company-admin-tabs select{max-width:220px;padding:7px 26px 7px 9px;border:1px solid #d9dfec;border-radius:8px;background:#fff;color:#26314b;font-size:12px}
