/*-------------------------------------------------------------------
@ Calculator - Word Count (글자수세기)
-------------------------------------------------------------------*/
.word-count .calc-card{padding: 35px; margin-bottom: 32px; border: 1px solid #ececec; border-radius: 18px; background: #fff; transition: all .25s ease;}
.word-count .calc-card:hover{border-color: #f04137; transform: translateY(-2px); box-shadow: 0 15px 40px rgba(0,0,0,.06);}
.word-count .calc-card .card-head{display: flex; margin-bottom: 30px; align-items: center; gap: 15px;}
.word-count .calc-card .card-head h2{margin: 0; font-size: 22px; color: #f04137; font-weight: 700;}
.word-count .calc-card .card-head p{margin-top: 8px; font-size: 13px; color: #666;}
.word-count .textarea-wrap label{display: block; margin-bottom: 10px; font-size: 16px; color: #f04137; font-weight: 700;}
.word-count .textarea-wrap textarea{display: block; width: 100%; min-height: 260px; padding: 18px; border: 1px solid #ddd; border-radius: 10px; background: #fff; font-family: inherit; font-size: 16px; line-height: 1.7; color: #111; resize: vertical; box-sizing: border-box; transition: all .25s ease;}
.word-count .textarea-wrap textarea::placeholder{color: #b5b5b5;}
.word-count .textarea-wrap textarea:focus{border-color: #f04137; outline: none; box-shadow: 0 0 0 4px rgba(240,65,55,.08);}
.word-count .counter-grid{display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-top: 20px;}
.word-count .counter-item{display: flex; padding: 22px 15px; border: 1px solid #ececec; border-radius: 14px; background: #fafafa; align-items: center; justify-content: center; flex-direction: column;}
.word-count .counter-item .counter-label{font-size: 13px; color: #777;}
.word-count .counter-item strong{margin-top: 7px; font-size: 30px; line-height: 1; color: #f04137; font-weight: 800; letter-spacing: -0.03em;}
.word-count .counter-item em{margin-top: 6px; font-size: 12px; color: #999; font-style: normal;}
.word-count .calc-card .card-action{margin-top: 20px;}
.word-count .calc-card .card-action .btn-clear{width: 100%; height: 50px; padding: 0 18px; border: 1px solid #ddd; border-radius: 10px; background: #fafafa; font-size: 14px; color: #666; cursor: pointer; transition: all .25s ease; font-weight: 400;}
.word-count .calc-card .card-action .btn-clear:hover{border-color: #ccc; background: #f3f3f3; color: #333;}
.word-count .button-area{margin: 50px 0; text-align: center;}
.word-count .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;}
.word-count .button-area .btn-reset:hover{background: #d93228; transform: translateY(-2px);}
.word-count .info-box{padding: 35px; margin-top: 30px; border: 1px solid #ececec; border-radius: 18px; background: #fafafa;}
.word-count .info-box + .info-box{margin-top: 30px;}
.word-count .info-box h2{margin-bottom: 25px; font-size: 22px; color: #111; font-weight: 700;}
.word-count .info-box p{margin-top: 18px; font-size: 15px; line-height: 1.9; color: #555; word-break: keep-all;}
.word-count .info-box p:first-of-type{margin-top: 0;}
.word-count .info-box ul{padding: 0; margin: 0; list-style: none;}
.word-count .info-box ul li{position: relative; padding-left: 22px; margin-bottom: 16px; font-size: 15px; line-height: 1.8; color: #555;}
.word-count .info-box ul li:last-child{margin-bottom: 0;}
.word-count .info-box ul li::before{display: block; position: absolute; left: 0; top: 11px; width: 7px; height: 7px; border-radius: 50%; background: #f04137; content: "";}
.word-count .info-box .example-table{width: 100%; margin-top: 20px; border-top: 2px solid #333; border-collapse: collapse;}
.word-count .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;}
.word-count .info-box .example-table td{padding: 16px; border-bottom: 1px solid #efefef; font-size: 15px; color: #555; transition: .2s; text-align: center;}
.word-count .info-box .example-table tbody tr:hover td{background: #fff8f7;}
@media (max-width:768px){
	.word-count .calc-card{padding: 22px; border-radius: 14px;}
	.word-count .calc-card .card-head{margin-bottom: 25px; gap: 14px;}
	.word-count .calc-card .card-head h2{font-size: 16px;}
	.word-count .calc-card .card-head p{margin-top: 3px; font-size: 11px; line-height: 1.5;}
	.word-count .textarea-wrap label{font-size: 13px;}
	.word-count .textarea-wrap textarea{min-height: 220px; padding: 14px; font-size: 15px;}
	.word-count .counter-grid{grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 15px;}
	.word-count .counter-item{padding: 18px 10px; border-radius: 12px;}
	.word-count .counter-item .counter-label{font-size: 11px;}
	.word-count .counter-item strong{font-size: 25px;}
	.word-count .calc-card .card-action{margin-top: 15px;}
	.word-count .button-area{margin: 35px 0;}
	.word-count .button-area .btn-reset{width: 100%; height: 52px; font-size: 15px;}
	.word-count .info-box{padding: 22px; border-radius: 14px;}
	.word-count .info-box h2{margin-bottom: 18px; font-size: 20px;}
	.word-count .info-box p,.word-count .info-box ul li{font-size: 14px; line-height: 1.8;}
	.word-count .info-box .example-table{display: block; overflow-x: auto; white-space: nowrap;}
	.word-count .info-box .example-table th,.word-count .info-box .example-table td{padding: 14px 12px; font-size: 14px;}
}