/* Calm default view; detail remains available where the decision needs it. */
.os .os-details{margin:14px 0 0;border:0;color:var(--dim);font-size:13px}
.os .os-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;font-weight:500;padding:8px 0;outline-offset:5px}
.os .os-details>summary::-webkit-details-marker{display:none}
.os .os-details>summary>.os-i{width:16px;height:16px;flex:none;transition:transform .22s}
.os .os-details[open]>summary>.os-i{transform:rotate(180deg)}
.os .os-details-body{padding:20px 0 6px;animation:os-detail-in .22s ease}
.os .os-details-body>p{margin:0 0 16px}
.os .os-section-details{border:1px solid var(--rule);border-radius:18px;background:#fff;padding:8px 22px;margin:20px 0;font-size:15px}
.os .os-section-details>.os-details-body{padding-top:20px}
.os .os-section-details>.os-details-body>.os-sec{margin:0;padding:0}
.os .os-section-details .os-proc{margin:0}
.os .os-card .os-sub{padding:12px 0 0;margin:12px 0 0;border-top:1px solid var(--rule)}
.os .os-card .os-body{gap:0}
.os .os-card .os-oh .oh-lv{font-size:11px}
.os .os-card .os-acts{gap:14px}
.os .os-card .os-ov{margin:12px 0 0}
.os .os-details-body .os-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0}
.os .os-proc>header>small{display:none}
.os .os-ph{padding-bottom:28px}
.os .os-sec{margin-top:32px}
.os .os-anch{margin-top:0}
.os .os-footer{margin-top:40px}
@keyframes os-detail-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.os .os-details-body{animation:none}}
@media(max-width:760px){.os .os-section-details{padding:8px 16px}.os .os-details-body{padding-top:18px}}
.os .os-card.is-fac{padding-top:22px}
.os .os-card .os-who,.os .os-card.is-fac .os-who{grid-row:1}
.os .os-card .os-side,.os .os-card.is-fac .os-side{grid-row:1}
.os .os-card .os-body{grid-row:2}
.os .os-card .os-acts{grid-row:3}
.os.os-refined-profile .os-ph .os-acts{grid-column:3;grid-row:1;border:0;margin:0;padding:0}
.os.os-profile-comparison .os-ph .os-acts{grid-column:2}
.os.os-refined-profile .os-main{gap:28px}
.os.os-refined-profile .os-sec{margin:0}
.os.os-refined-profile .os-section-details{margin:0}
.os.os-refined-profile .os-main .os-sec{gap:18px}
.os.os-refined-profile .root .oh-rc{gap:10px}
.os.os-refined-profile .root .oh-rc .os-details{margin-top:4px}
.os.os-refined-profile .os-proc>header>small{display:none}
.os .os-chips .os-chip:nth-of-type(n+5){display:none}
.os .os-chips .os-chip:nth-of-type(3){display:none}
.os .os-chips .os-n{display:none}
@media(max-width:1100px){.os .os-card .os-side,.os .os-card.is-fac .os-side{grid-row:2}.os .os-card .os-body{grid-row:3}.os .os-card .os-acts{grid-row:4}}
@media(max-width:760px){.os .os-card.is-fac{padding-top:18px}.os.os-refined-profile .os-ph .os-acts{grid-column:1/-1;grid-row:2}.os.os-profile-comparison .os-ph .os-acts{grid-column:1}.os.os-refined-profile .os-main{gap:24px}}
/* Internal separators are replaced by the existing balanced row padding. */
body.os :is(.os-nav,.os-bar,.os-footer,.os-tray,.os-sub,.os-acts,.os-grab,.os-mini,.os-acf,.os-popf,.oh-rc-f,.oh-row,.oh-cols,.oh-li,.oh-kv,.oh-evh,.oh-evf,.os-faq,.os-faq details){border-block-width:0!important}
body.os :is(.os-proc>header,.os-pop>label,.os-rows>*,.os-mt>*,.os-glance>*){border-block-width:0!important;border-inline-width:0!important}
body.os :is(.os-div,.os-sep){display:none!important}
body.os hr{display:none!important}
body.os .root .oh-cmp>div{box-shadow:none}
body.os .root :is(.oh-kv>div,.oh-row){box-shadow:none}
/* Detail copy reads as one flow, rather than boxes and pill stacks. */
body.os .root .oh-rc-why{padding:0;border:0;border-radius:0;background:none;box-shadow:none;gap:12px}
body.os .root .oh-rc-m{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}
body.os .root .oh-rc-m :is(.p-tag,.oh-lv){padding:0;border:0;border-radius:0;background:none;box-shadow:none;font-size:12px}
body.os .root .oh-rc-f{margin-top:16px;padding-top:0;gap:16px}
body.os .root .oh-rc-f:empty{display:none}
/* Shared fields have room for both the label and its value. */
body.lp.os{--nav-h:96px}
body.os .os-q{padding:8px;gap:12px}
body.os .os-q .os-f{height:56px;gap:6px;padding-inline:16px 34px}
body.os .os-q .os-fl{font-size:11px;line-height:1.3;display:block}
body.os .os-q .os-fv{gap:10px}
body.os .os-q .os-fv input{font-size:14px;line-height:1.5}
body.os .os-q .os-go{height:48px;padding-inline:16px}
body.os .os-place-search{padding:24px;display:grid;gap:22px;align-content:start}
body.os .os-place-search>h3{padding:0;font-size:17px;margin:0}
body.os .os-place-form{display:grid;width:100%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;gap:16px}
body.os .os-place-form:focus-within{border:0;box-shadow:none}
body.os .os-place-form .os-f{height:72px;flex:none;padding:12px 38px 12px 16px;background:#f5f7f6;border-radius:12px;gap:8px}
body.os .os-place-form .os-go{height:46px;border-radius:10px;width:100%;gap:10px;font-size:14px}
body.os .os-place-form .os-go span{display:inline}
body.os .os-result-context{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;color:var(--faint);font-size:11px;line-height:1.6;margin-top:12px}
body.os .os-result-context :is(.p-tag,.oh-lv){padding:0;border:0;box-shadow:none;background:none;font-size:11px}
body.os .root .oh-g2:has(>.oh-rc:only-child){grid-template-columns:1fr}
@media(max-width:760px){body.lp.os{--nav-h:74px}body.os .os-place-search{padding:20px}body.os .os-place-form .os-fv input{font-size:16px}}
/* A procedure is a heading and its results, not another card around the cards. */
body.os.os-refined-profile .os-proc{padding:0;border:0;border-radius:0;background:none;box-shadow:none;gap:18px}
body.os.os-refined-profile .os-proc>header{padding:0 0 4px}
/* Header: use the original compact height; align both text lines to the value. */
body.lp.os{--nav-h:84px}
body.os .os-nav .os-q{padding:6px;gap:8px}
body.os .os-nav .os-q .os-f{height:42px;gap:2px;padding-left:12px}
body.os .os-nav .os-q .os-fl{padding-left:25px;font-size:10px;line-height:1.3}
body.os .os-nav .os-q .os-fv input{font-size:13px;line-height:1.4}
body.os .os-nav .os-q .os-go{height:42px;padding-inline:13px}
@media(max-width:760px){body.lp.os{--nav-h:74px}}
/* Field icon aligns to the entire field, independently of the label/value stack. */
body.os .os-q .os-fv{padding-left:25px;gap:0}
body.os .os-q .os-fl{padding-left:25px}
body.os .os-q .os-fv>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%)}
body.os .os-nav .os-q .os-fv>svg{left:12px}
