*{box-sizing:border-box}html,body{margin:0}.pcdm-body{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#172033;background:#f4f8fc;font-size:14px}.pcdm-body a{text-decoration:none;color:inherit}.shell{min-height:100vh;display:flex;background:linear-gradient(135deg,#f9fcff,#eef5fc)}.side{width:300px;background:#fff;border-right:1px solid #dfe7f0;display:flex;flex-direction:column;padding:0 18px}.brandrow{height:105px;display:flex;align-items:center;gap:12px;padding:0 15px}.logo{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#15539a 0 58%,#59b276 58%);color:#fff;font-size:30px;font-weight:800}.brandrow small{display:block;font-size:10px;color:#31547d}.brandrow strong{display:block;font-size:20px;color:#123f77}.side nav{display:flex;flex-direction:column;gap:5px}.side nav a{height:43px;border-radius:8px;display:flex;align-items:center;gap:12px;padding:0 13px;color:#203a5b}.side nav a.active{background:#15539a;color:#fff}.side nav span{width:23px;text-align:center;font-size:20px}.motto{margin:34px 10px 18px;padding:18px 14px;background:#fbfcfe;border:1px solid #edf0f4;border-radius:10px;font-size:12px;line-height:1.5}.motto em{color:#54aa69}.side footer{margin-top:auto;padding:18px 10px 24px;color:#788599;font-size:10px;line-height:1.8}.main{flex:1;min-width:0}.main header{height:78px;background:#fff;border-bottom:1px solid #e5ebf2;display:flex;justify-content:space-between;align-items:center;padding:0 28px}.toplabel{font-weight:750;letter-spacing:.04em;color:#15539a}.topuser{display:flex;align-items:center;gap:17px;color:#173d69}.topuser>span{font-size:22px;position:relative}.topuser b{position:absolute;right:-7px;top:-5px;background:#15539a;color:#fff;border-radius:50%;font-size:9px;padding:2px 5px}.avatar{width:40px;height:40px;border-radius:50%;background:#20466f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}.topuser div+div{display:flex;flex-direction:column}.topuser small{font-size:10px;color:#758197}.content{padding:34px 28px;max-width:1550px;margin:auto}.content>h1{font-size:30px;margin:0 0 5px;letter-spacing:-.03em}.content>h1 span{font-size:24px}.welcome{margin:0;color:#29486e}.layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:22px;margin-top:26px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.stat{background:#fff;border:1px solid #e5ebf1;border-radius:10px;min-height:105px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 15px #1e3c5f0a}.stat i{width:43px;height:43px;border-radius:50%;background:#e7f2fc;display:block;flex:none}.stat i.green{background:#e1f7ea}.stat i.orange{background:#fff0de}.stat i.purple{background:#f0e6fa}.stat strong{display:block;font-size:28px;color:#111}.stat small{display:block;color:#596679;margin-top:5px}.stat>span{margin-left:auto;font-size:23px;color:#8090a4}.panel{background:#fff;border:1px solid #e5ebf1;border-radius:11px;box-shadow:0 4px 15px #1e3c5f0a;margin-top:22px;overflow:hidden}.panel h2{font-size:15px;margin:0;padding:17px 20px 11px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:0 14px 14px}.quick a{min-height:122px;border:1px solid #e8edf3;border-bottom:3px solid #1767b1;border-radius:8px;padding:16px 13px;display:flex;gap:11px}.quick a:nth-child(2){border-bottom-color:#19a86c}.quick a:nth-child(3){border-bottom-color:#ed8b16}.quick a:nth-child(4){border-bottom-color:#21a9ad}.quick a:nth-child(5){border-bottom-color:#8d57b7}.quick a:nth-child(6){border-bottom-color:#e56c77}.quick i{width:40px;height:40px;border-radius:50%;background:#e9f3fc;flex:none}.quick strong{display:block;font-size:13px;margin:2px 0 8px}.quick small{font-size:10px;line-height:1.5;color:#59677a}.heading{display:flex;align-items:center;justify-content:space-between}.heading h2{padding:17px 20px 10px}.heading a,.more{color:#1560a6;font-size:11px}.heading a{padding-right:18px}.row{min-height:53px;border-top:1px solid #edf0f4;display:grid;grid-template-columns:25px 1fr auto;gap:10px;align-items:center;padding:8px 18px;font-size:11px;color:#445269}.row i{width:25px;height:25px;border-radius:50%;background:#e9f3fc}.row time{font-size:9px;color:#7b8798}.right>.panel:first-child{margin-top:0}.notice{display:grid;grid-template-columns:36px 1fr 5px;gap:10px;padding:13px 17px;border-top:1px solid #edf0f4;font-size:11px}.notice i{width:36px;height:36px;border-radius:50%;background:#edf5fc}.notice small{display:block;color:#7c8899;margin-top:3px}.notice b{width:6px;height:6px;border-radius:50%;background:#1765aa;margin-top:8px}.more{display:flex;justify-content:center;padding:13px;border-top:1px solid #edf0f4}.calendar .month{display:flex;justify-content:space-between;align-items:center;padding:2px 18px 12px}.month button{border:0;background:none;font-size:25px;color:#15539a}.month strong{font-size:13px;text-transform:capitalize}.days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding:0 14px 14px}.days span{height:25px;display:flex;align-items:center;justify-content:center;font-size:10px}.days .today{background:#15539a;color:#fff;border-radius:50%}.events{border-top:1px solid #edf0f4}.events div{display:grid;grid-template-columns:55px 1fr auto;gap:7px;padding:11px 17px;border-bottom:1px solid #edf0f4;font-size:10px}.events strong{color:#31577e}.events time{color:#7b8798}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef6fd,#fff)}.login section{width:430px;max-width:calc(100% - 30px);background:#fff;border:1px solid #e0e8f0;border-radius:15px;padding:38px;box-shadow:0 15px 50px #16456e1c}.login .brand{font-size:11px;color:#31547e;line-height:1.3;margin:9px 0 30px}.login .brand strong{font-size:21px;color:#123f77}.login h1{margin:0 0 5px}.login p{color:#68778a}.login label{display:block;font-size:12px;font-weight:650;margin:12px 0 6px}.login input[type=text],.login input[type=password]{width:100%;height:44px;border:1px solid #d7e0e9;border-radius:7px;padding:0 12px}.login input[type=submit]{width:100%;height:45px;border:0;border-radius:7px;background:#15539a;color:#fff;font-weight:700;margin-top:16px}.login .login-remember{font-weight:400}
@media(max-width:1180px){.layout{grid-template-columns:1fr}.right{display:grid;grid-template-columns:1fr 1fr;gap:18px}.right>.panel{margin-top:0}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.side{display:none}.main header{padding:0 15px}.content{padding:24px 15px}.quick{grid-template-columns:repeat(2,1fr)}.right{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.topuser div:nth-last-of-type(1){display:none}}

/* V1.0.1 — navegação funcional */
.toplabel,.topuser a,.usertext,.logout,.notice,.more,.month a{ text-decoration:none; }
.toplabel{color:inherit;}
.topuser a{color:inherit;}
.usertext{display:flex;flex-direction:column;}
.module-page{max-width:1100px;margin:0 auto;}
.module-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin:15px 0 25px;}
.module-head h1{margin:4px 0 8px;}
.module-head p{margin:0;max-width:720px;color:#6d7c91;}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;color:#1d5b9f;}
.back{display:inline-flex;align-items:center;padding:11px 16px;border:1px solid #dbe5ef;border-radius:9px;background:#fff;color:#24578d;text-decoration:none;font-weight:600;white-space:nowrap;}
.module-placeholder{min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px;}
.placeholder-icon{width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eaf3fb;color:#1d6eb5;font-size:25px;font-weight:700;margin-bottom:15px;}
.module-placeholder h2{margin:0 0 8px;}
.module-placeholder p{max-width:560px;color:#748398;margin:0;}
@media (max-width:800px){.module-head{align-items:flex-start;flex-direction:column}.back{width:max-content}}

/* Autenticação própria do Portal Cego do Maio */
.login-card{max-width:470px!important}
.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.login-brand .logo{margin:0}
.pcdm-login-form{display:flex;flex-direction:column;gap:8px;margin-top:22px}
.pcdm-login-form label{font-size:13px;font-weight:700;color:#334155;margin-top:8px}
.pcdm-login-form input{height:46px;border:1px solid #dbe3ec;border-radius:8px;padding:0 13px;font-size:15px;background:#fff;box-sizing:border-box}
.pcdm-login-form input:focus{outline:none;border-color:#2164a5;box-shadow:0 0 0 3px rgba(33,100,165,.10)}
.pcdm-login-form button{height:46px;border:0;border-radius:8px;background:#175c9e;color:#fff;font-size:15px;font-weight:700;cursor:pointer;margin-top:12px}
.pcdm-login-form button:hover{background:#124e89}
.login-error{background:#fff1f2;color:#b42318;border:1px solid #fecdca;border-radius:8px;padding:11px 13px;font-size:13px;margin-top:16px}
.login-credentials{margin-top:22px;padding:14px 16px;background:#f4f8fc;border:1px solid #dce8f2;border-radius:8px;display:flex;flex-direction:column;gap:5px;font-size:13px;color:#475569}
.login-credentials strong{color:#1e3a5f;margin-bottom:2px}
.login-note{display:block;color:#718096;font-size:11px;line-height:1.5;margin-top:12px}
/* V1.2.0 — gestão própria de utilizadores */
.save-ok{background:#edf9f1;color:#167447;border:1px solid #cdebd8;border-radius:9px;padding:12px 15px;margin:0 0 18px;font-size:13px}.user-form-panel{padding-bottom:24px}.user-form-panel>h2{font-size:18px;padding:20px;margin:0;border-bottom:1px solid #edf0f4}.user-form{padding:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.user-form label{display:block;font-size:12px;font-weight:700;color:#334155;margin:0 0 6px}.user-form input,.user-form select,.user-form textarea{width:100%;border:1px solid #d7e0e9;border-radius:8px;background:#fff;padding:11px 12px;font:inherit;color:#172033}.user-form input,.user-form select{height:44px}.user-form textarea{resize:vertical;min-height:105px}.user-form input:focus,.user-form select:focus,.user-form textarea:focus{outline:none;border-color:#2164a5;box-shadow:0 0 0 3px rgba(33,100,165,.10)}.user-form h3{font-size:15px;margin:28px 0 4px}.form-help{font-size:12px;color:#6d7c91;margin:0 0 15px}.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.access-item{display:flex!important;align-items:center;gap:9px;padding:11px 12px;border:1px solid #e2e9f0;border-radius:8px;background:#fbfdff;font-weight:600!important;color:#334155!important;margin:0!important;cursor:pointer}.access-item input{width:17px;height:17px;margin:0;accent-color:#175c9e}.custom-access{margin-top:18px}.custom-access small{display:block;margin-top:6px;color:#77869a;font-size:11px}.form-actions{display:flex;gap:10px;align-items:center;margin-top:20px}.form-actions button{height:44px;border:0;border-radius:8px;background:#175c9e;color:#fff;padding:0 19px;font-weight:700;cursor:pointer}.users-list{margin-top:22px}.user-count{font-size:11px;color:#718096;padding-right:18px}.table-wrap{overflow:auto}.users-list table{width:100%;border-collapse:collapse;font-size:12px}.users-list th{text-align:left;background:#f8fafc;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:11px 14px;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}.users-list td{padding:12px 14px;border-bottom:1px solid #edf0f4;color:#405169;white-space:nowrap}.users-list td:first-child{white-space:normal;min-width:190px}.users-list td:first-child strong{display:block;color:#172033}.users-list td:first-child small{display:block;color:#7b8798;margin-top:3px}.status{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:700}.status.on{background:#e8f8ee;color:#197447}.status.off{background:#f1f3f5;color:#718096}.actions{display:flex;gap:10px}.actions a{color:#155f9f;font-weight:650}.actions a:last-child{color:#9b3d3d}@media(max-width:900px){.access-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.form-grid,.access-grid{grid-template-columns:1fr}.user-form{padding:15px}.users-list td,.users-list th{padding:10px}.actions{flex-direction:column;gap:5px}}

/* Importação em massa */
.import-panel{margin-bottom:20px}.import-panel .heading{align-items:flex-start}.import-panel .heading>div{flex:1}.import-panel .heading h2{margin-bottom:6px}.import-panel .heading p{margin:0;color:#6d7d92}.import-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.import-form input[type=file]{flex:1;min-width:260px;border:1px solid #dbe4ee;border-radius:10px;padding:11px;background:#fff}.import-form button{border:0;border-radius:10px;padding:12px 18px;background:#165ca8;color:#fff;font-weight:700;cursor:pointer}.import-form button:hover{filter:brightness(.96)}.import-help{margin-top:12px;padding:12px 14px;background:#f7fafd;border:1px solid #e5edf5;border-radius:10px;color:#607087;font-size:13px;line-height:1.5}.import-help em{font-style:normal;font-weight:700;color:#1d4f82}.login-error ul{margin:8px 0 0 20px}.login-error li{margin:3px 0}
.documents-page .doc-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.doc-filters input,.doc-filters select{min-height:44px;border:1px solid #d8e2ee;border-radius:10px;padding:0 14px;background:#fff}.doc-filters input{flex:1;min-width:260px}.doc-filters button{min-height:44px;border:0;border-radius:10px;padding:0 20px;background:#185aa5;color:#fff;font-weight:700}.doc-category{margin-top:18px}.doc-list{display:flex;flex-direction:column}.doc-row{display:flex;align-items:center;gap:16px;padding:16px 4px;border-top:1px solid #edf1f5}.doc-row:first-child{border-top:0}.doc-icon{width:42px;height:42px;border-radius:10px;background:#eef5fb;display:grid;place-items:center;color:#185aa5;font-weight:700}.doc-info{flex:1}.doc-info h3{margin:0 0 4px;font-size:15px;color:#1d2a3d}.doc-info small{color:#7a8ba0}.new-badge{display:inline-block;margin-left:8px;color:#c62828;font-weight:800;font-size:11px;letter-spacing:.5px}.doc-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.doc-btn,.doc-manage{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:8px;text-decoration:none;font-size:12px;font-weight:700}.doc-btn{background:#185aa5;color:#fff}.doc-btn.secondary{background:#eef5fb;color:#185aa5}.doc-manage{color:#60748d;border:1px solid #d8e2ee}.documents-page .module-head strong{font-weight:800}@media(max-width:800px){.doc-row{align-items:flex-start;flex-wrap:wrap}.doc-actions{width:100%;padding-left:58px}}
.module-head-actions{display:flex;gap:10px;align-items:center}.primary-action,.secondary-action{display:inline-flex;align-items:center;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700}.primary-action{background:#0f6b63;color:#fff}.secondary-action{background:#eef5f4;color:#0f6b63}.doc-admin-panel{border:1px solid #d8e7e4}.doc-admin-grid{display:grid;grid-template-columns:1fr 1.7fr;gap:24px}.doc-admin-grid form{padding:4px}.doc-admin-grid label{display:block;font-weight:700;margin-bottom:8px}.inline-form{display:flex;gap:8px}.inline-form input{flex:1}.doc-admin-grid input,.doc-admin-grid select,.doc-admin-grid button,.rename-folder input,.rename-folder button{padding:10px;border:1px solid #d7dfdf;border-radius:8px}.doc-admin-grid button,.rename-folder button{background:#0f6b63;color:#fff;border:0;font-weight:700}.form-grid.compact{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-grid.compact input,.form-grid.compact select{width:100%;box-sizing:border-box}.file-field{font-size:13px}.checkline{display:flex!important;gap:7px;align-items:center}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}.folder-card{display:flex;flex-direction:column;gap:6px;padding:18px;background:#f7faf9;border:1px solid #e0eae8;border-radius:12px;text-decoration:none;color:inherit}.folder-card span{font-size:28px}.folder-card strong{color:#173b39}.folder-card small{color:#70807e}.breadcrumb-panel{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rename-folder{margin-left:auto;display:flex;gap:7px}.doc-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.move-inline select{padding:7px;border:1px solid #d7dfdf;border-radius:7px}.doc-manage.danger{color:#b42318}.doc-admin-panel .heading p{margin:4px 0 0;color:#6b7977}@media(max-width:850px){.doc-admin-grid{grid-template-columns:1fr}.module-head-actions{flex-wrap:wrap}.form-grid.compact{grid-template-columns:1fr}}

/* V1.9.0 — novo layout do Arquivo de Documentos */
.documents-page{max-width:none;width:100%;}
.documents-page .module-head{margin-top:0;align-items:center}
.documents-page .module-head-actions{flex-wrap:nowrap}
.documents-page .compact-admin{margin-top:0;padding:0 18px 14px}
.admin-inline-title{display:flex;align-items:baseline;gap:14px;padding:14px 0 9px}
.admin-inline-title h2{padding:0;margin:0;font-size:15px}.admin-inline-title span{font-size:12px;color:#748399}
.document-inline-form{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(190px,1fr) minmax(145px,.7fr) minmax(145px,.7fr) auto auto;gap:8px;align-items:center}
.document-inline-form>input,.document-inline-form>select,.inline-file{height:40px;border:1px solid #d8e2ee;border-radius:9px;background:#fff;padding:0 11px;font:inherit;color:#24364e;min-width:0}
.inline-file{display:flex;align-items:center;gap:7px;font-size:11px;color:#61728a;overflow:hidden;white-space:nowrap}.inline-file input{min-width:0;width:100%;font-size:11px}
.inline-check{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:#65758a;white-space:nowrap}.inline-check input{accent-color:#175c9e}
.document-inline-form button,.folder-create-line button{height:40px;border:0;border-radius:9px;background:#0f6b63;color:#fff;font-weight:700;padding:0 16px;cursor:pointer;white-space:nowrap}
.folder-create-line{display:flex;align-items:center;gap:12px;margin-top:9px;padding-top:9px;border-top:1px solid #eef2f6}.folder-create-line form{display:flex;gap:8px}.folder-create-line input{height:36px;width:260px;border:1px solid #d8e2ee;border-radius:8px;padding:0 10px}.folder-create-line button{height:36px}.folder-create-line>span{font-size:11px;color:#7a899d}
.doc-filters-panel{margin-top:12px}.doc-filters-panel .doc-filters{padding:10px;display:grid;grid-template-columns:minmax(300px,1fr) minmax(220px,.7fr) 180px auto;gap:8px}.doc-filters input,.doc-filters select{min-height:42px}.doc-filters button{min-height:42px}
.folder-section{margin-top:12px}.folder-section .heading{padding-right:12px}.folder-section .heading h2{font-size:17px}.section-help{font-size:11px;color:#7b8ba1;padding-right:15px}.main-folder-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0 12px 14px}
.main-folder-card{position:relative;height:128px;border-radius:13px;overflow:hidden;background:color-mix(in srgb,var(--folder-color) 15%,white);border:1px solid color-mix(in srgb,var(--folder-color) 22%,white)}
.folder-main-link{height:100%;display:flex;align-items:center;gap:14px;padding:18px 36px 18px 17px;color:#17304f}.folder-main-link .folder-icon{color:var(--folder-color);font-size:38px}.folder-main-link div{min-width:0}.folder-main-link strong{display:block;font-size:14px;line-height:1.18}.folder-main-link small{display:block;margin-top:9px;color:#566c88;font-size:10px}.folder-main-link b{margin-left:auto;font-size:27px;font-weight:400;color:var(--folder-color)}
.folder-edit{position:absolute;right:10px;top:9px;border:0;background:transparent;color:#183a60;font-size:16px;cursor:pointer;padding:3px}.folder-edit:hover{color:var(--folder-color)}
.main-folder-banner{display:flex;align-items:center;gap:18px;margin:12px 0;padding:18px 22px;border-radius:13px;background:var(--folder-color);color:#fff;box-shadow:0 8px 24px color-mix(in srgb,var(--folder-color) 18%,transparent)}.main-folder-banner .large{font-size:42px;color:#fff}.main-folder-banner h2{margin:0;font-size:21px}.main-folder-banner p{margin:5px 0 0;font-size:11px;opacity:.9}.main-folder-banner>a{margin-left:auto;color:#fff;border:1px solid rgba(255,255,255,.45);padding:9px 12px;border-radius:8px;font-size:11px;font-weight:700}
.sub-folder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 12px 14px}.sub-folder-card{position:relative;height:92px;border-radius:11px;background:color-mix(in srgb,var(--folder-color) 7%,white);border:1px solid color-mix(in srgb,var(--folder-color) 16%,white);overflow:hidden}.sub-folder-card>a{height:100%;display:flex;align-items:center;gap:12px;padding:13px 34px 13px 14px}.sub-folder-card .folder-icon{font-size:28px;color:var(--folder-color)}.sub-folder-card strong{display:block;font-size:12px;line-height:1.18;color:#243957}.sub-folder-card small{display:block;margin-top:6px;font-size:10px;color:#73849a}.sub-folder-card b{margin-left:auto;color:var(--folder-color);font-size:22px;font-weight:400}.sub-folder-card .folder-edit{right:7px;top:5px;font-size:14px}
.count-blue{color:var(--folder-color)}.breadcrumb-panel{display:flex;align-items:center;gap:9px;margin:12px 0;padding:11px 14px;background:#fff;border:1px solid #e3eaf2;border-radius:10px}.breadcrumb-panel a{color:#1b5fa8;font-weight:700;font-size:12px}.breadcrumb-panel strong{font-size:12px}.breadcrumb-panel .folder-edit{position:static;border:1px solid #dbe5ef;border-radius:7px;padding:6px 9px;margin-left:auto;font-size:11px;color:#1b5fa8}
.documents-table-panel{margin-top:12px}.documents-table-panel .heading{padding-right:14px}.documents-table-panel .heading h2{font-size:17px}.compact-bulk{display:flex;align-items:center;gap:10px;padding:0 14px 12px}.compact-bulk>span{font-size:10px;color:#7b899b}.compact-bulk select{margin-left:auto;height:34px;border:1px solid #d8e2ee;border-radius:8px;padding:0 8px}.compact-bulk button{height:34px;border:0;border-radius:8px;background:#185aa5;color:#fff;font-weight:700;padding:0 12px}
.clean-doc-row{display:grid;grid-template-columns:24px 40px minmax(0,1fr) 70px auto;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid #edf1f5;min-height:66px}.clean-doc-row .doc-info h3{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0 0 4px}.clean-doc-row .doc-info small{font-size:10px;color:#8391a4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clean-doc-row .doc-icon{width:40px;height:40px}.doc-format{font-size:10px;color:#708198;font-weight:700;text-transform:uppercase}.clean-doc-row .doc-actions{justify-content:flex-end;flex-wrap:nowrap}.clean-doc-row .doc-actions .move-inline select{height:34px;max-width:170px}.clean-doc-row .doc-actions .doc-btn,.clean-doc-row .doc-actions .doc-manage{min-height:34px;font-size:10px}.clean-doc-row .doc-actions .doc-manage{padding:0 9px}.clean-doc-row .doc-actions .danger{color:#b42318}
@media(max-width:1250px){.main-folder-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sub-folder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.document-inline-form{grid-template-columns:1.4fr 1fr .8fr .8fr auto auto}.doc-filters-panel .doc-filters{grid-template-columns:1fr 1fr 170px auto}}
@media(max-width:900px){.main-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sub-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-inline-form{grid-template-columns:1fr 1fr}.folder-create-line{align-items:flex-start;flex-direction:column}.doc-filters-panel .doc-filters{grid-template-columns:1fr 1fr}.clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr) auto}.doc-format{display:none}.clean-doc-row .doc-actions{grid-column:3/-1;justify-content:flex-start}}
@media(max-width:600px){.main-folder-grid,.sub-folder-grid{grid-template-columns:1fr}.document-inline-form{grid-template-columns:1fr}.doc-filters-panel .doc-filters{grid-template-columns:1fr}.module-head{align-items:flex-start}.documents-page .module-head-actions{flex-wrap:wrap}.main-folder-banner{align-items:flex-start;flex-wrap:wrap}.main-folder-banner>a{margin-left:0}.clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr)}.clean-doc-row .doc-actions{grid-column:2/-1}}

/* V2.0.0 — pastas hierárquicas expandidas na mesma página */
.documents-page .main-folders-section .heading{display:flex;align-items:center;justify-content:space-between;padding:0 12px 8px}.documents-page .section-count{font-size:11px;color:#72849d;font-weight:600;white-space:nowrap}.documents-page .section-help.compact-help{font-size:11px;color:#7b8ba1;margin:-2px 12px 10px}.documents-page .main-folder-card{height:128px}.documents-page .main-folder-card.is-open{box-shadow:0 0 0 2px color-mix(in srgb,var(--folder-color) 35%,transparent)}.documents-page .main-folder-card .folder-main-link{color:#fff;background:var(--folder-color)}.documents-page .main-folder-card .folder-main-link strong,.documents-page .main-folder-card .folder-main-link small{color:#fff}.documents-page .main-folder-card .folder-main-link small{opacity:.86}.documents-page .main-folder-card .folder-main-link .folder-icon{color:#fff}.documents-page .main-folder-card .folder-main-link b{color:#fff}.documents-page .main-folder-card{background:var(--folder-color);border-color:var(--folder-color)}.documents-page .main-folder-card .folder-edit{color:#fff;z-index:2}.documents-page .main-folder-card .folder-edit:hover{color:#fff}.documents-page .main-folder-banner{margin-top:14px;margin-bottom:8px}.expanded-label{margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.82}.banner-edit{position:static!important;margin-left:8px;border:1px solid rgba(255,255,255,.45)!important;border-radius:8px!important;color:#fff!important;padding:6px 9px!important;background:rgba(255,255,255,.08)!important;font-size:11px!important}.subfolders-expanded{margin-top:8px}.sub-folder-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:0 12px 14px}.sub-folder-card{height:88px;background:color-mix(in srgb,var(--folder-color) 9%,white);border-color:color-mix(in srgb,var(--folder-color) 18%,white)}.sub-folder-card>a{padding:12px 34px 12px 14px}.sub-folder-card .folder-icon{color:var(--folder-color)}.sub-folder-card strong{font-size:12px;color:#243957}.sub-folder-card small{font-size:10px;color:#71839b}.sub-folder-card b{color:var(--folder-color)}
@media(max-width:1250px){.sub-folder-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.sub-folder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.sub-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expanded-label{display:none}}
@media(max-width:560px){.sub-folder-grid{grid-template-columns:1fr}.documents-page .main-folder-grid{grid-template-columns:1fr}}


/* V2.1.0 — lista de documentos: contagem, data e contraste do botão Abrir */
.documents-table-panel .documents-heading-title{display:block;min-width:0}.documents-table-panel .documents-heading-title .documents-count{display:block;margin-top:5px;margin-left:30px;font-size:13px;line-height:1.2;color:#1d2a3d;font-weight:500}.clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr) 86px 55px auto}.clean-doc-row .doc-date{font-size:10px;color:#6f8199;font-weight:600;text-align:left;white-space:nowrap}.clean-doc-row .doc-actions .doc-btn{background:#185aa5!important;color:#fff!important;-webkit-text-fill-color:#fff!important}.clean-doc-row .doc-actions .doc-btn:visited,.clean-doc-row .doc-actions .doc-btn:hover,.clean-doc-row .doc-actions .doc-btn:focus{color:#fff!important;-webkit-text-fill-color:#fff!important}.clean-doc-row .doc-actions .doc-btn.secondary{background:#eef5fb!important;color:#185aa5!important;-webkit-text-fill-color:#185aa5!important;border:1px solid #e2edf8!important}.clean-doc-row .doc-actions .doc-btn.secondary:hover,.clean-doc-row .doc-actions .doc-btn.secondary:focus{background:#e4f0fb!important;color:#185aa5!important;-webkit-text-fill-color:#185aa5!important}
@media(max-width:1100px){.clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr) 78px 50px auto}}
@media(max-width:900px){.clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr) auto}.doc-date{display:none}}

/* V2.3.0 — botão secundário PDF/Word em azul claro, com texto azul legível */


/* V2.3.1 — correção definitiva do botão secundário PDF/Word */
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:visited {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:68px !important;
  height:34px !important;
  padding:0 12px !important;
  border-radius:8px !important;
  background:#eef5fb !important;
  border:1px solid #dbe9f6 !important;
  color:#185aa5 !important;
  -webkit-text-fill-color:#185aa5 !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-indent:0 !important;
  opacity:1 !important;
  visibility:visible !important;
}
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:hover,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:focus {
  background:#e4f0fb !important;
  color:#185aa5 !important;
  -webkit-text-fill-color:#185aa5 !important;
}
.documents-page .clean-doc-row .doc-actions a.doc-btn:not(.secondary) {
  background:#185aa5 !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
}

/* V2.4.0 — edição e substituição de documentos */
.clean-doc-row .edit-doc{background:#fff;color:#185aa5;border:1px solid #d8e2ee!important;}
.clean-doc-row .edit-doc:hover,.clean-doc-row .edit-doc:focus{background:#f3f8fd;color:#185aa5;}
.document-edit-panel{margin-top:12px;border:1px solid #d8e2ee;}
.document-edit-panel .heading{align-items:flex-start;}
.document-edit-panel .heading h2{margin:3px 0 4px;}
.document-edit-panel .heading p{margin:0;color:#6f8199;font-size:13px;}
.document-edit-form{padding:18px;}
.document-edit-form label{display:block;font-weight:700;margin-bottom:7px;color:#25344a;font-size:13px;}
.document-edit-form input[type=text],.document-edit-form select{width:100%;box-sizing:border-box;min-height:40px;border:1px solid #d7e1ec;border-radius:9px;padding:0 12px;background:#fff;}
.current-files{display:flex;gap:12px;align-items:center;margin:16px 0;padding:11px 13px;background:#f6f9fc;border:1px solid #e3ebf3;border-radius:9px;font-size:12px;color:#6f8199;}
.current-files strong{color:#25344a;}
.replace-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.replace-grid>div{padding:12px;background:#fbfcfe;border:1px solid #e2eaf2;border-radius:9px;}
.replace-grid input[type=file]{width:100%;font-size:12px;}
.document-edit-form .checkline{display:flex!important;align-items:center;gap:8px;margin:8px 0 16px;}
.document-edit-form .checkline input{width:auto;}
.document-edit-form .form-actions{display:flex;gap:9px;align-items:center;}
.document-edit-form .form-actions button{min-height:38px;border:0;border-radius:8px;background:#185aa5;color:#fff;font-weight:700;padding:0 15px;}
@media(max-width:850px){.replace-grid{grid-template-columns:1fr;}.document-edit-form .form-grid.compact{grid-template-columns:1fr;}}

/* V2.4.1 — edição inline: a edição aparece imediatamente por baixo do documento selecionado */
.document-inline-edit{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:minmax(180px,1.2fr) minmax(260px,1.6fr) 150px 150px auto auto;
  align-items:center;
  gap:8px;
  margin:0 14px 10px 76px;
  padding:9px 10px;
  background:#f7fbff;
  border:1px solid #d9e8f6;
  border-radius:9px;
}
.document-inline-edit input[type=text],.document-inline-edit select{
  height:34px;min-width:0;width:100%;border:1px solid #d7e3ef;border-radius:7px;
  background:#fff;color:#25344a;padding:0 9px;font-size:11px;
}
.document-inline-edit .inline-edit-title{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:10px;color:#72849a;white-space:nowrap;overflow:hidden}
.document-inline-edit .inline-edit-title strong{color:#185aa5;font-size:11px}
.document-inline-edit .inline-edit-title span{overflow:hidden;text-overflow:ellipsis}
.document-inline-edit label.inline-replace{height:34px;display:flex;align-items:center;gap:5px;padding:0 7px;border:1px solid #d7e3ef;border-radius:7px;background:#fff;color:#185aa5;font-size:10px;font-weight:700;white-space:nowrap;overflow:hidden}
.document-inline-edit label.inline-replace input{min-width:0;width:100%;font-size:9px}
.document-inline-edit .inline-new{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:800;color:#c62828;white-space:nowrap}
.document-inline-edit .inline-new input{width:auto}
.document-inline-edit button{height:34px;border:0;border-radius:7px;background:#185aa5;color:#fff;font-size:10px;font-weight:800;padding:0 12px;white-space:nowrap}
.document-inline-edit .inline-cancel{height:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7e3ef;border-radius:7px;background:#fff;color:#526b87;font-size:10px;font-weight:700;padding:0 10px;white-space:nowrap}
/* O botão secundário PDF/Word é SEMPRE azul claro; não herda o azul do botão Abrir. */
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:visited,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:hover,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:focus{
  background:#eef5fb !important;color:#185aa5 !important;-webkit-text-fill-color:#185aa5 !important;
  border:1px solid #dbe9f6 !important;
}
@media(max-width:1150px){.document-inline-edit{grid-template-columns:1fr 1.4fr 130px 130px auto auto}}
@media(max-width:850px){.document-inline-edit{grid-template-columns:1fr 1fr;margin-left:52px}.document-inline-edit .inline-edit-title{grid-column:1/-1}}
@media(max-width:600px){.document-inline-edit{grid-template-columns:1fr;margin-left:0}.document-inline-edit .inline-edit-title{grid-column:auto}}


/* V2.5.0 — editor inline definitivo + NOVO automático durante 30 dias */
.documents-page .document-inline-edit{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:minmax(0,2fr) minmax(190px,0.8fr) minmax(190px,0.8fr)!important;
  grid-template-areas:
    "name pdf docx"
    "folder actions actions"!important;
  align-items:start!important;
  gap:10px 16px!important;
  margin:0 14px 10px 76px!important;
  padding:14px 16px!important;
  background:#eaf4ff!important;
  border:1px solid #cfe3f7!important;
  border-radius:9px!important;
  box-sizing:border-box!important;
}
.document-inline-edit .inline-field{min-width:0!important;display:flex!important;flex-direction:column!important;gap:5px!important;}
.document-inline-edit .inline-name{grid-area:name!important;}
.document-inline-edit .inline-pdf{grid-area:pdf!important;}
.document-inline-edit .inline-docx{grid-area:docx!important;}
.document-inline-edit .inline-folder{grid-area:folder!important;}
.document-inline-edit .inline-field label{font-size:11px!important;font-weight:800!important;color:#253a55!important;margin:0!important;}
.document-inline-edit .inline-field input[type=text],
.document-inline-edit .inline-field select{height:36px!important;width:100%!important;box-sizing:border-box!important;background:#fff!important;border:1px solid #cbdceb!important;border-radius:7px!important;padding:0 10px!important;font-size:12px!important;color:#25344a!important;}
.document-inline-edit .inline-field input[type=file]{width:100%!important;min-width:0!important;font-size:10px!important;height:36px!important;box-sizing:border-box!important;}
.document-inline-edit .inline-field small{font-size:10px!important;color:#71849c!important;line-height:1.2!important;}
.document-inline-edit .inline-edit-actions{grid-area:actions!important;display:flex!important;justify-content:flex-end!important;align-items:end!important;gap:8px!important;padding-top:20px!important;}
.document-inline-edit .inline-edit-actions button{height:36px!important;border:0!important;border-radius:7px!important;background:#185aa5!important;color:#fff!important;font-size:11px!important;font-weight:800!important;padding:0 14px!important;white-space:nowrap!important;}
.document-inline-edit .inline-edit-actions .inline-cancel{height:36px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid #cbdceb!important;border-radius:7px!important;background:#fff!important;color:#526b87!important;font-size:11px!important;font-weight:700!important;padding:0 13px!important;white-space:nowrap!important;}
/* O segundo retângulo (PDF/Word) mantém SEMPRE o azul claro. */
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:visited,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:hover,
.documents-page .clean-doc-row .doc-actions a.doc-btn.secondary:focus{background:#eef5fb!important;color:#185aa5!important;-webkit-text-fill-color:#185aa5!important;border:1px solid #dbe9f6!important;}
@media(max-width:1150px){.documents-page .document-inline-edit{grid-template-columns:minmax(0,1.6fr) minmax(160px,.8fr) minmax(160px,.8fr)!important;}}
@media(max-width:850px){.documents-page .document-inline-edit{grid-template-columns:1fr 1fr!important;grid-template-areas:"name name" "pdf docx" "folder folder" "actions actions"!important;margin-left:52px!important;}.document-inline-edit .inline-edit-actions{padding-top:4px!important;}}
@media(max-width:600px){.documents-page .document-inline-edit{grid-template-columns:1fr!important;grid-template-areas:"name" "pdf" "docx" "folder" "actions"!important;margin-left:0!important;}}

/* V2.6.0 — visualização de todos os documentos em Word */
.documents-page .module-head-actions .primary-action,.documents-page .module-head-actions .primary-action:visited,.documents-page .module-head-actions .primary-action:hover,.documents-page .module-head-actions .primary-action:focus{color:#fff!important;-webkit-text-fill-color:#fff!important;}
.documents-page .module-head-actions .view-all-action{display:inline-flex;align-items:center;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700;background:#f2c94c;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid #e5b82f;}
.documents-page .module-head-actions .view-all-action:hover,.documents-page .module-head-actions .view-all-action:focus{background:#e9bc35;color:#111!important;-webkit-text-fill-color:#111!important;}

/* V2.8.0 — PAA / PPA */
.paa-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.paa-summary>div{background:#f7fbff;border:1px solid #dbe9f6;border-radius:12px;padding:16px}.paa-summary strong{display:block;font-size:28px;color:#185aa5}.paa-summary span{font-size:12px;color:#64788f}.paa-table-wrap{overflow:auto}.paa-table{width:100%;border-collapse:collapse;font-size:12px}.paa-table th{text-align:left;background:#f5f9fd;color:#536b84;padding:11px;border-bottom:1px solid #dce8f3}.paa-table td{padding:12px 11px;border-bottom:1px solid #edf2f7;vertical-align:top}.paa-table td:nth-child(2) small{display:block;color:#8191a3;margin-top:4px}.paa-actions{white-space:nowrap}.paa-actions a{display:inline-block;margin:2px 4px 2px 0;padding:6px 9px;border-radius:7px;background:#eef5fb;color:#185aa5;text-decoration:none;font-weight:700}.paa-status{display:inline-block;padding:5px 8px;border-radius:999px;background:#eef2f6;color:#53687e;font-weight:700;font-size:11px}.status-validation{background:#fff3d6;color:#8a6200}.status-validated{background:#e8f5ff;color:#185aa5}.status-council{background:#eee9ff;color:#6547a6}.status-approved{background:#e7f7ef;color:#18764a}.status-rejected{background:#fdebec;color:#a43b42}.status-evaluation_pending{background:#fff0e1;color:#9b5a16}.status-evaluated{background:#e7f7ef;color:#18764a}.paa-form-panel{margin-top:16px}.paa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.paa-grid>div{min-width:0}.paa-grid .full{grid-column:1/-1}.paa-grid label{display:block;font-size:11px;font-weight:800;color:#30465f;margin-bottom:5px}.paa-grid input,.paa-grid select,.paa-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbdceb;border-radius:8px;background:#fff;padding:9px 10px;font-size:12px;color:#25344a}.paa-grid textarea{min-height:82px;resize:vertical}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:7px}.check-grid label{display:flex;gap:7px;align-items:flex-start;font-weight:500;padding:7px;background:#f8fbfe;border-radius:7px}.check-grid input{width:auto;margin-top:2px}.paa-form-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:18px}.paa-form-actions button{border:0;border-radius:8px;padding:10px 15px;background:#eef2f6;color:#36506c;font-weight:800;cursor:pointer}.paa-form-actions .submit-paa{background:#185aa5;color:#fff}.paa-rule{margin-top:15px;padding:12px 14px;border-left:4px solid #1da978;background:#f0faf6;color:#49657c;font-size:11px;line-height:1.5}.ppa-total{display:flex;align-items:center;gap:8px;background:#eef7f3;border:1px solid #d6eee3;border-radius:12px;padding:12px 18px}.ppa-total strong{font-size:28px;color:#18764a}.ppa-total span{font-size:12px;color:#58756a}.ppa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ppa-card{display:flex;gap:13px;align-items:flex-start;border:1px solid #e0e8ef;border-radius:12px;padding:14px;background:#fff}.ppa-number{min-width:38px;height:38px;border-radius:10px;background:#eaf4ff;color:#185aa5;display:flex;align-items:center;justify-content:center;font-weight:900}.ppa-card h3{margin:1px 0 5px;font-size:14px;color:#253b55}.ppa-card span{font-size:11px;color:#8291a0}.empty-state{text-align:center;padding:28px!important;color:#7c8da0}
@media(max-width:850px){.paa-summary{grid-template-columns:repeat(2,1fr)}.paa-grid,.ppa-grid{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}}
@media(max-width:600px){.paa-summary{grid-template-columns:1fr}.paa-form-actions{flex-direction:column}.paa-form-actions button{width:100%}}

/* V2.8.1 — PAA: conteúdo à largura da página, sem encostar às beiras; opções do formulário */
.module-page{max-width:none;width:100%;margin:0;padding:0;}
.paa-page,.ppa-page{width:100%;}
.paa-page .panel,.ppa-page .panel{width:100%;}
.paa-page .paa-grid{width:100%;}
.participant-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.audience-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
@media(max-width:1000px){.participant-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.audience-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:700px){.participant-grid,.audience-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.participant-grid,.audience-grid{grid-template-columns:1fr;}}

/* PAA 2.8.2 — formulário com separação visual clara entre perguntas */
.paa-page{max-width:none!important;width:100%!important;margin:0!important}
.paa-form-panel{overflow:visible!important}
.paa-form{padding:8px 30px 30px!important}
.paa-grid{gap:20px!important}
.paa-grid>.paa-field{min-width:0;padding:18px 20px 20px;background:#f8fbff;border:1px solid #dce8f3;border-radius:14px;box-shadow:0 2px 8px rgba(27,67,105,.04)}
.paa-grid>.paa-field:nth-child(4n+2),.paa-grid>.paa-field:nth-child(4n+3){background:#fbfaf6;border-color:#ebe5d7}
.paa-grid>.paa-field:nth-child(4n+4),.paa-grid>.paa-field:nth-child(4n+5){background:#f7fbf8;border-color:#dcebe1}
.paa-grid>.paa-field.full{grid-column:1/-1}
.paa-grid>.paa-field>label{font-size:12px!important;font-weight:800!important;color:#263f5d!important;margin:0 0 9px!important;letter-spacing:.005em}
.paa-grid>.paa-field input,.paa-grid>.paa-field select,.paa-grid>.paa-field textarea{background:#fff!important;border:1px solid #c8d9e9!important;border-radius:9px!important;min-height:44px;padding:11px 13px!important;box-shadow:inset 0 1px 2px rgba(26,58,92,.025)}
.paa-grid>.paa-field textarea{min-height:96px!important}
.paa-grid>.paa-field:focus-within{border-color:#9fc4e4;box-shadow:0 4px 14px rgba(21,83,154,.08)}
.paa-grid>.paa-field .check-grid{margin-top:2px;gap:9px!important}
.paa-grid>.paa-field .check-grid label{background:rgba(255,255,255,.72)!important;border:1px solid rgba(203,218,232,.72);padding:10px 12px!important;border-radius:9px!important;min-height:42px;align-items:center!important}
.paa-grid>.paa-field .check-grid label:hover{background:#fff!important;border-color:#b8d0e5}
.paa-grid>.paa-field h3{margin:0 0 7px!important;font-size:15px!important;color:#183e68}
.paa-grid>.paa-field .form-help{margin:0 0 13px!important;color:#65798e;font-size:11px}
.paa-form-actions{padding-top:4px!important}
.paa-rule{margin:0 30px 28px!important;border-radius:10px!important;border-left-width:4px!important}
@media(max-width:850px){.paa-form{padding:8px 18px 22px!important}.paa-rule{margin-left:18px!important;margin-right:18px!important}.paa-grid{gap:15px!important}}

/* PAA/PPA – apresentação institucional em largura total */
.paa-page .module-head-actions .primary-action,
.paa-page .module-head-actions .primary-action:visited,
.paa-page .module-head-actions .primary-action:hover,
.paa-page .module-head-actions .primary-action:focus {
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.ppa-table-wrap{width:100%;overflow:visible;border:1px solid #dfe7ef;border-radius:14px;background:#fff}
.ppa-table{width:100%;min-width:0;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px;color:#30445b}
.ppa-table th{padding:11px 10px;background:#edf4fa;color:#274664;text-align:left;font-size:11px;font-weight:800;line-height:1.3;border-bottom:2px solid #d5e2ee}
.ppa-table th:first-child{text-align:center}
.ppa-table th+th,.ppa-table td+td{border-left:1px solid #e4ebf2}
.ppa-table td{padding:12px 10px;vertical-align:top;line-height:1.45;border-bottom:1px solid #e8eef4;background:#fff;overflow-wrap:anywhere;word-break:normal}
.ppa-table tbody tr:nth-child(even) td{background:#f8fbfd}
.ppa-table tbody tr:hover td{background:#f2f7fb}
.ppa-table tbody tr:last-child td{border-bottom:0}
.ppa-table th:nth-child(1),.ppa-table td:nth-child(1){width:5%;text-align:center}
.ppa-table th:nth-child(2),.ppa-table td:nth-child(2){width:15%}
.ppa-table th:nth-child(3),.ppa-table td:nth-child(3){width:14%}
.ppa-table th:nth-child(4),.ppa-table td:nth-child(4){width:22%;text-align:left}
.ppa-table th:nth-child(5),.ppa-table td:nth-child(5){width:8%}
.ppa-table th:nth-child(6),.ppa-table td:nth-child(6){width:15%}
.ppa-table th:nth-child(7),.ppa-table td:nth-child(7){width:13%}
.ppa-table th:nth-child(8),.ppa-table td:nth-child(8){width:8%}
.ppa-table td:first-child strong{display:block;color:#185aa5;font-size:15px;line-height:1.4}
.ppa-table td:nth-child(2) strong{font-size:12px;line-height:1.45;color:#173e63}
.ppa-table td:nth-child(4){text-align:left;white-space:normal}
.ppa-table td br{content:"";display:block;margin-bottom:3px}
.ppa-actions{white-space:nowrap}
.ppa-actions a{display:inline-block;padding:7px 10px;border:1px solid #cfe1f5;border-radius:8px;color:#145ca8;text-decoration:none;font-weight:700;background:#fff}
.ppa-actions a:hover{background:#eef6ff}
@media(max-width:1200px){.ppa-table{font-size:11px}.ppa-table th,.ppa-table td{padding:10px 8px}.ppa-table th:nth-child(2),.ppa-table td:nth-child(2){width:14%}.ppa-table th:nth-child(3),.ppa-table td:nth-child(3){width:13%}.ppa-table th:nth-child(4),.ppa-table td:nth-child(4){width:21%}.ppa-table th:nth-child(5),.ppa-table td:nth-child(5){width:8%}.ppa-table th:nth-child(6),.ppa-table td:nth-child(6){width:15%}.ppa-table th:nth-child(7),.ppa-table td:nth-child(7){width:14%}.ppa-table th:nth-child(8),.ppa-table td:nth-child(8){width:10%}}
/* V2.8.4 — PAA/PPA: margens, PPA com coluna N.º independente e identidade azul no PAA */
.paa-page,.ppa-page{padding:0 20px 30px!important;width:100%!important;max-width:none!important;margin:0!important;}
.paa-page .panel,.ppa-page .panel{width:100%!important;}
.paa-form{padding-left:10px!important;padding-right:10px!important;}
.paa-rule{margin-left:10px!important;margin-right:10px!important;}

/* PAA: apenas dois tons de azul nos blocos das perguntas */
.paa-grid>.paa-field{background:#f5f9fe!important;border-color:#d7e6f4!important;}
.paa-grid>.paa-field:nth-child(even){background:#edf5fc!important;border-color:#cfe0f0!important;}
.paa-grid>.paa-field .check-grid label{background:#f9fcff!important;border-color:#d5e4f1!important;color:#304b68!important;}
.paa-grid>.paa-field .check-grid label:hover{background:#eef6fd!important;border-color:#b8d2e8!important;}
.paa-grid>.paa-field:focus-within{border-color:#8fb9dc!important;box-shadow:0 4px 14px rgba(21,83,154,.08)!important;}
.paa-rule{background:#edf5fc!important;border-left-color:#185aa5!important;color:#49657c!important;}
.paa-status{background:#eaf3fb!important;color:#185aa5!important;border:1px solid #d1e3f1!important;}
.status-validation,.status-validated,.status-council,.status-approved,.status-rejected,.status-evaluation_pending,.status-evaluated{background:#eaf3fb!important;color:#185aa5!important;}

/* PPA: primeira coluna exclusivamente para o número */
.ppa-table td.ppa-number-cell{vertical-align:middle!important;background:#f2f7fc!important;}
.ppa-table td.ppa-number-cell strong{font-size:15px!important;color:#185aa5!important;}
.ppa-table td:nth-child(2) strong{font-size:12px;line-height:1.45;color:#173e63;}
@media(max-width:900px){.paa-page,.ppa-page{padding-left:12px!important;padding-right:12px!important}.paa-form{padding-left:6px!important;padding-right:6px!important}.paa-rule{margin-left:6px!important;margin-right:6px!important}.ppa-table{min-width:0!important;}}


/* V2.8.5 — Relatório de avaliação PAA */
.paa-evaluation-link{background:#eaf4ff!important;color:#185aa5!important;border:1px solid #cfe2f4!important}.paa-evaluation-link.pending{background:#185aa5!important;color:#fff!important;border-color:#185aa5!important}.paa-evaluation-panel{margin-top:18px}.paa-evaluation-panel .heading{align-items:flex-start}.evaluation-context{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0 30px 18px;padding:16px 18px;background:#f4f8fc;border:1px solid #dbe7f2;border-radius:12px;color:#536b84}.evaluation-context strong{width:100%;font-size:15px;color:#173e63}.evaluation-context span{font-size:12px}.paa-evaluation-form{padding:0 30px 30px}.evaluation-section{margin:0 0 18px;padding:22px 24px;background:#f8fbff;border:1px solid #dce8f3;border-radius:14px}.evaluation-section:nth-of-type(even){background:#f3f8fd}.evaluation-section h3{margin:0 0 17px;color:#185aa5;font-size:13px;letter-spacing:.03em;border-bottom:1px solid #d9e7f3;padding-bottom:10px}.evaluation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.evaluation-grid>div{min-width:0}.evaluation-grid .full{grid-column:1/-1}.evaluation-grid label,.evaluation-check-grid label{font-size:12px;font-weight:700;color:#30465f}.evaluation-grid>div>label{display:block;margin-bottom:7px}.evaluation-grid input:not([type=checkbox]):not([type=radio]),.evaluation-grid select,.evaluation-grid textarea{width:100%;box-sizing:border-box;border:1px solid #c8d9e9;border-radius:9px;background:#fff;padding:11px 13px;min-height:44px;color:#25344a}.evaluation-grid textarea{min-height:100px;resize:vertical}.evaluation-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.evaluation-check-grid label{display:flex;gap:8px;align-items:center;padding:10px 11px;background:#fff;border:1px solid #d9e6f1;border-radius:9px;font-weight:500}.evaluation-check-grid input{margin:0}.radio-line{display:flex;gap:18px;align-items:center;min-height:44px}.radio-line label{display:flex;align-items:center;gap:7px;font-weight:500}.evaluation-footer-note{margin:0 0 18px;padding:14px 16px;background:#edf5fc;border:1px solid #d4e5f3;border-left:4px solid #185aa5;border-radius:10px;color:#526b82;font-size:12px;line-height:1.55}.evaluation-footer-note strong{color:#185aa5}@media(max-width:900px){.paa-evaluation-form{padding:0 18px 22px}.evaluation-context{margin-left:18px;margin-right:18px}.evaluation-grid{grid-template-columns:1fr}.evaluation-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.evaluation-check-grid{grid-template-columns:1fr}.evaluation-context{margin-left:0;margin-right:0}.paa-evaluation-form{padding-left:0;padding-right:0}.evaluation-section{padding:18px}.evaluation-context{padding:14px}}

/* V2.8.9 — identidade institucional e saída de sessão */
.institution-logo{display:block;width:auto;height:auto;object-fit:contain;flex:none}
.sidebar-logo{width:58px;height:68px}
.brandrow{gap:10px;padding:0 12px}
.brandrow small{font-size:9px;letter-spacing:.01em}
.brandrow strong{font-size:16px;letter-spacing:.02em;white-space:nowrap}
.login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.login-logo{width:105px;height:126px;margin:0 auto!important}
.login .brand{margin:4px 0 24px;font-size:10px;line-height:1.25}
.login .brand strong{font-size:19px;letter-spacing:.025em}
.session-panel{margin-top:22px}
.session-inner{padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.session-eyebrow{display:block;font-size:9px;letter-spacing:.08em;font-weight:800;color:#6c7e92;margin-bottom:4px}
.session-inner strong{display:block;font-size:13px;color:#173d69}
.session-inner small{display:block;font-size:10px;color:#7a8798;margin-top:3px}
.logout-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:8px;background:#eef3f8;border:1px solid #d6e0ea;color:#184f83!important;font-size:11px;font-weight:750;white-space:nowrap}
.logout-button:hover{background:#e4edf6}
.side .motto{margin-top:28px}
@media(max-width:600px){.session-inner{align-items:flex-start;flex-direction:column}.logout-button{width:100%}}


/* V2.8.10 — Logout visível no Dashboard */
.dashboard-session{margin-top:22px;border-color:#cfe0ef;background:#f7fbff}
.dashboard-session .session-inner{padding:15px 20px}
.dashboard-session .logout-button{background:#15539a;border-color:#15539a;color:#fff!important;font-size:12px;min-height:40px;padding:0 18px}
.dashboard-session .logout-button:hover{background:#123f77;border-color:#123f77}
.topuser .logout{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border:1px solid #d7e2ed;border-radius:7px;color:#15539a!important;font-size:10px;font-weight:750;white-space:nowrap}
.topuser .logout:hover{background:#eef5fb}


/* V2.8.12 — menu Atividades e áreas de acompanhamento do PAA */
.side-group{margin-top:5px}
.side-group-title{width:100%;height:43px;border:0;background:transparent;border-radius:8px;display:flex;align-items:center;gap:12px;padding:0 13px;color:#203a5b;font:inherit;font-weight:400;text-align:left;cursor:pointer}
.side-group-title span{width:23px;text-align:center;font-size:20px}
.side-group.open>.side-group-title{color:#15539a}
.side-subnav{display:none;flex-direction:column;align-items:stretch;gap:2px;margin:0 0 5px 36px;padding-left:10px;border-left:1px solid #dce6f0}.side-group.open .side-subnav{display:flex}
.side-subnav a{display:flex;align-items:center;justify-content:flex-start;min-height:38px;border-radius:7px;padding:5px 10px;color:#365371;font-size:11px;line-height:1.25;text-align:left}
.side-subnav a:hover{background:#f2f7fc;color:#15539a}
.side-subnav a.active{background:#eaf3fb;color:#15539a}
.side-subnav a b{font-size:12px;font-weight:800;line-height:1.2}
.side-subnav a small{font-size:9px;color:#8090a2;margin-top:2px;line-height:1.2}
.side-subnav a.active small{color:#5e7c9b}.side-subnav a.plan-link{white-space:nowrap;gap:4px;padding-left:6px;padding-right:4px}.side-subnav a.plan-link span{font-size:11px;font-weight:400;color:inherit}
.activity-list-page,.activity-reports-page{padding:0 20px 30px!important;width:100%!important;max-width:none!important;margin:0!important}
.activity-list-page .panel,.activity-reports-page .panel{width:100%!important}
.activity-table-wrap{overflow-x:auto;margin:0 14px 14px;border:1px solid #e1e9f1;border-radius:10px}
.activity-table{width:100%;border-collapse:collapse;min-width:900px}
.activity-table th{padding:12px 13px;background:#edf5fc;color:#365776;text-align:left;font-size:11px;font-weight:800;border-bottom:1px solid #d8e5f0}
.activity-table td{padding:13px;border-bottom:1px solid #edf1f5;vertical-align:top;font-size:11px;color:#43576d;background:#fff}
.activity-table tr:nth-child(even) td{background:#f9fbfd}
.activity-table tr:last-child td{border-bottom:0}
.activity-table td strong{display:block;color:#173e63;font-size:12px}
.activity-table td small{display:block;color:#7a8ca0;margin-top:4px;font-size:10px}
.activity-table th:first-child,.activity-table td:first-child{width:70px;text-align:center}
.activity-table th:nth-child(3),.activity-table td:nth-child(3){width:145px;white-space:nowrap}
.activity-table th:nth-child(4),.activity-table td:nth-child(4){width:130px}
.activity-table th:nth-child(5),.activity-table td:nth-child(5){width:150px}
.activity-empty{padding:35px 20px;text-align:center;color:#718198}
.activity-report-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:22px}
.report-card{background:#fff;border:1px solid #e2eaf2;border-radius:11px;padding:17px 16px;box-shadow:0 4px 15px #1e3c5f0a}
.report-card strong{display:block;font-size:27px;color:#185aa5}
.report-card span{display:block;margin-top:4px;font-size:11px;color:#61748b}
.activity-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.report-bars{padding:8px 18px 16px}
.report-bar-row{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;padding:12px 2px;border-bottom:1px solid #edf1f5;font-size:12px;color:#425a73}
.report-bar-row:last-child{border-bottom:0}
.report-bar-row strong{min-width:30px;text-align:right;color:#185aa5;font-size:15px}
.report-simple-table{padding:0 14px 14px;overflow-x:auto}
.report-simple-table table{width:100%;border-collapse:collapse}
.report-simple-table th{background:#edf5fc;color:#365776;text-align:left;padding:11px 13px;font-size:11px}
.report-simple-table td{padding:11px 13px;border-bottom:1px solid #edf1f5;font-size:11px;color:#43576d}
.report-simple-table td:last-child{text-align:right;color:#185aa5}
@media(max-width:1100px){.activity-report-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.activity-report-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-report-grid{grid-template-columns:1fr}.activity-list-page,.activity-reports-page{padding-left:12px!important;padding-right:12px!important}}
@media(max-width:560px){.activity-report-cards{grid-template-columns:1fr}.side-subnav{margin-left:30px}}

/* V2.8.16 — seleção e eliminação em massa de utilizadores */
.bulk-user-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.bulk-select-all{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:#536b84;white-space:nowrap}.bulk-select-all input,.user-select-col input{width:16px;height:16px;accent-color:#185aa5}.bulk-delete-users{border:0;border-radius:8px;background:#b83b46;color:#fff;padding:9px 13px;font-size:11px;font-weight:800;cursor:pointer}.bulk-delete-users:hover{background:#9e303a}.user-select-col{width:42px!important;text-align:center!important}.protected-user{color:#b4c0cc;font-size:12px}.users-list .heading>div:first-child{min-width:0}@media(max-width:700px){.bulk-user-actions{flex-wrap:wrap;justify-content:flex-end}.bulk-select-all{order:1}.bulk-user-actions form{order:2}.users-list .heading{align-items:flex-start}}

/* V2.8.19 — objetivos estratégicos: código numérico destacado */
.paa-grid>.paa-field .check-grid label span{display:inline-flex;align-items:baseline;gap:5px}.paa-grid>.paa-field .check-grid .objective-code{font-size:14px;font-weight:900;color:#185aa5;line-height:1}.paa-grid>.paa-field .check-grid label{font-weight:500}

/* V2.8.22 — Dashboard: resumo visível das atividades do PAA */
.dashboard-paa-summary{margin-top:22px!important;}
.dashboard-paa-summary .heading h2{padding-bottom:13px!important;}
.dashboard-paa-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:0 14px 14px;}
.dashboard-paa-card{min-height:100px;border:1px solid #dce8f3;border-radius:10px;background:#f7fbff;padding:16px 18px;display:flex;align-items:center;gap:14px;color:#183e68!important;}
.dashboard-paa-card i{width:46px;height:46px;border-radius:50%;background:#e4f1fc;display:block;flex:none;}
.dashboard-paa-card.ongoing i{background:#e5f6ed;}
.dashboard-paa-card div{min-width:0;}
.dashboard-paa-card strong{display:block;font-size:30px;line-height:1;color:#15539a;}
.dashboard-paa-card.ongoing strong{color:#18764a;}
.dashboard-paa-card span{display:block;margin-top:6px;font-size:12px;color:#5d7087;}
.dashboard-paa-card b{margin-left:auto;font-size:24px;color:#8094a9;}
@media(max-width:1100px){.dashboard-paa-cards{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){.dashboard-paa-cards{grid-template-columns:1fr;}}

/* V2.8.25: documentos atualizados usam a mesma organização visual da lista normal, sem truncar o título. */
.documents-updated-page .updated-doc-row .doc-info h3{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35;word-break:normal;overflow-wrap:anywhere;}
.documents-updated-page .updated-doc-row .doc-info small{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3;}
.documents-updated-page .updated-doc-row{grid-template-columns:40px minmax(0,1fr) 86px 55px auto;}
@media(max-width:900px){.documents-updated-page .updated-doc-row{grid-template-columns:40px minmax(0,1fr) auto;}.documents-updated-page .updated-doc-row .doc-date,.documents-updated-page .updated-doc-row .doc-format{display:none;}.documents-updated-page .updated-doc-row .doc-actions{grid-column:2/-1;justify-content:flex-start;}}
@media(max-width:600px){.documents-updated-page .updated-doc-row{grid-template-columns:40px minmax(0,1fr);}.documents-updated-page .updated-doc-row .doc-actions{grid-column:1/-1;padding-left:52px;}}

/* PPA management */
.ppa-form-panel{margin-top:20px}
.ppa-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.ppa-field{background:#eef6ff;border:1px solid #cfe1f5;border-radius:16px;padding:18px}
.ppa-field.full{grid-column:1/-1}
.ppa-field label{display:block;font-weight:700;margin-bottom:8px;color:#294b70}
.ppa-field input,.ppa-field textarea{width:100%;box-sizing:border-box;border:1px solid #c8dced;border-radius:12px;padding:12px 14px;background:#fff;font:inherit;color:#17385d}
.ppa-field textarea{resize:vertical}
.ppa-field input:disabled{background:#f4f7fa;color:#70839a}
.ppa-actions{white-space:nowrap}
.ppa-actions a{display:inline-block;padding:8px 12px;border:1px solid #cfe1f5;border-radius:10px;color:#145ca8;text-decoration:none;font-weight:700;background:#fff}
.ppa-actions a:hover{background:#eef6ff}
@media(max-width:900px){.ppa-form-grid{grid-template-columns:1fr}.ppa-field.full{grid-column:auto}}

/* V2.8.29 — PPA: tabela no mesmo modelo do PAA, sem scroll horizontal */
.ppa-page .module-head-actions .primary-action,
.ppa-page .module-head-actions .primary-action:visited,
.ppa-page .module-head-actions .primary-action:hover,
.ppa-page .module-head-actions .primary-action:focus{
  background:#0f6b63!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.ppa-page{min-width:0!important;overflow:hidden!important}
.ppa-table-wrap{width:100%!important;max-width:100%!important;overflow:hidden!important}
.ppa-table{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;font-size:11px!important}
.ppa-table th,.ppa-table td{box-sizing:border-box!important;overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important}
.ppa-table th{padding:10px 8px!important;text-align:left!important;line-height:1.25!important}
.ppa-table td{padding:10px 8px!important;vertical-align:top!important;line-height:1.35!important}
.ppa-table th:first-child,.ppa-table td:first-child{text-align:center!important}
.ppa-table col.ppa-col-number{width:4%!important}
.ppa-table col.ppa-col-designation{width:16%!important}
.ppa-table col.ppa-col-proponents{width:13%!important}
.ppa-table col.ppa-col-objectives{width:20%!important}
.ppa-table col.ppa-col-pe{width:8%!important}
.ppa-table col.ppa-col-facilitators{width:15%!important}
.ppa-table col.ppa-col-audience{width:14%!important}
.ppa-table col.ppa-col-actions{width:10%!important}
.ppa-table td.ppa-number-cell{background:#f2f7fc!important;text-align:center!important;vertical-align:middle!important}
.ppa-table td.ppa-number-cell strong{display:block!important;font-size:16px!important;font-weight:900!important;color:#185aa5!important}
.ppa-table td:nth-child(2) strong{font-size:12px!important;line-height:1.35!important;color:#173e63!important}
.ppa-objectives-cell{text-align:left!important;vertical-align:top!important}
.ppa-objectives-cell>div{display:block!important;text-align:left!important;margin:0 0 4px!important}
.ppa-objectives-cell>div:last-child{margin-bottom:0!important}
.ppa-actions{text-align:center!important;white-space:normal!important;vertical-align:middle!important}
.ppa-actions a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:58px!important;padding:7px 9px!important;box-sizing:border-box!important;background:#fff!important;color:#145ca8!important;-webkit-text-fill-color:#145ca8!important;border:1px solid #cfe1f5!important;border-radius:8px!important;font-weight:800!important}
.ppa-actions a:hover{background:#eef6ff!important;color:#145ca8!important;-webkit-text-fill-color:#145ca8!important}
@media(max-width:1200px){.ppa-table{font-size:10px!important}.ppa-table th,.ppa-table td{padding:8px 6px!important}.ppa-table td.ppa-number-cell strong{font-size:14px!important}.ppa-table td:nth-child(2) strong{font-size:11px!important}}

/* V2.8.31 — gestão de utilizadores: tabela compacta e ações sempre visíveis */
.users-list .table-wrap{overflow:visible!important;width:100%;}
.users-list table{width:100%!important;table-layout:fixed!important;}
.users-list th,.users-list td{box-sizing:border-box!important;}
.users-list th:nth-child(1),.users-list td:nth-child(1){width:22%;}
.users-list th:nth-child(2),.users-list td:nth-child(2){width:10%;}
.users-list th:nth-child(3),.users-list td:nth-child(3){width:17%;}
.users-list th:nth-child(4),.users-list td:nth-child(4){width:17%;}
.users-list th:nth-child(5),.users-list td:nth-child(5){width:8%;}
.users-list th:nth-child(6),.users-list td:nth-child(6){width:13%;}
.users-list th:nth-child(7),.users-list td:nth-child(7){width:13%;}
.users-list th:nth-child(8),.users-list td:nth-child(8){width:0%;}
.users-list th:last-child,.users-list td:last-child{width:0%;}
.users-list td{white-space:normal!important;overflow-wrap:anywhere;word-break:break-word;padding:12px 10px!important;vertical-align:middle;}
.users-list td:first-child{min-width:0!important;}
.users-list td:first-child strong,.users-list td:first-child small{overflow-wrap:anywhere;word-break:break-word;}
.users-list .actions{display:flex!important;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap;white-space:normal;}
.users-list .actions a{white-space:nowrap;}
.users-list th:last-child,.users-list td:last-child{width:16%!important;}
.users-list th:nth-child(7),.users-list td:nth-child(7){width:11%!important;}
@media(max-width:1150px){
 .users-list th,.users-list td{font-size:11px!important;padding:10px 8px!important;}
 .users-list th:nth-child(1),.users-list td:nth-child(1){width:21%!important;}
 .users-list th:nth-child(2),.users-list td:nth-child(2){width:9%!important;}
 .users-list th:nth-child(3),.users-list td:nth-child(3){width:16%!important;}
 .users-list th:nth-child(4),.users-list td:nth-child(4){width:16%!important;}
 .users-list th:nth-child(5),.users-list td:nth-child(5){width:8%!important;}
 .users-list th:nth-child(6),.users-list td:nth-child(6){width:9%!important;}
 .users-list th:nth-child(7),.users-list td:nth-child(7){width:11%!important;}
 .users-list th:last-child,.users-list td:last-child{width:18%!important;}
}
@media(max-width:850px){
 .users-list .table-wrap{overflow-x:auto!important;}
 .users-list table{table-layout:auto!important;min-width:760px!important;}
}

/* V2.8.32 — ajuste final da tabela de Utilizadores */
.users-list .table-wrap{overflow:visible!important;width:100%!important;}
.users-list table{width:100%!important;min-width:0!important;table-layout:fixed!important;}
.users-list th,.users-list td{box-sizing:border-box!important;vertical-align:middle;}
.users-list td{white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;}
.users-list td:first-child strong{display:block!important;line-height:1.2!important;white-space:normal!important;}
.users-list td:first-child small{display:block!important;margin-top:5px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.users-list table.has-user-select th:nth-child(1),.users-list table.has-user-select td:nth-child(1){width:4%!important;text-align:center!important;}
.users-list table.has-user-select th:nth-child(2),.users-list table.has-user-select td:nth-child(2){width:19%!important;}
.users-list table.has-user-select th:nth-child(3),.users-list table.has-user-select td:nth-child(3){width:7%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(4),.users-list table.has-user-select td:nth-child(4){width:18%!important;}
.users-list table.has-user-select th:nth-child(5),.users-list table.has-user-select td:nth-child(5){width:17%!important;}
.users-list table.has-user-select th:nth-child(6),.users-list table.has-user-select td:nth-child(6){width:7%!important;}
.users-list table.has-user-select th:nth-child(7),.users-list table.has-user-select td:nth-child(7){width:12%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(8),.users-list table.has-user-select td:nth-child(8){width:16%!important;}
.users-list table.has-user-select td:nth-child(5){white-space:nowrap!important;}
.users-list table.has-user-select .actions{display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:6px!important;width:100%!important;}
.users-list table.has-user-select .actions a{white-space:nowrap!important;}
.users-list table.no-user-select th:nth-child(1),.users-list table.no-user-select td:nth-child(1){width:20%!important;}
.users-list table.no-user-select th:nth-child(2),.users-list table.no-user-select td:nth-child(2){width:8%!important;}
.users-list table.no-user-select th:nth-child(3),.users-list table.no-user-select td:nth-child(3){width:18%!important;}
.users-list table.no-user-select th:nth-child(4),.users-list table.no-user-select td:nth-child(4){width:17%!important;}
.users-list table.no-user-select th:nth-child(5),.users-list table.no-user-select td:nth-child(5){width:7%!important;}
.users-list table.no-user-select th:nth-child(6),.users-list table.no-user-select td:nth-child(6){width:13%!important;}
.users-list table.no-user-select th:nth-child(7),.users-list table.no-user-select td:nth-child(7){width:17%!important;}
.users-list table.no-user-select .actions{display:flex!important;flex-direction:column!important;align-items:flex-end!important;justify-content:center!important;gap:6px!important;width:100%!important;}
.users-list table.no-user-select .actions a{white-space:nowrap!important;}
.users-list .status{padding:4px 7px!important;font-size:9px!important;line-height:1!important;}
.users-list .user-select-col{width:4%!important;min-width:0!important;}
@media(max-width:900px){.users-list table{font-size:11px!important}.users-list th,.users-list td{padding:9px 7px!important}.users-list table.has-user-select th:nth-child(2),.users-list table.has-user-select td:nth-child(2){width:18%!important}.users-list table.has-user-select th:nth-child(4),.users-list table.has-user-select td:nth-child(4){width:17%!important}.users-list table.has-user-select th:nth-child(5),.users-list table.has-user-select td:nth-child(5){width:16%!important}.users-list table.has-user-select th:nth-child(8),.users-list table.has-user-select td:nth-child(8){width:17%!important}}


/* V2.8.33 — tabela de Utilizadores: nome e e-mail em linhas separadas; mais espaço para ações */
.users-list table.has-user-select th:nth-child(2),.users-list table.has-user-select td:nth-child(2){width:21%!important;}
.users-list table.has-user-select th:nth-child(3),.users-list table.has-user-select td:nth-child(3){width:6%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(4),.users-list table.has-user-select td:nth-child(4){width:16%!important;}
.users-list table.has-user-select th:nth-child(5),.users-list table.has-user-select td:nth-child(5){width:18%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(6),.users-list table.has-user-select td:nth-child(6){width:6%!important;}
.users-list table.has-user-select th:nth-child(7),.users-list table.has-user-select td:nth-child(7){width:12%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(8),.users-list table.has-user-select td:nth-child(8){width:17%!important;}
.users-list table.has-user-select td:nth-child(2) strong{display:block!important;white-space:normal!important;margin:0!important;}
.users-list table.has-user-select td:nth-child(2) small{display:block!important;white-space:normal!important;margin-top:7px!important;line-height:1.25!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
.users-list table.has-user-select .actions{padding-right:4px!important;}
/* V2.8.34 — lembretes de avaliação */
.activity-pending-row td{background:#fff!important;color:inherit!important}
.activity-pending-row td strong,.activity-pending-row td small{color:inherit!important}
.paa-table .activity-pending-status-link{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;min-width:145px!important;min-height:38px!important;padding:7px 12px!important;text-align:center!important;line-height:1.15!important;background:#ffdede!important;color:#111!important;border:1px solid #efb1b1!important;border-radius:999px!important;text-decoration:none!important;cursor:pointer!important;font-weight:800!important}
.paa-table .activity-pending-status-link:hover{background:#ffcfcf!important;color:#111!important}
.activity-evaluate-link{display:inline-block;margin-left:8px;padding:4px 8px;border-radius:6px;background:#c62828;color:#fff!important;font-weight:800!important}
.notice-evaluation-pending{background:#ffe0e0!important;color:#111!important}
.notice-evaluation-pending i{background:#f7bcbc!important}
.notice-evaluation-pending>span{color:#111!important}
.notice-evaluation-pending>span strong,.notice-activity-line{color:#111!important}
.notice-evaluation-pending small{color:#222!important}
.notification-item{display:flex;justify-content:space-between;gap:16px;padding:16px 20px;border-top:1px solid #edf0f4;background:#fff;color:#24364e}
.notification-item h3{margin:5px 0 6px;font-size:14px;color:#173e63}
.notification-item p{margin:0 0 5px;font-size:12px;line-height:1.5}
.notification-item small{display:block;color:#738398;font-size:11px}
.notification-item>span{font-size:24px;color:#7d91a7;align-self:center}
.notification-evaluation-pending{background:#ffe0e0!important;color:#111!important}
.notification-evaluation-pending h3,.notification-evaluation-pending p,.notification-evaluation-pending small,.notification-evaluation-pending strong{color:#111!important}
.notifications-panel{overflow:hidden}
/* V2.8.34 — lembrete de avaliação no Dashboard */
.dashboard-evaluation-reminder{background:#ffe0e0!important;border-color:#efb1b1!important;overflow:hidden}
.dashboard-evaluation-reminder .heading{background:#ffe0e0!important}
.dashboard-evaluation-reminder .heading h2,.dashboard-evaluation-reminder .heading p,.dashboard-evaluation-reminder .heading a{color:#111!important}
.dashboard-evaluation-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:13px 20px;border-top:1px solid #efb1b1;background:#ffe0e0!important;color:#111!important}
.dashboard-evaluation-item strong,.dashboard-evaluation-item span{color:#111!important}
.dashboard-evaluation-item span{font-size:11px}
.dashboard-evaluation-item b{color:#111!important;white-space:nowrap}
@media(max-width:800px){.dashboard-evaluation-item{grid-template-columns:1fr}.dashboard-evaluation-item b{justify-self:start}}

/* V2.8.38 — avaliação pendente: destaque vermelho claro e acesso direto para avaliador/gestão */
.activity-table .activity-pending-status-link,
.activity-table .activity-pending-status-link:visited {
  display:flex!important; align-items:center!important; justify-content:center!important;
  box-sizing:border-box!important; min-width:145px!important; min-height:38px!important;
  padding:7px 12px!important; text-align:center!important; line-height:1.15!important;
  background:#ffdede!important; color:#111!important; border:1px solid #efb1b1!important;
  border-radius:999px!important; text-decoration:none!important; cursor:pointer!important; font-weight:800!important;
}
.activity-table .activity-pending-status-link:hover { background:#ffcfcf!important; color:#111!important; }
.activity-table .activity-evaluated-status-link { cursor:pointer!important; text-decoration:none!important; }
/* V2.8.39 — novo formulário de avaliação */
.activity-pending-status-link{background:#ffd9d9!important;color:#111!important;border:1px solid #efb1b1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-width:150px!important;min-height:42px!important;box-sizing:border-box!important;text-decoration:none!important}
.activity-pending-status-link:hover{background:#ffcaca!important;color:#111!important}
.eval-conditional{display:none}
.single-select-grid{grid-template-columns:1fr!important}
.field-help{display:block;font-size:11px;color:#71859b;margin:-2px 0 7px}
.conditional-other{width:100%;box-sizing:border-box;border:1px solid #c8d9e9;border-radius:9px;background:#fff;padding:10px 13px;margin-top:8px;color:#25344a}
/* Dashboard — estado das atividades */
.dashboard-paa-card.completed i{background:#e8eef8;}
.dashboard-paa-card.completed strong{color:#15539a;}
.dashboard-paa-card.upcoming i{background:#eef0fb;}
.dashboard-paa-card.upcoming strong{color:#3f5f9b;}
.dashboard-paa-card.evaluated i{background:#e5f6ed;}
.dashboard-paa-card.evaluated strong{color:#18764a;}
.dashboard-paa-card.pending i{background:#fde7e7;}
.dashboard-paa-card.pending strong{color:#b3262d;}
@media(min-width:1101px){.dashboard-paa-cards{grid-template-columns:repeat(6,minmax(0,1fr));}}
/* V2.8.41 — módulos do PAA e edição pelo autor */
.dashboard-paa-card.pending{background:#ffe0e0!important;border-color:#efb1b1!important;color:#111!important;}
.dashboard-paa-card.pending strong,.dashboard-paa-card.pending span,.dashboard-paa-card.pending b{color:#111!important;}
.dashboard-paa-card.pending i{background:#f7bcbc!important;}
.activity-status-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;}
.activity-inline-edit{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 13px;border:1px solid #cfe0ef;border-radius:8px;background:#fff;color:#15539a!important;text-decoration:none!important;font-weight:800;white-space:nowrap;}
.activity-inline-edit:hover{background:#edf5fc;color:#15539a!important;}
.activity-table td:nth-child(5) .activity-status-actions .paa-status{flex:none;}
@media(max-width:900px){.activity-status-actions{flex-wrap:wrap;}}

/* V2.8.43 — reservar espaço próprio para as ações, sem sobrepor o nome/responsável */
.activity-table .activity-name-cell{min-width:260px;}
.activity-table th:nth-child(5),.activity-table td:nth-child(5){width:165px;}
.activity-table th:nth-child(6),.activity-table td:nth-child(6){width:92px;white-space:nowrap;}
.activity-table th:nth-child(7),.activity-table td:nth-child(7){min-width:190px;}
.activity-actions-cell{vertical-align:middle!important;}
.activity-actions-cell .activity-inline-edit{margin:0;}

/* V2.8.44 — relatório integral e filtros do PAA */
.activity-report-filters{margin-top:18px}
.report-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:2px 0 4px}
.report-filter-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:#405a75}
.report-filter-grid select,.report-filter-grid input{width:100%;min-height:40px;border:1px solid #cdddeb;border-radius:8px;background:#fff;color:#253b55;padding:8px 10px;font:inherit;font-weight:500;box-sizing:border-box}
.report-filter-actions{display:flex;align-items:flex-end;gap:8px}
.report-filter-actions button{min-height:40px;border:0;border-radius:8px;background:#185aa5;color:#fff;padding:8px 15px;font-size:11px;font-weight:800;cursor:pointer}
.report-filter-actions a{min-height:40px;display:inline-flex;align-items:center;padding:0 12px;border:1px solid #d5e2ee;border-radius:8px;color:#315675;text-decoration:none;font-size:11px;font-weight:800;background:#fff;box-sizing:border-box}
.report-summary-cards{margin-top:18px}
.report-main-table,.report-evaluation-table{margin-top:18px}
.report-count{font-size:11px;color:#607995;font-weight:700}
.report-wide-table{overflow-x:auto;margin:0 0 2px;border:1px solid #dce7f1;border-radius:10px;background:#fff}
.report-wide-table table{width:max-content;min-width:100%;border-collapse:collapse;table-layout:auto}
.report-wide-table th{position:sticky;top:0;z-index:1;background:#edf5fc;color:#365776;padding:11px 12px;border-bottom:1px solid #d8e5f0;text-align:left;font-size:10px;font-weight:900;white-space:nowrap}
.report-wide-table td{padding:11px 12px;border-bottom:1px solid #edf1f5;vertical-align:top;text-align:left;font-size:10px;line-height:1.45;color:#3e566f;white-space:pre-line;max-width:360px;min-width:110px}
.report-wide-table tbody tr:nth-child(even) td{background:#fbfcfe}
.report-wide-table tbody tr:last-child td{border-bottom:0}
.report-wide-table td:first-child{min-width:58px;width:58px;text-align:center}
.report-wide-table td:nth-child(2){min-width:230px;max-width:340px;font-weight:700;color:#173e63}
.report-wide-table td:nth-child(3),.report-wide-table td:nth-child(4),.report-wide-table td:nth-child(5){min-width:115px}
.report-wide-table td:nth-last-child(-n+4){min-width:105px}
.report-simple-table table{min-width:100%}
.report-missing-summary{display:flex;align-items:center;gap:14px;padding:18px;color:#405a75}
.report-missing-summary strong{font-size:32px;color:#b83b46;line-height:1}
.report-missing-summary span{font-size:12px}
.report-duplicates{margin:0;padding:8px 26px 18px 40px;color:#435a71;font-size:12px;line-height:1.6}
@media(max-width:1050px){.report-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.report-filter-grid{grid-template-columns:1fr 1fr}.report-filter-actions{align-items:center}}
@media(max-width:520px){.report-filter-grid{grid-template-columns:1fr}}

/* V2.8.45 — gráficos visuais nos quadros do relatório do PAA */
.report-chart-panel{overflow:hidden}
.report-chart-list{padding:8px 18px 16px}
.report-chart-row{padding:10px 2px 12px;border-bottom:1px solid #edf1f5}
.report-chart-row:last-child{border-bottom:0}
.report-chart-label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;margin-bottom:7px;font-size:11px;line-height:1.35;color:#425a73}
.report-chart-label span{min-width:0}
.report-chart-label strong{color:#185aa5;font-size:14px;line-height:1}
.report-chart-track{height:9px;border-radius:999px;background:#edf4fa;overflow:hidden}
.report-chart-track span{display:block;height:100%;min-width:2px;border-radius:999px;background:#2b6fb0}
.report-missing-chart{padding:18px 20px 22px}
.report-missing-number{display:flex;align-items:baseline;gap:8px;margin-bottom:12px;color:#405a75}
.report-missing-number strong{font-size:36px;line-height:1;color:#b83b46}
.report-missing-number span{font-size:12px;font-weight:700}
.report-missing-chart small{display:block;margin-top:9px;color:#71859b;font-size:10px}

/* V2.8.47 — gestão de perfis base e condições de acesso */
.access-result{margin-top:18px;padding:18px 20px;background:#f3f8fd;border:1px solid #cfe1f2;border-radius:14px}
.access-result h4{margin:0 0 10px;color:#19395f;font-size:16px}
.access-result ul{margin:0;padding-left:20px}
.access-result li{margin:6px 0;color:#314d6d}
.access-result p{margin:0;color:#6c829c}


/* V2.8.48 — lista de utilizadores: condições de acesso em vez do perfil */
.users-list .user-conditions-cell{white-space:normal!important;vertical-align:middle!important;}
.users-list .user-condition-line{display:block!important;line-height:1.35!important;margin:0 0 3px!important;white-space:normal!important;}
.users-list .user-condition-line:last-child{margin-bottom:0!important;}
.users-list table.has-user-select th:nth-child(5),.users-list table.has-user-select td:nth-child(5){width:19%!important;white-space:normal!important;}
.users-list table.has-user-select th:nth-child(6),.users-list table.has-user-select td:nth-child(6){width:6%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(7),.users-list table.has-user-select td:nth-child(7){width:12%!important;white-space:nowrap!important;}
.users-list table.has-user-select th:nth-child(8),.users-list table.has-user-select td:nth-child(8){width:16%!important;}

/* V2.8.49 — gestão de utilizadores */
.users-add-action{white-space:nowrap;}
.user-form-panel .heading{align-items:center;}
@media(max-width:700px){.users-add-action{width:100%;text-align:center;}.module-head-actions{width:100%;}.user-form-panel .heading{align-items:flex-start;gap:12px;}}


/* V2.8.51 — utilizadores: ações sempre numa única linha e botão verde com texto branco */
.users-list td.actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:18px!important;
  width:auto!important;
  min-width:190px!important;
  padding-right:4px!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.users-list td.actions a{
  display:inline-block!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.users-list td.actions a.danger{color:#b42318!important;-webkit-text-fill-color:#b42318!important;}
.users-add-action,
.users-add-action:visited,
.users-add-action:hover,
.users-add-action:focus{
  background:#0f6b63!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* V2.8.52 — gestão do ano letivo */
.academic-year-badge{display:inline-flex;align-items:center;padding:10px 16px;border-radius:12px;background:#e7f6ef;color:#16784d;font-weight:800;white-space:nowrap}
.academic-year-form{display:flex;gap:16px;align-items:end;flex-wrap:wrap;margin-top:18px}.academic-year-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#344b6a;min-width:220px}.academic-year-form input,.academic-year-form select{min-height:44px;border:1px solid #cddded;border-radius:9px;padding:9px 12px;background:#fff}.academic-year-form button{min-height:44px;border:0;border-radius:9px;padding:0 18px;background:#146f64;color:#fff;font-weight:800;cursor:pointer}.academic-year-open{margin-top:28px;padding-top:22px;border-top:1px solid #dce7f2}.academic-year-open h3{margin:0 0 6px}.success-message{margin:14px 0;padding:12px 14px;border-radius:9px;background:#e7f6ef;color:#146f4a;font-weight:700}

/* V2.8.52 — institucional: texto branco em botões verdes */
.primary-action,.academic-year-form button{color:#fff !important;}

/* V2.8.53 — maior espaçamento na página de Configurações, evitando que o texto fique encostado às linhas/painéis. */
.settings-page .academic-year-panel > .heading{padding-left:22px;padding-right:22px;}
.settings-page .academic-year-panel .success-message{margin-left:22px;margin-right:22px;}
.settings-page .academic-year-form{padding-left:22px;padding-right:22px;padding-bottom:22px;}
.settings-page .academic-year-open{margin-top:10px;padding:28px 22px 26px;}
.settings-page .academic-year-open h3{margin:0 0 10px;}
.settings-page .academic-year-open > p{margin:0 0 20px;line-height:1.6;}
.settings-page > .panel:last-child{padding-bottom:20px;}
.settings-page > .panel:last-child > p{padding:0 20px;}

/* V2.8.54 — análise dos Relatórios de Avaliação do PAA */
.activity-reports-page .report-analysis-intro{margin-top:18px}
.activity-reports-page .report-evaluation-analysis{margin-top:18px}
.report-evaluation-analysis > .heading{padding-bottom:4px}
.report-evaluation-analysis h3{margin:0;color:#19395f;font-size:15px}
.report-evaluation-analysis .report-card{position:relative}
.report-evaluation-analysis .report-card small{display:block;margin-top:4px;color:#71859b;font-size:10px}
.report-evaluation-analysis .report-simple-table{overflow-x:auto}
.report-evaluation-analysis .report-simple-table table{width:100%;border-collapse:collapse}
.report-evaluation-analysis .report-simple-table th{background:#edf5fc;color:#365776;font-size:10px;font-weight:900;text-align:left;padding:10px 12px;border-bottom:1px solid #d8e5f0;white-space:nowrap}
.report-evaluation-analysis .report-simple-table td{font-size:11px;color:#3e566f;padding:10px 12px;border-bottom:1px solid #edf1f5;vertical-align:top}
.report-evaluation-analysis .report-simple-table tr:last-child td{border-bottom:0}
.report-open-responses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:4px 20px 20px}
.report-open-responses > div{padding:14px 16px;background:#f7fbff;border:1px solid #dce8f3;border-radius:10px}
.report-open-responses h4{margin:0 0 9px;color:#19395f;font-size:13px}
.report-open-responses ul{margin:0;padding-left:18px;color:#405a75;font-size:11px;line-height:1.55}
.report-open-responses li{margin:5px 0}
.report-recommendations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:4px 20px 20px}
.report-recommendations > div{padding:14px 16px;background:#f7fbff;border:1px solid #dce8f3;border-radius:10px}
.report-recommendations h4{margin:0 0 7px;color:#19395f;font-size:13px}
.report-recommendations p{margin:0;color:#405a75;font-size:11px;line-height:1.55}
.report-data-note{margin-top:18px;background:#f7fbff!important;color:#405a75;font-size:11px;line-height:1.5}
@media(max-width:760px){.report-open-responses,.report-recommendations{grid-template-columns:1fr}}
/* V2.8.55 — eliminação individual e em massa de atividades do PAA */
.paa-bulk-delete-form{margin:0}
.paa-bulk-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:0 12px 12px}
.paa-select-all{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:800;color:#536b84;cursor:pointer;margin-right:4px}
.paa-select-all input,.paa-select-col input{width:16px;height:16px;margin:0;accent-color:#185aa5}
.paa-select-col{width:38px!important;text-align:center!important;padding-left:6px!important;padding-right:6px!important}
.paa-delete-selected,.paa-delete-action{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-weight:800;text-decoration:none;cursor:pointer;box-sizing:border-box}
.paa-delete-selected{border:1px solid #efb1b1;background:#ffdede;color:#111;padding:8px 13px;font-size:11px}
.paa-delete-selected:hover,.paa-delete-action:hover{background:#ffcaca;color:#111}
.paa-delete-action{border:1px solid #efb1b1;background:#ffdede;color:#111!important;padding:6px 9px;font-size:11px;margin-left:4px}
.paa-actions{white-space:nowrap}
@media(max-width:900px){.paa-bulk-toolbar{justify-content:flex-start;flex-wrap:wrap}.paa-table-wrap{overflow-x:auto}}
/* PAA: grouping by typology and sortable column headers */
.paa-sort-header{display:flex;align-items:center;justify-content:space-between;gap:7px;white-space:nowrap}
.paa-sort-arrows{display:inline-flex;flex-direction:column;gap:0;line-height:8px;margin-left:3px}
.paa-sort-arrows a{display:block;padding:0 1px!important;margin:0!important;background:transparent!important;color:#7890a8!important;font-size:8px!important;line-height:8px!important;text-decoration:none!important;border-radius:0!important}
.paa-sort-arrows a:hover{color:#185aa5!important}
.paa-typology-heading td{background:#eaf3fb!important;color:#1d4f7f!important;font-size:12px!important;font-weight:800!important;padding:10px 12px!important;border-top:1px solid #d5e4f1!important;border-bottom:1px solid #d5e4f1!important}
.paa-typology-heading strong{font-size:12px!important}
.paa-table td:nth-child(2) small{display:block!important;margin-top:4px!important;font-size:11px!important;color:#8191a3!important}

/* V2.8.58 — PAA: escola sempre por baixo do nome da atividade */
.paa-table .paa-activity-cell > strong{display:block!important;white-space:normal!important;margin:0!important;}
.paa-table .paa-activity-cell > small{display:block!important;margin-top:4px!important;font-size:11px!important;line-height:1.25!important;color:#8191a3!important;white-space:normal!important;}
.paa-page .module-head-actions .paa-view-all-action,
.paa-page .module-head-actions .paa-view-all-action:visited,
.paa-page .module-head-actions .paa-view-all-action:hover,
.paa-page .module-head-actions .paa-view-all-action:focus{
  display:inline-flex;align-items:center;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700;
  background:#f2c94c;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid #e5b82f;
}
.paa-page .module-head-actions .paa-view-all-action:hover,
.paa-page .module-head-actions .paa-view-all-action:focus{background:#e9bc35;color:#111!important;-webkit-text-fill-color:#111!important;}

/* V2.8.60 — PPA: botão Visualizar Todos em amarelo com texto preto */
.ppa-page .module-head-actions .ppa-view-all-action,
.ppa-page .module-head-actions .ppa-view-all-action:visited,
.ppa-page .module-head-actions .ppa-view-all-action:hover,
.ppa-page .module-head-actions .ppa-view-all-action:focus{
  display:inline-flex;align-items:center;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:700;
  background:#f2c94c;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid #e5b82f;
}
.ppa-page .module-head-actions .ppa-view-all-action:hover,
.ppa-page .module-head-actions .ppa-view-all-action:focus{background:#e9bc35;color:#111!important;-webkit-text-fill-color:#111!important;}

/* PAA/PPA PDF export — Visualizar Todos */
.paa-page .paa-view-all-action,.ppa-page .ppa-view-all-action{display:inline-flex!important;align-items:center;justify-content:center;padding:11px 16px!important;border-radius:10px!important;text-decoration:none!important;font-weight:800!important;background:#f2c94c!important;color:#111!important;-webkit-text-fill-color:#111!important;border:1px solid #d9ae24!important;box-shadow:0 3px 10px rgba(0,0,0,.08);}
.paa-page .paa-view-all-action:hover,.ppa-page .ppa-view-all-action:hover{background:#e9bc35!important;color:#111!important;-webkit-text-fill-color:#111!important;transform:translateY(-1px);}

/* V2.8.67 — ordenação de utilizadores ignora acentos e diacríticos (alfabético português) */
/* Ordenação da lista de utilizadores */
.users-list th .user-sort-label{display:inline-block;color:inherit;text-decoration:none;font-weight:700;margin-right:6px;}
.users-list th .user-sort-arrows{display:inline-flex;flex-direction:column;vertical-align:middle;line-height:8px;gap:0;}
.users-list th .user-sort-arrows a{font-size:8px;color:#a4adba;text-decoration:none;line-height:8px;padding:0 1px;}
.users-list th .user-sort-arrows a:hover,.users-list th .user-sort-arrows a.active{color:#111;}

.user-export-form{display:flex;align-items:center;gap:8px;margin-left:8px}.user-export-form label{font-size:11px;font-weight:700;color:#536b84;display:inline-flex;align-items:center;gap:6px}.user-export-form input{width:86px;height:34px;border:1px solid #d7e0e9;border-radius:7px;padding:0 8px;font-size:11px}.bulk-export-users{border:0;border-radius:8px;background:#1da978;color:#fff;padding:9px 13px;font-size:11px;font-weight:800;cursor:pointer}.bulk-export-users:hover{background:#168b63}@media(max-width:700px){.user-export-form{width:100%;margin:8px 0 0;flex-wrap:wrap}.user-export-form label{width:100%}}
/* V2.8.70 — exportação de utilizadores em duas etapas */
.user-export-settings-panel,.user-export-selection-panel{max-width:none;}
.settings-export-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:8px 0 2px;}
.settings-export-target label,.settings-export-selection-head label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800;color:#3d5571;}
.settings-export-target input,.settings-export-selection-head input[type=text]{width:220px;box-sizing:border-box;border:1px solid #cbdced;border-radius:10px;padding:11px 13px;background:#fff;font-size:14px;color:#17233a;}
.settings-export-actions{display:flex;align-items:center;gap:12px;}
.settings-export-actions form{margin:0;}
.settings-export-actions .primary-action,.settings-export-actions .secondary-action{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:44px;box-sizing:border-box;}
.settings-export-selection-head{display:flex;align-items:flex-end;gap:18px;padding:4px 0 18px;flex-wrap:wrap;}
.settings-select-all{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;margin-left:8px;min-height:44px;}
.settings-select-all input{width:17px;height:17px;accent-color:#185aa5;}
.settings-user-selection-list{border:1px solid #dce5ef;border-radius:14px;background:#fbfcfe;overflow:hidden;max-height:560px;overflow-y:auto;}
.settings-user-selection-row{display:grid;grid-template-columns:28px minmax(0,1fr) 170px;align-items:center;gap:14px;padding:13px 18px;border-bottom:1px solid #e8eef5;cursor:pointer;transition:background .15s ease;}
.settings-user-selection-row:last-child{border-bottom:0;}
.settings-user-selection-row:hover{background:#f3f7fb;}
.settings-user-selection-row input{width:17px;height:17px;accent-color:#185aa5;}
.settings-user-selection-main{display:flex;flex-direction:column;gap:3px;min-width:0;}
.settings-user-selection-main strong{font-size:13px;color:#1b2d48;}
.settings-user-selection-main small{font-size:11px;color:#71839a;}
.settings-user-selection-role{font-size:11px;font-weight:700;color:#536b84;text-align:right;}
@media(max-width:800px){.settings-export-intro{align-items:stretch;flex-direction:column}.settings-export-actions{flex-wrap:wrap}.settings-user-selection-row{grid-template-columns:28px minmax(0,1fr);}.settings-user-selection-role{grid-column:2;text-align:left;}}
.ppa-settings-panel{margin-top:22px}.ppa-settings-info{display:flex;align-items:center;gap:18px;padding:10px 0 2px;color:#536b88;font-size:14px}.ppa-settings-info strong{color:#1c2a42;font-size:14px}.ppa-settings-info span{font-weight:600}

.settings-initialization-panel{margin-top:22px}.settings-year-transition-form{margin-top:8px}.settings-transition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 24px;padding:18px 22px 0}.settings-transition-field{min-width:0}.settings-transition-field label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:800;color:#365273}.settings-transition-field input,.settings-transition-field select{width:100%;min-height:48px;box-sizing:border-box;border:1px solid #cbdced;border-radius:10px;padding:10px 13px;background:#fff;font-size:14px;color:#17233a}.settings-transition-field:first-child{grid-column:span 1}.settings-transition-action{display:flex;justify-content:flex-start;padding:22px}.settings-transition-action button{min-height:46px;border:0;border-radius:10px;padding:0 22px;background:#146f64;color:#fff;font-weight:800;cursor:pointer}.settings-initialization-panel .heading{margin-bottom:0}.settings-initialization-panel .section-help{max-width:1100px}@media(max-width:1000px){.settings-transition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.settings-transition-grid{grid-template-columns:1fr;gap:14px}.settings-transition-action{padding:18px 22px}}
.settings-user-inline-selection{margin:0 22px 0;padding:18px 20px;border:1px solid #d7e2ee;border-radius:12px;background:#f8fbfe}.settings-inline-selection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px;color:#17233a}.settings-inline-selection-heading>div{display:flex;flex-direction:column;gap:4px}.settings-inline-selection-heading span{font-size:12px;font-weight:500;color:#7489a4}.settings-inline-selection-heading label{font-size:13px;white-space:nowrap}.settings-inline-user-list{max-height:310px;overflow:auto;border-top:1px solid #e1e8f0}.settings-inline-user-row{display:grid;grid-template-columns:24px minmax(0,1fr) 130px;align-items:center;gap:10px;padding:10px 4px;border-bottom:1px solid #e7edf4;cursor:pointer}.settings-inline-user-row:last-child{border-bottom:0}.settings-inline-user-row span{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-inline-user-row strong{font-size:13px;color:#243653}.settings-inline-user-row small{font-size:11px;color:#7890ad}.settings-inline-user-row em{font-style:normal;font-size:11px;color:#607693;text-align:right}.settings-user-inline-selection[hidden]{display:none!important}@media(max-width:900px){.settings-inline-user-row{grid-template-columns:24px minmax(0,1fr)}.settings-inline-user-row em{display:none}}

/* V2.8.75 — alerta ao professor que submeteu a atividade quando a avaliação está pendente */
.paa-table tr.paa-owner-evaluation-pending td{background:#ffe2e2!important;border-top:1px solid #efb1b1!important;border-bottom:1px solid #efb1b1!important;color:#6f1d24!important}
.paa-table tr.paa-owner-evaluation-pending td strong{color:#8f1f28!important}
.paa-table tr.paa-owner-evaluation-pending td small{color:#9b4a50!important}
.paa-table tr.paa-owner-evaluation-pending td:first-child{border-left:4px solid #d92d3b!important}
.activity-table tr.paa-owner-evaluation-pending td{background:#ffe2e2!important;border-bottom-color:#efb1b1!important}
.activity-table tr.paa-owner-evaluation-pending td strong{color:#8f1f28!important}

/* V2.8.76 — apenas o botão "Avaliação pendente" fica destacado a vermelho.
   A linha/retângulo da atividade mantém o fundo normal. */
.paa-table tr.paa-owner-evaluation-pending td,
.activity-table tr.paa-owner-evaluation-pending td{
  background:inherit!important;
  border-top-color:inherit!important;
  border-bottom-color:inherit!important;
  color:inherit!important;
}
.paa-table tr.paa-owner-evaluation-pending td strong,
.paa-table tr.paa-owner-evaluation-pending td small,
.activity-table tr.paa-owner-evaluation-pending td strong,
.activity-table tr.paa-owner-evaluation-pending td small{
  color:inherit!important;
}
.paa-table tr.paa-owner-evaluation-pending td:first-child,
.activity-table tr.paa-owner-evaluation-pending td:first-child{
  border-left:0!important;
}
/* O único alerta vermelho fica no botão de estado. */
.paa-table .activity-pending-status-link,
.activity-table .activity-pending-status-link,
.paa-evaluation-link.pending{
  background:#ffd9d9!important;
  color:#8f1f28!important;
  border:1px solid #efb1b1!important;
  font-weight:800!important;
}
.paa-table .activity-pending-status-link:hover,
.activity-table .activity-pending-status-link:hover,
.paa-evaluation-link.pending:hover{
  background:#ffcaca!important;
  color:#7d1821!important;
}

/* V2.8.77 — avaliação pendente: apenas o botão é vermelho; a linha mantém o fundo normal. */
.paa-table tr.paa-owner-evaluation-pending > td,
.activity-table tr.paa-owner-evaluation-pending > td{background:#fff!important;color:inherit!important;border-top-color:#e3eaf2!important;border-bottom-color:#e3eaf2!important;}
.paa-table tr.paa-owner-evaluation-pending > td strong,
.paa-table tr.paa-owner-evaluation-pending > td small,
.activity-table tr.paa-owner-evaluation-pending > td strong,
.activity-table tr.paa-owner-evaluation-pending > td small{color:inherit!important;}
.paa-table tr.paa-owner-evaluation-pending > td:first-child,
.activity-table tr.paa-owner-evaluation-pending > td:first-child{border-left:0!important;}
.paa-table .activity-pending-status-link,
.activity-table .activity-pending-status-link,
.paa-evaluation-link.pending{display:inline-flex!important;align-items:center;justify-content:center;background:#d92d3b!important;color:#fff!important;border:1px solid #c51f2d!important;border-radius:8px!important;padding:7px 11px!important;font-weight:800!important;text-decoration:none!important;}
.paa-evaluation-panel .heading{align-items:flex-start}.paa-evaluation-intro{padding:14px 18px;margin:0 0 18px;border:1px solid #d9e5f1;border-radius:10px;background:#f7fbff;color:#405775;font-size:13px}.paa-evaluation-form textarea{min-height:88px}.paa-evaluation-form .paa-form-actions{margin-top:18px}

/* V2.8.80 — visualização dos documentos: títulos completos e data separada */
.documents-page .clean-doc-row{
  grid-template-columns:24px 40px minmax(280px,1fr) 92px 60px max-content!important;
  align-items:center!important;
  column-gap:12px!important;
}
.documents-page .clean-doc-row .doc-info{
  min-width:0!important;
  overflow:visible!important;
}
.documents-page .clean-doc-row .doc-info h3{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.35!important;
}
.documents-page .clean-doc-row .doc-info small{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.25!important;
}
.documents-page .clean-doc-row .doc-date{
  display:block!important;
  width:92px!important;
  min-width:92px!important;
  box-sizing:border-box!important;
  text-align:center!important;
  white-space:nowrap!important;
  position:static!important;
  z-index:1!important;
}
.documents-page .clean-doc-row .doc-format{
  display:block!important;
  width:60px!important;
  min-width:60px!important;
  text-align:center!important;
  white-space:nowrap!important;
}
.documents-page .clean-doc-row .doc-actions{
  min-width:max-content!important;
  position:static!important;
  z-index:2!important;
}
@media(max-width:1250px){
  .documents-page .clean-doc-row{grid-template-columns:24px 40px minmax(220px,1fr) 86px 55px max-content!important;}
  .documents-page .clean-doc-row .doc-date{width:86px!important;min-width:86px!important;}
  .documents-page .clean-doc-row .doc-format{width:55px!important;min-width:55px!important;}
}
@media(max-width:900px){
  .documents-page .clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr) auto!important;}
  .documents-page .clean-doc-row .doc-date,.documents-page .clean-doc-row .doc-format{display:none!important;}
  .documents-page .clean-doc-row .doc-actions{grid-column:3/-1;justify-content:flex-start;min-width:0!important;}
}
@media(max-width:600px){
  .documents-page .clean-doc-row{grid-template-columns:24px 40px minmax(0,1fr)!important;}
  .documents-page .clean-doc-row .doc-actions{grid-column:2/-1;}
}

/* V2.8.82 — finalização da avaliação pelo Coordenador */
.paa-finalize-evaluation{background:#1f6f43!important;color:#fff!important;border-radius:6px;padding:7px 10px;text-decoration:none;font-weight:700;display:inline-block}
.paa-evaluation-finalized{display:inline-block;font-weight:700;opacity:.8}

/* V2.8.84 — documentos para professores: sem coluna de seleção, mantendo o mesmo alinhamento da Direção. */
.documents-page .clean-doc-row.doc-user-row{
  grid-template-columns:40px minmax(280px,1fr) 92px 60px max-content!important;
}
.documents-page .clean-doc-row.doc-user-row .doc-actions{
  min-width:max-content!important;
}
@media(max-width:1250px){
  .documents-page .clean-doc-row.doc-user-row{grid-template-columns:40px minmax(220px,1fr) 86px 55px max-content!important;}
  .documents-page .clean-doc-row.doc-user-row .doc-date{width:86px!important;min-width:86px!important;}
  .documents-page .clean-doc-row.doc-user-row .doc-format{width:55px!important;min-width:55px!important;}
}
@media(max-width:900px){
  .documents-page .clean-doc-row.doc-user-row{grid-template-columns:40px minmax(0,1fr) auto!important;}
  .documents-page .clean-doc-row.doc-user-row .doc-date,.documents-page .clean-doc-row.doc-user-row .doc-format{display:none!important;}
  .documents-page .clean-doc-row.doc-user-row .doc-actions{grid-column:2/-1;justify-content:flex-start;min-width:0!important;}
}
@media(max-width:600px){
  .documents-page .clean-doc-row.doc-user-row{grid-template-columns:40px minmax(0,1fr)!important;}
  .documents-page .clean-doc-row.doc-user-row .doc-actions{grid-column:1/-1;padding-left:52px;}
}

/* V2.8.87 — cores distintas para as 9 tipologias do PAA e ações de avaliação mais claras. */
.paa-table .paa-typology-heading td{font-weight:800!important;border-top:1px solid rgba(0,0,0,.08)!important;border-bottom:1px solid rgba(0,0,0,.08)!important;}
.paa-table .paa-typology-heading.paa-typology-1 td{background:#eaf3fb!important;color:#1d4f7f!important;}
.paa-table .paa-typology-heading.paa-typology-2 td{background:#eaf7f1!important;color:#176b4b!important;}
.paa-table .paa-typology-heading.paa-typology-3 td{background:#fff6d9!important;color:#806000!important;}
.paa-table .paa-typology-heading.paa-typology-4 td{background:#f1ebfb!important;color:#65449a!important;}
.paa-table .paa-typology-heading.paa-typology-5 td{background:#e6f6f5!important;color:#14716b!important;}
.paa-table .paa-typology-heading.paa-typology-6 td{background:#fff0e5!important;color:#a5521b!important;}
.paa-table .paa-typology-heading.paa-typology-7 td{background:#eeeafb!important;color:#5b4b91!important;}
.paa-table .paa-typology-heading.paa-typology-8 td{background:#fbeaec!important;color:#9a3f4b!important;}
.paa-table .paa-typology-heading.paa-typology-9 td{background:#eef1f4!important;color:#45576b!important;}

/* Avaliação: ações em caixas próprias e com separação clara do botão Eliminar. */
.paa-table .paa-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;white-space:normal!important;}
.paa-table .paa-actions a.paa-evaluation-link:not(.pending){display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#dff3e7!important;color:#176b4b!important;border:1px solid #a9d9ba!important;border-radius:8px!important;padding:7px 11px!important;font-weight:800!important;text-decoration:none!important;margin:0!important;}
.paa-table .paa-actions a.paa-evaluation-link:not(.pending):hover{background:#cfead9!important;color:#12583d!important;}
.paa-table .paa-actions .paa-evaluation-finalized{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#185aa5!important;color:#fff!important;border:1px solid #124a88!important;border-radius:8px!important;padding:7px 11px!important;font-weight:800!important;opacity:1!important;margin:0 10px 0 0!important;}
.paa-table .paa-actions a.paa-delete-action{margin:0 0 0 10px!important;}
@media(max-width:1100px){.paa-table .paa-actions{gap:6px!important}.paa-table .paa-actions .paa-evaluation-finalized{margin-right:6px!important}.paa-table .paa-actions a.paa-delete-action{margin-left:6px!important;}}


/* V2.8.88 — aplicação visual garantida no painel PAA da Direção/Administração. */
.paa-page .paa-table tr.paa-typology-heading.paa-typology-1 > td{background:#dcecfb!important;color:#164f82!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-2 > td{background:#dff3e8!important;color:#176b4b!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-3 > td{background:#fff0c2!important;color:#755700!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-4 > td{background:#ece2fa!important;color:#624093!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-5 > td{background:#d9f1ef!important;color:#126c66!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-6 > td{background:#ffe7d5!important;color:#9a4d18!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-7 > td{background:#e7e1f8!important;color:#55458d!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-8 > td{background:#f8dfe5!important;color:#8e3746!important;}
.paa-page .paa-table tr.paa-typology-heading.paa-typology-9 > td{background:#e7ebef!important;color:#435465!important;}

.paa-page .paa-table td.paa-actions{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  white-space:normal!important;
}
.paa-page .paa-table td.paa-actions .paa-evaluation-link:not(.pending){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:7px 12px!important;border-radius:8px!important;
  background:#dff3e7!important;color:#176b4b!important;
  border:1px solid #a9d9ba!important;text-decoration:none!important;font-weight:800!important;
}
.paa-page .paa-table td.paa-actions .paa-evaluation-finalized{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:7px 12px!important;border-radius:8px!important;
  background:#185aa5!important;color:#fff!important;
  border:1px solid #124a88!important;text-decoration:none!important;font-weight:800!important;
  opacity:1!important;
}
.paa-page .paa-table td.paa-actions .paa-delete-action{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  margin-left:14px!important;padding:7px 10px!important;border-radius:8px!important;
}


/* V2.8.90 — ações que exigem intervenção ficam destacadas a vermelho. */
.paa-page .paa-table .paa-action-required,
.paa-page .paa-table a.paa-action-required,
.paa-page .paa-table span.paa-action-required{
  background:#d92d3b!important;
  color:#fff!important;
  border:1px solid #c51f2d!important;
  border-radius:8px!important;
  font-weight:800!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
}
.paa-page .paa-table span.paa-action-required{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:32px!important;
  padding:6px 11px!important;
  white-space:nowrap!important;
}
.paa-page .paa-table a.paa-action-required{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:36px!important;
  padding:7px 12px!important;
  cursor:pointer!important;
}
.paa-page .paa-table a.paa-action-required:hover{
  background:#b91f2c!important;
  color:#fff!important;
  border-color:#a91b27!important;
}
/* Mantém o botão de eliminar visualmente separado das ações pendentes. */
.paa-page .paa-table td.paa-actions a.paa-delete-action{margin-left:16px!important;}

/* V2.8.91 — validação associada à reunião do Conselho Pedagógico */
.paa-validation-panel{margin-top:16px;border:1px solid #f0c5c8!important;box-shadow:0 4px 16px rgba(180,40,50,.06)}
.paa-validation-field{padding:18px 20px;background:#fff8f8;border:1px solid #f2d2d5;border-radius:12px}
.paa-validation-field label{display:block;font-size:13px;font-weight:800;color:#263f5d;margin-bottom:9px}
.paa-validation-field input{width:100%;max-width:420px;box-sizing:border-box;border:1px solid #c8d9e9;border-radius:9px;background:#fff;padding:11px 13px;font-size:13px;color:#25344a;min-height:44px}
.paa-validation-form .paa-form-actions{justify-content:flex-end;align-items:center}
.paa-validation-form .paa-form-actions button.paa-action-required{border:0;border-radius:8px;padding:10px 15px;background:#d92d3b!important;color:#fff!important;font-weight:800;cursor:pointer}
.paa-validation-cancel{display:inline-block;padding:10px 15px;border-radius:8px;background:#eef2f6;color:#36506c;text-decoration:none;font-weight:800}

/* V2.8.92 — validação apresentada imediatamente por baixo da atividade selecionada. */
.paa-page .paa-validation-inline-row > td{
  padding:16px 18px!important;
  background:#fff!important;
  border-top:0!important;
}
.paa-page .paa-validation-inline-row .paa-validation-panel{
  margin:0!important;
  border:1px solid #f0c5c8!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 4px 16px rgba(180,40,50,.06)!important;
}
.paa-page .paa-validation-inline-row .paa-validation-field{
  margin:0 18px 16px!important;
}
.paa-page .paa-validation-inline-row .paa-form-actions{
  padding:0 18px 18px!important;
}
.paa-page .paa-validation-error{margin:0 18px 14px!important;}


/* V2.8.97 — revisão da avaliação pelo Coordenador antes da finalização. */
.paa-page .paa-table td.paa-actions a.paa-finalize-evaluation.paa-action-required{
  background:#d92d3b!important;color:#fff!important;border:1px solid #c51f2d!important;
  border-radius:8px!important;padding:7px 12px!important;font-weight:800!important;
  text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
.paa-page .paa-table td.paa-actions a.paa-review-requested,
.paa-page .paa-table td.paa-actions a.paa-review-requested:hover{
  background:#d92d3b!important;color:#fff!important;border-color:#c51f2d!important;
}
.paa-evaluation-review-panel .paa-evaluation-readonly{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;
}
.paa-evaluation-review-panel .paa-evaluation-readonly>div{
  padding:14px 16px;border:1px solid #d9e5f0;border-radius:10px;background:#f8fbfe;
}
.paa-evaluation-review-panel .paa-evaluation-readonly strong{display:block;color:#294765;font-size:12px;margin-bottom:6px}
.paa-evaluation-review-panel .paa-evaluation-readonly span{display:block;color:#25344a;font-size:13px;line-height:1.5}
.paa-review-actions{justify-content:flex-end;gap:10px}
.paa-review-actions .paa-action-required{background:#d92d3b!important;color:#fff!important;border:1px solid #c51f2d!important;border-radius:8px!important;padding:10px 15px!important;font-weight:800!important;text-decoration:none!important}
.paa-review-actions .paa-action-required:hover{background:#b91f2c!important;color:#fff!important}
@media(max-width:800px){.paa-evaluation-review-panel .paa-evaluation-readonly{grid-template-columns:1fr}}

/* V2.8.98 — avaliação remetida para revisão: destacar nos dois locais. */
.paa-page .paa-table td.paa-actions a.paa-review-requested,
.paa-page .paa-table td.paa-actions a.paa-review-requested:hover,
.activity-list-page .activity-status-actions a.paa-review-requested,
.activity-list-page .activity-status-actions a.paa-review-requested:hover{
  background:#d92d3b!important;
  color:#fff!important;
  border:1px solid #c51f2d!important;
  border-radius:8px!important;
  font-weight:800!important;
  text-decoration:none!important;
}

/* V2.8.99 — pedido de revisão da avaliação */
.paa-review-request-form{display:inline-block!important;margin:0!important;padding:0!important}.paa-review-request-button{border:0;cursor:pointer;font:inherit;display:inline-flex;align-items:center;justify-content:center}


/* V2.8.110 — Rever Avaliação deve ser vermelho também no portal do professor. */
.paa-page .paa-table td.paa-actions a.paa-evaluation-link.paa-review-requested,
.paa-page .paa-table td.paa-actions a.paa-evaluation-link.paa-review-requested:hover,
.paa-page .paa-table td.paa-actions a.paa-finalize-evaluation.paa-review-requested,
.paa-page .paa-table td.paa-actions a.paa-finalize-evaluation.paa-review-requested:hover,
.paa-page .paa-table td.paa-actions .paa-review-requested {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:7px 12px!important;
  border-radius:8px!important;
  background:#d92d3b!important;
  color:#fff!important;
  border:1px solid #c51f2d!important;
  text-decoration:none!important;
  font-weight:800!important;
}
.paa-page .paa-table td.paa-actions a.paa-evaluation-link.paa-review-requested:hover,
.paa-page .paa-table td.paa-actions a.paa-finalize-evaluation.paa-review-requested:hover {
  background:#b91f2c!important; color:#fff!important;
}


/* V2.8.113 — Documentos atualizados: esta lista não tem coluna de seleção.
   A estrutura é: ícone | informação | data | formato | ações. */
.documents-page.documents-updated-page .doc-list.clean-doc-list .doc-row.updated-doc-row{
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 92px 60px max-content!important;
  align-items:center!important;
  column-gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-icon{
  grid-column:1!important;
  width:40px!important;
  min-width:40px!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-info{
  grid-column:2!important;
  min-width:0!important;
  width:auto!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-date{
  grid-column:3!important;
  width:92px!important;
  min-width:92px!important;
  white-space:nowrap!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-format{
  grid-column:4!important;
  width:60px!important;
  min-width:60px!important;
  white-space:nowrap!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-actions{
  grid-column:5!important;
  width:auto!important;
  min-width:0!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row .doc-info h3{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row .doc-info small{
  display:block!important;
  width:auto!important;
  max-width:none!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
@media(max-width:900px){
  .documents-page.documents-updated-page .doc-list.clean-doc-list .doc-row.updated-doc-row{
    grid-template-columns:40px minmax(0,1fr) max-content!important;
  }
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-date,
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-format{display:none!important;}
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-actions{
    grid-column:3!important;
    justify-content:flex-end!important;
  }
}
@media(max-width:600px){
  .documents-page.documents-updated-page .doc-list.clean-doc-list .doc-row.updated-doc-row{
    grid-template-columns:40px minmax(0,1fr)!important;
  }
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-actions{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
    padding-left:52px!important;
  }
}

/* V2.8.117 — tabela de Utilizadores: ações numa única linha e nome sem quebra */
.users-list table.has-user-select .actions,
.users-list table.no-user-select .actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  width:100%!important;
}
.users-list table.has-user-select .actions a,
.users-list table.no-user-select .actions a{
  display:inline-flex!important;
  align-items:center!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
.users-list table.has-user-select td:nth-child(2) strong,
.users-list table.no-user-select td:first-child strong{
  display:block!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.users-list td.actions a.danger,
.users-list td.actions a.danger:visited,
.users-list td.actions a.danger:hover,
.users-list td.actions a.danger:focus{
  color:#b42318!important;
  -webkit-text-fill-color:#b42318!important;
  text-decoration:none!important;
}
@media(max-width:850px){
  .users-list table.has-user-select .actions,
  .users-list table.no-user-select .actions{
    justify-content:flex-start!important;
    gap:8px!important;
  }
}


/* PCDM 2.8.118 — configuração de emails */
.settings-email-panel .settings-email-form h3{margin:24px 0 12px;color:#17233a;font-size:18px}
.settings-email-events{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:10px 18px;margin-top:8px}
.settings-email-events label{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #d9e5f2;border-radius:10px;background:#f8fbff;font-weight:600;color:#27466a}
.settings-email-events input[type=checkbox]{width:17px;height:17px;flex:0 0 auto}
.settings-email-form .paa-form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.settings-email-form .paa-form-actions .secondary{background:#eef4fb;color:#173f73;border:1px solid #cbdced}
@media(max-width:800px){.settings-email-events{grid-template-columns:1fr}}

/* V2.8.119 — adaptação completa para telemóvel; não altera o layout desktop */
.mobile-menu-toggle,.mobile-menu-backdrop,.mobile-menu-close,.mobile-menu-icon,.mobile-header-left{display:none}
@media (max-width: 760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .pcdm-body{font-size:14px}
  body.pcdm-menu-open{overflow:hidden}

  /* Cabeçalho móvel */
  .main header{height:64px;padding:0 13px;gap:8px;position:sticky;top:0;z-index:90}
  .mobile-header-left{display:flex;align-items:center;gap:8px;min-width:0}
  .mobile-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #dce5ee;border-radius:9px;background:#fff;color:#15539a;font-size:21px;line-height:1;cursor:pointer;flex:none}
  .toplabel{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .toplabel{display:inline-block}
  .topuser{gap:8px;margin-left:auto;min-width:0}
  .topuser>a[title="Pesquisa"],.topuser>a[title="Notificações"],.topuser>a[title="Tarefas"]{width:31px;height:36px;display:inline-flex;align-items:center;justify-content:center;font-size:19px}
  .topuser .usertext,.topuser .logout{display:none!important}
  .topuser .avatar{width:36px;height:36px;font-size:13px}

  /* Menu lateral transformado em gaveta apenas no mobile */
  .mobile-menu-toggle{display:none}
  .mobile-menu-backdrop{position:fixed;inset:0;background:rgba(15,32,51,.38);z-index:120;opacity:0;pointer-events:none;transition:opacity .2s ease}
  .mobile-menu-backdrop.mobile-open{opacity:1;pointer-events:auto}
  .side{display:flex;position:fixed;z-index:130;left:0;top:0;bottom:0;width:min(310px,88vw);max-width:88vw;height:100vh;padding:0 14px;box-shadow:12px 0 35px rgba(16,43,70,.18);transform:translateX(-105%);transition:transform .22s ease;overflow-y:auto;overscroll-behavior:contain}
  .side.mobile-open{transform:translateX(0)}
  .mobile-menu-close{display:flex;position:absolute;right:12px;top:14px;width:36px;height:36px;border:1px solid #dce5ee;border-radius:9px;background:#fff;color:#385675;align-items:center;justify-content:center;font-size:25px;line-height:1;z-index:3;cursor:pointer}
  .brandrow{height:86px;padding:0 48px 0 10px}
  .brandrow strong{font-size:17px}
  .side nav{padding-bottom:15px}
  .side nav a{min-height:44px;height:auto;padding:10px 12px}
  .side-group-title{min-height:44px}
  .motto{margin:18px 6px 14px}
  .side footer{padding-bottom:30px}

  /* Conteúdo geral */
  .content{padding:20px 12px 30px;max-width:none}
  .content>h1{font-size:25px}
  .content>h1 span{font-size:20px}
  .layout{display:block;margin-top:18px}
  .stats{grid-template-columns:1fr 1fr;gap:9px}
  .stat{min-height:88px;padding:12px;gap:9px}
  .stat i{width:36px;height:36px}
  .stat strong{font-size:23px}
  .stat small{font-size:10px}
  .panel{margin-top:15px;border-radius:10px}
  .panel h2{padding:14px 14px 10px}
  .heading{gap:8px;align-items:flex-start}
  .heading h2{padding:14px 14px 9px}
  .heading>a,.heading .section-count{padding-right:12px;padding-top:14px}
  .quick{grid-template-columns:1fr;gap:9px;padding:0 10px 10px}
  .quick a{min-height:88px;padding:13px}
  .right{display:block}
  .right>.panel{margin-top:15px}
  .notice{grid-template-columns:32px minmax(0,1fr) 5px;padding:11px 12px}
  .notice i{width:32px;height:32px}
  .events div{grid-template-columns:48px minmax(0,1fr);padding:10px 12px}
  .events div>*:last-child{grid-column:2}
  .days{gap:2px;padding:0 9px 10px}
  .days span{height:28px}

  /* Cabeçalhos de módulos */
  .module-page{max-width:none;width:100%}
  .module-head{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:5px 0 18px}
  .module-head h1{font-size:25px;line-height:1.15;margin:3px 0 7px}
  .module-head p{font-size:12px;line-height:1.5}
  .module-head-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%}
  .module-head-actions>*{width:100%;justify-content:center}
  .back{width:100%;justify-content:center;min-height:42px}
  .form-actions,.paa-form-actions,.paa-review-actions,.doc-actions,.actions{flex-wrap:wrap}
  .form-actions>*,.paa-form-actions>*{min-height:42px}

  /* Formulários */
  .form-grid,.ppa-form-grid,.settings-transition-grid,.academic-year-form,.report-filter-grid,.activity-report-filters,.replace-grid,.audience-grid,.participant-grid,.single-select-grid{grid-template-columns:1fr!important}
  .form-grid,.ppa-form-grid{gap:11px}
  .user-form{padding:13px}
  .user-form-panel>h2{padding:15px;font-size:17px}
  .access-grid,.check-grid,.evaluation-check-grid{grid-template-columns:1fr!important}
  .settings-email-events{grid-template-columns:1fr!important}
  .import-form{display:flex;flex-direction:column;align-items:stretch}
  .import-form input[type=file]{min-width:0;width:100%}
  .import-form button{width:100%}
  .document-inline-form,.folder-create-line,.inline-form{display:flex;flex-direction:column;align-items:stretch;gap:9px}
  .document-inline-form>*,.folder-create-line>*{width:100%;min-width:0}
  .document-inline-form button,.folder-create-line button{min-height:42px}
  .doc-filters{display:flex!important;flex-direction:column;align-items:stretch!important;gap:8px!important}
  .doc-filters input,.doc-filters select,.doc-filters button{width:100%;min-width:0!important}

  /* Documentos */
  .main-folder-grid,.sub-folder-grid,.folder-grid{grid-template-columns:1fr!important}
  .main-folder-card,.sub-folder-card{min-width:0}
  .main-folder-banner{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:13px}
  .main-folder-banner .expanded-label,.main-folder-banner .banner-edit{grid-column:2}
  .breadcrumb-panel{display:flex;flex-wrap:wrap;gap:8px;padding:11px 12px}
  .doc-row{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:9px!important;align-items:start!important;padding:13px 4px!important}
  .doc-select{grid-column:1}
  .doc-icon{grid-column:1;grid-row:1;width:40px;height:40px}
  .doc-info{grid-column:2;grid-row:1;min-width:0;width:auto}
  .doc-info h3{font-size:14px;line-height:1.35;overflow-wrap:anywhere}
  .doc-info small{font-size:10px;line-height:1.4;overflow-wrap:anywhere}
  .doc-date,.doc-format{display:none!important}
  .doc-actions{grid-column:1/-1;width:100%;padding-left:49px;display:flex!important;gap:6px;align-items:stretch}
  .doc-btn,.doc-manage{min-height:38px;flex:0 0 auto}
  .documents-heading-title{min-width:0}
  .documents-count{display:block;margin-top:3px}
  .bulk-move-form{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .bulk-move-form>*{width:100%}
  .bulk-move-form button{min-height:42px}
  .document-inline-edit{grid-template-columns:1fr!important;padding:12px!important}
  .inline-edit-actions{display:flex;flex-direction:column;gap:8px}
  .inline-edit-actions>*{width:100%;justify-content:center;min-height:42px}

  /* PAA / PPA */
  .paa-grid,.ppa-grid{grid-template-columns:1fr!important}
  .paa-summary,.dashboard-paa-summary,.dashboard-paa-cards{grid-template-columns:1fr 1fr!important}
  .paa-table-wrap,.ppa-table-wrap,.activity-table-wrap,.table-wrap,.report-wide-table,.report-main-table,.report-evaluation-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .paa-table,.ppa-table,.activity-table,.report-wide-table table,.report-main-table table,.report-evaluation-table table{min-width:720px}
  .paa-table th,.paa-table td,.ppa-table th,.ppa-table td,.activity-table th,.activity-table td{font-size:11px;padding:8px 9px}
  .paa-action-required,.paa-evaluation-form,.paa-evaluation-panel,.paa-evaluation-review-panel,.paa-validation-panel,.paa-form-panel{overflow:hidden}
  .paa-form{display:block}
  .paa-field{margin-bottom:11px}
  .paa-field input,.paa-field select,.paa-field textarea{width:100%;max-width:100%}
  .paa-form-actions{display:flex;flex-direction:column;align-items:stretch}
  .paa-form-actions>*{width:100%;justify-content:center}
  .paa-validation-form{display:flex;flex-direction:column;gap:9px}
  .paa-validation-field input{width:100%!important}
  .paa-bulk-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .paa-bulk-toolbar>*{width:100%}
  .paa-activity-cell{min-width:190px}
  .paa-actions{display:flex;flex-wrap:wrap;gap:6px}
  .paa-actions>*{min-height:38px}

  /* Utilizadores */
  .users-list{width:100%;overflow:hidden}
  .users-list .table-wrap{overflow-x:auto}
  .users-list table{min-width:760px}
  .users-list th,.users-list td{padding:9px 10px}
  .users-list .actions{flex-direction:row!important;flex-wrap:nowrap!important}
  .settings-inline-user-list{overflow-x:hidden}
  .settings-inline-user-row{display:grid!important;grid-template-columns:1fr auto!important;gap:8px}
  .settings-inline-user-row>*{min-width:0}
  .settings-inline-user-selection{overflow:hidden}

  /* Relatórios */
  .report-summary-cards{grid-template-columns:1fr 1fr!important}
  .activity-report-grid,.activity-report-filters,.report-filter-grid{display:grid;grid-template-columns:1fr!important;gap:10px}
  .report-card,.report-chart-panel,.report-evaluation-analysis,.report-recommendations{overflow:hidden}
  .report-bars{overflow-x:auto}

  /* Definições */
  .settings-page .panel{overflow:hidden}
  .settings-year-transition-form,.settings-email-form{width:100%}
  .settings-transition-grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important}
  .settings-transition-field{min-width:0}
  .settings-transition-action{display:flex;flex-direction:column;gap:8px}
  .settings-transition-action button{width:100%;min-height:42px}
  .settings-export-actions{display:flex;flex-direction:column;gap:8px}
  .settings-export-actions>*{width:100%}

  /* Login */
  .login{padding:15px;align-items:center}
  .login section,.login-card{width:100%;max-width:470px!important;padding:25px 20px;border-radius:13px}
  .login-brand{gap:11px}
  .login-brand .logo{width:44px;height:44px}
  .login h1{font-size:24px}
  .pcdm-login-form input,.pcdm-login-form button{height:48px}
}

@media (max-width: 480px){
  .content{padding-left:9px;padding-right:9px}
  .main header{padding-left:9px;padding-right:9px}
  .stats,.paa-summary,.dashboard-paa-summary,.dashboard-paa-cards,.report-summary-cards{grid-template-columns:1fr!important}
  .topuser>a[title="Pesquisa"],.topuser>a[title="Notificações"],.topuser>a[title="Tarefas"]{width:28px;font-size:18px}
  .topuser .avatar{width:34px;height:34px}
  .module-head h1{font-size:23px}
  .panel h2,.heading h2{font-size:14px}
  .doc-actions{padding-left:0}
  .doc-btn,.doc-manage{flex:1;min-width:0}
  .doc-actions .danger{flex:0 0 auto}
  .quick a{min-height:80px}
}


/* V2.8.120 — mobile: atividades sem scroll horizontal e documentos em cartões.
   Desktop permanece inalterado: todas as regras abaixo só se aplicam <=760px. */
@media (max-width:760px){
  /* =========================
     ATIVIDADES — vista móvel
     ========================= */
  .activity-list-page .activity-table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    -webkit-overflow-scrolling:auto!important;
  }
  .activity-list-page .activity-table{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .activity-list-page .activity-table thead{
    display:none!important;
  }
  .activity-list-page .activity-table tbody{
    display:block!important;
    width:100%!important;
  }
  .activity-list-page .activity-table tbody tr{
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin:0 0 12px!important;
    padding:8px 12px!important;
    border:1px solid #dbe5ee!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(20,50,80,.05)!important;
  }
  .activity-list-page .activity-table tbody td{
    display:grid!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    align-items:start!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
    padding:8px 0!important;
    border:0!important;
    font-size:12px!important;
    line-height:1.4!important;
    overflow:visible!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .activity-list-page .activity-table tbody td::before{
    display:block!important;
    padding-right:8px!important;
    color:#6c7e91!important;
    font-size:10px!important;
    line-height:1.35!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    letter-spacing:.02em!important;
  }
  .activity-list-page .activity-table tbody td:nth-child(1)::before{content:'N.º';}
  .activity-list-page .activity-table tbody td:nth-child(2)::before{content:'Atividade';}
  .activity-list-page .activity-table tbody td:nth-child(3)::before{content:'Realização';}
  .activity-list-page .activity-table tbody td:nth-child(4)::before{content:'Período';}
  .activity-list-page .activity-table tbody td:nth-child(5)::before{content:'Estado';}
  .activity-list-page .activity-table tbody td:nth-child(6)::before{content:'Ações';}
  .activity-list-page .activity-table tbody td:nth-child(7)::before{content:'Responsável';}
  .activity-list-page .activity-table tbody td:nth-child(1) strong{
    display:block!important;
    font-size:13px!important;
    line-height:1.4!important;
  }
  .activity-list-page .activity-table tbody .activity-name-cell strong{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:14px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .activity-list-page .activity-table tbody .activity-name-cell small{
    display:block!important;
    margin-top:3px!important;
    color:#718397!important;
    font-size:10px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .activity-list-page .activity-table tbody .activity-status-actions,
  .activity-list-page .activity-table tbody .activity-actions-cell{
    min-width:0!important;
    width:auto!important;
  }
  .activity-list-page .activity-table tbody .activity-status-actions a,
  .activity-list-page .activity-table tbody .activity-status-actions span,
  .activity-list-page .activity-table tbody .activity-actions-cell a{
    max-width:100%!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
  }
  .activity-list-page .activity-table tbody .activity-actions-cell a{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:36px!important;
    padding:7px 12px!important;
    border-radius:8px!important;
  }

  /* =========================
     DOCUMENTOS — vista móvel
     ========================= */
  .documents-page .doc-list.clean-doc-list{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row,
  .documents-page .doc-list.clean-doc-list .doc-row.doc-user-row,
  .documents-page .doc-list.clean-doc-list .doc-row.doc-admin-row,
  .documents-page .doc-list.clean-doc-list .doc-row.updated-doc-row{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    gap:8px 10px!important;
    align-items:start!important;
    padding:14px 12px!important;
    margin:0!important;
    overflow:visible!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-select,
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-icon,
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-info,
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-actions{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-select{
    grid-column:1!important;
    grid-row:1!important;
    width:40px!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-icon{
    grid-column:1!important;
    grid-row:1!important;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-info{
    grid-column:2!important;
    grid-row:1!important;
    width:auto!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-date,
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-format{
    display:none!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-row > .doc-actions{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:0!important;
    margin:0!important;
    gap:6px!important;
    flex-wrap:wrap!important;
    align-items:stretch!important;
    overflow:visible!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-info h3{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    font-size:14px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-info small{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-top:4px!important;
    font-size:10px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-actions .doc-btn,
  .documents-page .doc-list.clean-doc-list .doc-actions .doc-manage{
    flex:1 1 110px!important;
    min-width:0!important;
    max-width:none!important;
    box-sizing:border-box!important;
    min-height:40px!important;
    padding:8px 10px!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-actions .danger{
    flex:0 1 auto!important;
  }

  /* Atualizados: mesmos cartões, sem herdar a grelha desktop de 5 colunas. */
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row{
    grid-template-columns:40px minmax(0,1fr)!important;
  }
  .documents-page.documents-updated-page .doc-list.clean-doc-list .updated-doc-row > .doc-actions{
    grid-column:1 / -1!important;
  }
}

@media (max-width:480px){
  .activity-list-page .activity-table tbody tr{
    grid-template-columns:82px minmax(0,1fr)!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .activity-list-page .activity-table tbody td{
    grid-template-columns:82px minmax(0,1fr)!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-actions .doc-btn,
  .documents-page .doc-list.clean-doc-list .doc-actions .doc-manage{
    flex-basis:calc(50% - 3px)!important;
  }
  .documents-page .doc-list.clean-doc-list .doc-actions .danger{
    flex-basis:100%!important;
  }
}


/* V2.8.121 — PAA principal: vista móvel sem scroll horizontal.
   Aplica-se exclusivamente ao layout mobile; o desktop permanece inalterado. */
@media (max-width:760px){
  .paa-page .paa-table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    margin-left:0!important;
    margin-right:0!important;
    -webkit-overflow-scrolling:auto!important;
  }
  .paa-page .paa-table{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    table-layout:auto!important;
    border-collapse:separate!important;
    border-spacing:0!important;
  }
  .paa-page .paa-table thead{display:none!important;}
  .paa-page .paa-table tbody,
  .paa-page .paa-table tbody tr{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;}

  /* Títulos das 9 tipologias */
  .paa-page .paa-table tbody tr.paa-typology-heading{
    margin:14px 0 8px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .paa-page .paa-table tbody tr.paa-typology-heading:first-child{margin-top:0!important;}
  .paa-page .paa-table tbody tr.paa-typology-heading > td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding:13px 14px!important;
    border:0!important;
    border-radius:12px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    font-size:18px!important;
    line-height:1.25!important;
    text-align:left!important;
  }
  .paa-page .paa-table tbody tr.paa-typology-heading > td strong{
    display:block!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  /* Cada atividade passa a ser um cartão */
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row){
    margin:0 0 12px!important;
    padding:10px 12px!important;
    border:1px solid #dbe5ee!important;
    border-radius:13px!important;
    background:#fff!important;
    box-shadow:0 2px 8px rgba(20,50,80,.05)!important;
  }
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row) > td{
    display:grid!important;
    grid-template-columns:96px minmax(0,1fr)!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    padding:8px 0!important;
    border:0!important;
    background:transparent!important;
    font-size:12px!important;
    line-height:1.4!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row) > td::before{
    display:block!important;
    padding-right:8px!important;
    color:#718397!important;
    font-size:10px!important;
    line-height:1.35!important;
    font-weight:800!important;
    text-transform:uppercase!important;
    letter-spacing:.02em!important;
  }

  /* Professor / utilizador sem coluna de seleção */
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(1)::before{content:'N.º';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(2)::before{content:'Atividade';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(3)::before{content:'Período';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(4)::before{content:'Realização';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(5)::before{content:'Estado';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(6)::before{content:'Conselho Pedagógico';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):not(:has(>td.paa-select-col)) > td:nth-child(7)::before{content:'Ações';}

  /* Direção/Administração com checkbox */
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(1){
    display:block!important;
    padding:2px 0 5px!important;
  }
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(1)::before{display:none!important;content:none!important;}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(2)::before{content:'N.º';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(3)::before{content:'Atividade';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(4)::before{content:'Período';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(5)::before{content:'Realização';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(6)::before{content:'Estado';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(7)::before{content:'Conselho Pedagógico';}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(8)::before{content:'Ações';}

  /* Conteúdo das células */
  .paa-page .paa-table .paa-activity-cell,
  .paa-page .paa-table .paa-activity-cell strong,
  .paa-page .paa-table .paa-activity-cell small{
    min-width:0!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .paa-page .paa-table .paa-activity-cell strong{font-size:14px!important;line-height:1.35!important;}
  .paa-page .paa-table .paa-activity-cell small{font-size:10px!important;line-height:1.35!important;margin-top:3px!important;}
  .paa-page .paa-table td:not(.paa-actions) > *{min-width:0!important;max-width:100%!important;overflow-wrap:anywhere!important;}

  /* Ações: etiqueta em cima e botões abaixo */
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row) > td.paa-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    align-items:stretch!important;
    padding-top:10px!important;
    margin-top:2px!important;
    border-top:1px solid #edf1f5!important;
  }
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row) > td.paa-actions::before{
    content:'Ações'!important;
    display:block!important;
    flex:0 0 100%!important;
    padding:0 0 2px!important;
    color:#718397!important;
    font-size:10px!important;
    line-height:1.35!important;
    font-weight:800!important;
    text-transform:uppercase!important;
  }
  .paa-page .paa-table td.paa-actions > a,
  .paa-page .paa-table td.paa-actions > span{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-sizing:border-box!important;
    min-height:38px!important;
    max-width:100%!important;
    padding:8px 11px!important;
    border-radius:8px!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    text-align:center!important;
  }
  .paa-page .paa-table td.paa-actions > a{flex:1 1 120px!important;}
  .paa-page .paa-table td.paa-actions > .paa-delete-action{flex:1 1 100px!important;}

  /* Checkbox */
  .paa-page .paa-table .paa-select-col input{width:18px!important;height:18px!important;margin:0!important;}

  /* Linhas de validação permanecem em bloco, mas sem largura fixa */
  .paa-page .paa-table tbody tr.paa-validation-inline-row{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 12px!important;
  }
  .paa-page .paa-table tbody tr.paa-validation-inline-row > td{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    padding:0!important;
    border:0!important;
  }
  .paa-page .paa-table tbody tr.paa-validation-inline-row .paa-validation-panel{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
}

@media (max-width:480px){
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row) > td{grid-template-columns:82px minmax(0,1fr)!important;}
  .paa-page .paa-table tbody tr:not(.paa-typology-heading):not(.paa-validation-inline-row):has(>td.paa-select-col) > td:nth-child(n+2){grid-template-columns:82px minmax(0,1fr)!important;}
  .paa-page .paa-table tbody tr.paa-typology-heading > td{font-size:17px!important;padding:12px 13px!important;}
}


/* V2.8.124 — Motivo da não realização: tabela selecionável */
.paa-selectable-table{display:table;width:100%;border:1px solid #cbdceb;border-radius:10px;overflow:hidden;background:#fff;}
.paa-selectable-row{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;min-height:46px;padding:0 12px;border-bottom:1px solid #e6edf4;background:#fff;cursor:pointer;margin:0!important;font-weight:600!important;color:#30465f!important;}
.paa-selectable-row:last-child{border-bottom:0;}
.paa-selectable-row:hover{background:#f5f9fd;}
.paa-selectable-row:has(input:checked){background:#eaf4ff;color:#185aa5!important;}
.paa-selectable-row input[type="radio"]{width:18px!important;height:18px!important;min-height:18px!important;margin:0!important;padding:0!important;accent-color:#185aa5;box-shadow:none!important;}
.paa-other-reason-wrap{margin-top:12px;padding-top:2px;}
.paa-other-reason-wrap textarea{width:100%;box-sizing:border-box;}
.required-mark{color:#b42318;}
@media(max-width:768px){
  .paa-selectable-row{grid-template-columns:40px minmax(0,1fr);min-height:52px;padding:0 10px;}
  .paa-selectable-row span{overflow-wrap:anywhere;}
}

/* V2.8.125 — Avaliação PAA: respostas fechadas com seleção visual */
.paa-evaluation-section-title{
  grid-column:1/-1;
  margin:2px 0 0;
  padding:0 2px 10px;
  color:#185aa5;
  font-size:13px;
  letter-spacing:.03em;
  border-bottom:1px solid #d9e7f3;
}
.paa-evaluation-subheading{
  grid-column:1/-1!important;
  padding:8px 2px 5px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#185aa5;
  font-size:13px;
  letter-spacing:.03em;
}
/* V2.8.253 — PAA: seleção de escolas em cartões, permitindo múltipla seleção */
.paa-school-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  width:100%;
}
.paa-school-choice-card{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  min-height:70px;
  padding:0 16px!important;
  margin:0!important;
  border:1px solid #d2dfeb;
  border-radius:9px;
  background:#f8fbff;
  color:#123b68!important;
  font-size:12px!important;
  font-weight:500!important;
  cursor:pointer;
  box-sizing:border-box;
  transition:background .15s ease,border-color .15s ease;
}
.paa-school-choice-card:hover{background:#f1f7fd;border-color:#b9cee2;}
.paa-school-choice-card:has(input:checked){background:#edf6ff;border-color:#185aa5;color:#185aa5!important;font-weight:700!important;}
.paa-school-choice-card input[type=checkbox]{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#185aa5;
  box-shadow:none!important;
}
@media(max-width:800px){
  .paa-school-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .paa-school-choice-grid{grid-template-columns:1fr;}
}
.paa-choice-table{
  width:100%;
  border:1px solid #d2dfeb;
  border-radius:9px;
  overflow:hidden;
  background:#fff;
  box-sizing:border-box;
}
.paa-choice-row{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  min-height:44px;
  padding:0 12px!important;
  margin:0!important;
  border-bottom:1px solid #e5edf4;
  background:#fff;
  color:#263f5d!important;
  font-size:12px!important;
  font-weight:500!important;
  cursor:pointer;
  box-sizing:border-box;
}
.paa-choice-row:last-child{border-bottom:0;}
.paa-choice-row:hover{background:#f7fbff;}
.paa-choice-row:has(input:checked){background:#edf6ff;color:#185aa5!important;font-weight:700!important;}
.paa-choice-row input[type=radio],
.paa-choice-row input[type=checkbox]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#185aa5;
  box-shadow:none!important;
}
.paa-choice-row span{min-width:0;overflow-wrap:anywhere;line-height:1.35;}
.paa-choice-other-field{margin-top:10px;padding:12px 14px;background:#fff;border:1px solid #d2dfeb;border-radius:9px;}
.paa-choice-other-field.is-visible{display:block!important;}
.paa-choice-other-field label{display:block!important;margin:0 0 7px!important;font-size:12px!important;font-weight:700!important;color:#30465f!important;}
.paa-choice-other-field input{width:100%!important;box-sizing:border-box;}
.paa-compliance-alterations textarea{min-height:90px!important;}
.paa-external-partners-field input{width:100%!important;box-sizing:border-box;}
@media(max-width:768px){
  .paa-evaluation-section-title{font-size:12px;}
  .paa-choice-row{grid-template-columns:38px minmax(0,1fr);min-height:48px;padding:0 10px!important;font-size:12px!important;}
  .paa-choice-row input[type=radio],.paa-choice-row input[type=checkbox]{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;}
  .paa-choice-other-field{padding:11px 12px;}
}


/* V2.8.126 — avaliação: seleção visual por cruz, mantendo a estrutura desktop */
.paa-choice-row input[type="radio"],
.paa-choice-row input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  position:relative!important;
  display:inline-grid!important;
  place-items:center!important;
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  min-height:19px!important;
  margin:0!important;
  padding:0!important;
  border:1.6px solid #6d7f92!important;
  border-radius:3px!important;
  background:#fff!important;
  box-sizing:border-box!important;
  accent-color:transparent!important;
  cursor:pointer!important;
}
.paa-choice-row input[type="radio"]{border-radius:3px!important;}
.paa-choice-row input[type="radio"]:checked,
.paa-choice-row input[type="checkbox"]:checked{
  border-color:#185aa5!important;
  background:#fff!important;
}
.paa-choice-row input[type="radio"]:checked::after,
.paa-choice-row input[type="checkbox"]:checked::after{
  content:'×';
  display:block;
  color:#185aa5;
  font-size:20px;
  line-height:16px;
  font-weight:800;
  transform:translateY(-1px);
}
.paa-choice-row:has(input:checked){
  background:#edf6ff!important;
  color:#185aa5!important;
  font-weight:700!important;
}
@media(max-width:768px){
  .paa-choice-row input[type="radio"],
  .paa-choice-row input[type="checkbox"]{
    width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;
  }
}

/* V2.8.127 — Clubes e Projetos */
.clubs-projects-page .module-head h1{margin-bottom:6px;}
.clubs-projects-form-grid{grid-template-columns:180px minmax(280px,1fr) minmax(280px,1fr)!important;align-items:end;}
.clubs-projects-form-grid label{display:block;font-weight:700;color:#26384e;margin-bottom:7px;}
.clubs-projects-form-grid input,.clubs-projects-form-grid select{width:100%;box-sizing:border-box;}
.clubs-projects-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;}
.club-project-card{position:relative;min-height:190px;padding:20px;border:1px solid #dbe4ee;border-radius:18px;background:#fff;box-shadow:0 4px 14px rgba(20,45,75,.06);display:flex;flex-direction:column;box-sizing:border-box;}
.club-project-card.project-card{border-top:5px solid #1f67ad;}
.club-project-card.club-card{border-top:5px solid #2f8a68;}
/* V2.8.156 — fundo suave por tipo de Clube/Projeto */
.club-project-card.club-card{background:#f1faf5;}
.club-project-card.project-card{background:#f1f7fd;}
.club-project-card.club-card .club-project-card-link:hover{background:#edf8f2;}
.club-project-card.project-card .club-project-card-link:hover{background:#edf4fb;}

.club-project-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px;}
.club-project-type{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 9px;border-radius:999px;background:#edf4fb;color:#1f5e9d;}
.club-card .club-project-type{background:#edf8f3;color:#267451;}
.club-project-card h3{font-size:20px;line-height:1.2;margin:18px 0 20px;color:#1d2b3d;overflow-wrap:anywhere;}
.club-project-responsible{margin-top:auto;padding-top:14px;border-top:1px solid #e8edf2;display:flex;flex-direction:column;gap:4px;}
.club-project-responsible span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#8190a0;font-weight:700;}
.club-project-responsible strong{font-size:14px;color:#334960;}
.club-project-admin-actions{display:flex;gap:8px;align-items:center;}
.club-project-admin-actions a,.club-project-edit{font-size:12px;font-weight:700;text-decoration:none;color:#1d5f9f;}
.club-project-admin-actions .danger{color:#b52828;}
@media(max-width:1200px){.clubs-projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:768px){
  .clubs-projects-form-grid{grid-template-columns:1fr!important;}
  .clubs-projects-grid{grid-template-columns:1fr;gap:12px;}
  .club-project-card{min-height:160px;padding:17px;}
  .club-project-card h3{font-size:18px;margin:14px 0 16px;}
}

/* V2.8.128 — Clubes e Projetos: campos e cartões com mais espaço visual */
.clubs-projects-page .clubs-projects-editor,.clubs-projects-page .clubs-projects-catalog{overflow:visible;}
.clubs-projects-page .clubs-projects-form{padding:6px 2px 4px;}
.clubs-projects-form-grid{gap:18px!important;}
.clubs-projects-form-grid .cp-field-box,.cp-photo-field{background:#f8fbfe;border:1px solid #d9e5ef;border-radius:14px;padding:15px 16px;box-sizing:border-box;}
.clubs-projects-form-grid .cp-field-box label,.cp-photo-field label{font-size:12px;font-weight:800;color:#263f5d;margin-bottom:8px;}
.clubs-projects-form-grid .cp-field-box input,.clubs-projects-form-grid .cp-field-box select{height:44px;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:0 12px;font-size:14px;color:#24384f;box-shadow:inset 0 1px 2px rgba(30,55,80,.03);}
.clubs-projects-form-grid .cp-field-box input:focus,.clubs-projects-form-grid .cp-field-box select:focus{border-color:#2871b8;outline:none;box-shadow:0 0 0 3px rgba(40,113,184,.10);}
.cp-photo-field{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.cp-field-help{margin:3px 0 0;color:#7a8999;font-size:12px;}
.cp-photo-upload{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end;}
.cp-photo-input{display:inline-flex!important;align-items:center;justify-content:center;padding:11px 16px!important;border:1px solid #cbd9e6;border-radius:10px;background:#fff;color:#1f5f9f!important;cursor:pointer;margin:0!important;}
.cp-photo-input input{display:none;}
.cp-photo-remove{font-size:12px!important;font-weight:600!important;margin:0!important;color:#a83232!important;}
.clubs-projects-catalog .heading{margin-bottom:6px;}
.clubs-projects-grid{padding:12px 8px 18px;gap:22px!important;}
.club-project-card{min-height:218px;padding:18px!important;border-radius:18px!important;box-shadow:0 5px 18px rgba(20,45,75,.07)!important;}
.club-project-card-top{align-items:flex-start!important;}
.club-project-photo{width:68px;height:68px;flex:0 0 68px;border-radius:16px;overflow:hidden;border:1px solid #d6e2ec;background:#eef4f8;display:flex;align-items:center;justify-content:center;color:#7d91a3;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
.club-project-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.club-project-card-actions{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:9px;min-width:0;}
.club-project-admin-actions{justify-content:flex-end;}
.club-project-card h3{margin:17px 0 20px!important;font-size:19px!important;}
@media(max-width:1200px){.clubs-projects-grid{padding-left:4px;padding-right:4px;}}
@media(max-width:768px){.cp-photo-field{display:block;padding:13px;margin-top:12px;}.cp-photo-upload{justify-content:flex-start;margin-top:10px;}.clubs-projects-grid{padding:8px 2px 14px;}.club-project-card{min-height:185px!important;padding:16px!important;}.club-project-photo{width:60px;height:60px;flex-basis:60px;border-radius:14px;}.club-project-card h3{font-size:18px!important;}}

/* V2.8.129 — Clubes e Projetos: página individual e cartões clicáveis */
.club-project-card{padding:0!important;overflow:hidden;}
.club-project-card-link{display:flex;flex-direction:column;min-height:218px;padding:18px;text-decoration:none;color:inherit;box-sizing:border-box;}
.club-project-card-link:hover{background:#fbfdff;}
.club-project-card-link:focus-visible{outline:3px solid rgba(31,103,173,.25);outline-offset:-3px;}
.club-project-card-link .club-project-card-top{width:100%;}
.club-project-card-link h3{color:#1d2b3d;}
.club-project-open-label{margin-top:auto;padding-top:10px;font-size:12px;font-weight:800;color:#1f67ad;}
.club-project-card-bottom-actions{display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:12px 18px 16px;border-top:1px solid #edf1f5;}
.club-project-card-bottom-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 13px;border-radius:9px;font-size:12px;font-weight:800;text-decoration:none;color:#1d5f9f;background:#fff;border:1px solid #dbe4ee;box-sizing:border-box;}
.club-project-card-bottom-actions .danger{color:#b52828;background:#fff1f1;border-color:#efb9b9;}
.club-project-card-bottom-actions .danger:hover{background:#ffe5e5;color:#a21f1f;}
.club-project-card-bottom-actions .cp-edit-button:hover{background:#f3f7fb;}
.club-project-detail{max-width:1100px;margin:0 auto;}
.clubs-project-detail-head{margin-bottom:18px;}
.clubs-project-detail-card{background:#fff;border:1px solid #dbe4ee;border-radius:22px;padding:30px;box-shadow:0 7px 24px rgba(20,45,75,.08);border-top:6px solid #1f67ad;}
.clubs-project-detail-card.club-card{border-top-color:#2f8a68;}
.clubs-project-detail-main{display:flex;align-items:center;gap:28px;}
.clubs-project-detail-photo{width:150px;height:150px;flex:0 0 150px;border-radius:22px;overflow:hidden;border:1px solid #d6e2ec;background:#eef4f8;display:flex;align-items:center;justify-content:center;color:#7d91a3;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;}
.clubs-project-detail-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.clubs-project-detail-title .club-project-type{display:inline-block;}
.clubs-project-detail-title h1{margin:14px 0 16px;font-size:34px;line-height:1.15;color:#1d2b3d;}
.clubs-project-detail-title p{margin:0 0 4px;font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#8190a0;font-weight:800;}
.clubs-project-detail-title strong{font-size:16px;color:#334960;}
.clubs-project-detail-actions{display:flex;align-items:center;gap:18px;margin-top:30px;padding-top:20px;border-top:1px solid #e8edf2;}
.clubs-project-detail-actions a{font-weight:800;text-decoration:none;}
.clubs-project-detail-actions .danger{color:#b52828;}
@media(max-width:768px){
  .club-project-card-link{min-height:185px;padding:16px;}
  .club-project-card-bottom-actions{padding:0 16px 14px;}
  .clubs-project-detail-card{padding:20px;border-radius:18px;}
  .clubs-project-detail-main{align-items:flex-start;gap:18px;}
  .clubs-project-detail-photo{width:90px;height:90px;flex-basis:90px;border-radius:16px;}
  .clubs-project-detail-title h1{font-size:25px;margin:10px 0 12px;}
  .clubs-project-detail-actions{flex-wrap:wrap;margin-top:22px;padding-top:16px;}
}

/* V2.8.130 — Clubes e Projetos: informação, plano de ação e horário */
.cp-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;}
.cp-info-grid .cp-field-box{background:#f8fbfe;border:1px solid #d9e5ef;border-radius:14px;padding:15px 16px;box-sizing:border-box;}
.cp-info-grid label,.cp-schedule-editor>div>label{display:block;font-size:12px;font-weight:800;color:#263f5d;margin-bottom:8px;}
.cp-info-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:12px;font:inherit;font-size:14px;line-height:1.5;color:#24384f;resize:vertical;}
.cp-info-grid textarea:focus{border-color:#2871b8;outline:none;box-shadow:0 0 0 3px rgba(40,113,184,.10);}
.cp-schedule-editor{margin-top:18px;background:#f8fbfe;border:1px solid #d9e5ef;border-radius:14px;padding:15px 16px;box-sizing:border-box;}
.schedule-editor-scroll,.schedule-scroll{overflow-x:auto;margin-top:12px;-webkit-overflow-scrolling:touch;}
.cp-schedule-editor table,.clubs-project-schedule table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #d9e5ef;border-radius:12px;overflow:hidden;}
.cp-schedule-editor th,.cp-schedule-editor td,.clubs-project-schedule th,.clubs-project-schedule td{padding:9px 8px;border-right:1px solid #e4ebf1;border-bottom:1px solid #e4ebf1;text-align:center;vertical-align:middle;font-size:12px;}
.cp-schedule-editor th,.clubs-project-schedule th{background:#eef5fa;color:#28445f;font-weight:800;}
.cp-schedule-editor tr:last-child td,.cp-schedule-editor tr:last-child th,.clubs-project-schedule tr:last-child td,.clubs-project-schedule tr:last-child th{border-bottom:0;}
.cp-schedule-editor th:last-child,.cp-schedule-editor td:last-child,.clubs-project-schedule th:last-child,.clubs-project-schedule td:last-child{border-right:0;}
.cp-schedule-editor td input{display:block;width:92px;box-sizing:border-box;margin:0 auto 6px;height:34px;border:1px solid #cbd9e6;border-radius:8px;padding:0 7px;font-size:12px;background:#fff;}
.cp-schedule-editor td input:last-child{margin-bottom:0;}
.clubs-project-info-block{margin-top:22px;padding:20px;background:#f8fbfe;border:1px solid #d9e5ef;border-radius:16px;}
.clubs-project-info-block h2{margin:0 0 12px;color:#263f5d;font-size:18px;}
.clubs-project-richtext{background:#fff;border:1px solid #e2eaf1;border-radius:12px;padding:15px;line-height:1.6;color:#3b5065;min-height:42px;}
.clubs-project-schedule td small{display:block;margin-top:4px;color:#6f8293;font-size:10px;font-weight:700;}
.schedule-empty{color:#b0bcc6;}
.cp-vacancies-label{display:block!important;margin-top:4px!important;font-size:10px!important;font-weight:800!important;color:#718394!important;text-align:center!important;}
.cp-schedule-editor td .cp-schedule-vacancies{width:78px!important;height:32px!important;margin:4px auto 0!important;text-align:center!important;}
.cp-schedule-editor td .cp-schedule-vacancies:disabled{background:#f1f5f8!important;color:#a8b4bf!important;cursor:not-allowed;}
.schedule-vacancies{display:block;margin-top:5px;color:#1f63a8;font-size:11px;font-weight:800;}
.schedule-vacancies-missing{color:#8a98a5;font-weight:700;}
@media(max-width:768px){
 .cp-info-grid{grid-template-columns:1fr;gap:12px;}
 .cp-schedule-editor{padding:13px;margin-top:12px;}
 .cp-schedule-editor table,.clubs-project-schedule table{min-width:900px;}
 .clubs-project-info-block{padding:15px;margin-top:14px;}
 .clubs-project-info-block h2{font-size:17px;}
}


/* V2.8.131 — Clubes e Projetos: horários letivos fixos e plano de ação */
.cp-schedule-editor table{min-width:1280px!important;}
.cp-schedule-editor th small{display:block;margin-top:4px;font-size:10px;font-weight:700;color:#6f8293;white-space:nowrap;}
.cp-schedule-editor td{min-width:118px;}
.cp-schedule-check{display:flex!important;align-items:center;justify-content:center;gap:6px;margin:0 0 9px!important;font-size:11px!important;font-weight:700!important;color:#2a4864!important;cursor:pointer;}
.cp-schedule-check input{width:18px!important;height:18px!important;margin:0!important;accent-color:#1f63a8;}
.cp-schedule-editor td .cp-sub-label{display:block!important;margin:0 0 5px!important;text-align:center;font-size:10px!important;color:#718394!important;font-weight:800!important;}
.cp-schedule-editor td input[type=number]{width:78px!important;height:34px!important;text-align:center;}
.cp-plan-box{margin-top:18px;}
.cp-plan-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.55fr);gap:18px;margin-top:10px;align-items:end;}
.cp-plan-options>div{min-width:0;}
.cp-plan-options select{width:100%;}
.cp-sub-label{display:block;font-size:11px!important;text-transform:uppercase;letter-spacing:.04em;color:#728394!important;font-weight:800!important;margin:0 0 7px!important;}
.cp-plan-document-link{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border-radius:10px;background:#eef6fc;border:1px solid #cfe0ee;color:#1f5f9f!important;font-weight:800;text-decoration:none;}
@media(max-width:768px){
  .cp-plan-options{grid-template-columns:1fr;gap:14px;}
  .cp-schedule-editor table{min-width:1280px!important;}
  .cp-schedule-editor td{min-width:115px;}
  .cp-schedule-check{font-size:10px!important;}
}


/* V2.8.132 — Clubes e Projetos: horário por horas na vertical e professores */
.cp-teachers-editor{margin-top:18px;background:#f8fbfe;border:1px solid #d9e5ef;border-radius:14px;padding:15px 16px;box-sizing:border-box;}
.cp-teachers-editor>label{display:block;font-size:12px;font-weight:800;color:#263f5d;margin-bottom:8px;}
.cp-teachers-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;margin-top:12px;align-items:start;}
.cp-teachers-grid input[type=number],.cp-teachers-grid textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;color:#24384f;}
.cp-teachers-grid input[type=number]{height:44px;}
.cp-teachers-grid textarea{min-height:120px;resize:vertical;line-height:1.5;}
.cp-teacher-count{margin:0 0 10px;color:#506579;font-size:13px;}
.cp-teacher-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;}
.cp-teacher-list li{background:#fff;border:1px solid #e2eaf1;border-radius:10px;padding:10px 12px;color:#334960;font-weight:700;font-size:13px;}
.cp-schedule-editor table,.clubs-project-schedule table{min-width:0!important;width:100%!important;table-layout:fixed;}
.cp-schedule-editor th:first-child,.clubs-project-schedule th:first-child{width:145px;white-space:nowrap;}
.cp-schedule-editor th,.cp-schedule-editor td,.clubs-project-schedule th,.clubs-project-schedule td{word-break:normal;}
@media(max-width:768px){
 .cp-teachers-grid{grid-template-columns:1fr;gap:12px;}
 .cp-teacher-list{grid-template-columns:1fr;}
 .cp-schedule-editor table,.clubs-project-schedule table{min-width:720px!important;}
 .cp-schedule-editor th:first-child,.clubs-project-schedule th:first-child{width:105px;}
}


/* V2.8.135 — Clubes e Projetos: garantir layout desktop independente do layout mobile */
@media(min-width:769px){
  .clubs-projects-page .clubs-projects-editor{width:100%;}
  .clubs-projects-page .clubs-projects-form{width:100%;}
  .clubs-projects-page .clubs-projects-form-grid{display:grid!important;grid-template-columns:180px minmax(280px,1fr) minmax(280px,1fr)!important;gap:18px!important;align-items:end!important;}
  .clubs-projects-page .cp-photo-field{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;}
  .clubs-projects-page .cp-info-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;}
  .clubs-projects-page .cp-plan-options{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(250px,.55fr)!important;gap:18px!important;align-items:end!important;}
  .clubs-projects-page .cp-teachers-grid{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:18px!important;}
  .clubs-projects-page .cp-teacher-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 16px!important;}
  .clubs-projects-page .cp-schedule-editor{width:100%;}
  .clubs-projects-page .cp-schedule-editor .schedule-editor-scroll{width:100%;overflow-x:auto;}
  .clubs-projects-page .cp-schedule-editor table{width:100%!important;min-width:720px!important;table-layout:fixed!important;}
  .clubs-projects-page .cp-schedule-editor th:first-child{width:145px!important;}
}

/* V2.8.136 — Clubes e Projetos: no PC, manter sempre o layout desktop mesmo em janelas estreitas/zoom elevado */
@media (pointer:fine) and (max-width:768px){
  .clubs-projects-page .clubs-projects-form-grid{
    display:grid!important;
    grid-template-columns:140px minmax(0,1fr) minmax(0,1fr)!important;
    gap:14px!important;
    align-items:end!important;
  }
  .clubs-projects-page .clubs-projects-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    padding:12px 8px 18px!important;
  }
  .clubs-projects-page .cp-photo-field{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
  }
  .clubs-projects-page .cp-info-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:14px!important;
  }
  .clubs-projects-page .cp-plan-options{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(180px,.55fr)!important;
    gap:14px!important;
    align-items:end!important;
  }
  .clubs-projects-page .cp-teachers-grid{
    display:grid!important;
    grid-template-columns:150px minmax(0,1fr)!important;
    gap:14px!important;
  }
  .clubs-projects-page .cp-teacher-list{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px 12px!important;
  }
  .clubs-projects-page .cp-schedule-editor .schedule-editor-scroll,
  .clubs-projects-page .clubs-project-schedule .schedule-scroll{
    width:100%;
    overflow-x:auto;
  }
  .clubs-projects-page .cp-schedule-editor table{
    width:100%!important;
    min-width:720px!important;
    table-layout:fixed!important;
  }
  .clubs-projects-page .cp-schedule-editor th:first-child{width:105px!important;}
  .clubs-projects-page .cp-schedule-check{font-size:10px!important;}
}


/* V2.8.137 — Desktop real: impedir que o zoom do navegador transforme o PC em layout móvel.
   Aplica-se apenas a dispositivos com rato/hover; os telemóveis continuam a usar as regras mobile. */
@media (pointer:fine) and (hover:hover) and (max-width:760px){
  html,body{width:auto;max-width:none;overflow-x:visible;}
  .shell{min-height:100vh;display:flex!important;}
  .side{display:flex!important;position:static!important;width:300px!important;max-width:none!important;height:auto!important;padding:0 18px!important;box-shadow:none!important;transform:none!important;transition:none!important;overflow-y:visible!important;}
  .mobile-menu-toggle,.mobile-menu-backdrop,.mobile-menu-close,.mobile-menu-icon,.mobile-header-left{display:none!important;}
  .main{flex:1;min-width:0!important;}
  .main header{height:78px!important;padding:0 28px!important;position:static!important;}
  .toplabel{font-size:inherit!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;}
  .topuser{gap:17px!important;}
  .topuser .usertext,.topuser .logout{display:flex!important;}
  .content{padding:34px 28px!important;max-width:1550px!important;margin:auto!important;}
  .content>h1{font-size:30px!important;}
  .layout{display:grid!important;grid-template-columns:minmax(0,1fr) 350px!important;gap:22px!important;margin-top:26px!important;}
  .module-page{max-width:1550px!important;width:100%!important;}
  .module-head{display:flex!important;flex-direction:row!important;align-items:center!important;gap:20px!important;margin:0 0 22px!important;}
  .module-head>div:first-child{min-width:0;}
  .module-head h1{font-size:30px!important;line-height:1.15!important;margin:0 0 6px!important;}
  .module-head p{font-size:14px!important;line-height:1.5!important;}
  .module-head-actions{display:flex!important;grid-template-columns:none!important;width:auto!important;}
  .module-head-actions>*{width:auto!important;}
  .back{width:auto!important;min-height:0!important;}
  .form-grid,.ppa-form-grid,.settings-transition-grid,.academic-year-form,.report-filter-grid,.activity-report-filters,.replace-grid,.audience-grid,.participant-grid,.single-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .access-grid,.check-grid,.evaluation-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .quick{grid-template-columns:repeat(4,1fr)!important;}
  .stats{grid-template-columns:repeat(4,1fr)!important;}

  /* Clubes e Projetos: forçar editor desktop mesmo com zoom elevado. */
  .clubs-projects-page .clubs-projects-editor{width:100%!important;}
  .clubs-projects-page .clubs-projects-form{width:100%!important;padding:6px 2px 4px!important;}
  .clubs-projects-page .clubs-projects-form-grid{display:grid!important;grid-template-columns:180px minmax(280px,1fr) minmax(280px,1fr)!important;gap:18px!important;align-items:end!important;}
  .clubs-projects-page .cp-photo-field{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;}
  .clubs-projects-page .cp-info-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important;}
  .clubs-projects-page .cp-plan-options{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(250px,.55fr)!important;gap:18px!important;align-items:end!important;}
  .clubs-projects-page .cp-teachers-grid{display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;gap:18px!important;}
  .clubs-projects-page .cp-teacher-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 16px!important;}
  .clubs-projects-page .cp-schedule-editor{width:100%!important;}
  .clubs-projects-page .cp-schedule-editor .schedule-editor-scroll{width:100%!important;overflow-x:auto!important;}
  .clubs-projects-page .cp-schedule-editor table{width:100%!important;min-width:720px!important;table-layout:fixed!important;}
}


/* V2.8.138 — Clubes e Projetos: preservar largura desktop em PC com viewport CSS reduzida
   (ex.: zoom elevado). Em dispositivos de rato/hover mantemos a estrutura desktop;
   a responsividade móvel continua reservada a dispositivos táteis. */
@media (pointer:fine) and (hover:hover) and (max-width:1180px){
  html, body{min-width:1280px!important;}
  body.pcdm-body .shell{min-width:1280px!important;width:1280px!important;}
  body.pcdm-body .main{min-width:980px!important;}
  body.pcdm-body .content{max-width:1550px!important;min-width:980px!important;}
}
@media (pointer:fine) and (hover:hover) and (max-width:760px){
  body.pcdm-body .shell{min-width:1280px!important;width:1280px!important;}
  body.pcdm-body .main{min-width:980px!important;}
  body.pcdm-body .content{min-width:980px!important;}
}


/* V2.8.139 — corrigir largura do Portal no desktop quando o tema WordPress impõe
   largura máxima ao body. O Portal é uma aplicação autónoma; no desktop deve
   ocupar a janela disponível e manter a estrutura desktop. */
@media (pointer:fine) and (hover:hover){
  html.pcdm-html,
  html:has(body.pcdm-body){
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.pcdm-body{
    width:100%!important;
    min-width:1200px!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow-x:auto!important;
  }
  body.pcdm-body .shell{
    width:100%!important;
    min-width:1200px!important;
    max-width:none!important;
    margin:0!important;
  }
  body.pcdm-body .side{
    flex:0 0 300px!important;
    width:300px!important;
    max-width:300px!important;
  }
  body.pcdm-body .main{
    flex:1 1 auto!important;
    width:auto!important;
    min-width:900px!important;
    max-width:none!important;
  }
  body.pcdm-body .content{
    width:100%!important;
    max-width:1550px!important;
    min-width:0!important;
    margin:0 auto!important;
  }
  body.pcdm-body .clubs-projects-page .clubs-projects-editor{
    width:100%!important;
    max-width:none!important;
  }
}


/* V2.8.140 — Clubes e Projetos: caracterização horizontal e robustez do editor */
.clubs-projects-page #cp_club_info{
  display:block!important;
  width:100%!important;
  min-height:150px!important;
  box-sizing:border-box!important;
  resize:vertical!important;
  border:1px solid #cbd9e6!important;
  border-radius:10px!important;
  background:#fff!important;
  padding:12px!important;
  font:inherit!important;
  font-size:14px!important;
  line-height:1.5!important;
  color:#24384f!important;
}
.clubs-projects-page .cp-field-box:has(#cp_club_info){
  width:100%!important;
  grid-column:1/-1!important;
}
@media(max-width:768px){
  .clubs-projects-page .cp-field-box:has(#cp_club_info){grid-column:auto!important;}
}

/* V2.8.141 — Clubes e Projetos: seleção visual de professores */
.cp-teachers-grid{grid-template-columns:220px minmax(240px,1fr) minmax(280px,1.15fr);align-items:start;}
.cp-teacher-picker,.cp-teacher-selected-wrap{min-width:0;}
.cp-teachers-select{width:100%;min-height:180px;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:8px;color:#24384f;font:inherit;}
.cp-teacher-selected-list{min-height:180px;max-height:220px;overflow-y:auto;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:8px;box-sizing:border-box;}
.cp-teacher-selected{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #dbe6ef;background:#f8fbfe;border-radius:9px;padding:9px 10px;margin-bottom:7px;color:#24384f;font-size:13px;font-weight:700;}
.cp-teacher-selected:last-child{margin-bottom:0;}
.cp-teacher-selected span{min-width:0;overflow-wrap:anywhere;}
.cp-teacher-remove{flex:0 0 30px;width:30px;height:30px;border:0;border-radius:7px;background:#fff;color:#b42318;font-size:20px;line-height:1;cursor:pointer;}
.cp-teacher-remove:hover{background:#fdecec;}
.cp-teacher-empty{padding:14px;color:#7a8da1;font-size:13px;}
@media(max-width:768px){
 .cp-teachers-grid{grid-template-columns:1fr;gap:12px;}
 .cp-teachers-select{min-height:160px;}
 .cp-teacher-selected-list{max-height:none;min-height:100px;}
}


/* V2.8.142 — Clubes e Projetos: professores selecionados à direita no PC */
@media (min-width:769px){
  .clubs-projects-page .cp-teachers-grid{
    display:grid!important;
    grid-template-columns:220px minmax(360px,1.35fr) minmax(320px,1fr)!important;
    gap:18px!important;
    align-items:start!important;
  }
  .clubs-projects-page .cp-teacher-picker,
  .clubs-projects-page .cp-teacher-selected-wrap{
    min-width:0!important;
    width:auto!important;
  }
  .clubs-projects-page .cp-teacher-selected-list{
    width:100%!important;
    min-height:180px!important;
    max-height:220px!important;
  }
}


/* V2.8.150 — Sistema visual global do Portal
   Regra estrutural: os conteúdos editáveis e os blocos internos nunca ficam
   encostados aos limites do painel. Mantemos uma margem interna aproximada
   de 1 cm e a linguagem visual da página individual de Clubes e Projetos. */
:root{--pcdm-inner-gap:28px;--pcdm-card-radius:18px;--pcdm-card-border:#dbe5ef;--pcdm-card-bg:#f8fbfe;--pcdm-text:#1f3550;--pcdm-muted:#71839a;--pcdm-blue:#1f67ad;}

/* Todos os módulos usam o mesmo princípio de cartão exterior + conteúdo interior. */
.module-page > .panel{
  padding:var(--pcdm-inner-gap)!important;
  border-radius:var(--pcdm-card-radius)!important;
  border:1px solid var(--pcdm-card-border)!important;
  box-shadow:0 7px 24px rgba(20,45,75,.06)!important;
  background:#fff!important;
  overflow:visible!important;
}
.module-page > .panel > .heading{padding:0!important;margin:0 0 18px!important;}
.module-page > .panel > .heading h2,
.module-page > .panel > h2{padding:0!important;margin:0 0 8px!important;color:var(--pcdm-text);}
.module-page > .panel > .heading .section-help{margin:0!important;color:var(--pcdm-muted);line-height:1.55;}
.module-page > .panel > form{margin:0!important;}

/* Campos e sub-blocos: caixas internas consistentes, com espaço dos quatro lados. */
.module-page .cp-field-box,
.module-page .settings-transition-field,
.module-page .academic-year-form,
.module-page .doc-filters-panel,
.module-page .doc-admin-panel,
.module-page .filter-panel,
.module-page .form-section,
.module-page .user-form-panel,
.module-page .info-block,
.module-page .clubs-project-info-block{
  border-radius:14px;
}
.module-page input:not([type="checkbox"]):not([type="radio"]),
.module-page select,
.module-page textarea{
  max-width:100%;
}

/* Formulários gerais: nunca encostar os campos às extremidades do cartão. */
.module-page > .panel .form-grid,
.module-page > .panel .settings-transition-grid,
.module-page > .panel .paa-form-grid,
.module-page > .panel .ppa-form-grid,
.module-page > .panel .report-filter-grid,
.module-page > .panel .activity-report-filters,
.module-page > .panel .replace-grid,
.module-page > .panel .audience-grid,
.module-page > .panel .participant-grid,
.module-page > .panel .single-select-grid{
  width:100%;
}

/* Listagens/tabelas também ficam dentro do cartão, sem tocar no rebordo. */
.module-page > .panel > .clean-doc-list,
.module-page > .panel > .doc-list,
.module-page > .panel > .table-wrap,
.module-page > .panel > .paa-table-wrap,
.module-page > .panel > .activity-table-wrap{
  width:100%;
  border-radius:12px;
  overflow-x:auto;
}

/* Aparência de bloco interior usada na página de detalhe de Clubes e Projetos. */
.module-page .clubs-project-info-block{
  background:#f8fbfe!important;
  border:1px solid #dbe5ef!important;
  padding:20px!important;
  margin-top:20px!important;
  box-sizing:border-box;
}
.module-page .clubs-project-info-block h2{padding:0!important;margin:0 0 12px!important;font-size:19px!important;color:#284565!important;}
.module-page .clubs-project-richtext{background:#fff;border:1px solid #dbe5ef;border-radius:14px;padding:18px!important;color:#425b76;line-height:1.6;}

/* Clubes e Projetos: o editor segue exatamente a mesma linguagem visual da página de detalhe. */
.clubs-projects-page .clubs-projects-editor{padding:28px!important;}
.clubs-projects-page .clubs-projects-form{padding:0!important;}
.clubs-projects-page .clubs-projects-form-grid{padding:0!important;margin:0!important;}
.clubs-projects-page .cp-field-box,
.clubs-projects-page .cp-photo-field,
.clubs-projects-page .cp-plan-box,
.clubs-projects-page .cp-schedule-editor{
  background:#f8fbfe!important;
  border:1px solid #dbe5ef!important;
  border-radius:14px!important;
  padding:20px!important;
  box-sizing:border-box!important;
}
.clubs-projects-page #cp_club_info{width:100%!important;min-height:150px!important;box-sizing:border-box!important;}
.clubs-projects-page .cp-photo-field{margin-top:20px!important;}

@media(max-width:768px){
  .module-page > .panel{padding:18px!important;border-radius:16px!important;}
  .module-page > .panel > .heading{margin-bottom:15px!important;}
  .clubs-projects-page .clubs-projects-editor{padding:18px!important;}
  .clubs-projects-page .cp-field-box,
  .clubs-projects-page .cp-photo-field,
  .clubs-projects-page .cp-plan-box,
  .clubs-projects-page .cp-schedule-editor{padding:16px!important;}
  .module-page .clubs-project-info-block{padding:16px!important;}
}


/* V2.8.164 — submenu Clubes/Projetos e página global de atividades realizadas. */
.clubs-projects-page .cp-global-activities-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin-top:18px;}
.clubs-projects-page .cp-global-activity-card{min-width:0;}
.cp-global-activity-card .cp-activity-content{padding:14px 15px 16px;}
.cp-global-activity-type{display:inline-block;font-size:9px;line-height:1;padding:6px 9px;border-radius:999px;background:#eaf3fb;color:#1760a7;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;}
.cp-global-activity-club{font-size:11px;color:#50708d;font-weight:700;margin-top:5px;}
.cp-global-modal-source{margin:8px 0 16px;color:#52708c;font-size:13px;}
.cp-global-modal-source strong{color:#1760a7;}
@media(max-width:1200px){.clubs-projects-page .cp-global-activities-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:768px){.clubs-projects-page .cp-global-activities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}}
@media(max-width:480px){.clubs-projects-page .cp-global-activities-grid{grid-template-columns:1fr;}}

/* V2.8.152 — Atividades realizadas dos Clubes e Projetos. */
.clubs-projects-page .clubs-project-activities{margin-top:20px!important;}
.clubs-projects-page .cp-activities-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  margin-top:18px;
}
.clubs-projects-page .cp-activity-card{
  min-width:0;
  background:#fff;
  border:1px solid #dbe5ef;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 4px 14px rgba(20,45,75,.06);
  display:flex;
  flex-direction:column;
}
.clubs-projects-page .cp-activity-photo{
  width:100%;
  aspect-ratio:4/3;
  background:#eef4f8;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#7d91a3;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  overflow:hidden;
}
.clubs-projects-page .cp-activity-photo img{width:100%!important;height:100%!important;min-width:100%!important;min-height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center center!important;display:block!important;}
.clubs-projects-page .cp-activity-content{padding:15px 15px 12px;flex:1;}
.clubs-projects-page .cp-activity-content h3{margin:0 0 8px;color:#24384f;font-size:17px;line-height:1.25;overflow-wrap:anywhere;}
.clubs-projects-page .cp-activity-date{font-size:12px;font-weight:800;color:#1f67ad;margin-bottom:9px;}
.clubs-projects-page .cp-activity-content p{margin:0;color:#5e748c;font-size:13px;line-height:1.5;overflow-wrap:anywhere;}
.clubs-projects-page .cp-activity-actions{display:flex;gap:12px;padding:11px 15px;border-top:1px solid #edf1f5;}
.clubs-projects-page .cp-activity-actions a{font-size:12px;font-weight:800;color:#1d5f9f;text-decoration:none;}
.clubs-projects-page .cp-activity-actions .danger{color:#b52828;}
.clubs-projects-page .cp-activity-editor-box{
  background:#fff;
  border:1px solid #dbe5ef;
  border-radius:14px;
  padding:18px;
  margin-top:14px;
}
.clubs-projects-page .cp-activity-editor-title{font-size:15px;color:#284565;margin-bottom:14px;}
.clubs-projects-page .cp-activity-form{display:flex;flex-direction:column;gap:14px;}
.clubs-projects-page .cp-activity-form-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(160px,.65fr) minmax(220px,.9fr);gap:16px;}
.clubs-projects-page .cp-activity-form label{display:block;font-size:11px;font-weight:800;letter-spacing:.04em;color:#263f5d;margin-bottom:7px;}
.clubs-projects-page .cp-activity-form input[type="text"],
.clubs-projects-page .cp-activity-form input[type="date"],
.clubs-projects-page .cp-activity-form input[type="file"],
.clubs-projects-page .cp-activity-form textarea{width:100%;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;color:#24384f;padding:10px 12px;font-size:14px;}
.clubs-projects-page .cp-activity-form textarea{min-height:90px;resize:vertical;}
.clubs-projects-page .cp-inline-check{display:flex!important;align-items:center;gap:7px;margin-top:8px!important;font-weight:700!important;color:#b52828!important;letter-spacing:0!important;}
.clubs-projects-page .cp-inline-check input{width:auto!important;}
.clubs-projects-page .cp-activity-form-actions{display:flex;align-items:center;gap:12px;}
.clubs-projects-page .cp-activity-form-actions button{border:0;border-radius:10px;background:#1f67ad;color:#fff;font-weight:800;padding:11px 18px;cursor:pointer;}
.clubs-projects-page .cp-activity-form-actions .back{color:#1d5f9f;text-decoration:none;font-weight:800;font-size:13px;}
@media(max-width:1200px){
  .clubs-projects-page .cp-activities-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:768px){
  .clubs-projects-page .cp-activities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .clubs-projects-page .cp-activity-form-grid{grid-template-columns:1fr;gap:12px;}
}
@media(max-width:480px){
  .clubs-projects-page .cp-activities-grid{grid-template-columns:1fr;}
}

/* V2.8.153 — galeria até 10 fotografias por atividade realizada. */
.clubs-projects-page .cp-activity-open{display:flex;flex-direction:column;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer;font:inherit;flex:1}
.clubs-projects-page .cp-activity-photo-count{display:block;margin-top:10px;color:#1f67ad;font-weight:800;font-size:11px}
.clubs-projects-page .cp-activity-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:30px;box-sizing:border-box}
.clubs-projects-page .cp-activity-modal[hidden]{display:none!important}
.clubs-projects-page .cp-activity-modal-backdrop{position:absolute;inset:0;background:rgba(20,35,55,.62)}
.clubs-projects-page .cp-activity-modal-dialog{position:relative;z-index:1;width:min(1000px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.2);box-sizing:border-box}
.clubs-projects-page .cp-activity-modal-dialog h3{margin:0 40px 7px 0;color:#24384f;font-size:24px}
.clubs-projects-page .cp-activity-modal-close{position:absolute;right:18px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:#eef4f8;color:#24384f;font-size:25px;cursor:pointer}
.clubs-projects-page .cp-activity-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.clubs-projects-page .cp-activity-gallery a{display:block;border-radius:12px;overflow:hidden;background:#eef4f8;aspect-ratio:4/3}
.clubs-projects-page .cp-activity-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.clubs-projects-page .cp-activity-modal-info{margin-top:18px;padding:16px;border:1px solid #dbe5ef;border-radius:12px;color:#5e748c;line-height:1.55}
@media(max-width:900px){.clubs-projects-page .cp-activity-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.clubs-projects-page .cp-activity-modal{padding:12px}.clubs-projects-page .cp-activity-modal-dialog{padding:20px}.clubs-projects-page .cp-activity-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}}

/* V2.8.158 — campos complementares das atividades realizadas. */
.clubs-projects-page .cp-activity-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.clubs-projects-page .cp-activity-extra-grid > div{min-width:0;}
.clubs-projects-page .cp-activity-form input[type="url"]{width:100%;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;color:#24384f;padding:10px 12px;font-size:14px;}
.clubs-projects-page .cp-radio-row{display:flex;align-items:center;gap:22px;min-height:40px;padding:8px 2px;}
.clubs-projects-page .cp-radio-row label{display:flex!important;align-items:center;gap:7px;margin:0!important;font-size:13px!important;font-weight:700!important;letter-spacing:0!important;color:#314a66!important;}
.clubs-projects-page .cp-radio-row input[type="radio"]{width:auto!important;margin:0;}
.clubs-projects-page .cp-activity-modal-details{margin-top:18px;padding:16px 18px;border:1px solid #dbe5ef;border-radius:12px;background:#f6f9fc;color:#304a65;font-size:13px;line-height:1.6;}
.clubs-projects-page .cp-activity-modal-details > div{margin-bottom:7px;}
.clubs-projects-page .cp-activity-modal-details > div:last-child{margin-bottom:0;}
@media(max-width:768px){
  .clubs-projects-page .cp-activity-extra-grid{grid-template-columns:1fr;gap:12px;}
  .clubs-projects-page .cp-radio-row{flex-wrap:wrap;gap:12px 20px;}
}

/* V2.8.162 — atividades realizadas: cabeçalho e formulário recolhido */
.clubs-projects-page .cp-activities-heading{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;width:100%!important;margin:0!important;padding:0!important}
.clubs-projects-page .cp-activities-heading h2{margin:0!important;padding:0!important}
.clubs-projects-page .cp-add-activity-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:11px 18px!important;border:0!important;border-radius:9px!important;background:#2f8f70!important;color:#fff!important;font-weight:700!important;font-size:14px!important;line-height:1.2!important;cursor:pointer!important;white-space:nowrap!important;box-shadow:none!important}
.clubs-projects-page .cp-add-activity-toggle:hover{background:#26795e!important;filter:none!important}
.clubs-projects-page .cp-activity-editor-collapsed{display:none!important}
@media(max-width:760px){.clubs-projects-page .cp-activities-heading{align-items:flex-start!important;flex-direction:column!important}.clubs-projects-page .cp-add-activity-toggle{width:auto!important}}

/* V2.8.168 — Atividades: botão de exportação para Excel, alinhado com o PAA/PPA */
.clubs-projects-page .module-head-actions .cp-activities-export-action,
.clubs-projects-page .module-head-actions .cp-activities-export-action:visited,
.clubs-projects-page .module-head-actions .cp-activities-export-action:hover,
.clubs-projects-page .module-head-actions .cp-activities-export-action:focus{
  display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:10px;
  text-decoration:none;font-weight:700;background:#f2c94c;color:#111!important;
  -webkit-text-fill-color:#111!important;border:1px solid #e5b82f;white-space:nowrap;
}
.clubs-projects-page .module-head-actions .cp-activities-export-action:hover,
.clubs-projects-page .module-head-actions .cp-activities-export-action:focus{
  background:#e9bc35;color:#111!important;-webkit-text-fill-color:#111!important;
}
@media(max-width:760px){
  .clubs-projects-page .module-head-actions{width:100%;flex-wrap:wrap;}
  .clubs-projects-page .module-head-actions .cp-activities-export-action{width:auto;}
}

/* V2.8.174 — imagens das atividades sempre totalmente visíveis, sem cortes.
   A imagem mantém a proporção original e é reduzida apenas quando necessário. */
.clubs-projects-page .cp-activity-photo{
  overflow:hidden!important;
  aspect-ratio:4/3!important;
}
.clubs-projects-page .cp-activity-photo img{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  flex:none!important;
}

/* V2.8.175 — capa das atividades: mostrar sempre a fotografia inteira.
   A área mantém a sua dimensão, mas a imagem é reduzida proporcionalmente
   para caber dentro dela, sem qualquer corte ou deformação. */
.clubs-projects-page .cp-activity-photo{
  width:100%!important;
  height:300px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.clubs-projects-page .cp-activity-photo img{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  flex:0 0 auto!important;
  display:block!important;
}
@media(max-width:768px){
  .clubs-projects-page .cp-activity-photo{height:260px!important;}
}

/* V2.8.177 — capas das atividades: área mais baixa e uniforme.
   Todas as atividades reservam exatamente a mesma altura para a capa.
   A imagem é sempre apresentada por inteiro, proporcionalmente, sem cortes. */
.clubs-projects-page .cp-activity-photo{
  width:100%!important;
  height:180px!important;
  aspect-ratio:auto!important;
  min-height:180px!important;
  max-height:180px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}
.clubs-projects-page .cp-activity-photo img{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  flex:0 0 auto!important;
  display:block!important;
}
.clubs-projects-page .cp-activity-card{
  height:100%;
}
@media(max-width:768px){
  .clubs-projects-page .cp-activity-photo{
    height:160px!important;
    min-height:160px!important;
    max-height:160px!important;
  }
}


/* V2.8.178 — Dashboard: Os Meus Clubes/Projetos */
.dashboard-cp-summary{margin-top:22px!important;}
.dashboard-cp-summary .heading h2{padding-bottom:13px!important;}
.dashboard-cp-summary .heading{align-items:center!important;}
.dashboard-cp-all{display:inline-flex;align-items:center;justify-content:center;background:#f2c94c!important;color:#111!important;border:1px solid #d8ad22!important;border-radius:9px!important;padding:10px 15px!important;font-size:12px!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap;}
.dashboard-cp-all:hover{background:#eabd35!important;color:#111!important;}
.dashboard-cp-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;padding:0 14px 14px;}
.dashboard-cp-card{min-height:100px;border:1px solid #dce8f3;border-radius:10px;background:#f7fbff;padding:14px 15px;display:flex;align-items:center;gap:11px;color:#183e68!important;text-decoration:none!important;box-sizing:border-box;min-width:0;}
.dashboard-cp-card i{width:42px;height:42px;border-radius:10px;background:#e4f1fc;display:block;flex:none;position:relative;background-position:center;background-repeat:no-repeat;background-size:cover;}
.dashboard-cp-card .club-icon:before,.dashboard-cp-card .project-icon:before,.dashboard-cp-card .activity-icon:before{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-style:normal;font-weight:900;color:#185aa5;}
.dashboard-cp-card .club-icon:before{content:'♣';}
.dashboard-cp-card .project-icon{background:#e5f6ed;}
.dashboard-cp-card .project-icon:before{content:'▦';color:#18764a;}
.dashboard-cp-card .activity-icon{background:#fff1d9;}
.dashboard-cp-card .activity-icon:before{content:'★';color:#9b6a00;font-size:15px;}
.dashboard-cp-card .cp-photo-icon{background-color:#eaf3fb;background-size:cover;}
.dashboard-cp-card div{min-width:0;}
.dashboard-cp-card strong{display:block;font-size:18px;line-height:1.15;color:#183e68;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.dashboard-cp-card.dashboard-cp-count strong{font-size:30px;line-height:1;color:#15539a;}
.dashboard-cp-card span,.dashboard-cp-card small{display:block;margin-top:5px;font-size:11px;color:#5d7087;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.dashboard-cp-card small{margin-top:0;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#185aa5;}
.dashboard-cp-card b{margin-left:auto;font-size:22px;color:#8094a9;flex:none;}
.dashboard-cp-item:hover,.dashboard-cp-activity:hover{background:#fff;border-color:#bdd5e9;transform:translateY(-1px);}
.dashboard-cp-activity{background:#fffaf1;border-color:#eadfc7;}
.dashboard-cp-activity .activity-icon{background:#fff0d5;}
@media(max-width:1100px){.dashboard-cp-cards{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){.dashboard-cp-summary .heading{align-items:flex-start!important;gap:10px;flex-direction:column;}.dashboard-cp-cards{grid-template-columns:repeat(2,minmax(0,1fr));}.dashboard-cp-all{width:100%;box-sizing:border-box;}.dashboard-cp-card{min-height:92px;}}
@media(max-width:480px){.dashboard-cp-cards{grid-template-columns:1fr;}}

/* V2.8.179 — dashboard: indicadores globais de Clubes/Projetos clicáveis. */
.dashboard-cp-card.dashboard-cp-count{cursor:pointer;}
.dashboard-cp-card.dashboard-cp-count:hover{background:#fff;border-color:#bdd5e9;transform:translateY(-1px);}
/* V2.8.181 — Dashboard Clubes e Projetos: títulos separados e dois cartões pessoais largos. */
.dashboard-cp-global-heading h2{margin:0!important;padding-bottom:0!important;}
.dashboard-cp-global-heading .section-help{margin-top:5px!important;}
.dashboard-cp-personal-heading{padding:18px 14px 8px;}
.dashboard-cp-personal-heading h2{margin:0!important;font-size:16px!important;color:#183e68!important;}
.dashboard-cp-global-cards{padding-bottom:4px!important;}
.dashboard-cp-personal-cards{grid-template-columns:repeat(6,minmax(0,1fr));padding-top:0!important;}
.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 2;min-height:116px;}
@media(max-width:1100px){.dashboard-cp-personal-cards{grid-template-columns:repeat(4,minmax(0,1fr));}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 2;}}
@media(max-width:760px){.dashboard-cp-personal-cards{grid-template-columns:repeat(2,minmax(0,1fr));}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 1;}}
@media(max-width:480px){.dashboard-cp-personal-cards{grid-template-columns:1fr;}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 1;}}
/* V2.8.181 — Dashboard Clubes e Projetos */
.dashboard-cp-global-heading h2{margin:0!important;padding-bottom:0!important;}
.dashboard-cp-global-heading .section-help{margin-top:5px!important;}
.dashboard-cp-personal-heading{padding:18px 14px 8px;}
.dashboard-cp-personal-heading h2{margin:0!important;font-size:16px!important;color:#183e68!important;}
.dashboard-cp-global-cards{padding-bottom:4px!important;}
.dashboard-cp-personal-cards{grid-template-columns:repeat(6,minmax(0,1fr));padding-top:0!important;}
.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 2;min-height:116px;}
@media(max-width:1100px){.dashboard-cp-personal-cards{grid-template-columns:repeat(4,minmax(0,1fr));}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 2;}}
@media(max-width:760px){.dashboard-cp-personal-cards{grid-template-columns:repeat(2,minmax(0,1fr));}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 1;}}
@media(max-width:480px){.dashboard-cp-personal-cards{grid-template-columns:1fr;}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:span 1;}}

/* V2.8.181 — Dashboard Clubes e Projetos: todos os cartões na mesma linha. */
.dashboard-cp-summary .dashboard-cp-section-labels{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:end;padding:4px 0 8px;}
.dashboard-cp-summary .dashboard-cp-global-label{grid-column:1 / span 2;}
.dashboard-cp-summary .dashboard-cp-personal-label{grid-column:3 / span 4;}
.dashboard-cp-summary .dashboard-cp-section-labels h2{margin:0!important;font-size:16px!important;color:#183e68!important;}
.dashboard-cp-summary .dashboard-cp-all-cards{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important;padding-top:0!important;}
.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-count{grid-column:span 1!important;min-width:0;}
.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-wide{grid-column:span 2!important;min-width:0;min-height:116px;}
@media(max-width:1100px){.dashboard-cp-summary .dashboard-cp-section-labels{grid-template-columns:repeat(4,minmax(0,1fr));}.dashboard-cp-summary .dashboard-cp-global-label{grid-column:1 / span 2;}.dashboard-cp-summary .dashboard-cp-personal-label{grid-column:3 / span 2;}.dashboard-cp-summary .dashboard-cp-all-cards{grid-template-columns:repeat(4,minmax(0,1fr))!important;}.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-wide{grid-column:span 2!important;}}
@media(max-width:700px){.dashboard-cp-summary .dashboard-cp-section-labels{grid-template-columns:1fr 1fr;gap:10px;}.dashboard-cp-summary .dashboard-cp-global-label,.dashboard-cp-summary .dashboard-cp-personal-label{grid-column:span 1;}.dashboard-cp-summary .dashboard-cp-all-cards{grid-template-columns:1fr 1fr!important;gap:10px!important;}.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-count,.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-wide{grid-column:span 1!important;}}
@media(max-width:480px){.dashboard-cp-summary .dashboard-cp-section-labels{grid-template-columns:1fr;}.dashboard-cp-summary .dashboard-cp-global-label,.dashboard-cp-summary .dashboard-cp-personal-label{grid-column:span 1;}.dashboard-cp-summary .dashboard-cp-all-cards{grid-template-columns:1fr!important;}.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-count,.dashboard-cp-summary .dashboard-cp-all-cards > .dashboard-cp-wide{grid-column:span 1!important;}}

/* V2.8.181 — os títulos ficam diretamente sobre os respetivos grupos, mantendo os 4 cartões na mesma linha. */
.dashboard-cp-summary > .heading{margin-bottom:8px!important;}
.dashboard-cp-summary > .heading > div:first-child{min-width:0;}
.dashboard-cp-summary .dashboard-cp-section-labels{margin-top:0!important;}

/* V2.8.182 — Dashboard Clubes e Projetos: módulos independentes lado a lado. */
.dashboard-cp-summary > .heading{margin-bottom:14px!important;}
.dashboard-cp-all{display:inline-block!important;background:transparent!important;border:0!important;color:#15539a!important;padding:2px 0!important;font-size:12px!important;font-weight:600!important;text-decoration:none!important;border-radius:0!important;}
.dashboard-cp-all:hover{background:transparent!important;color:#0f427d!important;text-decoration:underline!important;}
.dashboard-cp-modules{display:grid!important;grid-template-columns:2fr 4fr!important;gap:16px!important;padding:0 14px 14px!important;align-items:start!important;}
.dashboard-cp-module{min-width:0;border:1px solid #dce8f3;border-radius:12px;background:#fbfdff;padding:14px!important;box-sizing:border-box;}
.dashboard-cp-module-title{margin:0 0 10px!important;}
.dashboard-cp-module-title h2{margin:0!important;padding:0!important;font-size:16px!important;line-height:1.2!important;color:#18263d!important;}
.dashboard-cp-module-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;min-width:0;}
.dashboard-cp-module-cards .dashboard-cp-card{width:100%!important;min-width:0!important;box-sizing:border-box!important;}
.dashboard-cp-global-module .dashboard-cp-count{min-height:100px!important;}
.dashboard-cp-personal-module .dashboard-cp-wide{grid-column:span 1!important;min-height:116px!important;}
.dashboard-cp-placeholder{min-height:116px;border:1px dashed #dce8f3;border-radius:10px;background:#f7fbff;color:#71849a;display:flex;align-items:center;justify-content:center;padding:12px;text-align:center;font-size:12px;}
.dashboard-cp-module .dashboard-cp-card{margin:0!important;}
@media(max-width:900px){.dashboard-cp-modules{grid-template-columns:1fr!important;}.dashboard-cp-global-module,.dashboard-cp-personal-module{grid-column:auto!important;}}
@media(max-width:560px){.dashboard-cp-module-cards{grid-template-columns:1fr!important;}.dashboard-cp-personal-module .dashboard-cp-wide{grid-column:span 1!important;}}

/* V2.8.183 — Dashboard: dois módulos lado a lado, com o módulo pessoal 2x mais largo. */
.dashboard-cp-summary{position:relative;}
.dashboard-cp-summary-heading{min-height:0!important;margin:0!important;padding:0!important;border:0!important;}
.dashboard-cp-all{display:inline!important;background:none!important;border:0!important;border-radius:0!important;padding:0!important;color:#15539a!important;-webkit-text-fill-color:#15539a!important;font-size:14px!important;font-weight:400!important;text-decoration:none!important;white-space:nowrap;}
.dashboard-cp-all:hover{background:none!important;color:#0f447f!important;text-decoration:underline!important;}
.dashboard-cp-modules{display:grid!important;grid-template-columns:1fr 2fr!important;gap:22px!important;align-items:stretch!important;padding:0 14px 14px!important;}
.dashboard-cp-module{min-width:0;border:1px solid #dce8f3;border-radius:12px;background:#fff;padding:0!important;box-sizing:border-box;}
.dashboard-cp-module-title{padding:16px 16px 10px!important;}
.dashboard-cp-module-title h2{margin:0!important;padding:0!important;font-size:17px!important;line-height:1.2!important;color:#18273d!important;}
.dashboard-cp-module-cards{display:grid!important;gap:12px!important;padding:0 10px 10px!important;}
.dashboard-cp-global-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.dashboard-cp-personal-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.dashboard-cp-card.dashboard-cp-wide{grid-column:auto!important;min-height:116px!important;width:auto!important;}
.dashboard-cp-card{min-width:0!important;}
@media(max-width:900px){.dashboard-cp-modules{grid-template-columns:1fr!important;}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:auto!important;}}
@media(max-width:600px){.dashboard-cp-global-cards,.dashboard-cp-personal-cards{grid-template-columns:1fr!important;}.dashboard-cp-all{font-size:13px!important;}}

/* V2.8.183 — Dashboard: dois módulos lado a lado, com o módulo pessoal 2x mais largo. */
.dashboard-cp-summary-heading{min-height:0!important;margin:0!important;padding:0!important;border:0!important;}
.dashboard-cp-all{display:inline!important;background:none!important;border:0!important;border-radius:0!important;padding:0!important;color:#15539a!important;-webkit-text-fill-color:#15539a!important;font-size:14px!important;font-weight:400!important;text-decoration:none!important;white-space:nowrap;}
.dashboard-cp-all:hover{background:none!important;color:#0f447f!important;text-decoration:underline!important;}
.dashboard-cp-modules{display:grid!important;grid-template-columns:1fr 2fr!important;gap:22px!important;align-items:stretch!important;padding:0 14px 14px!important;}
.dashboard-cp-module{min-width:0;border:1px solid #dce8f3;border-radius:12px;background:#fff;padding:0!important;box-sizing:border-box;}
.dashboard-cp-module-title{padding:16px 16px 10px!important;}
.dashboard-cp-module-title h2{margin:0!important;padding:0!important;font-size:17px!important;line-height:1.2!important;color:#18273d!important;}
.dashboard-cp-module-cards{display:grid!important;gap:12px!important;padding:0 10px 10px!important;}
.dashboard-cp-global-cards,.dashboard-cp-personal-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.dashboard-cp-card.dashboard-cp-wide{grid-column:auto!important;min-height:116px!important;width:auto!important;}
.dashboard-cp-card{min-width:0!important;}
@media(max-width:900px){.dashboard-cp-modules{grid-template-columns:1fr!important;}.dashboard-cp-personal-cards .dashboard-cp-wide{grid-column:auto!important;}}
@media(max-width:600px){.dashboard-cp-global-cards,.dashboard-cp-personal-cards{grid-template-columns:1fr!important;}.dashboard-cp-all{font-size:13px!important;}}


/* V2.8.184 — Dashboard: módulos sem caixas interiores e link de atividades discreto. */
.dashboard-cp-summary .dashboard-cp-all{
  display:inline!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  margin:0!important;
  color:#15539a!important;
  -webkit-text-fill-color:#15539a!important;
  font-size:14px!important;
  font-weight:400!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.dashboard-cp-summary .dashboard-cp-all:hover{
  background:transparent!important;
  color:#0f447f!important;
  text-decoration:underline!important;
}
.dashboard-cp-summary .dashboard-cp-modules{
  display:grid!important;
  grid-template-columns:1fr 2fr!important;
  gap:22px!important;
  align-items:stretch!important;
  padding:0 14px 14px!important;
}
.dashboard-cp-summary .dashboard-cp-module{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
}
.dashboard-cp-summary .dashboard-cp-module-title{
  padding:0 10px 12px!important;
  margin:0!important;
}
.dashboard-cp-summary .dashboard-cp-module-title h2{
  margin:0!important;
  padding:0!important;
  font-size:17px!important;
  line-height:1.2!important;
  color:#18273d!important;
}
.dashboard-cp-summary .dashboard-cp-module-cards{
  padding:0!important;
  margin:0!important;
  gap:12px!important;
}
.dashboard-cp-summary .dashboard-cp-card{
  margin:0!important;
}
@media(max-width:900px){
  .dashboard-cp-summary .dashboard-cp-modules{grid-template-columns:1fr!important;}
}
@media(max-width:600px){
  .dashboard-cp-summary .dashboard-cp-global-cards,
  .dashboard-cp-summary .dashboard-cp-personal-cards{grid-template-columns:1fr!important;}
}

/* V2.8.185 — Dashboard: "Ver Todas as Atividades" alinhado com Os Meus Clubes/Projetos. */
.dashboard-cp-summary .dashboard-cp-summary-heading{display:none!important;}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-module-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding-right:10px!important;
}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-module-title h2{margin:0!important;}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-all{
  display:block!important;
  margin:0 10px 0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#15539a!important;
  -webkit-text-fill-color:#15539a!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:400!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-all:hover{
  background:transparent!important;
  color:#0f447f!important;
  text-decoration:underline!important;
}
@media(max-width:600px){
  .dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-module-title{align-items:flex-start!important;flex-wrap:wrap!important;}
  .dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-all{margin-left:auto!important;}
}

/* V2.8.186 — Dashboard: títulos e alturas alinhados com "As Minhas Atividades do PAA". */
.dashboard-cp-summary .dashboard-cp-module-title{
  padding:17px 20px 11px!important;
  margin:0!important;
}
.dashboard-cp-summary .dashboard-cp-module-title h2{
  margin:0!important;
  padding:0!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:#172033!important;
}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-module-title{
  padding-right:20px!important;
}
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-all{
  margin-right:0!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:400!important;
}
.dashboard-cp-summary .dashboard-cp-module-cards{
  padding:0 14px 14px!important;
  gap:12px!important;
}
.dashboard-cp-summary .dashboard-cp-global-module .dashboard-cp-card,
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-card,
.dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-placeholder{
  min-height:100px!important;
  height:100px!important;
}
@media(max-width:600px){
  .dashboard-cp-summary .dashboard-cp-module-title{padding:17px 14px 11px!important;}
  .dashboard-cp-summary .dashboard-cp-personal-module .dashboard-cp-module-title{padding-right:14px!important;}
  .dashboard-cp-summary .dashboard-cp-module-cards{padding:0 14px 14px!important;}
}

.folder-delete{position:absolute;right:9px;top:34px;border:0;background:transparent;color:#fff;font-size:18px;line-height:1;cursor:pointer;padding:2px 4px;z-index:3}.folder-delete:hover{color:#ffd6d6}.sub-folder-card .folder-delete{right:7px;top:30px;color:#b42318}.sub-folder-card .folder-delete:hover{color:#8f1710}

/* V2.8.190 — Área administrativa Todas as Pastas */
.all-folders-admin-module{margin-top:12px;overflow:hidden}
.all-folders-toggle{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;text-decoration:none!important;color:#243957!important;background:#fff;border:0}
.all-folders-toggle:hover{background:#fbfdff}
.all-folders-toggle>span:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.all-folders-toggle strong{font-size:17px;line-height:1.2;font-weight:700;color:#243957}
.all-folders-toggle small{font-size:11px;line-height:1.35;color:#7b8ba1;font-weight:500}
.all-folders-toggle-right{display:flex;align-items:center;gap:14px;white-space:nowrap}
.all-folders-toggle-right em{font-style:normal;font-size:11px;color:#72849d;font-weight:600}
.all-folders-toggle-right b{font-size:22px;color:#185aa5;font-weight:600;line-height:1}
.all-folders-content{border-top:1px solid #e5edf6;padding:12px 0 0}
.all-folders-bulk{display:grid;grid-template-columns:minmax(0,1fr) auto 260px auto;align-items:center;gap:12px;padding:0 14px 12px}
.all-folders-bulk-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.all-folders-bulk-title strong{font-size:12px;color:#243957}
.all-folders-bulk-title span{font-size:10px;color:#7b899b}
.all-folders-bulk .all-folders-select-all{margin:0;font-size:11px;white-space:nowrap}
.all-folders-bulk select{height:36px;border:1px solid #d8e2ee;border-radius:8px;padding:0 9px;background:#fff}
.all-folders-bulk button{height:36px;border:0;border-radius:8px;background:#185aa5;color:#fff;font-weight:700;padding:0 14px;white-space:nowrap}
.all-folders-doc-list{border-top:1px solid #edf2f7}
.all-folders-doc-row{margin:0;border-radius:0;border-left:0;border-right:0;box-shadow:none}
.all-folders-doc-row:first-child{border-top:0}
@media(max-width:900px){.all-folders-bulk{grid-template-columns:1fr 1fr}.all-folders-bulk-title{grid-column:1/-1}.all-folders-bulk button{width:100%}}
@media(max-width:620px){.all-folders-bulk{grid-template-columns:1fr}.all-folders-toggle{padding:14px}.all-folders-toggle-right em{display:none}}

/* V2.8.192 — drag & drop seguro de pastas */
.pcdm-folder-draggable{cursor:grab}.pcdm-folder-draggable.pcdm-folder-dragging{opacity:.55;cursor:grabbing}.pcdm-folder-draggable.pcdm-folder-drop-target{outline:3px solid rgba(20,92,166,.55);outline-offset:2px;transform:translateY(-1px)}.pcdm-folder-root-drop{margin:0 12px 14px;padding:9px 12px;border:1px dashed #c7d8ea;border-radius:9px;color:#6f8299;font-size:11px;text-align:center;background:#f8fbff;transition:.15s}.pcdm-folder-root-drop.pcdm-folder-drop-target{border-color:#1f63aa;background:#eef6ff;color:#1f63aa;font-weight:600}
/* V2.8.193 — drag & drop global e reordenação de pastas */
.pcdm-folder-draggable{cursor:grab;position:relative}.pcdm-folder-draggable.pcdm-folder-dragging{opacity:.48;cursor:grabbing}.pcdm-folder-draggable.pcdm-folder-drop-target{outline:3px solid rgba(20,92,166,.6);outline-offset:2px}.pcdm-folder-draggable.pcdm-folder-drop-before{box-shadow:inset 0 4px 0 #185aa5}.pcdm-folder-draggable.pcdm-folder-drop-after{box-shadow:inset 0 -4px 0 #185aa5}
.all-folders-tree-panel{border-bottom:1px solid #edf2f7;padding:0 14px 14px}.all-folders-tree-head{display:flex;align-items:baseline;gap:10px;padding:2px 0 9px}.all-folders-tree-head strong{font-size:12px;color:#243957}.all-folders-tree-head span{font-size:10px;color:#7b899b}.all-folders-tree{background:#f8fbff;border:1px solid #dfeaf5;border-radius:10px;padding:8px}.all-tree-node{margin:2px 0}.all-tree-folder{display:flex;align-items:center;gap:9px;min-height:34px;padding:5px 9px;border-radius:7px;background:#fff;border:1px solid #e2eaf3;color:#243957}.all-tree-folder strong{font-size:11px;white-space:nowrap}.all-tree-folder-icon{color:#185aa5}.all-tree-folder-path{font-size:9px;color:#7b899b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.all-tree-folder b{margin-left:auto;color:#8296ad;font-size:14px}.all-tree-children{margin-left:20px;padding-left:10px;border-left:1px solid #d8e4f0}.all-folders-tree .pcdm-folder-root-drop{margin:0 0 6px}.all-folders-tree .pcdm-folder-draggable.pcdm-folder-drop-before{box-shadow:inset 0 3px 0 #185aa5}.all-folders-tree .pcdm-folder-draggable.pcdm-folder-drop-after{box-shadow:inset 0 -3px 0 #185aa5}
@media(max-width:900px){.all-folders-tree-head{flex-direction:column;gap:3px}}
/* V2.8.195 — gestão de pastas: Todas as Pastas e áreas abertas ocupam sempre a largura total. */
.documents-page .all-folders-admin-module{display:block;width:100%;clear:both;grid-column:1/-1;}
.documents-page .all-folders-admin-module .all-folders-content{display:block;width:100%;}
.documents-page .main-folder-banner,.documents-page .subfolders-expanded,.documents-page .breadcrumb-panel,.documents-page .documents-table-panel{width:100%;box-sizing:border-box;clear:both;}
.documents-page .main-folder-banner{display:flex;align-items:center;gap:12px;}
.documents-page .banner-close,.documents-page .breadcrumb-close{margin-left:10px;color:inherit;text-decoration:none;font-size:11px;font-weight:600;opacity:.9;white-space:nowrap;}
.documents-page .banner-close:hover,.documents-page .breadcrumb-close:hover{text-decoration:underline;opacity:1;}
.documents-page .breadcrumb-close{color:#185aa5;margin-left:auto;}


/* V2.8.202 — Equipas institucionais */
.teams-grid .team-card{background:#f1f7fd;border-top:5px solid #1f67ad;}
.team-card .club-project-card-link{justify-content:flex-start;}
.team-card-icon{width:58px;height:58px;border-radius:14px;background:#e7f1fb;color:#1f67ad;display:flex;align-items:center;justify-content:center;font-size:28px;margin-bottom:12px;}
.team-card .team-type{display:inline-flex;align-self:flex-start;background:#eaf3fc;color:#1f67ad;margin-bottom:0;}
.team-card h3{margin:14px 0 12px!important;}
.team-card-meta{font-size:13px;color:#667d96;font-weight:600;margin-bottom:auto;}
.team-members-list{display:flex;flex-direction:column;border:1px solid #dbe5ef;border-radius:16px;overflow:hidden;background:#fff;}
.team-member-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid #edf1f5;}
.team-member-row:last-child{border-bottom:0;}
.team-member-avatar{width:42px;height:42px;min-width:42px;border-radius:50%;background:#e8f2fb;color:#1f5e9d;display:flex;align-items:center;justify-content:center;font-weight:800;}
.team-member-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.team-member-info strong{color:#233b58;font-size:15px;}
.team-member-info span{color:#71849a;font-size:13px;}
.team-admin-badge{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:6px 9px;border-radius:999px;background:#e8f6ee;color:#23734d;white-space:nowrap;}
.team-member-delete{font-size:12px;font-weight:700;color:#b52828;text-decoration:none;}
.team-member-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px;margin-top:18px;}
.team-member-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:11px 15px;font-weight:800;cursor:pointer;}
@media(max-width:900px){.team-member-form{grid-template-columns:1fr 1fr;}.team-member-form button{grid-column:1/-1;}}
@media(max-width:600px){.team-member-row{align-items:flex-start;flex-wrap:wrap;}.team-admin-badge{margin-left:56px;}.team-member-delete{margin-left:auto;}.team-member-form{grid-template-columns:1fr;}}
.team-card-admin-actions{display:flex;gap:12px;padding:0 18px 16px;margin-top:-4px;position:relative;z-index:3}
.team-card-admin-actions a{font-size:12px;font-weight:700;color:#1f67ad;text-decoration:none}
.team-card-admin-actions a.danger{color:#b52828}
.team-admin-edit{margin-top:22px;padding:18px;border:1px solid #dbe5ef;border-radius:14px;background:#f8fbfe}
.team-admin-edit h3{margin:0 0 12px;color:#233b58;font-size:16px}
.team-team-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}
.team-team-form input,.team-team-form textarea{border:1px solid #d4e0ec;border-radius:10px;padding:10px;font:inherit;background:#fff}
.team-team-form textarea{min-height:42px;resize:vertical}
.team-team-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}
.team-member-inline-edit{flex-basis:100%;display:grid;grid-template-columns:1fr 1fr auto auto;gap:8px;margin:8px 0 0 56px}
.team-member-inline-edit input{border:1px solid #d4e0ec;border-radius:8px;padding:8px;font:inherit}
.team-member-inline-edit button{border:0;border-radius:8px;padding:8px 10px;font-weight:700;cursor:pointer;background:#1f67ad;color:#fff}
.team-member-inline-edit .team-member-cancel{background:#edf3f8;color:#34506b}
@media(max-width:900px){.team-team-form{grid-template-columns:1fr 1fr}.team-team-form button{grid-column:1/-1}.team-member-inline-edit{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.team-member-inline-edit{grid-template-columns:1fr;margin-left:0}}
/* V2.8.205 — Equipas: gestão por administrador responsável, alinhada com Clubes e Projetos. */
.team-form-panel .form-grid{align-items:start}
.team-member-actions{margin-left:auto;flex:0 0 auto;white-space:nowrap}
.team-card-admin-actions{justify-content:flex-end}

/* V2.8.207 — Equipas: criação/edição alinhada com Clubes e Projetos; fotografia gerida pelo administrador da equipa. */
.teams-form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.teams-editor-panel .form-actions{margin-top:8px;}
.team-photo-manager{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;margin:0 0 18px;border:1px solid #dbe5ef;border-radius:14px;background:#f8fbfe;}
.team-photo-manager>div{min-width:0;flex:1;}
.team-photo-manager label{font-weight:800;color:#233b58;}
.team-photo-form{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.team-photo-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:10px 14px;font-weight:800;cursor:pointer;}
@media(max-width:900px){.teams-form-grid{grid-template-columns:1fr;}.team-photo-manager{align-items:flex-start;flex-direction:column;}.team-photo-form{width:100%;flex-wrap:wrap;}}

/* V2.8.208 — Equipas: formulário de criação/edição com o mesmo layout visual de Clubes e Projetos. */
.teams-editor-panel .clubs-projects-form{padding:6px 2px 4px;}
.teams-editor-panel .teams-form-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;align-items:end!important;}
.teams-editor-panel .teams-form-grid .cp-field-box{background:#f8fbfe;border:1px solid #d9e5ef;border-radius:14px;padding:15px 16px;box-sizing:border-box;min-width:0;}
.teams-editor-panel .teams-form-grid .cp-field-box label{display:block;font-size:12px;font-weight:800;color:#263f5d;margin:0 0 8px;}
.teams-editor-panel .teams-form-grid .cp-field-box input,.teams-editor-panel .teams-form-grid .cp-field-box select{display:block;width:100%;height:44px;box-sizing:border-box;border:1px solid #cbd9e6;border-radius:10px;background:#fff;padding:0 12px;font-size:14px;color:#24384f;box-shadow:inset 0 1px 2px rgba(30,55,80,.03);font:inherit;}
.teams-editor-panel .teams-form-grid .cp-field-box input:focus,.teams-editor-panel .teams-form-grid .cp-field-box select:focus{border-color:#2871b8;outline:none;box-shadow:0 0 0 3px rgba(40,113,184,.10);}
.teams-editor-panel .teams-form-grid .cp-field-help{margin:7px 0 0;color:#7a8999;font-size:12px;}
.teams-editor-panel .form-actions{display:flex;gap:10px;align-items:center;margin-top:20px;}
@media(max-width:900px){.teams-editor-panel .teams-form-grid{grid-template-columns:1fr!important;gap:12px!important;}}

/* Equipas — ordenação manual dos elementos */
.team-members-sortable .team-member-row{cursor:grab;transition:opacity .15s,box-shadow .15s,transform .15s;}
.team-members-sortable .team-member-row:active{cursor:grabbing;}
.team-members-sortable .team-member-row.team-member-dragging{opacity:.45;box-shadow:0 0 0 2px rgba(31,103,173,.18) inset;}
.team-member-drag{width:22px;min-width:22px;color:#8aa0b5;font-size:18px;line-height:1;text-align:center;letter-spacing:-3px;user-select:none;}
.team-member-row:hover .team-member-drag{color:#1f67ad;}
.team-reorder-form{display:none;}
.club-project-card-bottom-actions{position:relative;z-index:10;}
.club-project-card-bottom-actions a{position:relative;z-index:11;}

.team-members-sortable .team-member-row.team-member-drag-over{box-shadow:inset 0 3px 0 #1f67ad;background:#f5f9fd;}
.team-reorder-saving{font-size:12px;font-weight:700;color:#1f67ad;margin:8px 0 10px;}

/* V2.8.210 — Equipas: edição de elementos e ações de administração. */
.team-member-actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex:0 0 auto;white-space:nowrap;}
.team-member-actions a{font-size:12px;font-weight:700;text-decoration:none;color:#1f67ad;}
.team-member-actions a:hover{color:#174f84;}
.team-member-actions a.danger,.team-member-actions a.team-member-delete,.team-member-actions a.danger:visited,.team-member-actions a.team-member-delete:visited{color:#b52828!important;}
.team-member-actions a.danger:hover,.team-member-actions a.team-member-delete:hover{color:#a21f1f!important;}
.team-member-inline-edit{flex-basis:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:8px;margin:8px 0 0 56px;}
.team-member-inline-edit input,.team-member-inline-edit select{border:1px solid #d4e0ec;border-radius:8px;padding:8px;font:inherit;background:#fff;min-width:0;}
.team-member-inline-edit button,.team-member-inline-edit .team-member-cancel{border:0;border-radius:8px;padding:8px 10px;font-weight:700;cursor:pointer;text-decoration:none;}
.team-member-inline-edit button{background:#1f67ad;color:#fff;}
.team-member-inline-edit .team-member-cancel{background:#edf3f8;color:#34506b;}
.club-project-card-bottom-actions a.danger,.club-project-card-bottom-actions a.danger:visited{color:#b52828!important;}
@media(max-width:600px){.team-member-actions{margin-left:auto;}.team-member-inline-edit{grid-template-columns:1fr;margin-left:0;}}

/* V2.8.212 — atividade realizada: data de início obrigatória e data de fim opcional. */
.clubs-projects-page .cp-activity-main-grid{grid-template-columns:minmax(0,1.45fr) minmax(155px,.7fr) minmax(155px,.7fr) minmax(220px,.9fr);}
@media(max-width:768px){.clubs-projects-page .cp-activity-main-grid{grid-template-columns:1fr;}}


/* V2.8.213 — Reuniões das Equipas */
.team-meetings-section{margin-top:28px;padding-top:24px;border-top:1px solid #e3eaf1}
.team-meetings-heading{align-items:center;margin-bottom:16px}
.team-meetings-heading .cp-edit-button{white-space:nowrap}
.team-meetings-list{border:1px solid #dbe5ef;border-radius:16px;overflow:hidden;background:#fff}
.team-meeting-row-wrap{display:flex;align-items:stretch;border-bottom:1px solid #edf1f5;background:#fff}
.team-meeting-row-wrap:last-child{border-bottom:0}
.team-meeting-row{display:grid;grid-template-columns:150px 110px 1.1fr 2fr 24px;gap:16px;align-items:center;flex:1;min-width:0;padding:15px 18px;text-decoration:none;color:#233b58;transition:background .15s}
.team-meeting-row:hover{background:#f6f9fc}
.team-meeting-row small{display:block;color:#8192a3;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.team-meeting-row strong{display:block;font-size:13px;line-height:1.35}
.team-meeting-date strong{font-size:14px;color:#1f67ad}
.team-meeting-agenda-short{min-width:0}.team-meeting-agenda-short strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-meeting-row>b{font-size:24px;color:#7890a8;text-align:right}
.team-meeting-actions{display:flex;align-items:center;gap:12px;padding:0 16px;white-space:nowrap;border-left:1px solid #edf1f5}
.team-meeting-actions a,.team-meeting-doc-delete{font-size:12px;font-weight:700;text-decoration:none}
.team-meeting-actions a.danger,.team-meeting-doc-delete.danger{color:#b52828!important}
.team-meeting-editor{margin:0 0 18px;padding:20px;border:1px solid #dbe5ef;border-radius:16px;background:#f8fbfe}
.team-meeting-editor h3{margin:0 0 16px;color:#233b58;font-size:17px}
.team-meeting-form{display:flex;flex-direction:column;gap:15px}
.team-meeting-form label{display:block;margin-bottom:7px;color:#304a64;font-size:12px;font-weight:800}
.team-meeting-form input[type=text],.team-meeting-form input[type=date],.team-meeting-form input[type=time],.team-meeting-form textarea{width:100%;box-sizing:border-box;border:1px solid #d4e0ec;border-radius:10px;padding:10px 12px;font:inherit;background:#fff}
.team-meeting-form-grid{display:grid;grid-template-columns:1fr 1fr 2fr;gap:12px}
.team-meeting-attendees{padding-top:2px}.team-meeting-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.team-meeting-checks label{margin:0;padding:9px 10px;border:1px solid #dbe5ef;border-radius:9px;background:#fff;font-weight:600}
.team-meeting-checks input{margin-right:7px}
.team-meeting-detail{padding:18px;border:1px solid #dbe5ef;border-radius:16px;background:#f8fbfe}
.team-meeting-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid #e2eaf2}
.team-meeting-detail-head h3{margin:4px 0 5px;color:#233b58;font-size:20px}.team-meeting-detail-head p{margin:0;color:#71849a}
.team-meeting-eyebrow{font-size:10px;font-weight:800;letter-spacing:.08em;color:#1f67ad}
.team-meeting-agenda,.team-meeting-members{padding:16px 0;border-bottom:1px solid #e2eaf2}.team-meeting-agenda>strong,.team-meeting-members>strong{display:block;margin-bottom:8px;color:#304a64;font-size:13px}.team-meeting-agenda div{line-height:1.55;color:#4d6379}
.team-meeting-member-chips{display:flex;flex-wrap:wrap;gap:7px}.team-meeting-member-chips span{padding:6px 9px;border-radius:999px;background:#eaf3fc;color:#1f5e9d;font-size:12px;font-weight:700}
.team-meeting-documents{padding-top:18px}.team-meeting-documents .heading{margin-bottom:12px}.team-meeting-documents .heading h3{margin:0;color:#233b58}
.team-meeting-doc-list{border:1px solid #dbe5ef;border-radius:12px;overflow:hidden;background:#fff}
.team-meeting-doc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid #edf1f5}.team-meeting-doc-row:last-child{border-bottom:0}
.team-meeting-doc-row>a:first-child{display:flex;align-items:center;gap:10px;min-width:0;flex:1;text-decoration:none;color:#233b58}.team-meeting-doc-row>a:first-child span:last-child{min-width:0}.team-meeting-doc-row strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-meeting-doc-row small{display:block;color:#8393a4;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.team-meeting-doc-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:32px;border-radius:8px;background:#eaf3fc;color:#1f67ad;font-size:10px;font-weight:900;flex:0 0 auto}
.team-meeting-document-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:14px}.team-meeting-document-form input{min-width:0;border:1px solid #d4e0ec;border-radius:10px;padding:10px;font:inherit;background:#fff}.team-meeting-document-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}
@media(max-width:1000px){.team-meeting-row{grid-template-columns:120px 90px 1fr 24px;}.team-meeting-agenda-short{grid-column:1/-1}.team-meeting-checks{grid-template-columns:repeat(2,minmax(0,1fr))}.team-meeting-document-form{grid-template-columns:1fr 1fr}.team-meeting-document-form button{grid-column:1/-1}}
@media(max-width:700px){.team-meeting-row-wrap{display:block}.team-meeting-row{grid-template-columns:1fr 1fr 24px}.team-meeting-row .team-meeting-agenda-short{grid-column:1/-1}.team-meeting-actions{justify-content:flex-end;padding:9px 14px;border-left:0;border-top:1px solid #edf1f5}.team-meeting-form-grid,.team-meeting-checks,.team-meeting-document-form{grid-template-columns:1fr}.team-meeting-document-form button{grid-column:auto}.team-meeting-detail-head{flex-direction:column}}

/* V2.8.215 — Organização das equipas: fotografia, presidente, equipa e reuniões */
.team-photo-manager-first{margin-bottom:24px}
.team-collapsible-section{position:relative}
.team-collapsible-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}
.team-collapsible-heading h2{margin:0;color:#233b58}
.team-collapsible-controls,.team-collapse-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.team-collapse-btn{border:1px solid #d5e1ec;background:#fff;color:#1f67ad;border-radius:9px;padding:7px 11px;font-weight:800;cursor:pointer;line-height:1}
.team-collapse-btn:hover{background:#f3f8fc}
.team-collapse-down span{font-size:12px;margin-left:4px}
.team-collapsible-body[hidden]{display:none!important}
.team-president-preview{display:flex;align-items:center;gap:14px;min-height:72px;padding:12px 14px;border:1px solid #dbe5ef;border-radius:14px;background:#fff}
.team-president-preview .team-member-avatar{flex:0 0 44px;width:44px;height:44px}
.team-president-preview .team-member-info{flex:1;min-width:0}
.team-president-preview .team-member-info strong{display:block;font-size:15px;color:#233b58}
.team-president-preview .team-member-info span{display:block;margin-top:3px;color:#71849a;font-size:13px}
.team-president-preview .team-admin-badge{margin-left:auto}
.team-members-section .team-collapsible-body{margin-top:4px}
.team-meetings-section{margin-top:30px;padding-top:26px;border-top:1px solid #e3eaf1}
.team-meetings-section .team-collapsible-heading{margin-bottom:14px}
.team-meetings-list{border:1px solid #dbe5ef;border-radius:14px;overflow:hidden;background:#fff}
.team-meeting-row-wrap{display:flex;align-items:stretch;border-bottom:1px solid #edf1f5;background:#fff}
.team-meeting-row-wrap:last-child{border-bottom:0}
.team-meeting-row{display:grid;grid-template-columns:72px 145px 105px minmax(160px,1fr) 24px;gap:14px;align-items:center;flex:1;min-width:0;padding:14px 16px;text-decoration:none;color:#233b58;transition:background .15s}
.team-meeting-row:hover{background:#f6f9fc}
.team-meeting-row small{display:block;color:#8192a3;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
.team-meeting-row strong{display:block;font-size:13px;line-height:1.35}
.team-meeting-number{font-size:12px;font-weight:800;color:#1f67ad}
.team-meeting-date strong{font-size:14px;color:#1f67ad}
.team-meeting-row>b{font-size:24px;color:#7890a8;text-align:right}
.team-meeting-actions{display:flex;align-items:center;gap:12px;padding:0 15px;white-space:nowrap;border-left:1px solid #edf1f5}
.team-meeting-actions a{font-size:12px;font-weight:700;text-decoration:none}
.team-meeting-actions a.danger{color:#b52828!important}
.team-meeting-detail{margin-top:16px;padding:18px;border:1px solid #dbe5ef;border-radius:16px;background:#f8fbfe}
.team-meeting-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid #e2eaf2}
.team-meeting-detail-head h3{margin:4px 0 5px;color:#233b58;font-size:20px}
.team-meeting-detail-head p{margin:0;color:#71849a}
.team-meeting-detail-head .back{white-space:nowrap}
.team-meeting-add-button{white-space:nowrap}
@media(max-width:900px){
  .team-collapsible-heading{align-items:flex-start;flex-direction:column}
  .team-collapse-controls{width:100%}
  .team-meeting-row{grid-template-columns:58px 1fr 90px 1fr 20px;gap:9px;padding:12px 10px}
  .team-meeting-actions{padding:0 9px;gap:8px}
}
@media(max-width:650px){
  .team-meeting-row{grid-template-columns:52px 1fr 72px 20px}
  .team-meeting-row>span:nth-child(4){display:none}
  .team-meeting-actions{display:none}
  .team-president-preview{padding:10px}
}

/* V2.8.216 — equipas/reuniões: accordion nativo, sem setas de secção */
.team-members-section .team-collapsible-body{display:block!important}
.team-members-section .team-president-preview{display:none}
.team-meetings-section .team-collapsible-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}
.team-meetings-section .team-collapsible-heading>div:first-child{min-width:0}
.team-meeting-item{border-bottom:1px solid #edf1f5;background:#fff}
.team-meeting-item:last-child{border-bottom:0}
.team-meeting-item summary{list-style:none}
.team-meeting-item summary::-webkit-details-marker{display:none}
.team-meeting-item[open] .team-meeting-arrow{transform:rotate(180deg)}
.team-meeting-arrow{transition:transform .15s ease;font-size:21px!important;color:#1f67ad!important}
.team-meeting-item>.team-meeting-detail{margin:0 14px 14px}
.team-meeting-close-hint{font-size:11px;font-weight:800;color:#7890a8;white-space:nowrap}
.team-meeting-detail-actions{display:flex;gap:12px;align-items:center;padding-top:16px;margin-top:16px;border-top:1px solid #e2eaf2}
.team-meeting-detail-actions a{font-size:12px;font-weight:800;text-decoration:none}
@media(max-width:700px){.team-meetings-section .team-collapsible-heading{align-items:flex-start;flex-direction:column}.team-meeting-row{grid-template-columns:52px 1fr 72px 20px!important}.team-meeting-row>span:nth-child(4){display:block!important}.team-meeting-close-hint{white-space:normal}.team-meeting-detail-actions{flex-wrap:wrap}}

/* V2.8.216 — equipas: reuniões abertas individualmente com <details>, sem setas de secção */
.team-members-section .team-collapsible-body{display:block!important}
.team-members-section .team-president-preview{display:none!important}
.team-meetings-section .team-collapsible-heading{display:flex;justify-content:space-between;align-items:center;gap:18px}
.team-meetings-section .team-collapsible-heading>div:first-child{min-width:0}
.team-meeting-item{border-bottom:1px solid #edf1f5;background:#fff}
.team-meeting-item:last-child{border-bottom:0}
.team-meeting-item>summary{list-style:none;cursor:pointer}
.team-meeting-item>summary::-webkit-details-marker{display:none}
.team-meeting-item[open] .team-meeting-arrow{transform:rotate(180deg)}
.team-meeting-arrow{transition:transform .15s ease;font-size:21px!important;color:#1f67ad!important}
.team-meeting-item>.team-meeting-detail{margin:0 14px 14px}
.team-meeting-close-hint{font-size:11px;font-weight:800;color:#7890a8;white-space:nowrap}
.team-meeting-detail-actions{display:flex;gap:12px;align-items:center;padding-top:16px;margin-top:16px;border-top:1px solid #e2eaf2}
.team-meeting-detail-actions a{font-size:12px;font-weight:800;text-decoration:none}
@media(max-width:700px){.team-meetings-section .team-collapsible-heading{align-items:flex-start;flex-direction:column}.team-meeting-close-hint{white-space:normal}.team-meeting-detail-actions{flex-wrap:wrap}}

/* V2.8.217 — registo e faltas das reuniões */
.team-meeting-record{padding:16px 0;border-bottom:1px solid #e2eaf2}.team-meeting-record>strong{display:block;margin-bottom:8px;color:#304a64;font-size:13px}.team-meeting-record>div{line-height:1.55;color:#4d6379;white-space:normal}
.team-meeting-absences{padding:16px 0;border-bottom:1px solid #e2eaf2}.team-meeting-absence-box{border:1px solid #dbe5ef;border-radius:12px;background:#fff;overflow:hidden}.team-meeting-absence-box>summary{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;list-style:none;color:#304a64;font-size:13px;font-weight:800}.team-meeting-absence-box>summary::-webkit-details-marker{display:none}.team-meeting-absence-box>summary b{font-size:20px;color:#1f67ad;transition:transform .15s ease}.team-meeting-absence-box[open]>summary b{transform:rotate(180deg)}.team-meeting-absence-content{padding:14px;border-top:1px solid #edf1f5}.team-meeting-absence-form .team-meeting-checks{margin-bottom:12px}.team-meeting-absence-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}


/* V2.8.219 — ações de gestão diretamente na linha da reunião */
.team-meeting-row{display:grid;align-items:center;
grid-template-columns:72px 145px 105px minmax(160px,1fr) auto 24px;}
.team-meeting-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;white-space:nowrap;}
.team-meeting-row-actions a{font-size:12px;font-weight:800;text-decoration:none;}
.team-meeting-row-actions a.cp-edit-button{color:#1f67ad!important;}
.team-meeting-row-actions a.danger{color:#c62828!important;}
.team-meeting-row-actions a:hover{text-decoration:underline;}
@media(max-width:900px){
  .team-meeting-row{grid-template-columns:58px 1fr 90px minmax(100px,1fr) auto 20px;gap:9px;padding:12px 10px;}
  .team-meeting-row-actions{gap:9px;}
}
@media(max-width:700px){
  .team-meeting-row{grid-template-columns:52px 1fr 72px auto 20px!important;gap:7px;padding:12px 10px;}
  .team-meeting-row>span:nth-child(4){display:block!important;}
  .team-meeting-row-actions{gap:7px;}
  .team-meeting-row-actions a{font-size:11px;}
}

/* V2.8.222 — gestão de faltas e documentos no editor da reunião */
.team-meeting-editor-section{margin-top:14px;border:1px solid #dbe5ef;border-radius:12px;background:#fff;overflow:hidden}
.team-meeting-editor-section>summary,.team-meeting-new-document>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;color:#304a64;font-size:13px;font-weight:800}
.team-meeting-editor-section>summary::-webkit-details-marker,.team-meeting-new-document>summary::-webkit-details-marker{display:none}
.team-meeting-editor-section>summary b,.team-meeting-new-document>summary b{font-size:20px;color:#1f67ad;transition:transform .15s ease}
.team-meeting-editor-section[open]>summary b,.team-meeting-new-document[open]>summary b{transform:rotate(180deg)}
.team-meeting-editor-section-content{padding:14px;border-top:1px solid #edf1f5}
.team-meeting-editor-section-content .team-meeting-document-form{margin-top:10px}
.team-meeting-new-document{margin-top:12px;border:1px solid #dbe5ef;border-radius:10px;background:#f8fbfe;overflow:hidden}
.team-meeting-new-document>summary{padding:10px 12px}
.team-meeting-new-document .team-meeting-document-form{margin:0;padding:12px;border-top:1px solid #edf1f5;background:#fff}

/* V2.8.224 — faltas e documentos apresentados como caixas da reunião */
.team-meeting-editor-section{margin-top:16px;border:1px solid #dbe5ef;border-radius:14px;background:#fff;overflow:hidden}
.team-meeting-editor-section>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;cursor:pointer;list-style:none;color:#233b58;font-size:15px;font-weight:800;background:#fff}
.team-meeting-editor-section>summary::-webkit-details-marker{display:none}
.team-meeting-editor-section>summary b{font-size:22px;color:#1f67ad;transition:transform .15s ease}
.team-meeting-editor-section[open]>summary b{transform:rotate(180deg)}
.team-meeting-editor-section-content{padding:16px 18px;border-top:1px solid #e5ebf1;background:#f8fbfe}
.team-meeting-absence-form{margin:0}
.team-meeting-absence-form .team-meeting-checks{margin-bottom:12px}
.team-meeting-absence-form button,.team-meeting-add-document-row,.team-meeting-remove-document-row{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:10px 14px;font-weight:800;cursor:pointer}
.team-meeting-remove-document-row{background:#eef3f8;color:#304a64}
.team-meeting-document-rows{display:grid;gap:10px}
.team-meeting-document-entry{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto;gap:10px;align-items:center}
.team-meeting-document-entry input{min-width:0;border:1px solid #d4e0ec;border-radius:10px;padding:10px;font:inherit;background:#fff}
.team-meeting-document-entry button{white-space:nowrap}
.team-meeting-add-document-row{margin-top:12px}
.team-meeting-doc-list{display:grid;gap:8px;margin-bottom:12px}
.team-meeting-save-notice{font-size:12px;font-weight:800;color:#26724f;background:#e9f6ef;border:1px solid #cfe9db;border-radius:10px;padding:8px 12px;white-space:nowrap}
@media(max-width:700px){.team-meeting-document-entry{grid-template-columns:1fr}.team-meeting-save-notice{white-space:normal}}

/* V2.8.227 — Ordem de Trabalhos: título do ponto e texto na mesma linha */
.team-meeting-agenda > div strong{display:inline!important;margin:0!important;color:inherit;font-size:inherit;line-height:inherit;font-weight:800!important;}
.team-meeting-agenda > div{white-space:normal;}

/* V2.8.231 — reuniões: convocatórias, estado terminado e construtor de pontos */
.team-agenda-builder{margin-top:18px}.team-agenda-point{border:1px solid #d9e4ef;border-radius:12px;margin:8px 0;background:#fff}.team-agenda-point summary{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;cursor:pointer;font-weight:700;color:#294562;list-style:none}.team-agenda-point summary::-webkit-details-marker{display:none}.team-agenda-point summary b{font-size:18px;color:#1f67ad}.team-agenda-point>div{padding:0 15px 15px}.team-agenda-point input{width:100%}.team-meeting-add-point{margin:10px 0 0}.team-meeting-finish-form{margin-top:18px}.team-meeting-finish-form button,.team-meeting-ended-badge{font-weight:700}.team-meeting-ended-badge{display:inline-block;margin-top:16px;padding:8px 12px;border-radius:999px;background:#e7f4ec;color:#28744d}.team-meeting-finished-label{margin-top:12px;color:#66809a}.team-meeting-document-edit-form{display:grid;grid-template-columns:1fr 1.3fr 1.3fr auto;gap:10px;align-items:center;margin:8px 0}.dashboard-meetings-panel{margin-bottom:20px}.dashboard-meeting-item,.team-meeting-agenda-card{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 18px;border:1px solid #dce6ef;border-radius:12px;margin-top:10px;text-decoration:none;color:inherit}.dashboard-meeting-item span,.team-meeting-agenda-card .team-meeting-eyebrow{display:block;color:#2368a8;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.dashboard-meeting-item strong,.dashboard-meeting-item small{display:block}.dashboard-meeting-item b{color:#2368a8}.team-meeting-agenda-card h3{margin:6px 0}.team-meeting-agenda-card p{margin:0;color:#66809a}.team-meeting-agenda-card>a{color:#2368a8;font-weight:700}.team-meeting-document-entry{margin-bottom:8px}.team-meeting-document-entry form{width:100%}
@media(max-width:900px){.team-meeting-document-edit-form{grid-template-columns:1fr}.dashboard-meeting-item,.team-meeting-agenda-card{align-items:flex-start;flex-direction:column}}

/* V2.8.232 — apresentação da listagem de reuniões e botão de término */
.team-meeting-finish-form{margin-top:22px}
.team-meeting-finish-form button{border:0;border-radius:10px;background:#2f8f6b;color:#fff;padding:13px 24px;font-size:15px;font-weight:800;cursor:pointer;min-height:48px}
.team-meeting-finish-form button:hover{filter:brightness(.95)}
.team-meeting-doc-list .team-meeting-doc-delete{display:none!important}


/* V2.8.233 — reuniões: apresentação consistente dos pontos, documentos e término */
.team-meeting-agenda>div{white-space:pre-line;}
.team-meeting-row-actions{min-width:112px;}
.team-meeting-row-actions a{display:inline-flex;align-items:center;justify-content:center;padding:5px 0;}
.team-meeting-finish-form{margin:20px 0 18px;}
.team-meeting-finish-form button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:#2f8f6b;color:#fff;padding:14px 28px;min-height:50px;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 2px 5px rgba(47,143,107,.14)}
.team-meeting-finish-form button:hover{filter:brightness(.96)}
.team-meeting-documents{margin-top:18px;padding-top:18px;border-top:1px solid #e2eaf2}
.team-meeting-documents>.heading{margin-bottom:12px}
.team-meeting-doc-list{border:1px solid #dbe5ef;border-radius:12px;overflow:hidden;background:#fff}
.team-meeting-doc-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:1px solid #edf1f5}
.team-meeting-doc-row:last-child{border-bottom:0}
.team-meeting-doc-row>a:first-child{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none;color:inherit;flex:1}
.team-meeting-doc-row>a:first-child span:nth-child(2){min-width:0}
.team-meeting-doc-row a strong{display:block;color:#294562;font-size:13px}
.team-meeting-doc-row a small{display:block;color:#7890a8;margin-top:2px}
.team-meeting-doc-icon{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:34px;border-radius:8px;background:#eaf3fb;color:#1f67ad;font-size:11px;font-weight:800}
.team-meeting-doc-delete{font-size:12px;font-weight:800;text-decoration:none;color:#c62828!important}
.team-meeting-document-edit-form{display:grid;grid-template-columns:180px minmax(180px,1fr) minmax(220px,1.2fr) auto;gap:10px;align-items:center;margin:0;padding:10px 12px;border-bottom:1px solid #edf1f5;background:#fff}
.team-meeting-document-edit-form select,.team-meeting-document-edit-form input[type=text],.team-meeting-document-edit-form input[type=file],.team-meeting-document-form select,.team-meeting-document-form input[type=text],.team-meeting-document-form input[type=file]{width:100%;box-sizing:border-box;border:1px solid #d4e0ec;border-radius:10px;padding:10px 12px;background:#fff;font:inherit;color:#263b55;min-height:42px}
.team-meeting-document-edit-form input[type=file],.team-meeting-document-form input[type=file]{padding:7px 9px}
.team-meeting-document-edit-form button,.team-meeting-document-form button{border:0;border-radius:10px;background:#1f67ad;color:#fff;padding:11px 15px;font-weight:800;cursor:pointer;white-space:nowrap}
.team-meeting-new-document{border:1px solid #dbe5ef;border-radius:12px;background:#fff;overflow:hidden;margin-top:12px}
.team-meeting-new-document>summary{padding:13px 15px;background:#fff}
.team-meeting-new-document .team-meeting-document-form{display:grid;grid-template-columns:180px minmax(180px,1fr) minmax(220px,1.2fr) auto;gap:10px;align-items:center;padding:14px;border-top:1px solid #edf1f5;background:#f8fbfe}
.team-meeting-add-document-row{border-radius:10px!important;background:#1f67ad!important;color:#fff!important}
.team-meeting-document-entry{background:#f8fbfe;border:1px solid #dbe5ef;border-radius:12px;padding:10px}
@media(max-width:1000px){.team-meeting-document-edit-form,.team-meeting-new-document .team-meeting-document-form{grid-template-columns:1fr 1fr}.team-meeting-document-edit-form button,.team-meeting-new-document .team-meeting-document-form button{width:100%}}
@media(max-width:700px){.team-meeting-document-edit-form,.team-meeting-new-document .team-meeting-document-form{grid-template-columns:1fr}.team-meeting-row-actions{min-width:0}.team-meeting-finish-form button{width:100%}}
/* V2.8.235 — registo da reunião fica imediatamente editável após terminar */
.team-meeting-record-form{margin-top:12px}.team-meeting-record-form textarea{width:100%;min-height:180px;resize:vertical;box-sizing:border-box}.team-meeting-record-form button{margin-top:12px;border:0;border-radius:10px;padding:11px 18px;font-weight:700;cursor:pointer}.team-meeting-record-form button:hover{filter:brightness(.97)}

/* V2.8.236 — apresentação do registo da reunião */
.team-meeting-record-form{display:block!important;width:100%!important;margin:12px 0 0!important;padding:0!important}
.team-meeting-record-form textarea{display:block!important;width:100%!important;max-width:100%!important;min-width:100%!important;min-height:180px!important;box-sizing:border-box!important;border:1px solid #d4e0ec!important;border-radius:10px!important;padding:12px 14px!important;background:#fff!important;color:#263b55!important;font:inherit!important;line-height:1.55!important;resize:vertical!important}
.team-meeting-record-form button{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-top:12px!important;border:0!important;border-radius:10px!important;background:#1f67ad!important;color:#fff!important;padding:11px 18px!important;min-height:42px!important;font:inherit!important;font-weight:800!important;cursor:pointer!important}
.team-meeting-record-form button:hover{filter:brightness(.96)}
.team-meeting-record>div{margin-top:10px!important;padding:14px 16px!important;border:1px solid #dbe5ef!important;border-radius:10px!important;background:#fff!important;color:#4d6379!important;line-height:1.6!important;text-align:left!important;white-space:pre-wrap!important;min-height:70px!important}

/* V2.8.237 — correção definitiva da apresentação do Registo da reunião */
.team-meeting-record{display:block!important;width:100%!important;box-sizing:border-box!important;padding:16px 0!important;border-bottom:1px solid #e2eaf2!important}
.team-meeting-record>strong{display:block!important;margin:0 0 10px!important;color:#304a64!important;font-size:13px!important;font-weight:800!important}
.team-meeting-record-form{display:block!important;width:100%!important;margin:0!important;padding:0!important}
.team-meeting-record-form textarea[name="meeting_record"]{display:block!important;width:100%!important;max-width:100%!important;min-width:100%!important;height:180px!important;min-height:180px!important;box-sizing:border-box!important;margin:0!important;padding:12px 14px!important;border:1px solid #d4e0ec!important;border-radius:10px!important;background:#fff!important;color:#263b55!important;font-family:inherit!important;font-size:14px!important;line-height:1.55!important;resize:vertical!important;outline:none!important}
.team-meeting-record-form textarea[name="meeting_record"]:focus{border-color:#1f67ad!important;box-shadow:0 0 0 2px rgba(31,103,173,.10)!important}
.team-meeting-record-form button[type="submit"]{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;margin:12px 0 0!important;padding:11px 18px!important;border:0!important;border-radius:10px!important;background:#1f67ad!important;color:#fff!important;font-family:inherit!important;font-size:13px!important;font-weight:800!important;line-height:1.2!important;cursor:pointer!important}
.team-meeting-record>div:not(.team-meeting-record-form){display:block!important;width:100%!important;box-sizing:border-box!important;margin:0!important;padding:14px 16px!important;border:1px solid #dbe5ef!important;border-radius:10px!important;background:#fff!important;color:#4d6379!important;font-size:14px!important;line-height:1.6!important;text-align:left!important;white-space:pre-wrap!important}

/* V2.8.240 — Dashboard: equipas pessoais com espaçamento alinhado e quatro colunas */
.dashboard-teams-summary{margin-bottom:20px}
.dashboard-teams-summary .heading{margin-bottom:14px}
.dashboard-teams-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 14px 14px!important}
.dashboard-team-card{display:flex;align-items:center;gap:14px;min-width:0;padding:16px 18px;border:1px solid #dce6ef;border-radius:12px;background:#f8fbfe;text-decoration:none;color:inherit;transition:transform .12s ease,border-color .12s ease,box-shadow .12s ease}
.dashboard-team-card:hover{transform:translateY(-1px);border-color:#c7d9e9;box-shadow:0 4px 12px rgba(30,75,110,.07)}
.dashboard-team-icon{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:12px;background:#e8f2fb;color:#1f67ad;font-style:normal;font-size:22px;font-weight:800;overflow:hidden}
.dashboard-team-icon img{width:100%;height:100%;object-fit:cover}
.dashboard-team-card>div{min-width:0;flex:1}
.dashboard-team-card span{display:block;color:#2368a8;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;margin-bottom:3px}
.dashboard-team-card strong{display:block;color:#1f466f;font-size:17px;line-height:1.2;overflow-wrap:anywhere}
.dashboard-team-card>b{font-size:24px;line-height:1;color:#7f98ad;font-weight:600}
@media(max-width:700px){.dashboard-teams-grid{grid-template-columns:1fr;padding:0 10px 10px!important}.dashboard-team-card{padding:14px}}

/* V2.8.241 — perfil pessoal e fotografia do utilizador */
.avatar.has-photo{overflow:hidden;padding:0;background:#e9f2fb;}
.avatar.has-photo img{width:100%;height:100%;display:block;object-fit:cover;}
.profile-panel{overflow:hidden;}
.profile-panel .section-help{margin:0 20px 14px;color:#72839a;font-size:11px;}
.profile-message{margin:0 20px 14px;}
.profile-editor{display:grid;grid-template-columns:82px minmax(180px,1fr) minmax(260px,360px);gap:18px;align-items:center;padding:8px 22px 22px;}
.profile-preview{width:82px;height:82px;border-radius:50%;overflow:hidden;background:#e7f1fb;color:#15539a;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;border:1px solid #d8e5f1;}
.profile-preview img{width:100%;height:100%;display:block;object-fit:cover;}
.profile-info{display:flex;flex-direction:column;gap:4px;}
.profile-info strong{font-size:16px;color:#1b456f;}
.profile-info span{font-size:11px;color:#59708b;}
.profile-info small{font-size:10px;color:#7b8798;}
.profile-photo-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.profile-photo-input{display:inline-flex!important;min-height:36px!important;align-items:center;justify-content:center;}
.profile-photo-form>small{width:100%;text-align:right;font-size:9px;color:#7b8798;}
.profile-photo-form button{min-height:36px;border:0;border-radius:7px;background:#15539a;color:#fff;padding:0 14px;font-size:10px;font-weight:750;cursor:pointer;}
@media(max-width:760px){.profile-editor{grid-template-columns:1fr;text-align:center;justify-items:center;}.profile-info{align-items:center;}.profile-photo-form{justify-content:center;}.profile-photo-form>small{text-align:center;}}

/* V2.8.242 — Espaços */
.spaces-type-nav{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 18px}.spaces-type-nav a{display:inline-flex;align-items:center;padding:9px 13px;border:1px solid #dfe5ec;border-radius:9px;text-decoration:none;color:#475569;background:#fff;font-weight:600;font-size:13px}.spaces-type-nav a.active{background:#eef4fb;border-color:#b8cbe0;color:#1f4f78}.spaces-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 14px 14px}.space-card{border:1px solid #e2e7ed;border-radius:12px;background:#fff;padding:17px;min-width:0}.space-card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.space-type-badge{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#315d82}.space-year{font-size:11px;color:#7b8794}.space-card h3{margin:0 0 8px;font-size:18px}.space-card p{margin:0 0 13px;color:#64748b;line-height:1.5;font-size:13px}.space-card-meta{display:flex;flex-direction:column;gap:4px;color:#64748b;font-size:12px;border-top:1px solid #edf0f3;padding-top:11px}.space-card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:14px}.space-card-actions a:first-child{font-weight:700;text-decoration:none}.spaces-page .pcdm-form-grid{padding:0 20px 20px}.spaces-page .pcdm-form-grid .full{grid-column:1/-1}.space-detail-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;padding:0 14px 14px}.space-detail-panel{border:1px solid #e2e7ed;border-radius:12px;padding:18px;background:#fff}.space-detail-panel h3{margin:0 0 8px}.space-detail-panel p{color:#64748b;line-height:1.55}.space-detail-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.space-detail-meta div{background:#f7f9fb;border-radius:9px;padding:11px}.space-detail-meta small{display:block;color:#7b8794;margin-bottom:4px}.space-detail-meta strong{display:block;color:#273444}.space-coming-soon{color:#64748b;font-size:13px;margin:0}.@media(max-width:900px){.spaces-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.space-detail-grid{grid-template-columns:1fr}}@media(max-width:700px){.spaces-grid{grid-template-columns:1fr}.spaces-type-nav{padding-left:14px;padding-right:14px}.space-detail-grid{grid-template-columns:1fr}}

/* V2.8.243 — Agenda pessoal */
.agenda-personal-list{display:flex;flex-direction:column;gap:10px;padding:0 14px 14px}
.agenda-personal-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid #e5e7eb;border-radius:12px;padding:14px 16px;background:#fff}
.agenda-personal-date{width:54px;height:54px;border-radius:10px;background:#f3f4f6;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}
.agenda-personal-date strong{font-size:20px;color:#1f2937}.agenda-personal-date span{font-size:11px;text-transform:uppercase;color:#6b7280;margin-top:4px}
.agenda-personal-type{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6b7280}
.agenda-personal-content h3{margin:3px 0 5px;font-size:16px;color:#1f2937}.agenda-personal-content p{margin:0;color:#6b7280;font-size:13px}.agenda-personal-card>a{white-space:nowrap;font-weight:600;color:#374151;text-decoration:none}.agenda-personal-card>a:hover{text-decoration:underline}
@media(max-width:700px){.agenda-personal-card{grid-template-columns:54px minmax(0,1fr);gap:12px}.agenda-personal-card>a{grid-column:2}.agenda-personal-date{width:48px;height:48px}.agenda-personal-date strong{font-size:18px}}

.calendar .events>a{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:10px;text-decoration:none;color:inherit}.calendar .events>a:hover{background:#f7f9fc}.calendar .events>a strong,.calendar .events>a span,.calendar .events>a time{display:block}.calendar .events>a time:empty{display:none}

/* V2.8.246 — Correção do calendário da Agenda no Dashboard */
.calendar .events>a{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 17px;border-bottom:1px solid #edf0f4;font-size:10px;min-width:0;}
.calendar .events>a strong,.calendar .events>a span,.calendar .events>a time{display:block;min-width:0;}
.calendar .events>a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.calendar .events>a strong{color:#31577e;white-space:nowrap;}
.calendar .events>a time{color:#7b8798;white-space:nowrap;}
.calendar .events>a:hover{background:#f7f9fc;}
@media(max-width:900px){.calendar .events>a{grid-template-columns:48px minmax(0,1fr) auto;padding:10px 12px;gap:8px;}.calendar .events>a span{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3;}.calendar .events>a time{font-size:9px;}}
@media(max-width:600px){.calendar .events>a{grid-template-columns:48px minmax(0,1fr);}.calendar .events>a time{grid-column:2;}.calendar .events>a span{grid-column:2;}.calendar .events>a strong{align-self:start;}}


/* V2.8.248 — E-mail Institucional */
.institutional-email-panel{overflow:hidden}
.institutional-email-table-wrap{padding:0 20px 20px}
.institutional-email-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #e1e8ef;border-radius:12px;overflow:hidden;background:#fff}
.institutional-email-table th{padding:10px 12px;background:#f6f9fc;border-bottom:1px solid #dfe7ef;color:#49647d;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;text-align:left;white-space:nowrap}
.institutional-email-table th[data-sort-col]{cursor:default}
.institutional-email-table th>span:first-child{vertical-align:middle}
.institutional-sort-arrows{display:inline-flex;flex-direction:column;vertical-align:middle;margin-left:7px;line-height:1;gap:1px}
.institutional-sort-btn{border:0;background:transparent;padding:0 2px;margin:0;min-width:16px;height:12px;line-height:10px;font-size:12px;font-weight:900;color:#9aa9b8;cursor:pointer;border-radius:3px}
.institutional-sort-btn:hover,.institutional-sort-btn:focus{color:#1f67ad;background:#eaf3fb;outline:none}
.institutional-sort-btn.active{color:#1f67ad}
.institutional-email-table th.sorted-asc,.institutional-email-table th.sorted-desc{color:#1f67ad}
.institutional-email-table td{padding:14px 16px;border-bottom:1px solid #edf1f5;color:#27384b;font-size:13px;text-align:left}
.institutional-email-table tbody tr:last-child td{border-bottom:0}
.institutional-email-table tbody tr:hover{background:#f8fbfe}
.institutional-email-table td:first-child{width:170px;color:#1f67ad}
.institutional-email-table td:first-child strong{font-weight:800}
.institutional-email-table td:nth-child(2){min-width:220px}
.institutional-email-table td:nth-child(3){min-width:240px}
.institutional-email-empty{margin:0 20px 20px}
@media(max-width:700px){.institutional-email-table-wrap{padding:0 14px 14px}.institutional-email-table th,.institutional-email-table td{padding:10px 10px;font-size:11px}.institutional-email-table td:first-child{width:auto}.institutional-email-table{min-width:820px}.institutional-email-table-wrap{overflow-x:auto}.institutional-sort-arrows{margin-left:4px}}

/* V2.8.254 — Escola na avaliação usa exatamente o padrão visual das caixas de seleção do formulário. */
.paa-school-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:1000px){.paa-school-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.paa-school-choice-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:480px){.paa-school-choice-grid{grid-template-columns:1fr;}}

/* V2.8.255 — PAA: campo Escola do formulário de atividade com seleção múltipla em cartões */
.paa-form .paa-school-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:100%;}
.paa-form .paa-school-choice-card{display:grid!important;grid-template-columns:24px minmax(0,1fr);align-items:center;min-height:70px;padding:0 16px!important;margin:0!important;border:1px solid #d2dfeb!important;border-radius:9px;background:#f8fbff!important;color:#123b68!important;font-size:12px!important;font-weight:500!important;cursor:pointer;box-sizing:border-box;transition:background .15s ease,border-color .15s ease;}
.paa-form .paa-school-choice-card:hover{background:#f1f7fd!important;border-color:#b9cee2!important;}
.paa-form .paa-school-choice-card:has(input:checked){background:#edf6ff!important;border-color:#185aa5!important;color:#185aa5!important;font-weight:700!important;}
.paa-form .paa-school-choice-card input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;}
@media(max-width:1000px){.paa-form .paa-school-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.paa-form .paa-school-choice-grid{grid-template-columns:1fr;}}

/* V2.8.257 — PAA: Coordenação da Atividade com seleção múltipla de Equipas, Clubes e Projetos. */
.paa-form .paa-coordination-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;}
.paa-form .paa-coordination-choice-card{display:grid!important;grid-template-columns:24px minmax(0,1fr);align-items:center;min-height:64px;padding:0 16px!important;margin:0!important;border:1px solid #d2dfeb!important;border-radius:9px;background:#f8fbff!important;color:#123b68!important;font-size:12px!important;font-weight:500!important;cursor:pointer;box-sizing:border-box;transition:background .15s ease,border-color .15s ease;}
.paa-form .paa-coordination-choice-card:hover{background:#f1f7fd!important;border-color:#b9cee2!important;}
.paa-form .paa-coordination-choice-card:has(input:checked){background:#edf6ff!important;border-color:#185aa5!important;color:#185aa5!important;font-weight:700!important;}
.paa-form .paa-coordination-choice-card input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;}
.paa-coordination-other-wrap{margin-top:12px;max-width:100%;}
.paa-coordination-other-wrap input{width:100%;box-sizing:border-box;}
@media(max-width:1000px){.paa-form .paa-coordination-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.paa-form .paa-coordination-choice-grid{grid-template-columns:1fr;}}

/* V2.8.257 — PAA: Coordenação da Atividade com seleção múltipla de Equipas, Clubes e Projetos. */
.paa-form .paa-coordination-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%;}
.paa-form .paa-coordination-choice-card{display:grid!important;grid-template-columns:24px minmax(0,1fr);align-items:center;min-height:64px;padding:0 16px!important;margin:0!important;border:1px solid #d2dfeb!important;border-radius:9px;background:#f8fbff!important;color:#123b68!important;font-size:12px!important;font-weight:500!important;cursor:pointer;box-sizing:border-box;transition:background .15s ease,border-color .15s ease;}
.paa-form .paa-coordination-choice-card:hover{background:#f1f7fd!important;border-color:#b9cee2!important;}
.paa-form .paa-coordination-choice-card:has(input:checked){background:#edf6ff!important;border-color:#185aa5!important;color:#185aa5!important;font-weight:700!important;}
.paa-form .paa-coordination-choice-card input[type=checkbox]{width:16px!important;height:16px!important;min-width:16px!important;margin:0!important;}
.paa-coordination-other-wrap{margin-top:12px;max-width:100%;}
.paa-coordination-other-wrap input{width:100%;box-sizing:border-box;}
@media(max-width:1000px){.paa-form .paa-coordination-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:600px){.paa-form .paa-coordination-choice-grid{grid-template-columns:1fr;}}
.institutional-email-heading-actions{display:flex;align-items:center;gap:16px;margin-left:auto}.institutional-email-pdf-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:9px;background:#2e9b57;color:#fff!important;font-weight:800;text-decoration:none!important;white-space:nowrap}.institutional-email-pdf-button:hover{filter:brightness(.95);color:#fff!important}@media(max-width:700px){.institutional-email-heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.institutional-email-pdf-button{padding:9px 14px;font-size:12px}}

/* PAA 2.8.267 — avaliação: escolas derivadas da proposta e comparação de participantes */
.paa-school-readonly-option{display:flex!important;align-items:center;gap:9px;}
.paa-school-checkmark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:#1763ad;color:#fff;font-weight:700;font-size:12px;flex:0 0 18px;}
.paa-participant-count-row{display:flex;align-items:center;gap:14px;}
.paa-participant-count-row input{min-width:0;flex:0 0 180px;}
.paa-participant-comparison{font-weight:700;font-size:13px;}
.paa-participant-comparison.is-more{color:#16823b;}
.paa-participant-comparison.is-less{color:#c62828;}
.paa-participant-comparison.is-equal{color:#52657a;}
@media(max-width:700px){.paa-participant-count-row{align-items:flex-start;flex-direction:column;gap:7px}.paa-participant-count-row input{flex-basis:auto;width:100%;}}

/* V2.8.269 — acesso direto ao relatório PDF da atividade avaliada */
.activity-report-link{display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:8px;background:#2e8b57;color:#fff!important;border:1px solid #2e8b57;text-decoration:none!important;font-weight:800;white-space:nowrap;font-size:11px;}
.activity-report-link:hover{background:#26764a;color:#fff!important;}
.activity-list-page td:nth-child(5) .activity-report-link{margin-left:4px;}
@media(max-width:900px){.activity-report-link{margin-left:0!important;}}

/* V2.8.270 — link do relatório PDF junto ao estado da atividade */
.paa-page .paa-table td .paa-report-link{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;padding:6px 10px;border-radius:7px;background:#2e8b57;color:#fff!important;border:1px solid #2e8b57;text-decoration:none!important;font-weight:800;white-space:nowrap;font-size:11px;vertical-align:middle;}
.paa-page .paa-table td .paa-report-link:hover{background:#26764a;color:#fff!important;}
@media(max-width:700px){.paa-page .paa-table td .paa-report-link{margin-left:5px;margin-top:4px;}}

/* V2.8.274 — ações de exportação das tabelas de relatórios */
.activity-reports-page .report-heading-actions{display:flex;align-items:center;gap:12px;margin-left:auto;flex-shrink:0;}
.activity-reports-page .report-export-action{display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border-radius:9px;background:#2e8b57;color:#fff!important;-webkit-text-fill-color:#fff!important;border:1px solid #2e8b57;text-decoration:none!important;font-weight:800;white-space:nowrap;font-size:12px;box-shadow:0 2px 6px rgba(0,0,0,.08);}
.activity-reports-page .report-export-action:hover,.activity-reports-page .report-export-action:focus{background:#26764a;color:#fff!important;-webkit-text-fill-color:#fff!important;transform:translateY(-1px);}
@media(max-width:700px){.activity-reports-page .report-heading-actions{width:100%;margin-left:0;justify-content:space-between;flex-wrap:wrap}.activity-reports-page .report-export-action{width:auto}}
