/*-------------------------------------------------------------------
	@ Calculator - Age (나이 계산기)
-------------------------------------------------------------------*/
.age .calc-card{padding: 35px; margin-bottom: 32px; border: 1px solid #ececec; border-radius: 18px; background: #fff; transition: all .25s ease;}
.age .calc-card:hover{border-color: #f04137; transform: translateY(-2px); box-shadow: 0 15px 40px rgba(0,0,0,.06);}
.age .calc-card .card-head{display: flex; margin-bottom: 35px; align-items: center; gap: 15px;}
.age .calc-card .card-head h2{margin: 0; font-size: 22px; color: #f04137; font-weight: 700;}
.age .calc-card .card-head p{margin-top: 8px; font-size: 13px; color: #666;}
.age .calc-card .card-body{display: grid; gap: 25px; grid-template-columns: 1fr 1fr;}
.age .calc-card .card-body .field label{display: block; margin-bottom: 10px; font-size: 14px; color: #444; font-weight: 700;}
.age .calc-card .card-body .field input[type="date"]{width: 100%; height: 56px; padding: 0 18px; border: 1px solid #ddd; border-radius: 10px; background: #fff; font-family: inherit; font-size: 16px; color: #111; cursor: pointer; box-sizing: border-box; transition: all .25s ease; appearance: none;}
.age .calc-card .card-body .field input[type="date"]::-webkit-calendar-picker-indicator{cursor: pointer; opacity: .6; transition: .2s;}
.age .calc-card .card-body .field input[type="date"]::-webkit-calendar-picker-indicator:hover{opacity: 1;}
.age .calc-card .card-body .field input[type="date"]:focus{border-color: #f04137; outline: none; box-shadow: 0 0 0 4px rgba(240,65,55,.08);}
.age .result-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; margin-top: 30px;}
.age .result-box{padding: 25px 18px; border-radius: 14px; background: #fafafa; text-align: center;}
.age .result-box .result-title{display: block; margin-bottom: 10px; font-size: 14px; color: #777;}
.age .result-box strong{display: block; font-size: 30px; line-height: 1; color: #f04137; font-weight: 700; letter-spacing: -.03em;}
.age .result-box p{margin-top: 10px; font-size: 11px; line-height: 1.5; color: #999; word-break: keep-all;}
.age .result-detail{margin: 15px 0 0; font-size: 13px; line-height: 1.6; color: #777; text-align: center;}
.age .button-area{margin: 50px 0; text-align: center;}
.age .button-area .btn-reset{width: 180px; height: 56px; border: 0; border-radius: 12px; background: #f04137; font-size: 16px; color: #fff; cursor: pointer; transition: all .25s ease; font-weight: 700;}
.age .button-area .btn-reset:hover{background: #d93228; transform: translateY(-2px);}
.age .info-box{padding: 35px; margin-top: 30px; border: 1px solid #ececec; border-radius: 18px; background: #fafafa;}
.age .info-box + .info-box{margin-top: 30px;}
.age .info-box h2{margin-bottom: 25px; font-size: 22px; color: #111; font-weight: 700;}
.age .info-box p{margin-top: 18px; font-size: 15px; line-height: 1.9; color: #555; word-break: keep-all;}
.age .info-box p:first-of-type{margin-top: 0;}
.age .info-box ul{padding: 0; margin: 0; list-style: none;}
.age .info-box ul li{position: relative; padding-left: 22px; margin-bottom: 16px; font-size: 15px; line-height: 1.8; color: #555;}
.age .info-box ul li:last-child{margin-bottom: 0;}
.age .info-box ul li::before{display: block; position: absolute; left: 0; top: 11px; width: 7px; height: 7px; border-radius: 50%; background: #f04137; content: "";}
.age .info-box .example-table{width: 100%; margin-top: 20px; border-top: 2px solid #333; border-collapse: collapse;}
.age .info-box .example-table th{padding: 16px; border-bottom: 1px solid #e5e5e5; background: #fafafa; font-size: 15px; color: #222; text-align: center; font-weight: 700;}
.age .info-box .example-table td{padding: 16px; border-bottom: 1px solid #efefef; font-size: 15px; color: #555; transition: .2s; text-align: center;}
.age .info-box .example-table tbody tr:hover td{background: #fff8f7;}
@media (max-width:768px){
	.age .calc-card{padding: 22px; border-radius: 14px;}
	.age .calc-card .card-head{margin-bottom: 25px; gap: 14px;}
	.age .calc-card .card-head h2{font-size: 16px;}
	.age .calc-card .card-head p{margin-top: 3px; font-size: 11px; line-height: 1.5;}
	.age .calc-card .card-body{gap: 18px; grid-template-columns: 1fr;}
	.age .calc-card .card-body .field{display: flex; align-items: center;}
	.age .calc-card .card-body .field label{width: 100px; margin: 0;}
	.age .calc-card .card-body .field input[type="date"]{flex: 1; height: 45px; font-size: 16px;}
	.age .result-grid{grid-template-columns: 1fr; gap: 10px; margin-top: 20px;}
	.age .result-box{display: block; padding: 15px 18px; border-radius: 12px; text-align: left; gap: 10px;}
	.age .result-box .result-title{width: 100%; margin-bottom: 10px; font-size: 12px;}
	.age .result-box strong{font-size: 28px;}
	.age .result-box p{margin: 10px 0 0; font-size: 10px; text-align: right;}
	.age .result-detail{font-size: 11px;}
	.age .button-area{margin: 35px 0;}
	.age .button-area .btn-reset{width: 100%; height: 52px; font-size: 15px;}
	.age .info-box{padding: 22px; border-radius: 14px;}
	.age .info-box h2{margin-bottom: 18px; font-size: 20px;}
	.age .info-box p,.age .info-box ul li{font-size: 14px; line-height: 1.8;}
	.age .info-box .example-table{display: block; overflow-x: auto; white-space: nowrap;}
	.age .info-box .example-table th,.age .info-box .example-table td{padding: 14px 12px; font-size: 13px;}
}