/* Espai de l'organització: estils de l'administració de WordPress amb els colors de la web de la SEMCV, només dins de .olimp-org */
.olimp-org { width: min(1400px, calc(100vw - 48px)); max-width: none !important; position: relative; left: 50%; transform: translateX(-50%); --org-blau: #1d4f91; --org-pissarra: #3d6081; --org-blau-clar: #e8eff8; --org-groc: #f4b200; --org-vora: #d0d5dd; --org-gris: #667085; font-size: 14px; line-height: 1.5; color: #1d2327; max-width: 100%; }
.olimp-org *, .olimp-org *::before, .olimp-org *::after { box-sizing: border-box; }
.olimp-org h1 { font-size: 23px; font-weight: 400; margin: 10px 0 14px; line-height: 1.3; }
.olimp-org h2 { font-size: 1.3em; margin: 1.4em 0 .6em; }
.olimp-org h3 { font-size: 1.1em; margin: 1.2em 0 .5em; }
.olimp-org a { color: var(--org-blau); }
.olimp-org p { margin: .6em 0; }
.olimp-org code { background: #f0f0f1; padding: 2px 5px; font-size: 13px; }

/* Barra superior i menú */
.olimp-org-barra { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; background: var(--org-blau); color: #fff; padding: 10px 14px; border-radius: 6px 6px 0 0; border-bottom: 3px solid var(--org-groc); }
.olimp-org-barra a { color: #fff; text-decoration: underline; }
.olimp-org-espais { display: inline-flex; gap: 4px; margin-right: 10px; }
.olimp-org-espais a { text-decoration: none; padding: 3px 10px; border: 1px solid rgba(255,255,255,.6); border-radius: 14px; font-size: 13px; }
.olimp-org-espais a.actiu { background: #fff; color: var(--org-blau); border-color: #fff; font-weight: 600; }
.olimp-org-menu { display: flex; flex-wrap: wrap; gap: 2px; background: var(--org-pissarra); padding: 4px; border-radius: 0 0 6px 6px; margin-bottom: 16px; }
.olimp-org-menu a { color: #fff; text-decoration: none; padding: 7px 12px; border-radius: 4px; font-size: 13px; }
.olimp-org-menu a:hover { background: rgba(255,255,255,.15); }
.olimp-org-menu a.actiu { background: #fff; color: var(--org-blau); font-weight: 600; }

/* Entrada */
.olimp-org-entrada { max-width: 420px; margin: 20px auto; padding: 24px; border: 1px solid var(--org-vora); border-radius: 8px; background: #fff; }
.olimp-org-entrada label { display: block; font-weight: 600; margin-bottom: 4px; }
.olimp-org .olimp-org-entrada input[type=text], .olimp-org .olimp-org-entrada input[type=password] { width: 100%; padding: 8px 10px; font-size: 16px; border: 1px solid #8c8f94; border-radius: 4px; }
.olimp-org-entrada .login-remember label { font-weight: 400; }
.olimp-org-entrada input[type=submit] { background: var(--org-blau); color: #fff; border: 0; border-radius: 4px; padding: 9px 20px; font-size: 15px; cursor: pointer; }

/* Formularis */
.olimp-org input[type=text], .olimp-org input[type=email], .olimp-org input[type=url], .olimp-org input[type=number], .olimp-org input[type=date], .olimp-org input[type=password], .olimp-org input[type=search], .olimp-org select, .olimp-org textarea {
	font-size: 14px; line-height: 2; min-height: 30px; padding: 0 8px; border: 1px solid #8c8f94; border-radius: 4px; background: #fff; color: #2c3338; max-width: 100%; box-shadow: none; margin: 0; height: auto; width: auto; }
.olimp-org textarea { line-height: 1.4; padding: 6px 8px; }
.olimp-org input:focus, .olimp-org select:focus, .olimp-org textarea:focus { border-color: var(--org-blau); box-shadow: 0 0 0 1px var(--org-blau); outline: 2px solid transparent; }
.olimp-org input[type=checkbox], .olimp-org input[type=radio] { width: auto; min-height: 0; margin: 0 4px 0 0; }
.olimp-org .small-text { width: 70px; }
.olimp-org .regular-text { width: 25em; }
.olimp-org .large-text { width: 99%; }
.olimp-org .description { color: var(--org-gris); font-size: 13px; font-style: normal; }
.olimp-org .form-table { border-collapse: collapse; width: 100%; margin-top: .5em; }
.olimp-org .form-table th { width: 220px; text-align: left; vertical-align: top; padding: 15px 10px 15px 0; font-weight: 600; }
.olimp-org .form-table td { padding: 12px 10px; vertical-align: middle; }

/* Botons */
.olimp-org .button, .olimp-org button.button, .olimp-org a.button { display: inline-block; text-decoration: none; font-size: 13px; line-height: 2.15; min-height: 30px; margin: 0; padding: 0 10px; cursor: pointer; border: 1px solid var(--org-blau); border-radius: 3px; background: #f6f7f7; color: var(--org-blau); white-space: nowrap; box-shadow: none; text-transform: none; letter-spacing: normal; font-weight: 400; width: auto; height: auto; }
.olimp-org .button:hover { background: #f0f0f1; color: #135e96; border-color: #0a4b78; }
.olimp-org .button-primary, .olimp-org a.button-primary, .olimp-org button.button-primary { background: var(--org-blau); border-color: var(--org-blau); color: #fff; }
.olimp-org .button-primary:hover { background: #135e96; color: #fff; }
.olimp-org .button-large { min-height: 32px; line-height: 2.30; padding: 0 12px; }
.olimp-org .button-small { min-height: 26px; line-height: 2.18; padding: 0 8px; font-size: 11px; }
.olimp-org .button[disabled], .olimp-org .button:disabled { opacity: .5; cursor: default; }
.olimp-org .button-link, .olimp-org .button-link-delete { background: none; border: 0; padding: 0; color: var(--org-blau); text-decoration: underline; cursor: pointer; font-size: 13px; }
.olimp-org .button-link-delete { color: #b32d2e; }
.olimp-org .page-title-action { margin-left: 4px; padding: 4px 8px; border: 1px solid var(--org-blau); border-radius: 3px; text-decoration: none; font-size: 13px; vertical-align: top; position: relative; top: 4px; }
.olimp-org .wp-heading-inline { display: inline-block; margin-right: 5px; }
.olimp-org .wp-header-end { visibility: hidden; margin: -2px 0 0; }

/* Taules */
.olimp-org .widefat { border: 1px solid var(--org-vora); border-spacing: 0; width: 100%; clear: both; margin: 0; background: #fff; border-collapse: separate; }
.olimp-org .widefat th, .olimp-org .widefat td { padding: 8px 10px; text-align: left; vertical-align: top; border: 0; font-size: 13px; }
.olimp-org .widefat thead th, .olimp-org .widefat thead td { border-bottom: 1px solid var(--org-vora); font-weight: 400; }
.olimp-org .striped > tbody > :nth-child(odd) { background: #f6f7f7; }
.olimp-org .widefat .olimp-nova-fila { background: #fcf9e8; }
.olimp-org .tablenav { margin: 6px 0; display: flex; justify-content: flex-end; }
.olimp-org .tablenav-pages a, .olimp-org .tablenav-pages span { margin-left: 4px; }

/* Avisos */
.olimp-org .notice { background: #fff; border: 1px solid var(--org-vora); border-left-width: 4px; box-shadow: 0 1px 1px rgba(0,0,0,.04); margin: 5px 0 15px; padding: 1px 12px; }
.olimp-org .notice p { margin: .5em 0; padding: 2px; }
.olimp-org .notice-success { border-left-color: #00a32a; }
.olimp-org .notice-error { border-left-color: #d63638; }
.olimp-org .notice-warning { border-left-color: #dba617; }
.olimp-org .awaiting-mod { display: inline-block; background: #d63638; color: #fff; border-radius: 9px; padding: 0 6px; font-size: 11px; }

/* Pestanyes i caixes */
.olimp-org .nav-tab-wrapper { border-bottom: 1px solid var(--org-vora); margin: 10px 0 12px; display: flex; flex-wrap: wrap; gap: 4px; }
.olimp-org .nav-tab { padding: 5px 10px; font-size: 13px; border: 1px solid var(--org-vora); border-bottom: 0; background: #dcdcde; color: #50575e; text-decoration: none; margin-bottom: -1px; }
.olimp-org .nav-tab-active { background: #fff; color: #000; border-bottom: 1px solid #fff; }
.olimp-org .postbox { background: #fff; border: 1px solid var(--org-vora); margin-bottom: 16px; }
.olimp-org .postbox .hndle { font-size: 14px; padding: 8px 12px; margin: 0; border-bottom: 1px solid var(--org-vora); }
.olimp-org .postbox .inside { padding: 0 12px 12px; }

@media (max-width: 782px) {
	.olimp-org .widefat { display: block; overflow-x: auto; }
	.olimp-org .form-table th, .olimp-org .form-table td { display: block; width: auto; padding: 6px 0; }
	.olimp-org .regular-text { width: 100%; }
}

.olimp-org ul.olimp-resum, .olimp-org .olimp-resum li { list-style: none; padding-left: 0; }
.olimp-org .olimp-resum li::marker { content: none; }
.olimp-org-barra .olimp-org-titol { flex: 1 1 auto; }

/* Colors de la web en els elements de l'administració */
.olimp-org .olimp-resum li.actiu a { border-color: var(--org-blau); box-shadow: 0 0 0 1px var(--org-blau); }
.olimp-org .olimp-ampliacio { background: var(--org-blau-clar); border-left-color: var(--org-blau); }
.olimp-org .nav-tab-active { border-bottom-color: #fff; color: var(--org-blau); }
.olimp-org .olimp-usuaris-rols label, .olimp-org .olimp-usuaris-checks label { display: inline-block; margin: 0 14px 6px 0; }
.olimp-org .olimp-contrasenya { display: inline-flex; gap: 6px; align-items: center; }

/* El tema de la web pinta totes les cel·les <th> de blau: només les capçaleres de taula (thead) van en blau, la resta, sobre blanc. */
.olimp-org table th, .olimp-org table td { text-indent: 0; }
.olimp-org table tbody th, .olimp-org .form-table th { background: transparent !important; color: #1d2327 !important; border-color: var(--org-vora); }
.olimp-org table thead th, .olimp-org table thead td { background: var(--org-pissarra) !important; color: #fff !important; font-weight: 600; }
.olimp-org table thead th a { color: #fff; }
.olimp-org table tbody th .description, .olimp-org table tbody th small, .olimp-org .form-table th small { color: var(--org-gris) !important; }
.olimp-org .widefat { background: #fff; }

/* La mateixa font que la resta de la web (la del tema), també en botons i camps. */
.olimp-org, .olimp-org input, .olimp-org select, .olimp-org textarea, .olimp-org button, .olimp-org .button, .olimp-org h1, .olimp-org h2, .olimp-org h3, .olimp-org table, .olimp-org code { font-family: inherit; }
.olimp-org-barra .olimp-org-espais { margin: 0 auto 0 12px; }
.olimp-org-subtitol { margin: -6px 0 4px; font-size: 15px; color: var(--org-blau); }
.olimp-org .olimp-usuaris-modul { margin-bottom: 8px; }
.olimp-org .olimp-usuaris-modul strong { display: inline-block; min-width: 90px; }
.olimp-org .olimp-diff, .olimp-admin .olimp-diff { border-collapse: collapse; margin: 6px 0 10px; }
.olimp-diff th, .olimp-diff td { padding: 4px 12px 4px 0; text-align: left; border-bottom: 1px solid #e5e7eb; }
.olimp-org .olimp-diff th { background: transparent !important; color: #667085 !important; font-weight: 600; }
.olimp-org .postbox { border: 1px solid var(--org-vora); border-radius: 6px; margin-bottom: 12px; background: #fff; }
.olimp-org .postbox .inside { padding: 4px 14px 10px; }
.olimp-org-barra .olimp-org-espais a img, .olimp-org-barra .olimp-org-titol img { vertical-align: middle; margin-right: 6px; border-radius: 50%; }
.olimp-org-barra .olimp-org-espais a img { width: 20px; height: 20px; margin: -3px 5px -3px -4px; }

/* El tema de la web centra el contingut de les taules: en l'espai privat, els formularis van a l'esquerra. */
.olimp-org .form-table td, .olimp-org .form-table th { text-align: left !important; }

/* 1.0.64: repàs de l'espai privat */
/* Menú: les seccions del mòdul a l'esquerra i les generals en un grup a banda, sense escampar-les. */
.olimp-org-menu { justify-content: space-between; align-items: center; row-gap: 4px; }
.olimp-org-menu-grup { display: flex; flex-wrap: wrap; gap: 2px; }
.olimp-org-menu-grup.general { margin-left: auto; padding-left: 10px; border-left: 1px solid rgba(255,255,255,.3); }
.olimp-org-menu-grup.general a { opacity: .9; }

/* Amples dels camps: les classes de WordPress manen (abans «width:auto» les anul·lava). */
.olimp-org input.small-text { width: 5.5em; }
.olimp-org input.regular-text, .olimp-org select.regular-text { width: min(28em, 100%); }
.olimp-org input.large-text, .olimp-org textarea.large-text { width: 100%; }
.olimp-org .form-table td > input[type=text]:not([class]):not([style]), .olimp-org .form-table td > input[type=email]:not([class]):not([style]), .olimp-org .form-table td > input[type=url]:not([class]):not([style]) { width: min(28em, 100%); }
.olimp-org .widefat td > input[type=text]:not([style]), .olimp-org .widefat td > input[type=email]:not([style]), .olimp-org .widefat td > input[type=url]:not([style]), .olimp-org .widefat td > textarea:not([style]) { width: 100%; min-width: 9em; }
.olimp-org .widefat td > input.small-text { width: 5.5em; min-width: 0; }
.olimp-org .widefat td > select { max-width: 100%; }

/* Taules amples: es desplacen dins del seu requadre. */
.olimp-org .olimp-taula-scroll { overflow-x: auto; max-width: 100%; margin-bottom: 4px; }
.olimp-org .olimp-taula-scroll > .widefat { margin: 0; }
.olimp-org .widefat { border-radius: 6px; overflow: hidden; }
.olimp-org .olimp-taula-scroll > .widefat { overflow: visible; }

/* Formularis com a targetes, igual que els diplomes. */
.olimp-org .form-table { background: #fff; border: 1px solid var(--org-vora); border-radius: 8px; border-collapse: separate; border-spacing: 0; margin: .6em 0 1em; }
.olimp-org .form-table > tbody > tr > th { width: 230px; padding: 14px 12px 14px 18px; vertical-align: top; }
.olimp-org .form-table > tbody > tr > td { padding: 10px 18px 10px 8px; }
.olimp-org .form-table > tbody > tr + tr > th, .olimp-org .form-table > tbody > tr + tr > td { border-top: 1px solid #edf0f4; }
.olimp-org .form-table td .description { margin: 4px 0 0; }
.olimp-org .form-table td label { margin-right: 10px; }
.olimp-org .wrap > h2:not(.nav-tab-wrapper), .olimp-org .wrap > h3 { color: var(--org-blau); }
.olimp-org .wrap > h2:not(.nav-tab-wrapper) { border-bottom: 2px solid var(--org-groc); padding-bottom: 4px; display: table; }

@media (max-width: 782px) {
	.olimp-org-menu-grup.general { margin-left: 0; padding-left: 0; border-left: 0; }
	.olimp-org .form-table > tbody > tr > th, .olimp-org .form-table > tbody > tr > td { display: block; width: auto; padding: 8px 14px; }
	.olimp-org .form-table > tbody > tr + tr > td { border-top: 0; }
}
.olimp-org .widefat td > input[name$="[nom]"], .olimp-org .widefat td > input[name$="[adreca]"] { min-width: 13em; }
.olimp-org table thead code { background: rgba(255,255,255,.18); color: #fff; }
.olimp-org .wrap > form > h2, .olimp-org .wrap > form > h3 { color: var(--org-blau); }
.olimp-org .wrap > form > h2 { border-bottom: 2px solid var(--org-groc); padding-bottom: 4px; display: table; }
/* Sense el buit del tema (TheKeynote) entre la imatge de capçalera i l'espai de l'organització. */
:is(p:empty, p:has(> br:only-child), .wp-block-spacer):has(+ .olimp-org, + p > .olimp-org) { display: none !important; }
:is(figure, .wp-block-image, .wp-block-cover):has(+ .olimp-org) { margin-bottom: 0 !important; }
p:has(> .olimp-org) { margin: 0 !important; }
.section-container:has(.olimp-org), .gdlr-item-start-content:has(.olimp-org) { padding-top: 10px !important; }
.gdlr-full-size-wrapper:has(+ .section-container .olimp-org) { padding-bottom: 0 !important; }
.gdlr-item:has(> .olimp-org), .gdlr-item:has(.olimp-org) { margin-bottom: 0 !important; }
