@charset "utf-8";

/* 로그인 */
.login-area {max-width:470px; margin:0 auto;}
.login-tab {text-align:center; border-bottom:4px solid var(--color-primary); margin-bottom:50px;}
.login-tab ul {display:flex; padding:0 2px;}
.login-tab ul li {flex:1; border:4px solid #dfdfdf; border-bottom:0; margin:0 -2px; border-radius:10px 10px 0 0;}
.login-tab ul li a {display:block; color:#333; font-size:18px; font-weight:500; line-height:60px;}
.login-tab ul li.active {position:relative; z-index:2; border-color:var(--color-primary);}
.login-tab ul li.active:after {content:""; position:absolute; left:0; right:0; bottom:-4px; height:4px; background:#fff;}
.login-tab ul li.active a {color:var(--color-primary); font-weight:700;}
.login-content .group {margin-bottom:8px;}
.login-content .group .input {display:block; width:100%; height:54px; font-size:16px;}
.login-content .links {display:flex; justify-content:space-between; margin-top:14px; font-size:14px; color:#505050; font-weight:500; line-height:1.5em;}
.login-content .links a:hover {text-decoration:underline;}
.login-content .links .bar {display:inline-block; vertical-align:middle; margin:-.2em 12px 0; width:1px; height:16px; background:#ddd;}
.login-content .btn-pack {display:block; width:100%; margin-top:10px;}
.login-content .btn-pack.focus {margin-top:20px;}
.login-content .btn-pack.xlarge {font-weight:500;}

.find-id-link {text-align:right; margin-top:10px;}
.find-id-link a {font-size:15px; font-weight:500;}
.find-id-link a:hover {text-decoration:underline;}

.sns-login {text-align:center; margin-top:50px;}
.sns-login .tit {position:relative; color:#333; font-size:15px; font-weight:400; line-height:1.3em; margin-bottom:35px;}
.sns-login .tit:before {content:""; position:absolute; top:50%; left:0; margin-top:-1px; width:100%; height:1px; background:#ddd;}
.sns-login .tit span {display:inline-block; position:relative; padding:0 30px; background:#fff;}
.sns-login a {margin:0 12px;}

/* 약관동의 */
.agree-wrap {max-width:680px; margin:0 auto 50px;}
.agree-wrap .group {margin-top:40px;}
.agree-wrap .group:first-child {margin-top:0;}
.agree-wrap .agree-tit {color:#333; font-size:20px; font-weight:600; line-height:1.3em;}
.agree-wrap .agree-tit .checkbox label:before {margin-top:-.02em; width:24px; height:24px; background:#fff url("../images/member/checkbox.png") 50% 50% no-repeat; border:2px solid #ccc; border-radius:100%;}
.agree-wrap .agree-tit .checkbox input:checked + label:before {background-color:var(--color-primary); border-color:var(--color-primary); background-image:url("/images/member/checkbox_on.png");}
.agree-wrap .agree-box {position:relative; max-height:175px; margin-top:17px; padding:16px 20px; border:1px solid #ddd; overflow:auto;}
.agree-wrap .agree-box .terms-wrap {color:#767676; font-size:14px;}
.agree-wrap .agree-box .terms-wrap .sec {margin-bottom:20px;}
.agree-wrap .agree-box .terms-wrap .sec h3 {color:#767676; font-size:14px; font-weight:400; margin-bottom:0;}
.agree-wrap .agree-box .terms-wrap .sec strong {font-weight:400;}

.terms-wrap {font-weight:400; color:#666; line-height:1.75em;}
.terms-wrap .sec {margin-bottom:40px;}
.terms-wrap .sec h3 {color:#222; font-size:1.1em; font-weight:700; margin-bottom:7px;}
.terms-wrap .sec p {margin-bottom:1em;}
.terms-wrap .sec strong {font-weight:700;}
.terms-wrap .sec ol li {padding-left:1em; text-indent:-1em;}
.terms-wrap .sec ol li ol li {padding-left:1.35em; text-indent:-1.35em;}
.terms-wrap .policy-contact {display:flex; padding:20px 0; background:#fafafa; border:1px solid #e5e5e5; margin-bottom:1em;}
.terms-wrap .policy-contact dl {flex:1; padding:0 20px; border-left:1px solid #e5e5e5;}
.terms-wrap .policy-contact dl:first-child {border-left:0;}
.terms-wrap .policy-contact dt {font-weight:500; color:#333; margin-bottom:12px;}

/* 회원가입 */
.join-form {max-width:900px; margin:0 auto;}
.join-form .required {color:#fd8239}
.join-form .join-form-txt {color:#505050; font-weight:400; line-height:1.4em; margin-bottom:12px;}
.join-form table {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid #868686; font-size:16px; line-height:1.5em;}
.join-form table th {padding:12px 15px; border:1px solid #ddd; background:#fafafa; font-weight:700; color:#333;}
.join-form table td {padding:12px 20px; border:1px solid #ddd; color:#505050;}
.join-form tr th:first-child,
.join-form tr td:first-child {border-left:0;}
.join-form tr th:last-child,
.join-form tr td:last-child {border-right:0;}
.join-form input[readonly] {background-color:#fff; color:#505050;}
.join-form .help-text {display:inline-block; margin-left:10px; color:#767676;}
.join-form + .buttons {margin-top:50px;}

/* 가입완료 */
.join-complete {text-align:center;}
.join-complete .tit {color:var(--color-primary); font-size:28px; font-weight:700; line-height:1.4em; margin-bottom:30px;}
.join-complete .txt {color:#333; font-size:18px; line-height:1.8em;}
.join-complete .icon {width:180px; height:180px; background:var(--color-primary) url("../images/member/complete.png") 50% 50% no-repeat; border-radius:100%; margin:36px auto 45px;}
.join-complete .buttons {margin:0;}

/* 게정찾기 */
.find-area {max-width:470px; margin:0 auto;}
.find-tab {text-align:center; border-bottom:4px solid var(--color-primary); margin-bottom:50px;}
.find-tab ul {display:flex; padding:0 2px;}
.find-tab ul li {flex:1; border:4px solid #dfdfdf; border-bottom:0; margin:0 -2px; border-radius:10px 10px 0 0;}
.find-tab ul li a {display:block; color:#333; font-size:18px; font-weight:500; line-height:60px;}
.find-tab ul li.active {position:relative; z-index:2; border-color:var(--color-primary);}
.find-tab ul li.active:after {content:""; position:absolute; left:0; right:0; bottom:-4px; height:4px; background:#fff;}
.find-tab ul li.active a {color:var(--color-primary); font-weight:700;}
.find-content .group {margin-bottom:8px;}
.find-content .group .input {display:block; width:100%; height:54px; font-size:16px;}
.find-content .btn-pack {display:block; width:100%; margin-top:10px;}
.find-content .btn-pack.focus {margin-top:30px;}
.find-content .btn-pack.xlarge {font-weight:500;}
.find-result {text-align:center; padding:34px 42px; color:#505050; font-size:18px; font-weight:400; line-height:1.75em; background:#fafafa; border-top:2px solid var(--color-primary); border-bottom:1px solid #ddd;}
.find-result h4 {font-size:22px; font-weight:700; line-height:1.4em; margin-bottom:20px;}
.find-result p:first-child {margin-bottom:10px;}
.find-result .name {color:var(--color-primary); font-size:30px; font-weight:700; line-height:1.5em;}

/* 회원탈퇴 */
.member-leave .txt {text-align:center; color:#505050; line-height:1.7em; margin-bottom:40px;}
.member-leave .txt .tit {color:#333; font-size:20px; line-height:1.5em; margin-bottom:15px;}
.member-leave .form {max-width:470px; margin:0 auto 40px; padding:50px; color:#666; font-size:16px; line-height:1.5em; background:#f9f9f9; border:1px solid #e5e5e5; border-radius:10px;}
.member-leave .form .group {display:flex; align-items:center; margin-bottom:20px;}
.member-leave .form .group:last-child {margin-bottom:0;}
.member-leave .form .group .label-tt {width:90px; color:#222; font-weight:700;}
.member-leave .form .group .text-id,
.member-leave .form .group .input {flex:1 1 auto; min-width:0; width:1%;}

/* 커스텀 마이페이지 */
.mypage-intro {background:#f8f8f8; padding:var(--space-80) var(--space-100);}
.intro-hero {display:flex; flex-direction:column; gap:var(--space-25); margin-bottom:var(--space-40);}
.intro-hero-title {font-size:var(--font-size-40); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.intro-hero-name {color:var(--color-primary);}
.intro-hero-desc {font-size:var(--font-size-20); line-height:1.5em;}
.intro-panel {display:flex; gap:var(--space-40);}
.intro-profile {display:flex; flex-direction:column; gap:var(--space-25); flex-shrink:0; width:31.0135%; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:24px;}
.intro-profile-top {display:flex; align-items:flex-start; justify-content:space-between; width:100%;}
.intro-profile-user {display:flex; align-items:center; gap:var(--space-16);}
.intro-profile-thumb {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(100px, calc( 100 / var(--inner) * 100vw ), 100px); aspect-ratio:1/1; background:#f3f6ff; border-radius:200px; box-sizing:border-box; overflow:hidden;}
.intro-profile-figure {width:100%; height:100%; border-radius:50%; overflow:hidden;}
.intro-profile-figure img {display:block; width:100%; height:100%; object-fit:cover;}
.intro-profile-meta {display:flex; flex-direction:column; justify-content:center; gap:8px;}
.intro-profile-name {font-size:var(--font-size-24); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.intro-profile-team {font-size:var(--font-size-18); font-weight:600; color:#868686; line-height:1.6em;}
.intro-profile-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; height:36px; padding:5px var(--space-16); font-size:var(--font-size-15); font-weight:400; color:var(--color-bk); line-height:1.7em; letter-spacing:-0.03em; text-align:center; background:#fff; border:1px solid #ddd; border-radius:36px; text-decoration:none;}
.intro-profile-line {width:100%; height:1px; background:#ddd;}
.intro-profile-info {display:grid; grid-template-columns:88px 1fr; gap:8px 0; font-size:var(--font-size-18); line-height:1.6em;}
.intro-profile-info-label {font-weight:500; color:#868686;}
.intro-profile-info dd {margin:0; font-weight:400; color:#454545;}
.intro-profile-edit {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; background:var(--color-primary); border-radius:100px; text-decoration:none;}
.intro-profile-edit img {display:block; width:24px; height:24px;}
.intro-profile-menu {display:flex; flex-direction:column; width:100%; margin:0; padding:0; list-style:none;}
.intro-profile-menu-link {display:flex; align-items:center; justify-content:space-between; height:56px; padding:0 12px; font-size:var(--font-size-16); font-weight:400; color:var(--color-bk); line-height:1.6em; text-decoration:none; border-radius:8px;}
.intro-profile-menu-link.is-active {background:var(--color-primary); color:#fff; font-weight:600;}
.intro-profile-menu-link.is-active .intro-profile-menu-arrow img {filter:brightness(0) invert(1);}
.intro-profile-menu-link.is-logout {color:#ea4044;}
.intro-profile-menu-link:hover:not(.is-active):not(.is-logout) .intro-profile-menu-arrow img {filter:brightness(0) saturate(100%) invert(45%);}
.intro-profile-menu-arrow {display:flex; flex-shrink:0;}
.intro-profile-menu-arrow img {height:24px;}
.intro-profile-menu-logout {display:flex; flex-shrink:0;}
.intro-profile-menu-logout img {width:16px; height:16px;}
.intro-schedule {display:flex; flex-direction:column; gap:var(--space-25); flex:1 1 0; min-width:0; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:24px;}
.intro-schedule-head {display:flex; align-items:flex-start; justify-content:space-between; width:100%;}
.intro-schedule-title {display:flex; align-items:center; gap:var(--space-16); font-size:var(--font-size-24); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.intro-schedule-title-bar {flex-shrink:0; width:3px; height:20px; background:var(--color-primary);}
.intro-schedule-link {display:flex; align-items:center; justify-content:center; flex-shrink:0; padding:5px var(--space-16); font-size:var(--font-size-15); color:var(--color-bk); line-height:1.7em; letter-spacing:-0.03em; text-align:center; background:#fff; border:1px solid #ddd; border-radius:36px;}
.intro-schedule-body {display:flex; gap:var(--space-16); align-items:flex-start; width:100%;}
.intro-schedule-list {height:328px; padding-right:20px; overflow-y:scroll; display:flex; flex-direction:column; gap:8px; flex:1 1 0; min-width:0;}
.intro-schedule-list::-webkit-scrollbar {width:4px;}
.intro-schedule-list::-webkit-scrollbar-thumb {background:#d9d9d9; border-radius:2px;}
.intro-schedule-item {display:flex; align-items:center; gap:var(--space-16); padding:var(--space-16); background:#f8f8f8; border-radius:16px;}
.intro-schedule-item:hover {background-color:#0F138C;} 
.intro-schedule-item:hover .intro-schedule-date {background:rgba(255, 255, 255, 0.40);}
.intro-schedule-item:hover .intro-schedule-date *,
.intro-schedule-item:hover .intro-schedule-text {color:#fff;}
.intro-schedule-item:hover .intro-schedule-arrow {filter:brightness(0) invert(1); transform:translateX(-10px); transition:all 0.2s ease-in-out;}

.intro-schedule-date {width:clamp(60px, calc( 72 / var(--inner) * 100vw ), 72px); aspect-ratio:1/1; display:flex; flex-direction:column; align-items:center; justify-content:center; flex-shrink:0; padding:6px; background:#fff; border-radius:8px; box-sizing:border-box;}
.intro-schedule-date-num {font-size:var(--font-size-28); font-weight:700; color:var(--color-primary); line-height:1.4em;}
.intro-schedule-date-ym {font-size:var(--font-size-15); font-weight:400; color:#868686; line-height:1.5em;}
.intro-schedule-cont {display:flex; align-items:center; justify-content:space-between; flex:1 1 0; min-width:0; gap:var(--space-16);}
.intro-schedule-text {font-weight:400; color:var(--color-bk); line-height:1.6em;}
.intro-schedule-arrow {flex-shrink:0; display:flex; align-items:center; justify-content:center;}
.intro-schedule-arrow img {height:18px;}

.intro-wrap {display:flex; align-items:flex-start; justify-content:space-between; width:100%; gap:var(--space-50); padding:var(--space-100) var(--space-100) 0;}
.intro-m-nav {position:relative; display:flex; flex-direction:column; gap:var(--space-40); flex-shrink:0; width:260px;}
.intro-m-nav .intro-profile {width:100%; box-sizing:border-box;}
.intro-m-nav .intro-profile-user {flex:1; min-width:0;}
.intro-m-nav .intro-profile-info {font-size:var(--font-size-16);}
.intro-m-nav-trigger {display:none; align-items:center; justify-content:space-between; gap:12px; width:100%; padding:14px 16px; background:#fff; border:1px solid #ddd; border-radius:12px; box-shadow:2px 2px 5px rgba(0,0,0,0.08); font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.5em; text-align:left;}
.intro-m-nav-overlay {display:none;}
.intro-m-nav-trigger-label {flex:1 1 0; min-width:0;}
.intro-m-nav-trigger-ico {flex-shrink:0; width:10px; height:10px; border-right:2px solid #454545; border-bottom:2px solid #454545; transform:rotate(45deg); margin-top:-4px; transition:transform .25s ease, margin .25s ease;}
.intro-m-nav.is-open .intro-m-nav-trigger-ico {transform:rotate(-135deg); margin-top:4px;}
.intro-nav {display:flex; flex-direction:column; gap:var(--space-16); width:100%; max-width: 260px;}
.intro-nav-group {display:flex; flex-direction:column; gap:8px; padding:10px; background:#fff; border-radius:16px; box-shadow:2px 2px 5px rgba(0,0,0,0.16);}
.intro-nav-head {display:flex; align-items:center; gap:8px; padding:15px 12px; border-bottom:1px solid #ddd;}
.intro-nav-bar {flex-shrink:0; width:3px; height:18px; background:var(--color-primary);}
.intro-nav-title {font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em;}
.intro-nav-link {padding:15px 12px; display:flex; align-items:center; justify-content:space-between; line-height:1.6em; border-radius:8px;}
.intro-nav-link.is-active {background:var(--color-primary); color:#fff;}
.intro-nav-link.is-active .intro-nav-arrow img {filter:none !important;}
.intro-nav-link:hover .intro-nav-arrow img {filter:brightness(0) saturate(100%) invert(45%);}
.intro-nav-arrow img {height:clamp(18px, calc( 24 / var(--inner) * 100vw ), 24px);}
.intro-inner-section {flex:1 1 0; width:1%;}


/* 마이페이지 공통 타이틀 */
.mpg-title {min-height:120px; margin-bottom:var(--space-50); display:flex; align-items:center; padding:8px var(--space-30); background:#fff; border:1px solid #ddd; border-radius:16px;}
.mpg-title-row {display:flex; align-items:center; gap:var(--space-16);}
.mpg-title-bar {flex-shrink:0; width:3px; height:30px; background:var(--color-primary);}
.mpg-title-tit {font-size:var(--font-size-36); font-weight:700; color:var(--color-bk); line-height:1.3em;}
.mpg-title-sub {font-weight:600; color:#999; line-height:1.6em;}
 
/* 자료실 목록 */
.lib-list {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.lib-item {display:flex; gap:var(--space-16); align-items:flex-start; width:100%; height:200px; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:16px; box-sizing:border-box;}
.lib-item-body {display:flex; flex:1 1 0; flex-direction:column; justify-content:space-between; align-self:stretch; min-width:0; height:100%;}
.lib-item-text {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.lib-item-tit {font-size:var(--font-size-24); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.lib-item-desc {font-weight:400; line-height:1.6em;}
.lib-item-meta {display:flex; gap:var(--space-40);}
.lib-item-meta-item {display:flex; gap:4px; align-items:flex-start; line-height:1.6em; color:#999;}
.lib-item-meta-val {font-weight:600;}
.lib-item-side {display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; flex-shrink:0; align-self:stretch; height:100%;}
.lib-item-date {font-weight:400; color:#8F8F8F; line-height:1.6em;}
.lib-item-down {display:flex; align-items:center; justify-content:center; gap:8px; height:56px; padding:0 var(--space-25); font-weight:400; color:#fff; line-height:1.6em; text-align:center; text-decoration:none; background:var(--color-primary); border-radius:8px; box-sizing:border-box;}
.lib-item-down-ico {flex-shrink:0; display:flex;}
.lib-item-down-ico img {display:block; height:24px;}

.intro-log-head {margin-bottom:var(--space-50); display:flex; align-items:center; justify-content:space-between; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:16px;}
.intro-log-head-title {display:flex; align-items:center; gap:var(--space-16);}
.intro-log-head-bar {flex-shrink:0; width:3px; height:30px; background:var(--color-primary);}
.intro-log-head-tit {font-size:var(--font-size-36); font-weight:700; color:var(--color-bk); line-height:1.3em;}
.intro-log-head-sub {font-weight:600; color:#999; line-height:1.6em;}
.intro-log-write-btn {display:flex; align-items:center; gap:8px; padding:var(--space-16); font-weight:600; color:#fff; line-height:1.6em; text-decoration:none; background:var(--color-primary); border-radius:8px;}
.intro-log-write-ico {display:flex;}
.intro-log-write-ico img {height:clamp(12px, calc( 16 / var(--inner) * 100vw ), 16px);}
.intro-log-team {display:flex; flex-direction:column; gap:var(--space-50); padding:40px; margin-bottom:var(--space-50); background:#f8f8f8; border-radius:24px;}
.intro-log-team-top {display:flex; align-items:flex-end; justify-content:space-between; width:100%;}
.intro-log-tab-pill {display:flex; align-items:center; padding:8px; background:#fff; border:1px solid #ddd; border-radius:100px;}
.intro-log-tab-pill-wide {width:550px; height:74px;}
.intro-log-tab-pill-view {flex-shrink:0; width:300px; height:58px;}

.intro-log-tab-btn {flex:1 1 0; min-width:0; height:100%; padding:0 10px; font-size:var(--font-size-15); font-weight:600; color:#999; line-height:1.7em; text-align:center; background:transparent; border:0; border-radius:100px; cursor:pointer;}
.intro-log-tab-btn.is-active {background:var(--color-primary); color:#fff;}
.intro-log-reset-btn {display:flex; align-items:center; justify-content:center; width:120px; height:var(--write-height); padding:0 var(--space-16); color:var(--color-bk); line-height:1.6em; background:#fff; border:1px solid #ddd; border-radius:8px; cursor:pointer;}
.intro-log-team-grid {grid-template-columns:repeat(4, 1fr); display:grid; gap:var(--space-50); width:100%;}
.intro-log-team-card {display:flex; flex-direction:column; gap:8px; flex:1 1 0; min-width:0; padding:10px; background:#fff; border:1px solid #ddd; border-radius:16px;}
.intro-log-team-card-head {display:flex; align-items:center; gap:8px; height:64px; padding:0 12px; border-bottom:1px solid #ddd;}
.intro-log-team-bar {flex-shrink:0; width:3px; height:18px; background:var(--color-primary);}
.intro-log-team-name {font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em;}
.intro-log-member-rows {grid-template-columns:repeat(2, 1fr); display:grid; gap:8px; width:100%;}
.intro-log-member {display:flex; align-items:center; justify-content:space-between; height:44px; padding:0 16px; line-height:1.6em; background:#fff; border:1px solid #ddd; border-radius:100px; cursor:pointer;}
.intro-log-member.is-active {background:var(--color-primary); border-color:var(--color-primary); color:#fff;}
.intro-log-member-name {font-weight:700; color:var(--color-bk);}
.intro-log-member.is-active .intro-log-member-name,
.intro-log-member.is-active .intro-log-member-role {color:#fff;}

.intro-log-cal {display:flex; flex-direction:column; width:100%; overflow:hidden;}
.intro-log-cal-head {display:flex; align-items:center; height:80px; padding:0 16px; background:#fafafb;}
.intro-log-cal-head .intro-log-tab-pill-view {flex-shrink:0; margin-left:auto;}
.intro-log-member,
.intro-log-tab-btn,
.intro-log-reset-btn,
.intro-log-cal-arrow {box-sizing:border-box;}
.intro-log-cal-nav {display:flex; flex:1 1 0; align-items:center; justify-content:center; gap:var(--space-50); min-width:0; padding:var(--space-20); background:#f8f8f8;}
.intro-log-cal-arrow {display:flex; align-items:center; justify-content:center; width:clamp(32px, calc( 40 / var(--inner) * 100vw ), 40px); aspect-ratio:1/1; padding:0; background:#fff; border:1px solid #ddd; border-radius:4px; cursor:pointer;}
.intro-log-cal-arrow img {display:block; width:16px; height:16px;}
.intro-log-cal-month {font-size:var(--font-size-30); font-weight:700; color:var(--color-bk); line-height:1.3em; text-align:center;}
.intro-log-cal-month-muted {color:#9a9aa3;}
.intro-log-cal-weekdays {display:grid; grid-template-columns:repeat(7,1fr);}
.intro-log-cal-weekday {display:flex; align-items:center; justify-content:center; padding:var(--space-25) var(--space-30); font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em; text-align:center; background:#f8f8f8; border-top:1px solid #ddd;}
.intro-log-cal-weekday.is-sun {color:#dc3545;}
.intro-log-cal-weekday.is-sat {color:#0971ff;}
.intro-log-cal-grid {display:flex; flex-direction:column; width:100%;}
.intro-log-cal-row {display:grid; grid-template-columns:repeat(7,1fr); min-height:250px; border-top:1px solid #ddd;}
.intro-log-cal-cell {display:flex; flex-direction:column; gap:var(--space-16); min-height:250px; padding:var(--space-16); background:#fff; border-right:1px solid #ddd; border-bottom:1px solid #ddd; box-sizing:border-box;}
.intro-log-cal-cell.is-empty {background:#fff;}
.intro-log-cal-day {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(26px, calc( 32 / var(--inner) * 100vw ), 32px); aspect-ratio:1/1; font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em; text-align:center; border-radius:100%;}
.intro-log-cal-cell.is-sun .intro-log-cal-day {color:#dc3545;}
.intro-log-cal-cell.is-sat .intro-log-cal-day {color:#0971ff;}
.intro-log-cal-cell.is-today .intro-log-cal-day {background:var(--color-primary); color:#fff;}
.intro-log-cal-event {display:flex; flex-direction:column; gap:8px; width:100%; padding:4px 12px; background:#fafafb; border-left:2px solid var(--color-primary);}
.intro-log-cal-event-tit {font-weight:600; color:var(--color-bk); line-height:1.5em;}
.intro-log-cal-event-desc {font-size:var(--font-size-15); font-weight:400; color:var(--color-primary); line-height:1.5em;}
.intro-log-cal-event-author {font-size:var(--font-size-15); font-weight:500; color:var(--color-primary); line-height:1.5em;}
.intro-log-cal-view[hidden],
.intro-log-list[hidden] {display:none !important;}
.intro-log-list:not([hidden]) {display:flex; flex-direction:column; width:100%;}

.intro-log-list-head {display:grid; grid-template-columns:17.2857% 58.2857% 17.2857% 7.1429%; background:#f8f8f8;}
.intro-log-list-col {display:flex; align-items:center; justify-content:center; padding:var(--space-25) var(--space-30); font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em; text-align:center; background:#fafafb; border-bottom:1px solid #111; box-sizing:border-box;}
.intro-log-list-body {display:flex; flex-direction:column; width:100%;}
.intro-log-list-row {border-bottom:1px solid #ddd; display:grid; grid-template-columns:17.2857% 58.2857% 17.2857% 7.1429%;}
.intro-log-list-row > div {padding:var(--space-30) 10px;}
.intro-log-list-date {display:flex; align-items:center;}
.intro-log-list-date-inner {display:flex; align-items:center; gap:var(--space-16); width:100%;}
.intro-log-list-day-num {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(50px, calc( 64 / var(--inner) * 100vw ), 64px); aspect-ratio:1/1; border:1px solid #ddd; border-radius:100px; box-sizing:border-box;}
.intro-log-list-day-num span {font-size:var(--font-size-24); font-weight:700; color:var(--color-primary); line-height:1.3em; text-align:center;}
.intro-log-list-day-num.is-today {background:var(--color-primary); border-color:var(--color-primary);}
.intro-log-list-day-num.is-today span {color:#fff;}
.intro-log-list-day-info {display:flex; flex-direction:column; gap:4px; justify-content:center; width:100%;}
.intro-log-list-day-name-row {display:flex; align-items:center; gap:8px;}
.intro-log-list-day-name {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.4em;}
.intro-log-list-day-full {font-size:var(--font-size-18); font-weight:400; color:#999; line-height:1.3em;}
.intro-log-list-log {display:flex; flex-direction:column; justify-content:center; gap:8px;}
.intro-log-list-tit {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.4em;}
.intro-log-list-desc {font-weight:400; line-height:1.6em;}
.intro-log-list-author {font-weight:500; color:var(--color-primary); line-height:1.6em;}
.intro-log-list-dept {display:flex; flex-wrap:wrap; align-items:center; gap:4px;}
.intro-log-list-tag {display:inline-flex; align-items:center; justify-content:center; padding:4px var(--space-16); font-size:var(--font-size-15); font-weight:500; color:var(--color-primary); line-height:1.7em; text-align:center; background:#f0f1ff; border-radius:100px;}
.intro-log-list-tag.is-today {padding:4px 8px;}
.intro-log-list-status {display:flex; align-items:center; justify-content:center;}
.intro-log-page {display:flex; align-items:center; justify-content:center; gap:var(--space-40); position:relative; padding:0 88px;}
.intro-log-page-arrows {display:flex; align-items:center; gap:8px;}
.intro-log-page-arrow {display:inline-flex; align-items:center; gap:2px; line-height:0;}
.intro-log-page-arrow img {display:block;}
.intro-log-page-first img:last-child,
.intro-log-page-last img:first-child {margin-left:2px;}
.intro-log-page-list {display:flex; align-items:center; gap:var(--space-40);}
.intro-log-page-list a {font-size:var(--font-size-15); font-weight:400; line-height:1.7em; letter-spacing:-0.03em; text-decoration:none;}
.intro-log-page-list a.is-active {display:flex; align-items:center; justify-content:center; width:38px; height:38px; font-weight:700; color:#fff; background:var(--color-primary); border-radius:100px;}

/* 업무일지 상세 */
.log-detail {display:flex; flex-direction:column; gap:var(--space-50); align-items:center; width:100%;}
.log-detail-panel {width:100%; padding:var(--space-30); border:1px solid #ddd; border-radius:16px; box-sizing:border-box;}
.log-detail-panel-inner {display:flex; flex-direction:column; gap:var(--space-50); width:100%;}
.log-detail-hero {display:flex; gap:var(--space-25); align-items:center;}
.log-detail-date {display:flex; flex-direction:column; gap:4px; align-items:center; justify-content:center; flex-shrink:0; padding:8px var(--space-20); background:var(--color-primary); border-radius:8px; text-align:center;}
.log-detail-date-ym {font-size:var(--font-size-15); font-weight:500; color:rgba(255,255,255,0.7); line-height:1.5em;}
.log-detail-date-day {font-size:var(--font-size-36); font-weight:700; color:#fff; line-height:1.3em;}
.log-detail-date-week {font-size:var(--font-size-15); font-weight:700; color:rgba(255,255,255,0.7); line-height:1.5em;}
.log-detail-head {display:flex; flex-direction:column; gap:10px; justify-content:center; min-width:0; flex:1;}
.log-detail-author {font-size:var(--font-size-18); font-weight:600; color:var(--color-primary); line-height:1.4em;}
.log-detail-tit {font-size:var(--font-size-30); font-weight:700; color:var(--color-bk); line-height:1.3em;}
.log-detail-desc {font-size:var(--font-size-18); font-weight:400; line-height:1.6em;}
.log-detail-line {width:100%; height:1px; background:#ddd;}
.log-detail-meta-row {grid-template-columns:repeat(4, 1fr); display:grid; gap:var(--space-50); width:100%;}
.log-detail-meta-card {display:flex; flex-direction:column; gap:var(--space-25); min-height:160px; padding:10px var(--space-25); border:1px solid #ddd; border-radius:var(--space-16); box-sizing:border-box;}
.log-detail-meta-head {display:flex; align-items:center; gap:8px; padding:15px 12px; border-bottom:1px solid #ddd; box-sizing:border-box;}
.log-detail-meta-bar {flex-shrink:0; width:3px; height:18px; background:var(--color-primary);}
.log-detail-meta-tit {font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em;}
.log-detail-meta-val {font-size:var(--font-size-18); font-weight:400; line-height:1.6em;}
.log-detail-section {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.log-detail-section-tit {display:flex; align-items:center; gap:var(--space-16); margin:0; height:34px; font-size:var(--font-size-24); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.log-detail-section-bar {flex-shrink:0; width:3px; height:20px; background:var(--color-primary);}
.log-detail-box {padding:16px; background:#f8f8f8; border-radius:16px;}
.log-detail-activity-list {display:flex; flex-direction:column; gap:var(--space-16);}
.log-detail-activity-item {display:flex; gap:var(--space-16); align-items:center; padding:var(--space-16); background:#f8f8f8; border-radius:16px;}
.log-detail-activity-num {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; font-size:var(--font-size-18); font-weight:700; color:var(--color-primary); line-height:1.6em; text-align:center; background:#fff; border-radius:8px; box-sizing:border-box;}
.log-detail-activity-body {display:flex; flex:1 1 0; flex-direction:column; gap:8px; min-width:0;}
.log-detail-activity-tit {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.4em;}
.log-detail-activity-desc {font-weight:400; line-height:1.6em;}
.log-detail-member-row {grid-template-columns:repeat(3, 1fr); display:grid; gap:var(--space-16); width:100%;}
.log-detail-member-card {display:flex; gap:var(--space-16); align-items:center; padding:var(--space-16); background:#f8f8f8; border-radius:16px; box-sizing:border-box;}
.log-detail-member-thumb {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(60px, calc( 80 / var(--inner) * 100vw ), 80px); aspect-ratio:1/1; background:#f3f6ff; border-radius:100%; box-sizing:border-box;}
.log-detail-member-figure {width:44px; height:59px; overflow:hidden;}
.log-detail-member-figure img {display:block; width:100%; height:100%; object-fit:contain;}
.log-detail-member-info {display:flex; flex-direction:column; gap:8px; min-width:0;}
.log-detail-member-name {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.4em;}
.log-detail-member-dept {font-weight:400; line-height:1.6em;}

.log-detail-place-row {grid-template-columns:repeat(3, 1fr); display:grid; gap:var(--space-16); width:100%;}
.log-detail-place-card {display:flex; gap:var(--space-16); align-items:center; width:440px; padding:16px; background:#f8f8f8; border-radius:16px; box-sizing:border-box;}
.log-detail-place-icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:56px; height:56px; background:var(--color-primary); border-radius:100px;}
.log-detail-place-icon img {display:block; width:30px; height:30px;}
.log-detail-place-info {display:flex; flex-direction:column; gap:8px; min-width:0;}
.log-detail-place-name {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.4em;}
.log-detail-place-addr {font-weight:400; line-height:1.6em;}
.log-detail-actions {display:flex; gap:10px; margin-top:var(--space-50); justify-content:center;  align-items:flex-start;}
.log-detail-btn {display:flex; align-items:center; justify-content:center; width:160px; height:60px; font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.5em; letter-spacing:-0.03em; text-align:center; text-decoration:none; background:#fff; border:1px solid #ddd; border-radius:8px; box-sizing:border-box;}
.log-detail-btn-primary {width:360px; color:#fff; background:var(--color-primary); border-color:var(--color-primary);}

/* 업무일지 작성 폼 */
.write-form {width:100%;}
.write-form-panel {width:100%; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:16px; box-sizing:border-box;}
.write-form-inner {display:flex; flex-direction:column; gap:var(--space-50); width:100%;}
.write-form-block {display:flex; flex-direction:column; gap:var(--space-30); width:100%;}
.write-form-block-member {gap:var(--space-16);}
.write-form-head {display:flex; align-items:center; gap:var(--space-16); margin:0; height:34px; font-size:var(--font-size-24); font-weight:700; color:#242424; line-height:1.4em;}
.write-form-bar {flex-shrink:0; width:3px; height:20px; background:#0f138c;}
.write-form-field {display:flex; flex-direction:column; gap:8px; width:100%;}
.write-form-label {font-size:var(--font-size-18); font-weight:600; color:#242424; line-height:1.6em;}
.write-form-req {color:#fd8239;}
.write-form-inp {display:flex; align-items:center; width:100%; height:var(--write-height); padding:var(--space-16); background:#fafafa; border:1px solid #e5e7eb; border-radius:8px; box-sizing:border-box;}
.write-form-inp input {width:100%; padding:0; font-size:var(--font-size-15); font-weight:600; color:#454545; line-height:1.5em; background:transparent; border:0; outline:0;}
.write-form-inp-line input {font-weight:600; line-height:1.5em;}
.write-form-row-date {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-16);width:100%;}
.write-form-date-group {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-16);}
.write-form-time-group {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-16);}
.write-form-field-date {flex-shrink:0;}
.write-form-field-time {flex-shrink:0;}
.write-form-date {display:flex; align-items:center; height:var(--write-height);}
.write-form-date-inp {height:var(--write-height) !important; width:100%; font-size:var(--font-size-16); font-weight:500; color:#242424; line-height:1.6em; background:#fafafa; border:1px solid #ddd; border-right:0; border-radius:8px 0 0 8px;}
.write-form-date-inp[readonly] {background-color:#FAFAFA;}
.write-form-date .ui-datepicker-trigger {height:var(--write-height); width:var(--write-height); border-radius:0 8px 8px 0; border:1px solid #DDD; background-color:#FAFAFA;}

.write-form-time {display:flex; align-items:center; width:100%; height:var(--write-height); padding:12px; background:#fafafa; border:1px solid #ddd; border-radius:8px; box-sizing:border-box;}
.write-form-time input {width:100%; padding:0; font-size:var(--font-size-16); font-weight:500; color:#242424; line-height:1.6em; background:transparent; border:0; outline:0;}
.write-form-row-half {display:flex; gap:var(--space-16); align-items:flex-start; width:100%;}
.write-form-row-half .write-form-field {flex:1 1 0; min-width:0;}
.write-form select {height:var(--write-height); font-size:var(--font-size-15); font-weight:500; color:#242424; line-height:1.5em; background-color:#fafafa; border:1px solid #ddd; border-radius:8px; cursor:pointer; box-sizing:border-box;}

.write-form-work {padding:var(--space-16); background:#f8f8f8; border-radius:16px;}
.write-form-work-inp {background:#fff; border:1px solid #e5e7eb; border-radius:8px; overflow:hidden;}
.write-form-work-inp textarea {display:block; width:100%; min-height:200px; height:auto; padding:var(--space-16); margin:0; font-size:var(--font-size-16); font-weight:400; color:#454545; line-height:1.6em; background:transparent; border:0; border-radius:8px; resize:none; box-sizing:border-box;}
.write-form-act-list {display:flex; flex-direction:column; gap:var(--space-16); width:100%; margin:0; padding:0; list-style:none;}
.write-form-act-item {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-16); background:#f8f8f8; border-radius:16px;}
.write-form-act-item .write-form-inp {background-color:#fff;}

.write-form-act-num {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; font-size:var(--font-size-18); font-weight:700; color:#0f138c; line-height:1.6em; text-align:center; background:#fff; border-radius:8px; box-sizing:border-box;}
.write-form-act-fields {display:flex; flex:1 1 0; flex-direction:column; gap:8px; min-width:0;}
.write-form-del {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; padding:0; background:transparent; border:0; cursor:pointer;}
.write-form-del img {display:block; width:40px; height:40px;}
.write-form-add {display:flex; align-items:center; justify-content:center; gap:10px; width:100%; height:var(--write-height); padding:var(--space-16); font-size:var(--font-size-16); font-weight:600; color:#242424; line-height:1.5em; background:#f8f8f8; border:1px solid #e5e7eb; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.write-form-add-ico {display:flex; flex-shrink:0; width:18px; height:18px;}
.write-form-add-ico img {display:block; width:18px; height:18px;}
.write-form-member-row {display:flex; gap:var(--space-16); align-items:center; width:100%;}
.write-form-member-row .input {min-width:0;}
.write-form-zip-row {display:flex; gap:8px; align-items:flex-start;}
.write-form-inp-zip {flex-shrink:0; width:300px;}
.write-form-inp-zip input {line-height:1.7em;}
.write-form-zip-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:100px; height:var(--write-height); padding:var(--space-16); font-size:var(--font-size-15); font-weight:600; color:#fff; line-height:1.7em; background:#111; border:0; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.write-form-inp-addr {border-color:#ddd;}
.write-form-inp-addr input {line-height:1.7em;}

/* 회원정보 */
.myinfo {display:flex; flex-direction:column; gap:var(--space-80); align-items:center; width:100%;}
.myinfo-panel {display:flex; flex-direction:column; gap:var(--space-30); width:100%; padding:var(--space-30); background:#fff; border:1px solid #ddd; border-radius:20px; box-sizing:border-box;}
.myinfo-head {display:flex; align-items:center; justify-content:space-between; width:100%;}
.myinfo-head-tit {display:flex; align-items:center; gap:var(--space-16);}
.myinfo-head-bar {flex-shrink:0; width:3px; height:20px; background:var(--color-primary);}
.myinfo-head-tit-txt {font-size:var(--font-size-24); font-weight:700; color:var(--color-bk); line-height:1.4em;}
.myinfo-modified {font-weight:400; color:#999; line-height:1.6em;}
.myinfo-line {width:100%; height:1px; background:#ddd;}
.myinfo-row {display:flex; gap:var(--space-30); align-items:flex-start; width:100%;}
.myinfo-field {display:flex; flex:1 1 0; flex-direction:column; gap:8px; min-width:0;}
.myinfo-field-full {flex:none; width:100%;}
.myinfo-label {font-size:var(--font-size-18); font-weight:600; color:var(--color-bk); line-height:1.6em;}
.myinfo-req {color:#fd8239;}
.myinfo-form {display:flex; flex-direction:column; gap:var(--space-30); width:100%;}
.myinfo-val {display:block; width:100%; height:var(--write-height); padding:16px; font-size:var(--font-size-15); font-weight:600; color:var(--color-bk); line-height:1.5em; background:#fafafa; border:1px solid #e5e7eb; border-radius:8px; box-sizing:border-box; outline:0;}
.myinfo-val:focus:not([readonly]) {border-color:var(--color-primary);}
.myinfo-val[readonly] {background:#f0f0f0; color:#999; border-color:#e0e0e0; cursor:default;}
.myinfo-val-line {border-color:#ddd; line-height:1.7em;}
.myinfo-val-zip {flex-shrink:0; width:300px;}
.myinfo-zip-row {display:flex; gap:8px; align-items:flex-start;}
.myinfo-zip-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:100px; height:var(--write-height); padding:var(--space-16); font-size:var(--font-size-15); font-weight:600; color:#fff; line-height:1.7em; background:#111; border:0; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.myinfo-action {display:flex; align-items:flex-start; justify-content:center;}
.myinfo-submit {width:400px; height:60px; display:flex; align-items:center; justify-content:center; padding:var(--space-25) var(--space-60); font-size:var(--font-size-18); font-weight:600; color:#fff; line-height:1.5em; letter-spacing:-0.03em; text-align:center; background:var(--color-primary); border:0; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.myinfo-profile-wrap {display:flex; align-items:flex-start; gap:16px; flex-wrap:wrap;}
.myinfo-profile-preview {width:80px; height:80px; object-fit:cover; border-radius:50%; border:2px solid #e0e0e0; flex-shrink:0;}
.myinfo-profile-actions {display:flex; flex-direction:column; gap:6px; justify-content:center;}
.myinfo-profile-hint {font-size:13px; color:#999;}
.myinfo-profile-del-btn {display:inline-flex; align-items:center; justify-content:center; width:fit-content; padding:5px 14px; font-size:13px; font-weight:500; color:#d32f2f; background:#fff; border:1px solid #d32f2f; border-radius:6px; cursor:pointer; transition:background .15s, color .15s;}
.myinfo-profile-del-btn:hover {background:#d32f2f; color:#fff;}

/* 업무일지 검색 (/mypage/logsearch) — mijinintl2 이식 */
/* 검색어 강조 (발췌 안에 반드시 포함되는 키워드) */
.intro-log-list-desc mark.log-hit {padding:0 2px; color:var(--color-primary); font-weight:600; background:#f0f1ff; border-radius:3px;}
.intro-log-head-actions {display:flex; flex-shrink:0; align-items:center; gap:var(--space-16);}
.intro-log-head-actions .intro-log-tab-pill-view {width:220px;}
.intro-log-tab-pill-view a.intro-log-tab-btn {display:flex; align-items:center; justify-content:center; text-decoration:none; line-height:1.7em;}
.intro-log-empty {padding:var(--space-50) var(--space-16); font-weight:400; color:#999; line-height:1.6em; text-align:center;}

.log-search {display:flex; flex-direction:column; gap:var(--space-50); width:100%; padding:40px; margin-bottom:var(--space-50); background:#f8f8f8; border-radius:24px; box-sizing:border-box;}
.log-search-top {display:flex; align-items:center; justify-content:space-between; gap:var(--space-16); width:100%;}
.log-search-top-title {display:flex; align-items:center; gap:8px;}
.log-search-bar {flex-shrink:0; width:3px; height:18px; background:var(--color-primary);}
.log-search-tit {font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em;}
.log-search-reset {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:120px; height:var(--write-height); padding:0 var(--space-16); font-weight:500; color:var(--color-bk); line-height:1.6em; text-decoration:none; background:#fff; border:1px solid #ddd; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.log-search-body {display:flex; flex-direction:column; gap:var(--space-30); width:100%;}
.log-search-grid {grid-template-columns:repeat(3, 1fr); display:grid; gap:var(--space-30) var(--space-16); width:100%;}
.log-search-grid-wide {grid-template-columns:repeat(2, 1fr);}
.log-search-field {display:flex; flex-direction:column; gap:8px; min-width:0;}
.log-search-label {font-size:var(--font-size-18); font-weight:600; color:#242424; line-height:1.6em;}
.log-search-inp {display:flex; align-items:center; width:100%; height:var(--write-height);}
.log-search-inp select,
.log-search-inp input {width:100%; min-width:0; height:100%; padding:0 var(--space-16); background:#fff; border:1px solid #ddd; border-radius:8px; font-size:var(--font-size-15); font-weight:500; color:#242424; line-height:1.5em; background:#fff; box-sizing:border-box;}
.log-search-inp select {cursor:pointer; appearance:none; -webkit-appearance:none; padding-right:calc(var(--space-16) + 16px); background:#fff url("../images/bbs/select.png") no-repeat right 16px center !important; background-size:10px auto !important;}
.log-search-inp select::-ms-expand {display:none;}
.log-search-inp:focus-within {border-color:var(--color-primary);}
.log-search-date-row {grid-template-columns:repeat(2, 1fr); display:grid; gap:var(--space-16); width:100%;}
.log-search-quick {display:flex; flex-wrap:wrap; gap:8px;}
.log-search-quick-btn {padding:4px var(--space-16); font-size:var(--font-size-15); font-weight:500; color:#666; line-height:1.7em; background:#fff; border:1px solid #ddd; border-radius:100px; cursor:pointer;}
.log-search-quick-btn:hover {color:var(--color-primary); border-color:var(--color-primary);}
.log-search-quick-btn.is-active {color:#fff; background:var(--color-primary); border-color:var(--color-primary);}
.log-search-bottom {display:flex; flex-wrap:wrap; align-items:flex-end; gap:8px; width:100%; padding-top:var(--space-30); border-top:1px solid #ddd;}
.log-search-inp-sw {flex-shrink:0; width:240px;}
.log-search-inp-kw {flex:1 1 0; min-width:0;}
.log-search-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:160px; height:var(--write-height); font-size:var(--font-size-15); font-weight:600; color:#fff; line-height:1.6em; text-align:center; background:var(--color-primary); border:1px solid var(--color-primary); border-radius:8px; cursor:pointer; box-sizing:border-box;}
.log-search-result {display:flex; flex-direction:column; gap:var(--space-30); width:100%;}
.log-search-result-head {display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-16); width:100%;}
.log-search-result-title {display:flex; align-items:center; gap:8px;}
.log-search-result-count {font-size:var(--font-size-18); font-weight:700; color:var(--color-bk); line-height:1.6em;}
.log-search-result-count strong {color:var(--color-primary);}
.log-search-result-page {margin-left:8px; font-size:var(--font-size-15); font-weight:400; color:#999;}
.log-search-inp-sort {width:200px;}
/* 검색 결과 엑셀 다운로드 (시안: 우측 정렬 / 아이콘+텍스트) */
.log-search-tools {display:flex; align-items:center; justify-content:flex-end; width:100%;}
.log-search-excel {display:inline-flex; align-items:center; justify-content:center; gap:8px; height:56px; padding:0 var(--space-25); font-size:var(--font-size-16); font-weight:500; color:#fff; line-height:1.6em; text-align:center; text-decoration:none; background:var(--color-primary); border:0; border-radius:8px; cursor:pointer; box-sizing:border-box;}
.log-search-excel:hover {opacity:0.9;}
.log-search-excel img {display:block; width:24px; height:24px; flex-shrink:0;}
.log-search :is(select, input, button):focus-visible,
.intro-log-tab-pill-view a.intro-log-tab-btn:focus-visible {outline:2px solid var(--color-primary); }