/* Premium tool layouts shared by repaired OfficeCalculator.Net utilities */
.oc-tool{max-width:900px!important;gap:20px!important}
.oc-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:2px}
.oc-tool-head h2{margin:0;font-size:clamp(1.35rem,2.5vw,1.8rem)}
.oc-tool-head p{margin:.35rem 0 0;font-size:.96rem;color:var(--oc-muted)}
.oc-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.oc-tool-card{padding:18px;border:1px solid var(--oc-border);border-radius:13px;background:var(--oc-surface-2)}
.oc-tool-card h2,.oc-tool-card h3{margin:0 0 12px;font-size:1.18rem}
.oc-field{display:flex;flex-direction:column;gap:6px;margin-bottom:13px}
.oc-field label{margin:0}
.oc-field small{color:var(--oc-muted);font-size:.82rem}
.oc-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.oc-field input,.oc-field select{width:100%!important}
.oc-choice-row{display:flex;flex-wrap:wrap;gap:8px}
.oc-choice{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid var(--oc-border);border-radius:9px;background:var(--oc-surface);font-weight:700;cursor:pointer}
.oc-choice input{margin:0}
.oc-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:4px}
.oc-actions button{margin:0}
.oc-secondary{background:#e8eff5!important;color:var(--oc-primary)!important;box-shadow:none!important}
.oc-secondary:hover{background:#d8e6f1!important;color:var(--oc-primary-3)!important}
.oc-danger-button{background:#fff1f1!important;color:var(--oc-danger)!important;box-shadow:none!important}
.oc-result-panel{padding:18px;border:1px solid #bfd7e9;border-radius:13px;background:linear-gradient(135deg,#edf6fd,#f8fbfe)}
.oc-result-panel[hidden]{display:none}
.oc-result-label{display:block;color:var(--oc-muted);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.oc-result-main{display:block;margin:4px 0;color:var(--oc-primary-3);font-size:clamp(1.7rem,4vw,2.5rem);font-weight:850;line-height:1.15;overflow-wrap:anywhere}
.oc-result-detail{margin:6px 0 0;color:#40566c;font-size:.96rem}
.oc-message{min-height:24px;margin:4px 0 0;color:var(--oc-danger);font-weight:700}
.oc-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:10px;margin-top:12px}
.oc-stat{padding:12px;border:1px solid var(--oc-border);border-radius:10px;background:var(--oc-surface)}
.oc-stat span{display:block;color:var(--oc-muted);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.oc-stat strong{display:block;margin-top:3px;color:var(--oc-primary-3);font-size:1.15rem}
.oc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;padding:5px;border-radius:11px;background:var(--oc-surface-2)}
.oc-tab{flex:1;min-width:150px;margin:0!important;background:transparent!important;color:var(--oc-primary)!important;box-shadow:none!important}
.oc-tab.active{background:var(--oc-surface)!important;box-shadow:var(--oc-shadow-sm)!important}
.oc-tab-panel[hidden]{display:none}
.oc-help{padding:12px 14px;border-left:4px solid var(--oc-accent);border-radius:8px;background:var(--oc-accent-soft);color:#3f566c;font-size:.9rem}
.oc-table-wrap{overflow:auto;border:1px solid var(--oc-border);border-radius:12px}
.oc-table-wrap table{display:table;margin:0;border:0;border-radius:0;box-shadow:none}
.oc-copy-feedback{color:var(--oc-success);font-size:.88rem;font-weight:750}
body.oc-dark .oc-tool-card,body.oc-dark .oc-choice,body.oc-dark .oc-stat,body.oc-dark .oc-result-panel{background:var(--oc-surface-2);border-color:var(--oc-border)}
body.oc-dark .oc-result-main,body.oc-dark .oc-stat strong{color:#e8f3fb}
body.oc-dark .oc-result-detail,body.oc-dark .oc-tool-head p{color:#b8c8d5}
@media(max-width:720px){.oc-tool-grid,.oc-field-row{grid-template-columns:1fr}.oc-tool-head{display:block}.oc-actions button{flex:1}.oc-tab{min-width:0}.oc-result-main{font-size:1.8rem}}

/* v9 component-width responsiveness — loaded after the shared app stylesheet */
.oc-tool{max-width:1040px!important}
.oc-tool .oc-tool-card{max-width:none!important;margin:0!important;padding:18px!important;border:1px solid var(--oc-border)!important;border-radius:13px!important;background:var(--oc-surface-2)!important;box-shadow:none!important}
body.oc-dark .oc-tool .oc-tool-card{background:#1b2a37!important;border-color:#3a5062!important}

@container oc-content (max-width:780px){
  .oc-tool-grid,.oc-field-row{grid-template-columns:1fr!important}
  .oc-tool-head{display:block!important}
  .oc-tool-head>.oc-actions{display:flex!important;flex-wrap:wrap;margin-top:12px!important}
  .oc-tool-head>button{margin-top:12px!important}
  .oc-tool-head>.oc-actions button{flex:0 0 auto!important}
}

@container oc-content (max-width:540px){
  .oc-tool .oc-actions{display:grid!important;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}
}
