/* ICI · identidade institucional alinhada ao Certificados ICI. */
@font-face{font-family:"ICI Poppins";src:url("fonts/ici/Poppins-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"ICI Poppins";src:url("fonts/ici/Poppins-SemiBold.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}
:root{--ici-orange:#F0814F;--ici-charcoal:#414141;--ici-cream:#FFFCF3;--action-ink:#292929;--nav:#414141;--page:#FFFCF3;--text:#414141;--muted:#68615B;--line:#DDD7CD;--accent:#93421F;--sidebar:248px;--topbar:70px;--radius:12px;--bs-primary:#93421F;--bs-primary-rgb:147,66,31;--bs-link-color:#93421F;--bs-link-hover-color:#713116;--bs-body-font-family:"ICI Poppins",Arial,sans-serif;--bs-body-color:#414141;--bs-body-bg:#FFFCF3;--bs-border-color:#DDD7CD;color-scheme:light}
html{background:var(--page);scroll-padding-top:90px;scrollbar-color:#BEB4A7 #F7F3EB}
body{font-family:"ICI Poppins",Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.55;background:var(--page);color:var(--text)}
::selection{background:#F9D5C4;color:#292929}a{text-underline-offset:3px}input,textarea{caret-color:#93421F}input::placeholder,textarea::placeholder{color:#716A64;opacity:1}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #88401F;outline-offset:3px}
h1,h2,h3{color:var(--text);font-weight:600;letter-spacing:-.025em;text-wrap:balance}.page-heading h1{font-size:28px;font-weight:600;line-height:1.25}.page-heading p{font-size:13px;max-width:75ch;color:var(--muted)}h2{font-size:17px;font-weight:600}h3{font-size:15px;font-weight:600}
.topbar{left:var(--sidebar);height:70px;background:#fff;color:var(--text);border-color:var(--line);padding:0 32px;gap:16px}.topbar .brand{color:var(--text);font-size:14px;letter-spacing:0;gap:10px}.brand strong{font-weight:600}.brand i{color:#93421F;font-size:19px}.brand-wrap,.user-menu{min-width:0}.user-identification{font-size:13px;font-weight:600;max-width:260px;overflow-wrap:anywhere}.user-identification small{font-size:11px;font-weight:400;color:var(--muted)}
.topbar .btn-outline-light{--bs-btn-color:#414141;--bs-btn-border-color:#CFC7BD;--bs-btn-hover-color:#414141;--bs-btn-hover-bg:#F7F3EB;--bs-btn-hover-border-color:#B3A99C;--bs-btn-active-bg:#F0E7DC;--bs-btn-active-color:#292929;--bs-btn-active-border-color:#B3A99C}
.sidebar{inset:0 auto 0 0;width:248px;height:100dvh;background:var(--ici-charcoal);padding:22px 14px 0;color:#fff}.sidebar-brand{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:0 12px 22px;text-decoration:none;color:#fff}.sidebar-brand:hover{color:#fff}.sidebar-brand img{display:block;width:180px;height:auto;object-fit:contain}.sidebar-brand span{font-size:16px;font-weight:600;line-height:1.4}.sidebar-brand:focus-visible{outline-color:#FFCAAE}.sidebar-heading{padding:0;margin:0;min-height:0}.sidebar-heading>span{display:none}.sidebar-heading button{position:absolute;top:10px;right:10px;background:#414141;border-color:#888076;min-height:44px;min-width:44px}.sidebar nav{border-top:1px solid #66615A;padding-top:12px}.nav-item{min-height:44px;border-radius:8px;margin:3px 0;padding:10px 12px;gap:12px;color:#F4F1EB;font-size:13px;font-weight:400;line-height:1.5}.nav-item i{font-size:18px;flex-shrink:0}.nav-item:hover{background:#57534D;color:#fff}.nav-item.active{background:var(--ici-orange);color:#292929;font-weight:600}.nav-item:focus-visible{outline-color:#FFCAAE;outline-offset:-3px}.nav-section{font-size:11px;font-weight:600;color:#D9D1C7;padding:22px 12px 6px}.sidebar-footer{margin:16px 8px 0;padding:16px 4px;border-color:#70685E;color:#fff;font-size:12px}.sidebar-footer small{font-size:11px;color:#E3DCD1}
.main-content{padding:30px 32px 40px;max-width:1800px}.panel{border-color:var(--line);border-radius:12px;background:#fff}.panel-heading{padding:20px 22px;border-color:var(--line)}.panel-heading h2{font-weight:600;font-size:16px}.panel-heading a{color:#93421F}.table-toolbar{border-color:var(--line);gap:12px}.input-group-text{background:#F7F3EB;border-color:#BDB4AA;color:#605951}.table-responsive{border-radius:12px;scrollbar-color:#BEB4A7 #F7F3EB}.table th{background:#F5F1E9;color:#605951;font-size:11px;font-weight:600;letter-spacing:.04em;padding:14px 18px}.table td{padding:15px 18px;border-color:#E9E3DA;font-size:13px}.table tbody tr:hover{background:#FFFCF3}.table a.row-title{color:#713116}.row-title{color:#414141;font-weight:600;line-height:1.5}.row-title:hover{color:#713116}.book-cell small,.person-cell small{color:var(--muted)}.book-placeholder{background:#F6F0E4;color:#7B6454}.person-placeholder{background:#F6F0E4;color:#7B6454}.book-cell,.person-cell{gap:14px}.list-note{color:var(--muted)}.pagination-bar{border-color:var(--line);color:var(--muted)}
.btn{min-height:44px;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;line-height:1.4;transition:background-color .16s ease,border-color .16s ease;white-space:normal;touch-action:manipulation}.btn-sm{min-height:38px;padding:8px 12px;font-size:12px}.btn-primary{--bs-btn-color:#292929;--bs-btn-bg:#F0814F;--bs-btn-border-color:#F0814F;--bs-btn-hover-color:#252525;--bs-btn-hover-bg:#E97846;--bs-btn-hover-border-color:#E97846;--bs-btn-active-color:#252525;--bs-btn-active-bg:#E06D3B;--bs-btn-active-border-color:#E06D3B;--bs-btn-disabled-color:#292929;--bs-btn-disabled-bg:#F0814F;--bs-btn-disabled-border-color:#F0814F}.btn-outline-secondary{--bs-btn-color:#414141;--bs-btn-border-color:#BDB4AA;--bs-btn-hover-color:#414141;--bs-btn-hover-bg:#F7F3EB;--bs-btn-hover-border-color:#A99B8C;--bs-btn-active-color:#292929;--bs-btn-active-bg:#F0E7DC;--bs-btn-active-border-color:#A99B8C}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary:focus-visible{box-shadow:none}
.form-label{color:#414141;font-size:13px;font-weight:600}.form-control,.form-select{font-size:14px;min-height:44px;border-color:#BDB4AA;border-radius:8px;background-color:#fff;color:#414141}.form-control:focus,.form-select:focus{color:#414141;border-color:#93421F;box-shadow:0 0 0 3px #F9D5C4}.form-check-input{border-color:#91867A}.form-check-input:checked{background-color:#93421F;border-color:#93421F}.form-check-input:focus{border-color:#93421F;box-shadow:0 0 0 3px #F9D5C4}.form-text{color:var(--muted);font-size:12px}.form-panel{padding:26px}.form-section+.form-section,.form-actions{border-color:var(--line)}.code-label{background:#F0ECE5;color:#605951}.isbn-panel{border-color:var(--line)}.isbn-result{background:#FFF5EB;border-color:#DEBFA8}.isbn-result h3{color:#713116}.selection-summary{background:#F7F3EB;color:#605951}.selection-summary.selected{background:#ECF5E9;color:#25613E}.lookup-results{border-color:#BDB4AA;box-shadow:0 5px 14px #41414115}.lookup-option{font-size:14px;color:#414141;border-color:#E9E3DA}.lookup-option:hover,.lookup-option:focus{background:#FFF0E6}.lookup-empty{color:var(--muted)}
.summary-strip{gap:12px;background:none;border:0;border-radius:0;overflow:visible}.summary-item{padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);gap:14px;min-width:0}.summary-item:last-child{border-right:1px solid var(--line)}.summary-item:hover{border-color:#AF8C71;background:#FFF5EB;color:#713116}.summary-item i{color:#93421F;font-size:24px}.summary-item strong{color:#414141;font-weight:600;font-size:30px}.summary-item>span{min-width:0}.empty-state{color:var(--muted)}.empty-state>i{color:#8B705A}.empty-state h3{color:#414141}.filter-links a{color:#605951;border-radius:8px}.filter-links a:hover{background:#F7F3EB;color:#713116}.filter-links a.active{background:#FBE4D8;color:#713116}.back-link{color:#93421F}.badge{font-weight:600;border-radius:6px}.text-bg-primary{background:#FBE4D8!important;color:#713116!important}.text-bg-success{background:#ECF5E9!important;color:#25613E!important}.text-bg-warning{background:#FCF5D9!important;color:#795315!important}.text-bg-secondary{background:#F0ECE5!important;color:#605951!important}.text-bg-danger{background:#FCEEF0!important;color:#9C2836!important}.text-secondary{color:var(--muted)!important}.text-primary{color:#93421F!important}.alert-info,.environment-notice{background:#F6F0E4;border-color:#E2D8C7;color:#60513F}.alert-success{background:#ECF5E9;border-color:#C4D9BD;color:#25613E}.alert-danger{background:#FCEEF0;border-color:#E3BFC5;color:#9C2836}.alert-warning{background:#FCF5D9;border-color:#E5D9A7;color:#795315}.toast{background:#fff;color:#414141;border-color:var(--line)}
.login-body{background:#FFFCF3;min-height:100dvh;padding:28px 20px}.login-panel{width:450px;max-width:100%;padding:32px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 4px 16px #4141410A}.login-brand{display:flex;flex-direction:column;align-items:center;gap:16px;background:#414141;border-radius:8px;padding:24px;margin-bottom:26px;color:#fff}.login-brand img{width:220px;max-width:100%;height:auto;object-fit:contain;background:transparent;padding:0;border-radius:0}.login-brand span{font-size:17px;font-weight:600}.login-panel h1{font-size:24px;line-height:1.3;font-weight:600;color:#414141}.login-help{color:var(--muted);font-size:12px;line-height:1.65}.login-panel .text-secondary{font-size:14px}.skip-link{color:#713116;border-color:#713116}.menu-scrim{background:#29292966}dialog{border:1px solid var(--line);border-radius:12px;color:#414141;background:#fff}dialog::backdrop{background:#29292966}dialog{overscroll-behavior:contain}
body.portal-module{background:#FFFCF3;color:#414141}.portal-module .main-content{margin:0;padding:28px 32px;min-height:calc(100dvh - 60px)}.portal-module .module-context{background:#fff;border-color:var(--line);gap:6px 16px}.portal-module .module-context a,.portal-module .module-context summary{color:#414141;font-size:13px;font-weight:600}.portal-module .module-context a[aria-current=page]{background:#FBE4D8;color:#713116}.module-context details>div{border-color:var(--line)}.module-context a:focus-visible,.module-context summary:focus-visible{outline-color:#88401F}
::-webkit-scrollbar-thumb{background:#BEB4A7;border-color:#F7F3EB}::-webkit-scrollbar-track{background:#F7F3EB}
@media(max-width:1199px){.main-content{padding:26px}.summary-item{padding:18px 16px}.user-identification{max-width:210px}}
@media(max-width:991px){.topbar{left:0;padding:0 22px}.sidebar{padding-top:24px}.sidebar-brand{padding-top:12px}.summary-strip{gap:12px}.summary-item:nth-child(2){border-right:1px solid var(--line)}.summary-item:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:575px){.topbar{padding:0 14px;gap:10px}.topbar .brand{font-size:13px;gap:8px}.topbar .brand i{display:none}.brand-wrap{gap:10px}.user-identification{max-width:100px;font-size:11px}.user-identification small{font-size:10px}.user-menu{gap:8px}.main-content,.portal-module .main-content{padding:24px 16px 36px}.page-heading h1{font-size:25px}.page-heading p{font-size:13px}.summary-strip{gap:10px}.summary-item{padding:16px 12px;gap:10px;font-size:11px}.summary-item strong{font-size:26px}.summary-item i{display:none}.form-panel,.isbn-panel{padding:22px 18px}.login-body{padding:20px 16px}.login-panel{padding:24px}.login-brand{padding:24px 20px}.login-panel h1{font-size:22px}.table td,.table th{padding:14px}.btn-sm{min-height:40px}.module-context{padding:10px 16px}.report-filters>div:first-child{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.sidebar-brand,.topbar,.sidebar,.module-context{display:none!important}.main-content,.portal-module .main-content{margin:0;padding:0}.summary-strip{display:grid;grid-template-columns:repeat(4,1fr)}.summary-item{padding:10px;background:#fff}body{background:#fff;color:#414141}}
/* Grid items must be allowed to shrink below the login card's intrinsic width. */
.login-body{grid-template-columns:minmax(0,1fr)}.login-main{width:100%;max-width:450px;min-width:0}.login-panel{width:100%;min-width:0}
