:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#20382e;background:#f4f6f2;font-size:15px;--green:#215c48;--line:#dde5dc;--muted:#65746b}*{box-sizing:border-box}body{margin:0}h1,h2,h3{letter-spacing:-.025em}h1{font-size:2rem;line-height:1.15;margin:0 0 12px}h2{font-size:1.25rem;margin:0 0 16px}h3{font-size:1.05rem;margin:20px 0 12px}p{line-height:1.65;margin:10px 0 18px}a{color:#245e49}button,input,select,textarea{font:inherit}button{background:var(--green);border:1px solid transparent;border-radius:8px;padding:11px 17px;color:white;cursor:pointer;font-weight:600}button:hover{filter:brightness(.95)}button:disabled{opacity:.5;cursor:default}button.secondary{background:white;color:var(--green);border-color:#cbd8cf}label{display:block;font-weight:600;font-size:.9rem;margin-bottom:15px}input,select,textarea{display:block;width:100%;border:1px solid #c7d4cb;border-radius:7px;background:white;padding:11px;margin-top:7px;color:#20382e}textarea{min-height:80px;resize:vertical}input[type=checkbox]{display:inline-block;width:auto;margin-right:7px;accent-color:var(--green)}input[type=file]{font-size:.86rem}input:focus,select:focus,textarea:focus{outline:3px solid #dcecdf;border-color:var(--green)}input[hidden],[hidden]{display:none!important}.app-header{background:#173d31;color:white;padding:18px 28px;display:flex;align-items:center;gap:25px;justify-content:space-between;position:relative}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:white;font-weight:700;font-size:1.15rem}.brand-mark{display:grid;place-items:center;background:#ddecce;color:#214937;border-radius:11px;width:38px;height:38px;font-size:1rem}.app-nav{display:flex;gap:6px;flex-wrap:wrap}.app-nav a{color:#e3eee5;text-decoration:none;font-size:.9rem;padding:10px 12px;border-radius:7px}.app-nav a[aria-current=page]{background:#2c5945;color:white}.app-header .language-control{display:flex;align-items:center;gap:8px;margin:0;color:#e5eee7;font-size:.8rem}.app-header .language-control select{width:135px;margin:0;padding:7px;font-size:.8rem}.app-header #logout{background:transparent;border-color:#567968;padding:8px;font-size:.85rem}.app-main{max-width:1320px;margin:0 auto;padding:32px}.page-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-top p{color:var(--muted);max-width:740px;margin-bottom:0}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.7rem;color:var(--muted);font-weight:700;margin:0 0 10px}.panel,article,#result{background:white;border:1px solid var(--line);border-radius:13px;padding:24px;margin-bottom:22px;box-shadow:0 2px 6px #20382e03}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.grid>*{min-width:0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.form-grid .wide{grid-column:1/-1}.form-grid label{align-self:start}.form-footer{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line);margin-top:20px}.form-footer p{margin:0;font-size:.85rem;color:var(--muted)}.tablist{display:flex;gap:5px;overflow:auto;padding:6px;background:#eaf0e7;border:1px solid #dce5d8;border-radius:10px;margin-bottom:22px}.tablist button{background:transparent;color:#496154;white-space:nowrap;padding:10px 17px;font-size:.9rem;border-radius:7px}.tablist button[aria-selected=true]{background:white;color:#214f3c;box-shadow:0 2px 5px #234f3110}.form-tabs{margin-top:15px}.form-tabs>.tablist{background:#f5f7f3;margin-bottom:18px}.table-card{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;margin:15px 0}.table-toolbar,.table-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;background:#fff}.table-toolbar input{max-width:260px;margin:0;padding:8px 11px;font-size:.86rem}.table-count{font-size:.85rem;font-weight:600;color:#5d7163}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th{background:#f3f6ef;font-weight:600;text-align:left;color:#4b6453;padding:12px 15px;border-bottom:1px solid var(--line);white-space:nowrap}.data-table td{padding:13px 15px;border-bottom:1px solid #e9eee6;text-align:left;vertical-align:top;max-width:420px;overflow-wrap:anywhere}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fafcf8}.data-table tr.new-row{background:#eef7e4}.data-table .empty-cell{padding:28px;text-align:center;color:var(--muted)}.sort-button{padding:0;color:inherit;font-size:inherit;background:none;border:0}.table-footer{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line)}.pager{display:flex;gap:6px}.pager button{font-size:.8rem;padding:6px 10px}.status-chip{display:inline-block;padding:5px 9px;border-radius:20px;background:#edf4e8;color:#36623d;font-size:.78rem;font-weight:600;white-space:nowrap}.table-actions{display:flex;flex-wrap:wrap;gap:6px}.table-actions button{padding:6px 9px;font-size:.79rem}.small,.muted{color:var(--muted);font-size:.87rem}.notice,.warning,.trait-hint{background:#fff7df;border:1px solid #f0e3b9;border-radius:9px;padding:13px 16px;font-size:.86rem;line-height:1.6;margin:15px 0}.success-note{background:#edf5e8;border:1px solid #d9e8d1;padding:13px 16px;border-radius:8px}#message:empty,[role=status]:empty{display:none}#message{padding:12px 15px;border-radius:8px;background:#edf4e8;line-height:1.5;margin:0 0 18px}details{border:1px solid var(--line);padding:14px;border-radius:9px;margin:14px 0}summary{cursor:pointer;font-weight:600}details[open]>summary{margin-bottom:15px}fieldset{border:0;padding:0;min-width:0}legend{font-weight:700}.trait-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.trait-group{padding:16px;margin:14px 0}.profile-save-row{background:#f7faf4;box-shadow:none}.trait-choice{padding:13px}.trait-summary{margin-bottom:14px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:25px}.metrics article{margin:0;padding:20px}.metrics span{font-size:.85rem;color:var(--muted)}.metrics strong{display:block;font-size:2rem;margin-top:7px;color:var(--green)}.summary-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:18px 0}.summary-cards>div{background:#f5f8f1;padding:16px;border:1px solid var(--line);border-radius:10px}.summary-cards strong{display:block;font-size:1.1rem;margin-bottom:6px}.summary-cards span{font-size:.85rem;color:var(--muted)}.empty-state{padding:25px;background:#f7faf4;border-radius:9px;text-align:center;color:var(--muted)}.photo-thumb{width:70px;height:70px;border-radius:8px;object-fit:cover}.photo-gallery{display:flex;gap:12px;flex-wrap:wrap}.photo-gallery img{max-width:150px;max-height:170px;object-fit:cover;border-radius:9px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-footer{font-size:.8rem;color:#829084;padding:18px 32px;text-align:center}.login-main{max-width:1080px;margin:auto;padding:55px 25px}.login-main .page-top{max-width:800px;margin:0 auto 30px}.step-hint{padding:11px 14px;background:#f1f6ed;border-radius:8px;font-size:.86rem;color:#45644d}.inline-error{background:#fff0ec;color:#8a342b;padding:12px;border-radius:7px}.inline-success{color:#28543e}.profile-section p{max-width:none}#result h2{font-size:1.5rem}.pedigree-graph{background:#f8fbf5}#timeline,#creatorChain{padding-left:22px}#birdCharacteristics{font-size:.9rem;color:#49684d}.api-link{font-size:.75rem}.field-note{display:block;font-weight:400;font-size:.8rem;color:var(--muted);line-height:1.5;margin-top:5px}#sessionName{font-size:.8rem;color:#bfd3c3}.search{margin:0;padding:0;border:0;box-shadow:none}.search>div{display:flex;gap:10px}.search input{margin:0}.result-table{font-size:.85rem}.result-table th{background:#f3f6ef}.genetics-main{display:block}.form-tabs>[role=tabpanel]{min-height:180px}.split-panel{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);gap:25px}.split-panel>div{min-width:0}
@media(max-width:1000px){.app-header{flex-wrap:wrap;gap:15px}.app-nav{order:3;width:100%}.split-panel{grid-template-columns:1fr}.summary-cards{grid-template-columns:1fr}.app-main{padding:23px}}
@media(max-width:650px){.app-header{padding:15px}.app-nav a{padding:8px;font-size:.82rem}.app-main{padding:15px}h1{font-size:1.65rem}.page-top{display:block}.grid,.form-grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.panel,article,#result{padding:17px}.tablist button{padding:9px 12px}.table-toolbar{gap:10px;flex-wrap:wrap}.table-toolbar input{max-width:none}.table-scroll{max-width:100%}.data-table{min-width:520px}.trait-grid{grid-template-columns:1fr}.form-footer{display:block}.form-footer button{margin-bottom:10px}.brand{font-size:1rem}.app-header .language-control select{width:115px}.login-main{padding:30px 15px}}

.help-note{background:#f1f6ed;padding:13px 16px;border-radius:8px;color:#45644d;font-size:.87rem}.cross-group{margin:24px 0;padding:16px;border:1px solid var(--line);border-radius:10px}.add-record{background:#f9fbf6}.form-grid>button{align-self:end;justify-self:start;margin-bottom:15px}.form-grid>details{grid-column:1/-1}#timeline,#creatorChain{padding-left:0}.table-card input[type=file]{max-width:235px}.photo-gallery{margin:15px 0}#sessionName{color:#52705f}form{min-width:0} .app-main>*{min-width:0} .data-table td a{white-space:nowrap}

.data-table td{min-width:120px}.data-table td:first-child{min-width:150px}.mobile-table-hint{display:none;font-size:.76rem;color:var(--muted);padding:0 16px 10px;margin:0}@media(max-width:650px){.mobile-table-hint{display:block}.data-table td{min-width:130px}.data-table td:first-child{min-width:155px}}

/* Logo completa com nome; símbolo separado para a aba do navegador. */
.brand-logo{display:block;width:72px;height:72px;object-fit:contain;flex-shrink:0}
@media(max-width:600px){.brand-logo{width:56px;height:56px}}

/* Touch controls, scroll within tables/tabs and readable phone forms. */
.help-main{max-width:960px;margin:auto}.help-main article{scroll-margin-top:20px}.help-index{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.help-index a{padding:10px 12px;background:#edf4e8;border-radius:8px}.help-main li{margin:10px 0;line-height:1.65}.help-main code{overflow-wrap:anywhere}.checkbox-label{display:flex;align-items:center;gap:12px}.checkbox-label input[type=checkbox]{width:22px;height:22px;flex-shrink:0;margin:0}#breederVetFields{grid-column:1/-1}.help-main [hidden]{display:none!important}
@media(max-width:650px){input,select,textarea{font-size:16px}button,summary,.app-nav a,.tablist button,.help-index a{min-height:44px}button{touch-action:manipulation}.app-nav,.tablist{max-width:100%;overflow-x:auto}.tablist{flex-wrap:nowrap}.tablist button{flex-shrink:0;white-space:nowrap}.form-grid,.grid,form{min-width:0}label,input,select,textarea{max-width:100%;box-sizing:border-box}.table-actions{flex-wrap:wrap}.table-scroll{overscroll-behavior-x:contain}.help-main ol,.help-main ul{padding-left:22px}.page-footer{padding:18px 12px}.language-control{margin-left:auto}}

.report-chart{overflow:auto;margin:20px 0;max-width:100%}.report-chart svg{display:block;max-width:none;font-family:system-ui,sans-serif}.report-chart text{fill:#20382e}@media print{.app-header,.page-footer,#reportFilters,#message,.table-toolbar,.table-pagination{display:none!important}.app-main{padding:0!important}.report-chart{overflow:visible}.report-chart svg{width:100%;height:auto}.table-scroll{overflow:visible}.data-table{min-width:0!important;font-size:8pt}.data-table td{min-width:0!important}article{break-inside:avoid;box-shadow:none!important}.metrics{grid-template-columns:repeat(4,1fr)}}

/* Nome comercial junto à logo original; identidade do projeto preservada. */
.app-header .brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand-name{font-size:1.35rem;font-weight:750;letter-spacing:-.025em;line-height:1.2;color:#fff;white-space:nowrap}
@media(max-width:650px){.app-header .brand{gap:8px}.brand-name{font-size:1.15rem}}
@media(max-width:380px){.app-header .brand-logo{width:52px;height:52px}.brand-name{font-size:1.05rem}}
/* Cabeçalho usa só o símbolo existente e o nome NinhosBR. */
.app-header .brand-logo{width:72px;height:72px}
@media(max-width:650px){.app-header .brand-logo{width:56px;height:56px}}

/* Mobile application navigation and card tables. */
.mobile-bottom-nav,.mobile-drawer,.mobile-camera{display:none}.account-main{max-width:800px;margin:auto}.danger-zone{border:1px solid #d6a39c}.danger-button{background:#922e2a}.connection-banner{margin:0;padding:12px;background:#fff0d4;color:#6d4822}.app-header{padding-top:max(14px,env(safe-area-inset-top))}
@media(max-width:650px){.app-nav{display:none!important}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#173d31;color:#fff;padding:8px 4px max(8px,env(safe-area-inset-bottom));z-index:30}.mobile-bottom-nav a,.mobile-bottom-nav button{color:#fff;text-decoration:none;font-size:.74rem;display:flex;align-items:center;justify-content:center;min-height:48px;padding:8px 5px;background:transparent;border-radius:8px}.mobile-bottom-nav [aria-current=page]{background:#2b614e}.mobile-drawer:not([hidden]){display:grid;gap:8px;position:fixed;z-index:40;left:12px;right:12px;bottom:calc(80px + env(safe-area-inset-bottom));max-height:70vh;overflow:auto;background:#fff;border:1px solid #c7d4cb;border-radius:14px;padding:20px;box-shadow:0 8px 40px #0004}.mobile-drawer a{padding:10px;min-height:44px;text-decoration:none}.page-footer{padding-bottom:100px}.app-main,.login-main{padding-bottom:90px}.mobile-camera{display:inline-block;margin:8px 0}.data-table{min-width:0;width:100%}.data-table thead{display:none}.data-table tr{display:block;padding:12px;border-bottom:12px solid #f4f6f2}.data-table td,.data-table td:first-child{display:block;min-width:0;width:100%;border:0;padding:8px 0;overflow-wrap:anywhere}.data-table td:before{content:attr(data-label);display:block;font-size:.75rem;font-weight:650;color:#65746b;margin-bottom:4px}.table-scroll{overflow:visible}.mobile-table-hint{display:none}.report-chart{overflow:auto}.brand-logo{flex-shrink:0}.table-actions{display:flex;flex-wrap:wrap}}
@media print{.mobile-bottom-nav,.mobile-drawer,.connection-banner,.mobile-camera{display:none!important}}

/* Safety dialogs and moderator photo review, usable with touch and keyboard. */
.community-dialog{width:min(92vw,640px);max-height:85dvh;overflow:auto;border:1px solid #bdd0c4;border-radius:16px;padding:24px;color:#173d31;background:#fff}.community-dialog::backdrop{background:rgb(15 35 26 / 65%)}.community-dialog label{display:block;margin:14px 0}.community-dialog button,.community-pagination button{margin:6px;min-height:44px}.community-dialog input[type=checkbox],.terms-check input[type=checkbox]{width:auto;min-height:auto;margin-right:8px}.community-dialog select,.community-dialog textarea{display:block;width:100%;box-sizing:border-box}.moderation-photo{max-width:260px;width:100%;height:auto;max-height:260px;object-fit:contain}.community-main article{margin-bottom:24px}.community-pagination{display:flex;justify-content:space-between;gap:12px}#photos figure{margin:8px;display:flex;flex-direction:column;gap:8px}#birdCommunityActions{display:flex;gap:8px;flex-wrap:wrap}.terms-check{line-height:1.6}

.access-main{max-width:1200px;margin:auto}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.access-card{padding:20px;border:1px solid #ccd9d0;border-radius:14px;margin:16px 0;background:#fff}.access-card form{display:grid;gap:12px}.access-card label{display:grid;gap:6px}.access-card details{padding:12px 0}.access-actions{display:flex;flex-wrap:wrap;gap:8px}.access-main input,.access-main select,.access-main textarea{max-width:100%;box-sizing:border-box}.access-main textarea{min-height:90px}.access-main button{min-height:44px}.access-main [hidden]{display:none!important}.access-main .access-note{color:#435c50;font-size:.95rem}

[data-catalog-choice][hidden]{display:none!important}.profile-new-definition{margin:20px 0;padding:16px;border:1px solid #cbd9ce;border-radius:12px}.profile-new-definition summary{font-weight:700;cursor:pointer}.profile-new-definition form{display:grid;gap:12px}.profile-new-definition textarea{min-height:90px}#ancestralGroup{border-color:#5d866b;background:#f4f8f3}
