.oficinaplus-standalone{margin:0!important;padding:0!important;background:#f2f5f9}.oficinaplus-standalone>main{margin:0!important;padding:0!important;max-width:none!important}
:root{--ofp-navy:#101d2f;--ofp-navy-2:#172a43;--ofp-blue:#2f6fed;--ofp-teal:#11a893;--ofp-bg:#f2f5f9;--ofp-card:#fff;--ofp-text:#172033;--ofp-muted:#657083;--ofp-border:#dfe5ec;--ofp-danger:#c7362f;--ofp-warning:#d98d00;--ofp-success:#15956e}.ofp-app,.ofp-auth-shell,.ofp-message-shell{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ofp-text);box-sizing:border-box}.ofp-app *,.ofp-auth-shell *,.ofp-message-shell *{box-sizing:border-box}.ofp-app{display:flex;min-height:100vh;background:var(--ofp-bg);margin:0;position:relative}.ofp-sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:linear-gradient(180deg,var(--ofp-navy),#0d1726);color:#dce7f5;display:flex;flex-direction:column;z-index:100;box-shadow:10px 0 35px rgba(9,20,35,.12)}.ofp-brand{height:78px;padding:17px 20px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.08)}.ofp-brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:linear-gradient(140deg,#2f6fed,#11a893);color:#fff;font-weight:900;font-size:18px;box-shadow:0 8px 22px rgba(38,108,219,.28)}.ofp-brand strong,.ofp-brand small{display:block}.ofp-brand strong{font-size:17px;color:#fff}.ofp-brand small{font-size:11px;color:#9eb0c5;margin-top:2px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ofp-nav{flex:1;padding:14px 10px;overflow-y:auto;scrollbar-width:thin}.ofp-nav-item{width:100%;border:0;background:transparent;color:#aebed1;border-radius:9px;padding:10px 12px;display:flex;align-items:center;gap:11px;text-align:left;font-size:13px;font-weight:620;cursor:pointer;margin:2px 0;transition:.18s}.ofp-nav-item:hover{background:rgba(255,255,255,.06);color:#fff}.ofp-nav-item.is-active{background:linear-gradient(90deg,rgba(47,111,237,.27),rgba(17,168,147,.12));color:#fff;box-shadow:inset 3px 0 #4f8cff}.ofp-nav-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.06);font-size:14px}.ofp-sidebar-footer{padding:13px 17px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;font-size:11px;color:#7f93aa}.ofp-sidebar-footer a{color:#c5d2e2;text-decoration:none}.ofp-main{margin-left:248px;min-width:0;flex:1}.ofp-topbar{height:78px;background:#fff;border-bottom:1px solid var(--ofp-border);display:flex;align-items:center;gap:20px;padding:0 28px;position:sticky;top:0;z-index:50}.ofp-menu-toggle{display:none;border:0;background:#eef3f8;border-radius:8px;width:40px;height:40px;font-size:20px}.ofp-search{height:43px;max-width:600px;flex:1;background:#f3f6f9;border:1px solid #e3e9ef;border-radius:10px;display:flex;align-items:center;gap:9px;padding:0 12px;color:#8c99aa}.ofp-search input{border:0!important;background:transparent!important;outline:0!important;box-shadow:none!important;flex:1;font-size:13px;padding:0!important}.ofp-search small{font-size:10px;background:#e4eaf1;border-radius:999px;padding:3px 7px}.ofp-user{margin-left:auto;display:flex;align-items:center;gap:11px;text-align:right}.ofp-user strong,.ofp-user small{display:block}.ofp-user strong{font-size:13px}.ofp-user small{font-size:11px;color:var(--ofp-muted);margin-top:2px}.ofp-avatar{width:40px;height:40px;border-radius:50%;background:#e8f0ff;color:var(--ofp-blue);display:grid;place-items:center;font-weight:800}.ofp-content{padding:28px;outline:0;max-width:1600px;margin:auto}.ofp-page-title{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}.ofp-page-title h1{font-size:28px;line-height:1.15;margin:5px 0 7px;color:var(--ofp-text)}.ofp-page-title p{margin:0;color:var(--ofp-muted);max-width:760px}.ofp-eyebrow{font-size:10px;letter-spacing:.13em;font-weight:800;color:var(--ofp-blue)}.ofp-primary-action{border:0;border-radius:10px;background:var(--ofp-blue);color:#fff;min-height:44px;padding:8px 16px;font-weight:750;opacity:.65}.ofp-primary-action small{display:block;font-size:9px;font-weight:500}.ofp-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.ofp-metric{background:#fff;border:1px solid var(--ofp-border);border-radius:13px;padding:19px;position:relative;overflow:hidden;box-shadow:0 7px 22px rgba(25,43,69,.045)}.ofp-metric:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#9aa6b5}.ofp-metric-info:before{background:var(--ofp-blue)}.ofp-metric-warning:before{background:var(--ofp-warning)}.ofp-metric-success:before{background:var(--ofp-success)}.ofp-metric>span,.ofp-metric>small{display:block;color:var(--ofp-muted)}.ofp-metric>span{font-size:12px;font-weight:650}.ofp-metric>strong{display:block;font-size:30px;margin:10px 0 6px}.ofp-metric>small{font-size:10px}.ofp-dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:18px}.ofp-widget,.ofp-placeholder{background:#fff;border:1px solid var(--ofp-border);border-radius:14px;padding:22px;box-shadow:0 7px 22px rgba(25,43,69,.045)}.ofp-widget-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid #edf0f4}.ofp-widget-header h2{margin:0 0 4px;font-size:17px}.ofp-widget-header p{margin:0;color:var(--ofp-muted);font-size:12px}.ofp-badge{background:#eef4ff;color:var(--ofp-blue);font-size:11px;font-weight:800;border-radius:999px;padding:5px 9px}.ofp-progress-list>div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #edf0f4;font-size:13px}.ofp-progress-list>div:last-child{border:0}.ofp-progress-list strong{color:var(--ofp-success);font-size:11px;background:#eaf8f3;border-radius:999px;padding:5px 8px}.ofp-next-step{padding-top:17px}.ofp-next-step>span{font-size:10px;font-weight:800;color:var(--ofp-blue);background:#edf4ff;border-radius:7px;padding:5px 8px}.ofp-next-step h3{font-size:22px;margin:17px 0 7px}.ofp-next-step p{color:var(--ofp-muted);line-height:1.55;margin:0}.ofp-placeholder{text-align:center;padding:55px 25px;max-width:720px;margin:60px auto}.ofp-placeholder>span{display:grid;place-items:center;margin:auto;width:68px;height:68px;border-radius:18px;background:#edf4ff;color:var(--ofp-blue);font-size:30px}.ofp-placeholder h2{font-size:24px;margin:20px 0 8px}.ofp-placeholder p{color:var(--ofp-muted);line-height:1.6;max-width:590px;margin:0 auto 22px}.ofp-placeholder div{display:inline-flex;gap:9px;align-items:center;background:#f4f6f9;padding:8px 12px;border-radius:8px}.ofp-loading{display:grid;place-items:center;min-height:55vh;color:var(--ofp-muted)}.ofp-loading span{width:36px;height:36px;border:3px solid #dfe7f2;border-top-color:var(--ofp-blue);border-radius:50%;animation:ofp-spin .8s linear infinite}.ofp-loading p{margin-top:-150px}.ofp-error-card{background:#fff2f0;border:1px solid #ffcbc5;border-radius:12px;padding:22px;color:#8f2d25}.ofp-error-card button{border:0;background:var(--ofp-danger);color:#fff;padding:9px 13px;border-radius:8px}.ofp-overlay{display:none}.ofp-auth-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#f4f7fb}.ofp-auth-visual{background:linear-gradient(145deg,rgba(13,31,53,.96),rgba(25,70,108,.93)),radial-gradient(circle at 20% 20%,#2f6fed,transparent 40%);display:flex;align-items:center;padding:8vw;color:#fff}.ofp-auth-copy{max-width:600px}.ofp-auth-copy h1{font-size:clamp(38px,5vw,68px);line-height:1.02;margin:30px 0 20px;color:#fff}.ofp-auth-copy p{font-size:18px;line-height:1.6;color:#c7d4e5}.ofp-auth-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.ofp-auth-points span{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);border-radius:999px;padding:8px 11px;font-size:12px}.ofp-auth-form{display:grid;place-items:center;padding:40px}.ofp-login-card{width:min(430px,100%);background:#fff;border:1px solid var(--ofp-border);border-radius:18px;padding:34px;box-shadow:0 22px 55px rgba(25,43,69,.1)}.ofp-login-card h2{font-size:27px;margin:7px 0}.ofp-login-card>p{color:var(--ofp-muted);margin:0 0 25px}.ofp-login-card label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.ofp-login-card input[type=text],.ofp-login-card input[type=password]{width:100%;height:45px;border:1px solid #ccd6e2;border-radius:9px;padding:0 11px}.ofp-login-card .login-remember label{display:flex;align-items:center;gap:7px;font-weight:500}.ofp-login-card input[type=submit]{width:100%;height:45px;border:0;border-radius:9px;background:var(--ofp-blue);color:#fff;font-weight:800;cursor:pointer}.ofp-forgot{display:block;text-align:center;margin-top:17px;color:var(--ofp-blue);text-decoration:none;font-size:13px}.ofp-message-shell{min-height:100vh;background:#f3f6fa;display:grid;place-items:center;padding:25px}.ofp-message-card{background:#fff;border:1px solid var(--ofp-border);border-radius:16px;padding:38px;text-align:center;max-width:550px;box-shadow:0 18px 45px rgba(25,43,69,.09)}.ofp-message-icon{width:58px;height:58px;border-radius:50%;background:#fff1db;color:#9a6500;display:grid;place-items:center;font-size:25px;font-weight:900;margin:auto}.ofp-message-card h1{font-size:27px;margin:20px 0 9px}.ofp-message-card p{color:var(--ofp-muted);line-height:1.55}.ofp-message-card a{display:inline-block;margin-top:10px;background:var(--ofp-navy);color:#fff;text-decoration:none;padding:10px 15px;border-radius:8px}@keyframes ofp-spin{to{transform:rotate(360deg)}}@media(max-width:1050px){.ofp-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ofp-dashboard-grid{grid-template-columns:1fr}.ofp-auth-shell{grid-template-columns:1fr}.ofp-auth-visual{display:none}}@media(max-width:820px){.ofp-sidebar{transform:translateX(-100%);transition:.22s}.ofp-sidebar.is-open{transform:translateX(0)}.ofp-main{margin-left:0}.ofp-menu-toggle{display:block}.ofp-overlay{position:fixed;inset:0;background:rgba(8,18,31,.48);z-index:90}.ofp-overlay.is-visible{display:block}.ofp-content{padding:20px}.ofp-topbar{padding:0 16px}.ofp-user>div{display:none}}@media(max-width:580px){.ofp-metric-grid{grid-template-columns:1fr}.ofp-page-title{flex-direction:column}.ofp-search small{display:none}.ofp-auth-form{padding:20px}.ofp-login-card{padding:25px}.ofp-content{padding:15px}}

/* OficinaPlus 0.2.0 — operational modules */
.ofp-search-wrap{position:relative;flex:1;max-width:600px}.ofp-search-wrap .ofp-search{max-width:none}.ofp-search-results{position:absolute;top:51px;left:0;right:0;background:#fff;border:1px solid var(--ofp-border);border-radius:12px;box-shadow:0 18px 45px rgba(18,36,61,.17);padding:7px;z-index:120}.ofp-search-results[hidden]{display:none}.ofp-search-results button{width:100%;border:0;background:#fff;border-radius:8px;padding:10px;display:grid;grid-template-columns:32px 1fr;column-gap:10px;text-align:left;cursor:pointer}.ofp-search-results button:hover{background:#f2f6fb}.ofp-search-results button>span{grid-row:1/3;width:32px;height:32px;border-radius:8px;display:grid;place-items:center;background:#edf4ff;color:var(--ofp-blue)}.ofp-search-results button strong{font-size:12px;color:var(--ofp-text)}.ofp-search-results button small{font-size:10px;color:var(--ofp-muted);margin-top:2px}.ofp-search-results>p{padding:15px;margin:0;color:var(--ofp-muted);text-align:center;font-size:12px}
.ofp-button{border:1px solid transparent;border-radius:9px;min-height:40px;padding:8px 14px;font-size:12px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;transition:.16s}.ofp-button:disabled{opacity:.45;cursor:not-allowed}.ofp-button-primary{background:var(--ofp-blue);color:#fff;box-shadow:0 7px 17px rgba(47,111,237,.18)}.ofp-button-primary:hover{background:#225fd5}.ofp-button-secondary{background:#fff;color:var(--ofp-text);border-color:var(--ofp-border)}.ofp-button-secondary:hover{background:#f5f7fa}
.ofp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ofp-list-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--ofp-border);border-radius:10px;min-height:43px;padding:0 12px;max-width:480px;flex:1;color:var(--ofp-muted)}.ofp-list-search input{border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;flex:1;background:transparent!important;font-size:12px}
.ofp-table-panel{background:#fff;border:1px solid var(--ofp-border);border-radius:14px;box-shadow:0 7px 22px rgba(25,43,69,.045);overflow:hidden}.ofp-responsive-table{overflow-x:auto}.ofp-data-table{width:100%;border-collapse:collapse;min-width:880px}.ofp-data-table th{background:#f7f9fb;color:#637084;font-size:10px;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:12px 15px;border-bottom:1px solid var(--ofp-border);white-space:nowrap}.ofp-data-table td{font-size:12px;padding:14px 15px;border-bottom:1px solid #edf0f4;vertical-align:middle;color:#334155}.ofp-data-table tbody tr:last-child td{border-bottom:0}.ofp-data-table tbody tr:hover{background:#fbfcfe}.ofp-data-table td strong,.ofp-data-table td small{display:block}.ofp-data-table td>small{font-size:10px;color:var(--ofp-muted);margin-top:4px;max-width:290px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ofp-actions-col{text-align:right!important}.ofp-row-actions{text-align:right;white-space:nowrap}.ofp-link-button{border:0;background:transparent;color:var(--ofp-blue);font-size:11px;font-weight:750;cursor:pointer;padding:5px}.ofp-link-button:hover{text-decoration:underline}.ofp-link-danger{color:var(--ofp-danger)}.ofp-count-pill,.ofp-profile-pill,.ofp-registration{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 9px;background:#eef4ff;color:var(--ofp-blue);font-size:10px;font-weight:800}.ofp-registration{border-radius:6px;background:#f0f2f5;color:#25364b;letter-spacing:.08em}.ofp-profile-pill{text-transform:capitalize;background:#f0ecff;color:#6842b8}.ofp-status-badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.ofp-status-ativo{background:#e9f8f2;color:#117b5a}.ofp-status-inativo,.ofp-status-arquivado,.ofp-status-arquivada{background:#eef1f4;color:#687588}.ofp-empty-state{text-align:center;padding:52px 20px}.ofp-empty-state>span{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:#edf4ff;color:var(--ofp-blue);font-size:23px;margin:auto}.ofp-empty-state h3{font-size:18px;margin:15px 0 5px}.ofp-empty-state p{margin:0;color:var(--ofp-muted)}
.ofp-pagination{padding:13px 15px;border-top:1px solid var(--ofp-border);display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--ofp-muted);font-size:11px}.ofp-pagination>div{display:flex;align-items:center;gap:10px}.ofp-pagination .ofp-button{min-height:34px;padding:6px 11px;font-size:10px}.ofp-pagination strong{font-size:10px;color:var(--ofp-text)}
.ofp-info-banner{display:flex;align-items:flex-start;gap:12px;background:#edf5ff;border:1px solid #d6e7ff;border-radius:12px;padding:14px 16px;margin-bottom:15px}.ofp-info-banner>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--ofp-blue);color:#fff;font-weight:900}.ofp-info-banner p{margin:3px 0 0;color:#3c5677;font-size:12px;line-height:1.5}
.ofp-modal-layer{position:fixed;inset:0;z-index:1000}.ofp-modal-layer[hidden]{display:none}.ofp-modal-backdrop{position:absolute;inset:0;background:rgba(7,17,30,.58);backdrop-filter:blur(2px)}.ofp-modal{position:absolute;top:3vh;bottom:3vh;right:3vw;width:min(620px,94vw);background:#fff;border-radius:16px;box-shadow:0 25px 80px rgba(7,17,30,.3);display:flex;flex-direction:column;overflow:hidden;animation:ofp-slide-in .2s ease-out}.ofp-modal-large{width:min(830px,94vw)}.ofp-modal-xlarge{width:min(1080px,96vw)}.ofp-modal form{display:flex;flex-direction:column;min-height:0;flex:1}.ofp-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:21px 23px;border-bottom:1px solid var(--ofp-border)}.ofp-modal-header h2{font-size:21px;margin:0 0 5px}.ofp-modal-header p{margin:0;color:var(--ofp-muted);font-size:11px}.ofp-icon-button{border:0;background:#f0f3f6;border-radius:8px;width:35px;height:35px;cursor:pointer;font-size:22px;color:#5f6c7b}.ofp-modal-body{padding:22px 23px;overflow:auto;flex:1;background:#fbfcfe}.ofp-modal-footer{padding:14px 20px;border-top:1px solid var(--ofp-border);display:flex;justify-content:flex-end;align-items:center;gap:9px;background:#fff}.ofp-modal-open{overflow:hidden}.ofp-form-grid{display:grid;gap:15px}.ofp-form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ofp-form-grid label{display:block;min-width:0}.ofp-form-grid label>span{display:block;font-size:11px;font-weight:750;color:#415168;margin:0 0 6px}.ofp-form-grid input,.ofp-form-grid select,.ofp-form-grid textarea{width:100%;border:1px solid #cad5e1;border-radius:8px;background:#fff;min-height:42px;padding:9px 10px;font-size:12px;outline:none;box-shadow:none}.ofp-form-grid textarea{resize:vertical}.ofp-form-grid input:focus,.ofp-form-grid select:focus,.ofp-form-grid textarea:focus{border-color:#6392eb;box-shadow:0 0 0 3px rgba(47,111,237,.1)}.ofp-form-grid input:disabled,.ofp-form-grid select:disabled{background:#eef1f4;color:#738095}.ofp-form-grid label>small{display:block;color:var(--ofp-muted);font-size:9px;line-height:1.45;margin-top:5px}.ofp-form-grid .ofp-span-2{grid-column:span 2}.ofp-internal-field{background:#fff6f5;border:1px solid #ffd9d4;border-radius:10px;padding:13px}.ofp-internal-field>span{color:#8b3c35!important}.ofp-internal-field textarea{border-color:#efc7c2}.ofp-subsection{margin-top:24px;padding-top:20px;border-top:1px solid var(--ofp-border)}.ofp-subsection h3{font-size:14px;margin:0 0 12px}.ofp-history-list{background:#fff;border:1px solid var(--ofp-border);border-radius:10px;overflow:hidden}.ofp-history-list>div{display:flex;justify-content:space-between;gap:15px;padding:11px 13px;border-bottom:1px solid #edf0f4;font-size:11px}.ofp-history-list>div:last-child{border:0}.ofp-history-list>div>span:last-child{text-align:right;color:var(--ofp-muted)}.ofp-history-list strong,.ofp-history-list small{display:block}.ofp-history-list small{font-size:9px;margin-top:3px}.ofp-muted{color:var(--ofp-muted);font-size:11px;padding:12px}
.ofp-permission-legend{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.ofp-permission-legend span{background:#fff;border:1px solid var(--ofp-border);border-radius:8px;padding:8px 10px;font-size:10px;color:var(--ofp-muted)}.ofp-permission-legend b{color:var(--ofp-text)}.ofp-permission-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.ofp-permission-groups section{background:#fff;border:1px solid var(--ofp-border);border-radius:11px;overflow:hidden}.ofp-permission-groups h3{font-size:12px;margin:0;padding:11px 13px;background:#f5f8fb;border-bottom:1px solid var(--ofp-border)}.ofp-permission-groups label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid #edf0f4;font-size:10px}.ofp-permission-groups label:last-child{border:0}.ofp-permission-groups select{width:105px;min-height:32px;border:1px solid #cad5e1;border-radius:7px;font-size:10px;padding:4px}
.ofp-toast-region{position:fixed;right:22px;bottom:22px;z-index:1500;display:flex;flex-direction:column;gap:8px}.ofp-toast{width:min(390px,calc(100vw - 30px));background:#fff;border:1px solid var(--ofp-border);border-radius:11px;padding:12px 14px;box-shadow:0 14px 38px rgba(11,28,49,.18);display:flex;align-items:center;gap:10px;transform:translateY(15px);opacity:0;transition:.2s}.ofp-toast.is-visible{transform:translateY(0);opacity:1}.ofp-toast>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e8f8f2;color:#147a5a;font-weight:900}.ofp-toast-error>span{background:#fff0ee;color:var(--ofp-danger)}.ofp-toast p{margin:0;font-size:11px;font-weight:650}
@keyframes ofp-slide-in{from{transform:translateX(25px);opacity:.5}to{transform:translateX(0);opacity:1}}
@media(max-width:820px){.ofp-search-wrap{max-width:none}.ofp-page-title .ofp-button{width:100%}.ofp-toolbar{align-items:stretch}.ofp-list-search{max-width:none}.ofp-modal{inset:2vh 2vw;width:auto}.ofp-permission-groups{grid-template-columns:1fr}}
@media(max-width:580px){.ofp-topbar .ofp-search-wrap small{display:none}.ofp-form-grid-2{grid-template-columns:1fr}.ofp-form-grid .ofp-span-2{grid-column:span 1}.ofp-modal-header,.ofp-modal-body{padding-left:16px;padding-right:16px}.ofp-modal-footer{padding:11px 14px}.ofp-pagination{align-items:flex-start;flex-direction:column}.ofp-toast-region{right:15px;bottom:15px}}

/* Agenda, recursos e receção — v0.3.0 */
.ofp-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.ofp-toolbar>select,.ofp-agenda-filters select{min-height:43px;border:1px solid var(--ofp-border);border-radius:10px;background:#fff;padding:0 12px;font-size:11px;color:var(--ofp-text);outline:none}.ofp-modal-actionbar{display:flex;justify-content:flex-end;margin-bottom:14px}.ofp-resource-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;background:var(--resource-color,#2f6fed);box-shadow:0 0 0 3px color-mix(in srgb,var(--resource-color,#2f6fed) 16%,transparent)}
.ofp-client-field{background:#f1fbf7;border:1px solid #cdeee0;border-radius:10px;padding:13px}.ofp-client-field>span{color:#176448!important}.ofp-client-field textarea{border-color:#b9dfcf!important}.ofp-warning-banner{display:flex;align-items:flex-start;gap:12px;background:#fff8e9;border:1px solid #f3dfab;border-radius:12px;padding:14px 16px;margin-bottom:15px}.ofp-warning-banner>span{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#d88b16;color:#fff;font-weight:900}.ofp-warning-banner p{margin:3px 0 0;color:#70531e;font-size:12px;line-height:1.5}
.ofp-agenda-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px;background:#fff;border:1px solid var(--ofp-border);border-radius:13px;padding:11px 13px}.ofp-agenda-navigation,.ofp-agenda-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ofp-agenda-navigation strong{font-size:11px;color:#445268;margin-left:4px}.ofp-agenda-navigation .ofp-button{min-height:36px;padding:5px 11px}.ofp-agenda-filters select{min-height:36px;max-width:190px}
.ofp-week-board{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:10px;overflow-x:auto;padding-bottom:8px}.ofp-day-column{min-height:520px;background:#fff;border:1px solid var(--ofp-border);border-radius:13px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 6px 20px rgba(25,43,69,.035)}.ofp-day-column.is-today{border-color:#8db1f4;box-shadow:0 0 0 2px rgba(47,111,237,.08)}.ofp-day-column>header{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f7f9fb;border-bottom:1px solid var(--ofp-border);padding:11px 12px}.ofp-day-column.is-today>header{background:#edf4ff}.ofp-day-column>header div{display:flex;align-items:center;gap:8px}.ofp-day-column>header span{text-transform:capitalize;font-size:10px;color:var(--ofp-muted);font-weight:750}.ofp-day-column>header strong{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid var(--ofp-border);font-size:12px}.ofp-day-column>header small{font-size:9px;color:var(--ofp-muted)}.ofp-day-appointments{padding:8px;display:flex;flex-direction:column;gap:8px;flex:1}.ofp-day-empty{margin:auto;color:#9aa5b3;font-size:10px;text-align:center}.ofp-day-add{margin:0 8px 8px;border:1px dashed #bfd0e5;background:#f8fbff;color:var(--ofp-blue);border-radius:8px;min-height:34px;font-size:10px;font-weight:800;cursor:pointer}.ofp-day-add:hover{background:#eef5ff}
.ofp-appointment-card{position:relative;border:1px solid #dce4ed;border-left:4px solid var(--appointment-color,#2f6fed);border-radius:10px;background:#fff;padding:9px;cursor:pointer;display:flex;gap:9px;transition:.16s}.ofp-appointment-card:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(25,43,69,.09)}.ofp-appointment-time{min-width:42px;border-right:1px solid #edf0f4;padding-right:8px}.ofp-appointment-time strong,.ofp-appointment-time span{display:block}.ofp-appointment-time strong{font-size:11px}.ofp-appointment-time span{font-size:9px;color:var(--ofp-muted);margin-top:3px}.ofp-appointment-copy{min-width:0;flex:1}.ofp-appointment-copy .ofp-status-badge{padding:3px 6px;font-size:8px}.ofp-appointment-copy h3{font-size:11px;line-height:1.35;margin:6px 0 3px;color:#25364b}.ofp-appointment-copy p{font-size:9px;line-height:1.4;margin:0 0 5px;color:#697689;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ofp-appointment-copy small{display:block;font-size:8px;color:#738095;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ofp-receive-button{position:absolute;right:6px;bottom:6px;border:0;border-radius:6px;background:#e7f7f0;color:#117653;font-size:8px;font-weight:850;padding:5px 7px;cursor:pointer}.ofp-priority-urgente{background:#fff8f7;border-color:#f4c7c2}.ofp-priority-alta{background:#fffaf1}
.ofp-status-pedido{background:#eef3ff;color:#4d63a4}.ofp-status-agendado{background:#eaf2ff;color:#2460b8}.ofp-status-confirmado{background:#e8f8f1;color:#147656}.ofp-status-em_espera,.ofp-status-aguarda_diagnostico{background:#fff4d9;color:#8c6411}.ofp-status-recebido,.ofp-status-em_inspecao{background:#f0eaff;color:#6d42ae}.ofp-status-concluido,.ofp-status-concluida,.ofp-status-conforme{background:#e8f8f1;color:#147656}.ofp-status-cancelado,.ofp-status-cancelada,.ofp-status-falta{background:#f2f3f5;color:#727d8b}.ofp-status-aberta{background:#eaf2ff;color:#2460b8}.ofp-status-atencao{background:#fff4d9;color:#8c6411}.ofp-status-dano,.ofp-status-urgente{background:#ffebe8;color:#ad382c}.ofp-status-nao_verificado{background:#eef1f4;color:#687588}
.ofp-visibility-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:18px}.ofp-visibility-guide article{display:flex;align-items:flex-start;gap:10px;border-radius:11px;padding:12px 13px;background:#fff;border:1px solid var(--ofp-border)}.ofp-visibility-guide article:first-child{background:#fff7f5;border-color:#f2d5d0}.ofp-visibility-guide article:last-child{background:#f1fbf7;border-color:#cdeee0}.ofp-visibility-guide article>span{font-size:17px}.ofp-visibility-guide strong{font-size:11px}.ofp-visibility-guide p{font-size:9px;line-height:1.45;color:var(--ofp-muted);margin:3px 0 0}.ofp-section-help{font-size:10px;line-height:1.5;color:var(--ofp-muted);margin:-6px 0 13px}.ofp-inspection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.ofp-inspection-item{background:#fff;border:1px solid var(--ofp-border);border-radius:11px;padding:12px}.ofp-inspection-item>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.ofp-inspection-item>header strong{font-size:11px;line-height:1.35}.ofp-inspection-item select,.ofp-inspection-item textarea{width:100%;border:1px solid #cad5e1;border-radius:7px;background:#fff;padding:7px 8px;font-size:10px;outline:none}.ofp-inspection-item>header select{width:auto;min-width:120px}.ofp-inspection-item label{display:block;margin-top:8px}.ofp-inspection-item label>span{display:block;font-size:9px;font-weight:750;color:#536176;margin-bottom:4px}.ofp-inspection-item .ofp-client-field{padding:8px;margin-top:9px}.ofp-checkbox-field{display:flex!important;align-items:center;gap:9px;padding-top:25px}.ofp-checkbox-field input{width:18px!important;height:18px!important;min-height:0!important}.ofp-checkbox-field>span{margin:0!important;font-size:10px!important}
@media(max-width:1180px){.ofp-week-board{grid-template-columns:repeat(7,minmax(165px,1fr))}.ofp-agenda-toolbar{align-items:flex-start;flex-direction:column}.ofp-agenda-filters{width:100%}.ofp-agenda-filters select{flex:1;max-width:none}}
@media(max-width:820px){.ofp-header-actions{width:100%;justify-content:stretch}.ofp-header-actions .ofp-button{flex:1}.ofp-week-board{grid-template-columns:repeat(7,minmax(210px,1fr))}.ofp-visibility-guide,.ofp-inspection-grid{grid-template-columns:1fr}}
@media(max-width:580px){.ofp-agenda-navigation strong{width:100%;margin:2px 0 0}.ofp-agenda-filters{display:grid;grid-template-columns:1fr}.ofp-agenda-filters select{width:100%}.ofp-toolbar>select{width:100%}.ofp-toolbar{flex-direction:column}.ofp-modal-actionbar .ofp-button{width:100%}}
.ofp-button-danger{background:#fff1ef;color:#ad382c;border-color:#f1c9c4}.ofp-button-danger:hover{background:#ffe7e3}

/* OficinaPlus 0.4.0 — Orçamentos, aprovações e ordens de serviço */
.ofp-editor-fieldset{border:0;padding:0;margin:0;min-width:0}.ofp-editor-fieldset:disabled{opacity:.92}.ofp-form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ofp-span-3{grid-column:1/-1}.ofp-client-field{background:#effaf5;border:1px solid #b9ead3;border-radius:14px;padding:14px}.ofp-line-editor{margin-top:22px;border-top:1px solid var(--ofp-border,#e4e8ef);padding-top:20px}.ofp-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.ofp-section-heading h3{margin:0 0 4px;font-size:17px}.ofp-section-heading p{margin:0;color:#667085;font-size:13px}.ofp-quote-line,.ofp-work-task{border:1px solid #dfe5ee;border-radius:14px;background:#fff;margin-bottom:10px;overflow:hidden}.ofp-quote-line-main{display:grid;grid-template-columns:120px minmax(230px,2fr) 75px 75px 105px 105px 80px 75px 105px 38px;gap:8px;padding:12px;align-items:end}.ofp-quote-line label,.ofp-work-task label{display:flex;flex-direction:column;gap:5px;min-width:0}.ofp-quote-line label>span,.ofp-work-task label>span{font-size:11px;font-weight:700;color:#667085;text-transform:uppercase;letter-spacing:.02em}.ofp-quote-line input,.ofp-quote-line select,.ofp-work-task input,.ofp-work-task select{width:100%;min-width:0}.ofp-line-description{min-width:220px}.ofp-cost-field{background:#fff7ed;padding:7px;border-radius:9px}.ofp-quote-line-notes{display:grid;grid-template-columns:180px 1fr auto;gap:10px;align-items:end;padding:10px 12px;background:#f8fafc;border-top:1px solid #edf0f5}.ofp-quote-line-notes strong{font-size:16px;padding:9px 2px;white-space:nowrap}.ofp-remove-line,.ofp-remove-task{color:#c24141!important;margin-bottom:2px}.ofp-quote-summary{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px 22px;margin-top:14px;padding:16px;border-radius:14px;background:#101828;color:#fff}.ofp-quote-summary span,.ofp-quote-summary strong{display:flex;gap:8px;align-items:center}.ofp-quote-summary span{font-size:13px;color:#d0d5dd}.ofp-quote-summary strong{font-size:17px}.ofp-quote-summary b{color:#fff}.ofp-quote-summary .ofp-internal-total{background:#344054;border-radius:8px;padding:7px 10px}.ofp-negative{color:#c24141}.ofp-share-box{display:flex;gap:10px}.ofp-share-box input{flex:1;font-family:monospace;background:#f8fafc}.ofp-decision-lines{display:grid;gap:8px;margin-bottom:18px}.ofp-decision-lines>label{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px;border:1px solid #e3e8ef;border-radius:12px}.ofp-decision-lines span{display:flex;flex-direction:column}.ofp-decision-lines small{color:#667085}.ofp-work-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.ofp-work-summary>div{padding:14px;border-radius:13px;background:#f6f8fb;border:1px solid #e8ebf0}.ofp-work-summary span{display:block;font-size:12px;color:#667085;margin-bottom:5px}.ofp-work-summary strong{font-size:18px}.ofp-work-task-head{display:grid;grid-template-columns:24px minmax(220px,2fr) 120px 155px 95px 95px 105px 38px;gap:8px;align-items:end;padding:12px}.ofp-work-task-notes{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:10px 12px;background:#f8fafc;border-top:1px solid #edf0f5}.ofp-drag-handle{color:#98a2b3;font-size:20px;align-self:center}.ofp-history-panel{margin-top:18px;border-top:1px solid #e5e9f0;padding-top:16px}.ofp-history-panel h3{margin:0 0 10px}.ofp-history-panel>div{display:grid;grid-template-columns:145px 180px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #eef1f5;align-items:start}.ofp-history-panel span,.ofp-history-panel p{font-size:12px;color:#667085;margin:0}.ofp-mini-progress{height:5px;background:#e8ecf2;border-radius:99px;overflow:hidden;margin-top:5px;min-width:70px}.ofp-mini-progress span{display:block;height:100%;background:#22a06b;border-radius:99px}.ofp-status-rascunho,.ofp-status-pendente,.ofp-status-aberta{background:#eef2f6;color:#475467}.ofp-status-aguarda_aprovacao,.ofp-status-aguarda_pecas,.ofp-status-pausada{background:#fff4cc;color:#8a5d00}.ofp-status-aprovado,.ofp-status-pronta_entrega,.ofp-status-entregue,.ofp-status-concluida{background:#dff7e9;color:#147a4e}.ofp-status-parcial,.ofp-status-em_reparacao,.ofp-status-em_curso{background:#e8e4ff;color:#5946b2}.ofp-status-rejeitado,.ofp-status-cancelada,.ofp-status-cancelado{background:#fee4e2;color:#b42318}.ofp-status-convertido,.ofp-status-controlo_qualidade{background:#dceeff;color:#175cd3}

.ofp-public-shell{min-height:100vh;background:#f2f5f9;padding:28px;box-sizing:border-box}.ofp-public-brand{max-width:980px;margin:0 auto 18px;display:flex;align-items:center;gap:12px}.ofp-public-brand div{display:flex;flex-direction:column}.ofp-public-brand small{color:#667085}.ofp-public-card{max-width:980px;margin:0 auto;background:#fff;border:1px solid #e2e7ee;border-radius:20px;box-shadow:0 18px 50px rgba(16,24,40,.08);padding:26px}.ofp-public-heading{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #e9edf2;padding-bottom:20px}.ofp-public-heading h1{font-size:28px;margin:6px 0}.ofp-public-heading h1 small{font-size:14px;color:#667085}.ofp-public-heading p{margin:0;color:#475467}.ofp-public-vehicle{display:flex;flex-direction:column;text-align:right}.ofp-public-vehicle strong{font-size:21px}.ofp-public-vehicle span{color:#667085}.ofp-public-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.ofp-public-meta span{padding:12px;background:#f8fafc;border-radius:12px;display:flex;flex-direction:column;gap:4px}.ofp-public-meta b{font-size:11px;text-transform:uppercase;color:#667085}.ofp-public-message{background:#eef8ff;border:1px solid #c9e7ff;padding:14px;border-radius:12px;margin-bottom:18px}.ofp-public-message p{margin:5px 0 0;color:#344054}.ofp-public-lines{display:grid;gap:8px}.ofp-public-line{display:grid;grid-template-columns:35px 1fr auto;gap:12px;align-items:center;border:1px solid #e4e8ee;border-radius:13px;padding:14px}.ofp-public-line>div{display:flex;flex-direction:column;gap:3px}.ofp-public-line small{color:#667085}.ofp-public-decision input{position:absolute;opacity:0}.ofp-public-decision span{width:22px;height:22px;border:2px solid #98a2b3;border-radius:6px;display:block}.ofp-public-decision input:checked+span{background:#1570ef;border-color:#1570ef;box-shadow:inset 0 0 0 4px #fff}.ofp-public-totals{margin:18px 0 22px auto;max-width:380px;display:grid;gap:8px}.ofp-public-totals span,.ofp-public-totals>strong{display:flex;justify-content:space-between;padding:5px 0}.ofp-public-totals>strong{border-top:2px solid #101828;font-size:20px;padding-top:12px}.ofp-public-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-top:1px solid #e5e9ef;padding-top:20px}.ofp-public-fields label{display:flex;flex-direction:column;gap:6px}.ofp-public-fields span{font-size:12px;font-weight:700}.ofp-public-fields input,.ofp-public-fields textarea{width:100%;box-sizing:border-box}.ofp-public-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.ofp-public-result{text-align:center;padding:24px;border-radius:15px;background:#edf9f2}.ofp-public-result>span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#22a06b;color:#fff;font-size:22px}.ofp-public-result h1,.ofp-public-result h2{margin:10px 0 5px}.ofp-public-result p{color:#475467}.ofp-public-result-large{padding:70px 25px}.ofp-public-contact{display:flex;justify-content:space-between;margin-top:22px;padding-top:14px;border-top:1px solid #e8ecf1;color:#667085}.ofp-public-footer{max-width:980px;margin:15px auto;text-align:center;color:#667085;font-size:12px}

@media(max-width:1100px){.ofp-quote-line-main{grid-template-columns:repeat(4,minmax(110px,1fr))}.ofp-line-description{grid-column:span 2}.ofp-work-task-head{grid-template-columns:24px 2fr 1fr 1fr}.ofp-work-task-notes{grid-template-columns:1fr}.ofp-form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.ofp-span-3{grid-column:1/-1}}
@media(max-width:700px){.ofp-form-grid-3{grid-template-columns:1fr}.ofp-form-grid-3>*{grid-column:auto!important}.ofp-quote-line-main,.ofp-work-task-head{grid-template-columns:1fr 1fr}.ofp-line-description,.ofp-task-description{grid-column:1/-1}.ofp-quote-line-notes{grid-template-columns:1fr}.ofp-quote-summary{justify-content:flex-start}.ofp-work-summary{grid-template-columns:1fr 1fr}.ofp-public-shell{padding:10px}.ofp-public-card{padding:16px;border-radius:14px}.ofp-public-heading{flex-direction:column}.ofp-public-vehicle{text-align:left}.ofp-public-meta{grid-template-columns:1fr}.ofp-public-fields{grid-template-columns:1fr}.ofp-public-fields .ofp-span-2{grid-column:auto}.ofp-public-actions{flex-direction:column-reverse}.ofp-public-actions button{width:100%}.ofp-public-line{grid-template-columns:30px 1fr}.ofp-public-line>b{grid-column:2}.ofp-history-panel>div{grid-template-columns:1fr}}

/* OficinaPlus 0.4.0 — versões de orçamento e fluxo de obra */
.ofp-history-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.ofp-history-version{width:100%;display:grid;grid-template-columns:1fr auto;gap:4px 12px;text-align:left;border:1px solid var(--ofp-border,#dbe3ee);background:#fff;border-radius:12px;padding:12px 14px;margin:0 0 8px;cursor:pointer;color:inherit}.ofp-history-version:hover,.ofp-history-version.is-current{border-color:var(--ofp-primary,#2563eb);box-shadow:0 0 0 2px rgba(37,99,235,.08)}.ofp-history-version span{font-weight:700}.ofp-history-version strong{grid-row:1/3;grid-column:2;align-self:center}.ofp-history-version small{color:var(--ofp-muted,#64748b)}
@media(max-width:900px){.ofp-history-grid{grid-template-columns:1fr}}
