/* OfficeCalculator.Net — Premium application components (scoped; no duplicate global theme rules) */
.oc-appbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:10px;max-width:1160px;width:100%;margin:-12px auto 24px;padding:10px 12px;border:1px solid rgba(216,225,233,.9);border-radius:14px;background:rgba(255,255,255,.9);box-shadow:0 8px 25px rgba(21,49,77,.08);backdrop-filter:blur(12px)}.oc-appbar-search{flex:1;position:relative}.oc-appbar-search input{width:100%!important;min-height:44px;padding-left:42px;background:#f5f8fb}.oc-search-mark{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--oc-muted)}.oc-app-action{min-height:40px!important;margin:0!important;padding:8px 12px!important;background:#eef4f9!important;color:var(--oc-primary)!important;box-shadow:none!important}.oc-app-action:hover{background:#dfeaf4!important;transform:none!important}.oc-search-panel{position:absolute;left:0;right:0;top:52px;max-height:min(520px,70vh);overflow:auto;border:1px solid var(--oc-border);border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(17,43,68,.18)}.oc-search-item{display:block;padding:13px 15px;border-bottom:1px solid #edf1f5;text-decoration:none}.oc-search-item:last-child{border-bottom:0}.oc-search-item:hover,.oc-search-item.active{background:#e8f2fa}.oc-search-item strong{display:block;color:var(--oc-primary);font-size:.98rem}.oc-search-item span{display:block;color:var(--oc-muted);font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-search-empty{padding:20px;color:var(--oc-muted);text-align:center}.oc-search-shortcut{font-size:.75rem;color:#718294;border:1px solid #ccd7e1;border-radius:5px;padding:2px 5px;background:#fff}
.oc-toast{position:fixed;right:20px;bottom:20px;z-index:9999;padding:12px 16px;border-radius:10px;background:var(--oc-primary);color:#fff;box-shadow:var(--oc-shadow);animation:ocIn .2s ease}.oc-backtop{position:fixed;right:18px;bottom:18px;z-index:90;width:46px;height:46px;min-height:46px;padding:0;border-radius:50%;opacity:0;pointer-events:none}.oc-backtop.show{opacity:1;pointer-events:auto}.oc-favorite-active{background:#fff1c8!important;color:#7c5b00!important}
/* Related and popular calculators */
.oc-discovery-wrap{width:100%;margin:22px 0 32px}.oc-discovery{margin:0 0 22px;padding:clamp(18px,3vw,28px);border:1px solid var(--oc-border);border-radius:16px;background:var(--oc-surface);box-shadow:var(--oc-shadow-sm)}.oc-discovery-heading{margin-bottom:18px}.oc-discovery-heading h2{margin:.2rem 0 .3rem;font-size:clamp(1.35rem,2.5vw,1.8rem)}.oc-discovery-heading p{margin:0;color:var(--oc-muted);font-size:.96rem}.oc-eyebrow{display:inline-block;color:var(--oc-accent);font-size:.76rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.oc-discovery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.oc-discovery-card{display:grid;grid-template-columns:42px minmax(0,1fr) 22px;align-items:center;gap:12px;min-height:82px;padding:14px;border:1px solid var(--oc-border);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fbfd);color:var(--oc-text);text-decoration:none;box-shadow:0 2px 8px rgba(20,45,70,.045);transition:border-color .17s,transform .17s,box-shadow .17s}.oc-discovery-card:hover{border-color:#a9c9e2;color:var(--oc-text);transform:translateY(-2px);box-shadow:0 9px 20px rgba(20,45,70,.10)}.oc-card-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--oc-accent-soft);color:var(--oc-primary);font-size:1.1rem;font-weight:850}.oc-card-body{min-width:0}.oc-card-body strong{display:block;color:var(--oc-primary-3);font-size:.97rem;line-height:1.3}.oc-card-body small{display:block;margin-top:4px;color:var(--oc-muted);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-card-arrow{color:var(--oc-accent);font-size:1.15rem;transition:transform .17s}.oc-discovery-card:hover .oc-card-arrow{transform:translateX(3px)}.oc-popular-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#edf5fb 0%,#f8fbfd 70%,#eef6fc 100%)}.oc-popular-section::before{content:"";position:absolute;right:-70px;top:-85px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(47,136,199,.13),rgba(47,136,199,0) 70%);pointer-events:none}.oc-discovery-heading-compact{position:relative;margin-bottom:16px}.oc-discovery-heading-compact p{max-width:720px;margin-top:5px}.oc-popular-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.oc-popular-link{display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:11px;min-width:0;min-height:72px;padding:12px 13px;border:1px solid #c9ddea;border-radius:12px;background:rgba(255,255,255,.94);color:var(--oc-text);text-decoration:none;box-shadow:0 3px 10px rgba(20,45,70,.055);transition:border-color .17s,transform .17s,box-shadow .17s,background-color .17s}.oc-popular-link:hover{border-color:var(--oc-accent);background:#fff;color:var(--oc-text);transform:translateY(-2px);box-shadow:0 9px 20px rgba(20,45,70,.11)}.oc-popular-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--oc-accent-soft);color:var(--oc-primary);font-size:1.05rem;font-weight:850}.oc-popular-copy{min-width:0}.oc-popular-copy strong{display:block;color:var(--oc-primary-3);font-size:.91rem;line-height:1.27}.oc-popular-copy small{display:block;margin-top:3px;color:var(--oc-muted);font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-popular-arrow{color:var(--oc-accent);font-size:1.05rem;transition:transform .17s}.oc-popular-link:hover .oc-popular-arrow{transform:translateX(3px)}
/* Search results and sitemap */
.oc-search-page{max-width:930px;margin:auto}.oc-premium-search{display:flex;gap:10px;padding:14px;border:1px solid var(--oc-border);border-radius:16px;background:var(--oc-surface);box-shadow:var(--oc-shadow)}.oc-premium-search input{flex:1;width:100%!important;min-height:54px;font-size:1.08rem}.oc-premium-search button{margin:0;min-width:120px}.search-info{margin:20px 0;color:var(--oc-muted)}.result-item{padding:18px 20px;margin:0 0 12px;border:1px solid var(--oc-border);border-radius:12px;background:var(--oc-surface);box-shadow:var(--oc-shadow-sm)}.result-title{font-size:1.25rem;margin:0 0 5px}.result-url{color:var(--oc-success);font-size:.88rem;font-weight:700}.result-excerpt{margin:7px 0 0;font-size:.98rem}.no-results{text-align:center;padding:45px 20px}.oc-button-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin:4px 5px 4px 0;padding:10px 18px;border-radius:9px;background:linear-gradient(180deg,var(--oc-primary-2),var(--oc-primary));color:#fff!important;font-weight:700;text-decoration:none;box-shadow:0 4px 11px rgba(23,63,103,.18)}
.oc-sitemap{max-width:1120px;margin:auto}.oc-sitemap>p{max-width:780px}.oc-sitemap-search{position:sticky;top:12px;z-index:20;margin:20px 0;padding:14px;border:1px solid var(--oc-border);border-radius:13px;background:rgba(255,255,255,.94);box-shadow:var(--oc-shadow-sm);backdrop-filter:blur(10px)}.oc-sitemap-search label{display:block;margin:0 0 6px}.oc-sitemap-search input{width:100%!important}.oc-sitemap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.oc-sitemap-group{padding:18px;border:1px solid var(--oc-border);border-radius:13px;background:var(--oc-surface);box-shadow:var(--oc-shadow-sm)}.oc-sitemap-group h2{margin:0 0 12px;font-size:1.25rem}.oc-sitemap-group ul{margin:0;padding-left:1.25rem}.oc-sitemap-group li{margin:.34rem 0;font-size:.96rem}.oc-sitemap-group li[hidden],.oc-sitemap-group[hidden]{display:none}
body.oc-dark{--oc-bg:#101923;--oc-surface:#17232f;--oc-surface-2:#1c2b38;--oc-text:#e8eef4;--oc-muted:#aebdca;--oc-border:#334554;background:#101923;color:var(--oc-text)}body.oc-dark .right-column,body.oc-dark .cal-section,body.oc-dark .oc-appbar,body.oc-dark input,body.oc-dark select,body.oc-dark textarea,body.oc-dark table,body.oc-dark .oc-discovery,body.oc-dark .oc-discovery-card,body.oc-dark .oc-popular-link,body.oc-dark .result-item,body.oc-dark .oc-sitemap-group{background:var(--oc-surface);color:var(--oc-text)}body.oc-dark p,body.oc-dark li,body.oc-dark label{color:#c5d1dc}body.oc-dark .oc-card-body strong{color:#e8f3fb}body.oc-dark .oc-appbar-search input{background:#111d27}body.oc-dark .oc-search-panel{background:#17232f}body.oc-dark .oc-popular-section{background:#162633}
@keyframes ocIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){.oc-appbar{top:72px;margin:0 0 18px;border-radius:12px}.oc-appbar .oc-label{display:none}}
@media(max-width:900px){.oc-popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.oc-discovery-grid{grid-template-columns:1fr}.oc-sitemap-grid{grid-template-columns:1fr}.oc-sitemap-search{top:76px}}
@media(max-width:600px){.oc-appbar{gap:7px;padding:8px}.oc-app-action{padding:8px 10px!important}.oc-search-shortcut{display:none}.oc-premium-search{flex-direction:column}.oc-premium-search button{width:100%}.oc-discovery{padding:17px 14px}.oc-popular-grid{grid-template-columns:1fr}.oc-popular-link{min-height:68px}}
@media(max-width:420px){.oc-card-icon,.oc-popular-icon{width:38px;height:38px}.oc-discovery-card,.oc-popular-link{grid-template-columns:38px minmax(0,1fr) 18px;padding:12px}}
@media print{.oc-appbar,.oc-backtop,.oc-discovery-wrap{display:none!important}}

/* Universal page sharing */
.oc-share-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(240px,.85fr) minmax(420px,1.4fr);align-items:center;gap:22px;width:100%;margin:24px 0;padding:clamp(20px,3vw,28px);border:1px solid #b9d3e6;border-radius:16px;background:linear-gradient(135deg,#173f67 0%,#245f94 64%,#2f80c8 100%);color:#fff;box-shadow:0 14px 30px rgba(15,47,77,.18)}
.oc-share-panel::after{content:"";position:absolute;right:-80px;top:-110px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}.oc-share-copy{position:relative;z-index:1}.oc-share-copy .oc-eyebrow{color:#bfe3ff}.oc-share-copy h2{margin:.25rem 0 .35rem;color:#fff;font-size:clamp(1.35rem,2.2vw,1.75rem)}.oc-share-copy p{margin:0;color:#e6f2fb;font-size:.96rem}.oc-share-actions{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.oc-share-button{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;min-width:0!important;min-height:46px!important;width:100%!important;margin:0!important;padding:10px 12px!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:10px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;font-size:.88rem!important;font-weight:780!important;text-decoration:none!important;box-shadow:none!important;transition:.17s!important}.oc-share-button:hover{background:#fff!important;color:var(--oc-primary)!important;border-color:#fff!important;transform:translateY(-1px)!important}.oc-share-button-primary{background:#fff!important;color:var(--oc-primary)!important}.oc-share-icon{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:8px;background:rgba(255,255,255,.16);font-weight:900}.oc-share-button-primary .oc-share-icon,.oc-share-button:hover .oc-share-icon{background:var(--oc-accent-soft)}.oc-share-url{grid-column:1/-1;margin:2px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.18);color:#cfe6f7;font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oc-quick-share{background:linear-gradient(180deg,var(--oc-accent),var(--oc-primary-2))!important;color:#fff!important}.oc-quick-share:hover{background:var(--oc-primary)!important;color:#fff!important}
/* Compact, intentional vertical rhythm near ads and discovery sections */
.oc-share-panel+.oc-discovery-wrap{margin-top:0}.oc-discovery-wrap+.adsbygoogle{margin-top:8px!important}.oc-blog-discovery{margin-top:24px}.oc-blog-support:empty{display:none}.w3-row.w3-padding-64:empty{display:none!important}
@media(max-width:900px){.oc-share-panel{grid-template-columns:1fr}.oc-share-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.oc-share-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.oc-share-button{font-size:.84rem!important}.oc-share-url{display:none}}
@media(max-width:430px){.oc-share-actions{grid-template-columns:1fr}}
body.oc-dark .oc-share-panel{border-color:#365f7e;background:linear-gradient(135deg,#0f2f4d,#173f67)}
@media print{.oc-share-panel{display:none!important}}


/* Premium calculator cards and in-page result messaging */
.oc-tool-card{max-width:880px;margin:0 auto 28px;padding:clamp(20px,4vw,34px)!important;border:1px solid var(--oc-border)!important;border-radius:18px!important;background:var(--oc-surface)!important;box-shadow:0 14px 34px rgba(20,45,70,.10)!important;text-align:left!important;align-items:stretch!important}.oc-tool-heading{margin-bottom:18px}.oc-tool-heading h2{margin:.25rem 0 .35rem;font-size:clamp(1.45rem,3vw,2rem)}.oc-tool-heading p{margin:0;color:var(--oc-muted);font-size:1rem}.oc-unit-tabs{display:inline-flex;gap:4px;margin:0 0 20px;padding:4px;border:1px solid var(--oc-border);border-radius:11px;background:var(--oc-surface-2)}.oc-unit-tab{min-height:40px!important;margin:0!important;padding:8px 18px!important;border-radius:8px!important;background:transparent!important;color:var(--oc-primary)!important;box-shadow:none!important;font-size:.93rem!important}.oc-unit-tab.active{background:var(--oc-primary)!important;color:#fff!important}.oc-bmi-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.oc-field-group label{display:block;margin:0 0 7px;color:var(--oc-primary-3);font-size:.93rem;font-weight:800}.oc-input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;overflow:hidden;border:1px solid var(--oc-border);border-radius:11px;background:#fff}.oc-input-with-unit:focus-within{border-color:var(--oc-accent);box-shadow:0 0 0 3px rgba(47,136,199,.14)}.oc-input-with-unit input{width:100%!important;min-height:50px!important;margin:0!important;padding:11px 13px!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.oc-input-with-unit span{align-self:stretch;display:grid;place-items:center;min-width:52px;padding:0 12px;border-left:1px solid var(--oc-border);background:var(--oc-surface-2);color:var(--oc-muted);font-weight:800}.oc-height-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.oc-tool-actions{display:flex;gap:10px;margin:22px 0 0}.oc-tool-actions button{min-height:48px!important;margin:0!important;padding:10px 22px!important;font-size:1rem!important}.oc-primary-action{background:linear-gradient(180deg,var(--oc-accent),var(--oc-primary-2))!important}.oc-secondary-action{background:#edf3f8!important;color:var(--oc-primary)!important;box-shadow:none!important}.oc-inline-result{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;margin:20px 0 0;padding:18px;border:1px solid #b9d3e6;border-radius:14px;background:linear-gradient(135deg,#edf6fc,#fff);box-shadow:0 7px 20px rgba(20,45,70,.07)}.oc-inline-result[hidden]{display:none!important}.oc-result-number{display:grid;place-items:center;min-width:112px;min-height:90px;padding:10px 15px;border-radius:12px;background:var(--oc-primary);color:#fff}.oc-result-number span{font-size:2.25rem;font-weight:900;line-height:1}.oc-result-number small{margin-top:6px;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.oc-result-copy strong{display:block;color:var(--oc-primary-3);font-size:1.2rem}.oc-result-copy p{margin:5px 0 0;color:var(--oc-muted);font-size:.95rem}.oc-inline-result[data-state="healthy"]{border-color:#9bd4b4;background:#f0fbf5}.oc-inline-result[data-state="underweight"],.oc-inline-result[data-state="overweight"]{border-color:#e3c886;background:#fffaf0}.oc-inline-result[data-state="obesity"],.oc-inline-result[data-state="warning"]{border-color:#e2aaa5;background:#fff5f4}.oc-tool-note{margin:16px 0 0!important;padding:11px 13px;border-left:3px solid var(--oc-accent);background:var(--oc-accent-soft);color:var(--oc-muted)!important;font-size:.86rem!important}
.oc-inline-alert{display:grid;grid-template-columns:38px minmax(0,1fr) 34px;align-items:start;gap:12px;margin:16px 0;padding:14px 15px;border:1px solid #b9d3e6;border-radius:12px;background:#edf6fc;text-align:left;box-shadow:0 6px 16px rgba(20,45,70,.07)}.oc-inline-alert-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--oc-primary);color:#fff;font-weight:900}.oc-inline-alert strong{display:block;color:var(--oc-primary-3);font-size:1rem}.oc-inline-alert p{margin:3px 0 0!important;padding:0!important;color:var(--oc-text)!important;font-size:.95rem!important;line-height:1.45!important}.oc-inline-alert-close{width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;padding:0!important;border-radius:8px!important;background:transparent!important;color:var(--oc-muted)!important;box-shadow:none!important;font-size:1.35rem!important}.oc-inline-alert-warning{border-color:#e3c886;background:#fff9eb}.oc-inline-alert-warning .oc-inline-alert-icon{background:#9a6a00}.oc-inline-alert-result{border-color:#9bd4b4;background:#f0fbf5}.oc-inline-alert-result .oc-inline-alert-icon{background:#218657}body.oc-dark .oc-tool-card,body.oc-dark .oc-input-with-unit,body.oc-dark .oc-inline-result,body.oc-dark .oc-inline-alert{background:var(--oc-surface);color:var(--oc-text)}body.oc-dark .oc-input-with-unit span,body.oc-dark .oc-secondary-action,body.oc-dark .oc-unit-tabs{background:var(--oc-surface-2)!important}body.oc-dark .oc-inline-alert p{color:var(--oc-text)!important}
@media(max-width:650px){.oc-bmi-fields{grid-template-columns:1fr}.oc-tool-actions{flex-direction:column}.oc-tool-actions button{width:100%!important}.oc-inline-result{grid-template-columns:1fr;text-align:center}.oc-result-number{width:100%}.oc-inline-alert{grid-template-columns:34px minmax(0,1fr) 30px}}


/* Sound control */
.oc-sound-action[aria-pressed="false"]{background:#fff1e5!important;color:#8b4a16!important}
.oc-sound-action[aria-pressed="true"]{background:#e8f5ee!important;color:#176a4d!important}
body.oc-dark .oc-sound-action[aria-pressed="false"]{background:#3a2c22!important;color:#ffd2a8!important}
body.oc-dark .oc-sound-action[aria-pressed="true"]{background:#183b31!important;color:#9de3c7!important}

/* Premium Timer */
.oc-timer-card{max-width:780px!important;gap:18px!important}
.oc-timer-intro{margin:0!important;color:var(--oc-muted)!important}
.oc-timer-presets{display:flex;flex-wrap:wrap;gap:8px}
.oc-timer-preset{min-height:38px!important;min-width:72px!important;margin:0!important;padding:7px 13px!important;background:var(--oc-surface-2)!important;color:var(--oc-primary)!important;box-shadow:none!important;border:1px solid var(--oc-border)!important}
.oc-timer-preset:hover{background:var(--oc-accent-soft)!important;color:var(--oc-primary-3)!important;transform:none!important}
.oc-timer-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.oc-timer-field label{display:block;margin:0 0 6px;font-size:.86rem;text-transform:uppercase;letter-spacing:.06em;color:var(--oc-muted)}
.oc-timer-field input{width:100%!important;text-align:center;font-size:1.14rem;font-weight:780}
.oc-timer-display{display:grid;place-items:center;min-height:170px;padding:22px;border:1px solid #315a78;border-radius:17px;background:radial-gradient(circle at top,#1e527d,#0d2b44 72%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 14px 28px rgba(13,43,68,.18)}
.oc-timer-display strong{color:#fff!important;font-variant-numeric:tabular-nums;font-size:clamp(3rem,8vw,5.7rem);font-weight:850;line-height:1;letter-spacing:.035em;text-shadow:0 4px 18px rgba(0,0,0,.25)}
.oc-timer-display span{margin-top:12px;color:#cae6fa;font-size:.9rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.oc-timer-progress{height:10px;overflow:hidden;border-radius:999px;background:var(--oc-surface-2);box-shadow:inset 0 1px 3px rgba(20,45,70,.12)}
.oc-timer-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--oc-accent),#65b9f2);transition:width .2s linear}
.oc-timer-actions{justify-content:center;margin-top:0}
.oc-timer-actions button{min-width:130px!important}
.oc-timer-actions button:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none!important}
.oc-timer-status{min-height:26px;margin:0!important;text-align:center;color:var(--oc-muted)!important;font-size:.92rem!important}
.oc-timer-card.oc-timer-complete .oc-timer-display{animation:ocTimerDone .7s ease 2}
@keyframes ocTimerDone{50%{box-shadow:0 0 0 7px rgba(47,128,200,.2),0 14px 28px rgba(13,43,68,.2)}}
body.oc-dark .oc-timer-preset{background:#213341!important;color:#cfe8fb!important;border-color:#405768!important}
body.oc-dark .oc-timer-progress{background:#293c4b}
@media(max-width:620px){.oc-timer-fields{grid-template-columns:1fr}.oc-timer-display{min-height:135px}.oc-timer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.oc-timer-actions button{width:100%!important;min-width:0!important}}

/* Stronger dark-mode component contrast */
body.oc-dark .oc-discovery-heading h2,body.oc-dark .oc-tool-heading h2,body.oc-dark .oc-result-copy strong{color:#a8d9ff!important}
body.oc-dark .oc-card-body strong,body.oc-dark .oc-popular-copy strong{color:#eaf5ff!important}
body.oc-dark .oc-discovery-card,body.oc-dark .oc-popular-link{border-color:#3a5062;background:#1b2a37}
body.oc-dark .oc-card-icon,body.oc-dark .oc-popular-icon{background:#243e52;color:#9bd3ff}

/* App-bar labels collapse earlier now that Sound is a first-class control. */
@media(max-width:1150px) and (min-width:901px){.oc-appbar .oc-label,.oc-search-shortcut{display:none}.oc-app-action{min-width:42px!important;padding:8px 10px!important}}


/* v9 responsive premium tools */
.oc-tool{max-width:1040px!important;padding:clamp(18px,3vw,30px)!important}
.oc-tool .oc-tool-card{max-width:none;margin:0;padding:18px!important;border:1px solid var(--oc-border)!important;border-radius:13px!important;background:var(--oc-surface-2)!important;box-shadow:none!important}
.oc-tool-grid{align-items:start}
#percentageTool .oc-tool-grid>div:last-child{grid-column:1/-1}
body.oc-dark .oc-tool .oc-tool-card{background:#1b2a37!important;border-color:#3a5062!important}

/* Content-width breakpoints: tools react to their real available width, not only the screen. */
@container oc-content (max-width:780px){
  .oc-tool-grid,.oc-field-row{grid-template-columns:1fr!important}
  .oc-tool-head{display:block}
  .oc-tool-head>.oc-actions,.oc-tool-head>button{margin-top:12px!important}
  .oc-tool-head>button{width:auto!important}
  .oc-tool .oc-result-panel{padding:16px}
}

@container oc-content (max-width:540px){
  .oc-tool{padding:15px 11px!important;gap:16px!important}
  .oc-tool .oc-tool-card{padding:15px!important}
  .oc-tool .oc-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}
  .oc-tool .oc-actions>button,.oc-tool .oc-actions>input[type="button"],.oc-tool .oc-actions>input[type="submit"]{width:100%!important;min-width:0!important;margin:0!important}
  .oc-tool .oc-actions>button:only-child{grid-column:1/-1}
  .oc-tool .oc-actions>button:first-child:nth-last-child(3){grid-column:1/-1}
  .oc-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .oc-tab{width:100%!important;min-width:0!important}
  .oc-tool-head h2{font-size:1.35rem}
  .oc-result-main{font-size:1.7rem}
}

/* The application bar becomes a clean two-row mobile control instead of squeezing. */
@media(max-width:1120px){
  .oc-appbar{top:72px;margin:0 0 20px}
  .oc-appbar .oc-label,.oc-search-shortcut{display:none}
  .oc-app-action{min-width:42px!important;padding:8px 10px!important}
}
@media(max-width:640px){
  .oc-appbar{position:relative;top:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:8px;margin:0 0 16px;border-radius:12px}
  .oc-appbar-search{grid-column:1/-1}
  .oc-app-action{width:100%!important;min-width:0!important;margin:0!important}
  .oc-search-panel{top:50px;max-height:60vh}
}

/* Prevent wide legacy content from forcing horizontal scrolling. */
.oc-tool table,.oc-tool pre,.oc-tool code{max-width:100%}
.oc-tool pre{overflow:auto}

/* v9 touch target refinement */
.oc-timer-preset{min-height:44px!important}

/* v10 unambiguous sound-state control */
.oc-sound-action{gap:5px!important;border:1px solid transparent!important;font-weight:850!important;transition:background-color .16s,color .16s,border-color .16s,box-shadow .16s!important}
.oc-sound-action .oc-sound-state{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 6px;border-radius:999px;font-size:.69rem;font-weight:900;line-height:1.25;letter-spacing:.04em;text-transform:uppercase;background:rgba(255,255,255,.22)}
.oc-sound-action[aria-pressed="true"]{background:#117a55!important;color:#fff!important;border-color:#25946e!important;box-shadow:0 0 0 3px rgba(17,122,85,.16)!important}
.oc-sound-action[aria-pressed="true"]:hover{background:#0b6847!important;color:#fff!important}
.oc-sound-action[aria-pressed="false"]{background:#a93642!important;color:#fff!important;border-color:#c95a64!important;box-shadow:0 0 0 3px rgba(169,54,66,.14)!important}
.oc-sound-action[aria-pressed="false"]:hover{background:#8e2934!important;color:#fff!important}
body.oc-dark .oc-sound-action[aria-pressed="true"]{background:#0f7954!important;color:#fff!important;border-color:#40ae87!important}
body.oc-dark .oc-sound-action[aria-pressed="false"]{background:#9f3440!important;color:#fff!important;border-color:#d36a73!important}
@media(max-width:1150px){.oc-sound-action .oc-sound-state{display:inline-flex}.oc-sound-action .oc-label{display:none!important}}
@media(max-width:420px){.oc-sound-action{padding-left:7px!important;padding-right:7px!important}.oc-sound-action .oc-sound-state{min-width:24px;padding-left:4px;padding-right:4px;font-size:.62rem}}


/* v11 dark-mode search and heading consistency */
body.oc-dark{
  --oc-dark-heading:#9bd9ff;
  --oc-dark-link:#8fd2ff;
  --oc-dark-copy:#cbd7e1;
  --oc-dark-success:#72dda7;
}
body.oc-dark .oc-search-page h1,
body.oc-dark .oc-search-page h2,
body.oc-dark .oc-search-page h3,
body.oc-dark .result-title,
body.oc-dark .result-title a,
body.oc-dark .result-title a:visited,
body.oc-dark .oc-search-item strong,
body.oc-dark .oc-search-item:visited strong{
  color:var(--oc-dark-heading)!important;
  -webkit-text-fill-color:var(--oc-dark-heading)!important;
  text-shadow:none!important;
}
body.oc-dark .oc-search-page>p,
body.oc-dark .search-info,
body.oc-dark .result-excerpt,
body.oc-dark .oc-search-item span,
body.oc-dark .no-results p{
  color:var(--oc-dark-copy)!important;
}
body.oc-dark .result-url{
  color:var(--oc-dark-success)!important;
}
body.oc-dark .result-item{
  border-color:#3a5264!important;
  background:linear-gradient(180deg,#182733,#15222d)!important;
}
body.oc-dark .result-item:hover{
  border-color:#55768f!important;
  box-shadow:0 10px 24px rgba(0,0,0,.2)!important;
}
body.oc-dark .oc-search-panel{
  border-color:#40596c!important;
  background:#172733!important;
}
body.oc-dark .oc-search-item{
  border-bottom-color:#314858!important;
}
body.oc-dark .oc-search-item:hover,
body.oc-dark .oc-search-item.active{
  background:#21394b!important;
}
body.oc-dark .oc-search-item:hover strong,
body.oc-dark .oc-search-item.active strong{
  color:#b6e5ff!important;
  -webkit-text-fill-color:#b6e5ff!important;
}
body.oc-dark .oc-search-empty{
  color:var(--oc-dark-copy)!important;
}
body.oc-dark .oc-premium-search{
  border-color:#40596c!important;
  background:#172733!important;
}
body.oc-dark .oc-premium-search input{
  border-color:#5f7d94!important;
  background:#101d27!important;
  color:#f2f7fb!important;
}
body.oc-dark .oc-premium-search input::placeholder,
body.oc-dark .oc-appbar-search input::placeholder{
  color:#91a5b5!important;
  opacity:1;
}


/* v14: fix toolbar squeezing on legacy calculator pages and improve text selection readability */
.oc-appbar{
  flex-wrap:wrap;
}
.oc-appbar-search{
  display:flex;
  align-items:center;
  flex:1 1 340px;
  min-width:260px;
}
.oc-appbar .oc-search-shortcut,
.oc-appbar .oc-app-action{
  flex:0 0 auto;
  width:auto!important;
  white-space:nowrap;
}
.oc-appbar .oc-app-action{
  min-width:96px!important;
}
.oc-appbar-search input,
.oc-appbar input[type="search"]{
  width:100%!important;
  min-width:0;
  flex:1 1 auto;
}
@media(max-width:1120px){
  .oc-appbar .oc-app-action{
    min-width:42px!important;
  }
}
::selection{
  background:#b9dcff;
  color:#17334f;
  text-shadow:none!important;
}
body.oc-dark ::selection{
  background:#537ea3;
  color:#f8fbff;
  text-shadow:none!important;
}


/* v17 complete-category directory cards */
.oc-category-completion{width:100%;margin:26px 0 32px;padding:clamp(18px,3vw,28px);border:1px solid var(--oc-border);border-radius:16px;background:var(--oc-surface);box-shadow:var(--oc-shadow-sm)}
.oc-category-completion h2{margin:.25rem 0 .35rem}.oc-category-completion>p{margin:0 0 16px;color:var(--oc-muted)}
.oc-category-completion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.oc-category-link{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:78px;padding:14px 15px;border:1px solid var(--oc-border);border-radius:12px;background:linear-gradient(180deg,#fff,#f8fbfd);color:var(--oc-text);text-decoration:none;box-shadow:0 3px 10px rgba(20,45,70,.05);transition:.17s ease}
.oc-category-link:hover{border-color:var(--oc-accent);color:var(--oc-text);transform:translateY(-2px);box-shadow:0 9px 20px rgba(20,45,70,.10)}
.oc-category-link strong{display:block;color:var(--oc-primary-3);font-size:.98rem}.oc-category-link small{display:block;margin-top:4px;color:var(--oc-muted);font-size:.79rem;line-height:1.4}.oc-category-link>span:last-child{color:var(--oc-accent);font-size:1.2rem}
body.oc-dark .oc-category-completion,body.oc-dark .oc-category-link{background:var(--oc-surface);color:var(--oc-text)}body.oc-dark .oc-category-link strong{color:#a8d9ff}body.oc-dark .oc-category-link small{color:#c4d0da}
@media(max-width:700px){.oc-category-completion-grid{grid-template-columns:1fr}}
