/* POULTRY Shared Lab V2 - conspicuously labeled components */
:root { --lab-blue:#daeaf9; --lab-blue-line:#447ba9; --lab-green:#e0f3e5; --lab-green-line:#448d5c; --lab-grey:#e6e9ed; --lab-ink:#23323d; --lab-paper:#ffffff; }
* { box-sizing:border-box; }
body { margin:0; padding: 0; background:#f5f7fa; color:var(--lab-ink); font:16px/1.75 -apple-system,BlinkMacSystemFont,"Yu Gothic",Meiryo,sans-serif; }
a { color:#155989; }
.plab-component-label { display:inline-block; font-size:12px; letter-spacing:.08em; font-weight:700; padding:.25em .7em; border:1px solid currentColor; border-radius:4px; margin:0 0 12px; }
.plab-header { background:var(--lab-blue); border:2px solid var(--lab-blue-line); padding:16px 24px; max-width:1180px; margin:18px auto 12px; border-radius:8px; }
.plab-header-line { display:flex; align-items:baseline; gap:18px; flex-wrap:wrap; }
.plab-brand { font-weight:800; font-size:30px; letter-spacing:.02em; text-decoration:none; color:#123f63; }
.plab-subtitle { font-size:14px; }
.plab-nav { display:flex; flex-wrap:wrap; gap:12px; margin-top:12px; }
.plab-nav a { padding:4px 12px; background:#fff; border-radius:4px; text-decoration:none; }
.plab-layout, .two_column_flexbox, .poultry-shell-layout { display:grid; grid-template-columns:minmax(0, 1fr) 265px; gap:20px; align-items:start; max-width:1180px; margin:0 auto 16px; }
.plab-main, .two_column_main, .poultry-shell-main { min-width:0; background:var(--lab-paper); padding:20px 24px; border:2px solid #9aabb8; border-radius:8px; overflow-x:auto; }
.plab-main-label { display:inline-block; padding:3px 10px; background:#e8edf1; border-radius:4px; font-size:12px; font-weight:700; margin-bottom:10px; }
.two_column_side, .poultry-shell-layout > aside { min-width:0; }
.plab-sidebar { background:var(--lab-green); border:2px solid var(--lab-green-line); border-radius:8px; padding:16px; }
.plab-sidebar h2 { margin:0 0 6px; font-size:20px; }
.plab-side-links { list-style:none; margin:0; padding:0; }
.plab-side-links li { border-bottom:1px solid #bad8c5; padding:5px 0; }
.plab-extra-help { margin-top:16px; background:#fff; padding:12px; border-radius:6px; font-size:13px; }
.plab-extra-help #ReferenceH3 { margin:0; }
.plab-extra-help h4 { margin:10px 0 3px; }
.plab-extra-help p { margin:2px 0 8px; }
#footer, .plab-footer { max-width:1180px; margin:12px auto 18px; }
.plab-footer { background:var(--lab-grey); border:2px solid #7a8792; padding:14px 22px; border-radius:8px; }
.plab-footer-inner { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; font-size:13px; }
.two_column_main table { border-collapse:collapse; }
.two_column_main input[type="number"] { max-width:100%; }
.plab-main img, .two_column_main img, .poultry-shell-main img { max-width:100%; height:auto; }
.poultry-shell-main article { margin:0 0 16px; }
.poultry-shell-main h1 { line-height:1.4; }
.poultry-shell-main .wp-block-table { overflow-x:auto; }
.screen-reader-text { position:absolute; clip:rect(1px,1px,1px,1px); overflow:hidden; }
@media (max-width:800px) { .plab-layout, .two_column_flexbox, .poultry-shell-layout { display:block; margin:0 12px; } .two_column_main, .poultry-shell-main { margin-bottom:16px; padding:16px 12px; } .plab-sidebar { margin:0 0 16px; } .plab-header { margin:10px 12px; padding:12px; } .plab-brand { font-size:24px; } .plab-footer { margin:10px 12px; } }

/* V2.1: Preserve side gutters at intermediate widths on WP and legacy calculators. */
.plab-header,
.plab-layout,
.two_column_flexbox,
.poultry-shell-layout,
#footer,
.plab-footer {
    width: calc(100% - 48px);
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
}
/* Legacy pages wrap the shared footer in #footer; do not inset it twice. */
#footer > .plab-footer {
    width: 100%;
}
@media (max-width: 800px) {
    .plab-header,
    .plab-layout,
    .two_column_flexbox,
    .poultry-shell-layout,
    #footer,
    .plab-footer {
        width: calc(100% - 32px);
        margin-left: auto;
        margin-right: auto;
    }
    #footer > .plab-footer {
        width: 100%;
    }
}

/* === POULTRY LAB V2.2 : ANSWER, FOOTER GUTTER (BEGIN) === */
/* Match the header's breathing room with room below the footer. */
body { padding-bottom: 24px; }
#footer, .plab-footer { margin-bottom: 0; }

/* The calculation logic and form layout are unchanged. Restore visible
   green and light-green grouping ONLY to DateCount.php's ANSWER table. */
#ASta {
    width: 100%; max-width: 760px;
    margin: 20px auto 16px;
    border-collapse: separate; border-spacing: 2px;
    color: #28482a;
}
#ASta caption#AScp {
    caption-side: top; background: #428449; color: #ffffff;
    border-radius: 4px 4px 0 0;
    padding: 8px 12px; font-size: 17px; font-weight: 700;
    text-align: center;
}
#ASta #Astb th,
#ASta #Astb td {
    padding: 8px 10px;
    border: 1px solid #ffffff;
    font-weight: 400;
    background: #e9f5d0;
    vertical-align: middle;
}
#ASta #Astb th { background: #b7df9e; font-weight: 700; }
#ASta #Astb td#td21,
#ASta #Astb td#td31,
#ASta #Astb td#td41 { background: #cce9ad; font-weight: 600; }
#ASta #Astb td#td24,
#ASta #Astb td#td34,
#ASta #Astb td#td44 { background: #d9efa9; }
#ASta #Astb th#td13 { background: #83bf73; color: #173d24; font-size: 20px; font-weight: 700; text-align: center; }
#ASta #Astb td#td34 { font-weight: 700; }
@media (max-width: 800px) {
    #ASta { font-size: 14px; }
    #ASta #Astb th, #ASta #Astb td { padding: 6px 5px; overflow-wrap: anywhere; }
}
/* === POULTRY LAB V2.2 : ANSWER, FOOTER GUTTER (END) === */
