/* Minimal, page-specific CSS for Sum of Years' Digits calculator (minified) */
:root{--c-bg:#fff;--c-txt:#000;--c-muted:#f8f9fa;--c-border:#e5e7eb;--c-primary:#0d6efd;--c-success:#198754;--c-secondary:#6c757d}
*{box-sizing:border-box}html,body{margin:0;padding:0}
.page-wrapper{min-height:100vh;display:flex;flex-direction:column}
.flex-grow-1{flex:1 1 auto}
.min-vh-100{min-height:100vh}
.d-flex{display:flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.align-items-center{align-items:center}
.justify-content-between{justify-content:space-between}
.gap-2{gap:.5rem}.text-end{text-align:end}
.me-1{margin-right:.25rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:1rem}.mt-3{margin-top:1rem}.mt-auto{margin-top:auto}
.p-3{padding:1rem}.bg-light{background-color:#f8f9fa}.rounded{border-radius:.5rem}
.row{display:flex;flex-wrap:wrap;margin-left:-.5rem;margin-right:-.5rem}
.col-6{flex:0 0 auto;width:50%;padding-left:.5rem;padding-right:.5rem}
.main-container{max-width:500px;margin:20px auto;background:#fff;border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.10);padding:36px 28px 28px 28px;text-align:center}
.main-image{width:80px;height:80px;object-fit:contain;margin-bottom:18px;filter:drop-shadow(0 2px 8px rgba(0,0,0,.08))}
.main-title{font-size:2rem;font-weight:500;margin-bottom:1rem;line-height:1.2}
.description-box{text-align:left;margin-bottom:20px;padding:15px;background-color:#f0f8ff;border:1px solid #cce5ff;border-radius:8px;color:#004085;font-size:.95em;line-height:1.5}
.result-area-wrapper{font-size:1.05rem;color:#000;margin:24px 0 18px 0;min-height:32px;word-wrap:break-word;background:#f8f9fa;border-radius:12px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.03);max-width:100%}
.table-scroll-container{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}
.table{width:100%;border-collapse:collapse;background:#fff}
.table th,.table td{padding:.35rem .5rem;text-align:left;border:1px solid #e5e7eb;font-size:.95em}
.table-bordered{border:1px solid #e5e7eb}
.result-table{font-size:.95em}
.related-links-section{margin:10px 0 0 0;font-size:.88rem}
.related-links-title{font-weight:600;color:#222;text-align:left;font-size:.98rem;margin-bottom:2px;padding:0}
.related-links-list{list-style:none;padding:0;margin:0 5px;text-align:left}
.related-links-list li{margin-bottom:2px}
.related-link{color:#6366f1;text-decoration:underline;word-break:break-all;font-size:.88em;line-height:1.2}
.error-message{color:#dc3545;min-height:24px;margin-bottom:8px}
.btn{appearance:none;-webkit-appearance:none;-moz-appearance:none;display:inline-block;cursor:pointer;border:1px solid transparent;border-radius:.375rem;padding:.5rem .9rem;font-size:1rem;line-height:1.5;transition:background-color .15s ease,border-color .15s ease,color .15s ease}
.btn:disabled{opacity:.65;cursor:not-allowed}
.btn-primary{color:#fff;background-color:var(--c-primary);border-color:var(--c-primary)}
.btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca}
.btn-outline-secondary{color:var(--c-secondary);background-color:transparent;border-color:var(--c-secondary)}
.btn-outline-secondary:hover{color:#fff;background-color:var(--c-secondary);border-color:var(--c-secondary)}
.btn-success{color:#fff;background-color:var(--c-success);border-color:var(--c-success)}
.btn-success:hover{background-color:#157347;border-color:#146c43}
.form-control,.form-select{width:100%;display:block;padding:.45rem .6rem;font-size:1rem;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.375rem;transition:border-color .15s ease,box-shadow .15s ease}
.form-control:focus,.form-select:focus{outline:0;border-color:#86b7fe;box-shadow:0 0 0 .2rem rgba(13,110,253,.25)}
.form-select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#6c757d 50%),linear-gradient(135deg,#6c757d 50%,transparent 50%),linear-gradient(to right,#ced4da,#ced4da);background-position:calc(100% - 20px) calc(1em + 2px),calc(100% - 16px) calc(1em + 2px),calc(100% - 2.5rem) .5em;background-size:4px 4px,4px 4px,1px 1.7em;background-repeat:no-repeat}
@media (max-width:576px){.main-container{margin:20px 10px;padding:24px 10px}.main-image{width:60px;height:60px}.main-title{font-size:1.5rem}.result-area-wrapper{font-size:1rem}.col-6{width:100%}}
@media print{body *{visibility:hidden}#result-area-wrapper,#result-area-wrapper *{visibility:visible}#result-area-wrapper{position:absolute;left:0;top:0;width:100%;box-shadow:none;background:#fff}.no-print{display:none!important}}

