/* Shared palette for the original application's forms, tables and reports. */
html:root{--ak-bg:#f3f6f1;--ak-surface:#fff;--ak-soft:#edf3e9;--ak-ink:#183e32;--ak-text:#273e35;--ak-muted:#627369;--ak-line:#dce5d9;--ak-primary:#1d6247;--ak-hover:#134c36;--ak-lime:#dcf891;--ak-shadow:0 8px 30px #183e3208;--primary:var(--ak-primary)!important;--primary-dark:var(--ak-hover)!important;--primary-light:#e1eddd!important;--secondary:#658157!important;--accent:#accd71!important;--bg:var(--ak-bg)!important;--bg-white:var(--ak-surface)!important;--text:var(--ak-text)!important;--text-light:var(--ak-muted)!important;--text-muted:var(--ak-muted)!important;--border:var(--ak-line)!important;--shadow:#183e3212!important;color-scheme:light}
html[data-ak-theme="2"]{--ak-bg:#0c1425;--ak-surface:#152337;--ak-soft:#1c3043;--ak-ink:#edf5e8;--ak-text:#dae5e8;--ak-muted:#a9bac5;--ak-line:#30465a;--ak-primary:#d7fa7d;--ak-hover:#e5ffac;--ak-lime:#d7fa7d;--ak-shadow:0 8px 30px #0002;--primary-light:#294138!important;--secondary:#a9d892!important;color-scheme:dark}
html body{background:var(--ak-bg)!important;color:var(--ak-text)!important;letter-spacing:-.015em}
.ak-app-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px max(20px,calc((100% - 1200px)/2));background:var(--ak-ink);color:var(--ak-bg);min-height:66px;position:relative;z-index:101;flex-shrink:0;width:100%;box-sizing:border-box}
html[data-ak-theme="2"] .ak-app-bar{background:#091221;color:var(--ak-ink);border-bottom:1px solid var(--ak-line)}
.ak-app-brand{display:inline-flex;align-items:center;gap:10px;color:inherit!important;text-decoration:none;font-size:19px;font-weight:800;white-space:nowrap}.ak-app-brand img{border-radius:9px;flex:none}.ak-app-brand span{line-height:1.1}.ak-app-brand small{display:block;font:600 8px/1.4 sans-serif;letter-spacing:.16em;margin-top:4px;opacity:.7}.ak-app-tools{display:flex;align-items:center;gap:20px}.ak-app-home{font-size:12px;color:inherit!important}.ak-app-themes{display:flex;gap:4px;padding:3px;background:#ffffff12;border:1px solid #ffffff25;border-radius:100px}.ak-app-themes button{cursor:pointer;display:flex;align-items:center;gap:6px;padding:6px 11px;border:0;border-radius:100px;background:transparent;color:inherit;font:inherit;font-size:11px;font-weight:600;line-height:1.5;white-space:nowrap}.ak-app-themes button[aria-pressed=true]{background:var(--ak-lime);color:#163829}.ak-app-themes i{width:9px;height:9px;background:#588065;border:1px solid #ffffff60;border-radius:50%}.ak-app-themes button+button i{background:#17253c}
html body:has(>.login-container),html body:has(>.register-container),html body:has(>.auth-container){display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;background:radial-gradient(ellipse at 15% 20%,#bed49b30,transparent 55%),var(--ak-bg)!important}
html :is(.login-container,.register-container,.auth-container){margin:48px auto!important;padding-inline:20px;max-width:520px;width:100%;box-sizing:border-box}
html :is(.login-box,.register-box,.auth-box,.card,.settings-section,.org-card,.qr-card,.stat-card,.stats-card,.filter-section,.report-section,.table-container,.table-wrapper,.modal-content,.confirm-modal-content,.member-card,.preregister-card,.form-section){background:var(--ak-surface)!important;color:var(--ak-text);border-color:var(--ak-line)!important;border-radius:18px;box-shadow:var(--ak-shadow)}
html :is(.login-box,.register-box,.auth-box){border:1px solid var(--ak-line);padding:34px!important;border-radius:24px!important;box-shadow:0 20px 65px #143d3210!important}
html :is(.login-header,.register-header,.auth-header) a{color:var(--ak-ink)!important}
html :is(.login-header,.register-header,.auth-header,.header .logo) .fa-qrcode{display:inline-block;width:38px;height:38px;background:url('/assets/attendking-home-v1/favicon.svg') center/contain no-repeat;vertical-align:middle;font-size:0!important}
html :is(.site-header,.header){background:var(--ak-surface)!important;color:var(--ak-text);border-bottom:1px solid var(--ak-line);box-shadow:none!important}
html :is(.header-inner){gap:16px}html :is(.site-logo,.logo,.page-title,.card-title,.section-header h2,.section-header h3,.form-label,.login-box h2){color:var(--ak-ink)!important}
html .header-nav a{color:var(--ak-text)}html .header-nav a:hover{background:var(--ak-soft);color:var(--ak-primary)}
html :is(.welcome-banner,.org-header,.dashboard-hero){background:linear-gradient(115deg,#153e32,#285c46)!important;border:1px solid #38634a;border-radius:20px;color:#f4faed!important}
html :is(.welcome-banner,.org-header) :is(h1,h2,p){color:inherit!important}
html .welcome-banner .btn{background:var(--ak-lime)!important;color:#183e32!important;border:0}
html :is(.btn-primary,.btn-login,button[type=submit].btn,.tab.active,.tab-btn.active,.nav-tab.active,.pagination .active){background:var(--ak-primary)!important;color:var(--ak-bg)!important;border-color:var(--ak-primary)!important;box-shadow:none!important}
html :is(.btn-primary,.btn-login):hover{background:var(--ak-hover)!important}
html :is(.btn,.btn-primary,.btn-outline){border-radius:10px;font-weight:650;transition:background .18s,color .18s,box-shadow .18s;min-height:38px}
html .btn-outline{background:transparent!important;color:var(--ak-primary)!important;border-color:var(--ak-line)!important}html .btn-outline:hover{background:var(--ak-soft)!important;border-color:var(--ak-primary)!important}
html :is(.form-control,select,textarea,input[type=text],input[type=email],input[type=password],input[type=tel],input[type=date],input[type=number],input[type=time]){background:var(--ak-surface)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important;border-radius:10px;accent-color:var(--ak-primary)}
html :is(input,select,textarea,button,a):focus-visible{outline:3px solid #91b66d!important;outline-offset:3px}html input::placeholder,html textarea::placeholder{color:var(--ak-muted);opacity:.8}
html :is(.form-hint,.text-muted,.subtitle,.page-subtitle,.user-info,.stat-label,.balance-label){color:var(--ak-muted)!important}
html :is(.card-header,.section-header,.modal-header,.modal-footer,.table-header){border-color:var(--ak-line)!important}
html :is(th,thead,.filter-bar,.filter-panel,.summary-box,.sms-balance-box,.balance-item,.tab-nav,.tabs,.info-box){background:var(--ak-soft)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important}
html :is(td,th){border-color:var(--ak-line)!important}html tbody tr:hover{background:var(--ak-soft)!important}html :is(.stat-value,.stat-number,.balance-value,.balance-value.highlight){color:var(--ak-primary)!important;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
html :is(.lang-dropdown,.dropdown-menu,.toast,.preset-modal,.guide-content,.collapsible-content){background:var(--ak-surface)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important}
html .lang-option,html .lang-btn{color:var(--ak-text)!important}html .lang-option:hover{background:var(--ak-soft)!important}
html .table-responsive,html .table-wrapper,html .table-container{overflow-x:auto}html table{font-variant-numeric:tabular-nums}html input[type=checkbox]{accent-color:var(--ak-primary)}
html input:checked+.toggle-slider{background:#1d6247!important}html button:disabled{opacity:.5;cursor:not-allowed}
html[data-ak-theme="2"] :is(.org-body,.org-footer,.qr-card-header,.attendance-item,.member-item,.settings-body,.stats-grid>div,.stat-item,.empty-state,.quick-preset-btn,.preset-item,.step-card,.collapsible-header){background:var(--ak-surface)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important}
html[data-ak-theme="2"] :is(.breadcrumb,.breadcrumb a,.page-header p,.card-body p,.settings-section p,.settings-section label,.modal-content label,.modal-content h3){color:var(--ak-text)!important}
/* Organization display: retain the organization's logo and selected layout. */

html body[class*="effect-"]{background:linear-gradient(135deg,var(--theme-bg-start),var(--theme-bg-end))!important;color:#f5f9ed!important}

html body[class*="effect-"] .ak-app-bar{background:#09231dc9;color:#f4faed}html body[class*="effect-"] .ak-app-home{color:#e5efd9!important}
html .qr-code img,html #qrcode,html .qr-image,html .qr-code canvas{background:#fff;color:#111;border-radius:12px}
@media(max-width:700px){.ak-app-bar{padding:10px 16px;gap:10px;min-height:60px}.ak-app-tools{gap:8px}.ak-app-home{display:none}.ak-app-themes button{padding:6px 9px}.ak-app-brand{font-size:17px}.ak-app-brand small{font-size:7px}html :is(.login-container,.register-container,.auth-container){margin:28px auto!important}html :is(.login-box,.register-box,.auth-box){padding:26px 22px!important}html .header-inner{flex-wrap:wrap;height:auto;min-height:64px;padding-top:12px;padding-bottom:12px}html .breadcrumb{flex-wrap:wrap;gap:6px}html .page-header{flex-wrap:wrap;gap:16px}html :is(.settings-container,.main,.container){max-width:100%;box-sizing:border-box}html .form-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html *,html *:before,html *:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media print{.ak-app-bar{display:none!important}html:root{--ak-bg:#fff;--ak-surface:#fff;--ak-soft:#f5f5f5;--ak-ink:#111;--ak-text:#111;--ak-muted:#444;--ak-line:#ddd;--ak-primary:#174d37;color-scheme:light}html body{background:white!important;color:#111!important}}
html body:has(>.login-container),html body:has(>.register-container),html body:has(>.auth-container){padding:0!important}
html :is(.back-link,.forgot-password,.register-link a,.login-link a){color:var(--ak-primary)!important}
html .main-grid>*{min-width:0}html :is(.org-info-card,.org-details,.org-public-url,.qr-info,.qr-content){min-width:0;max-width:100%}html .org-public-url input{min-width:0}
html[data-ak-theme="2"] :is(.effect-option,.color-option,.layout-option,.quick-link){background:var(--ak-soft)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important}
html[data-ak-theme="2"] :is(.effect-option.active,.layout-option.active,.color-option.active){background:#29432f!important;border-color:var(--ak-lime)!important}
html[data-ak-theme="2"] .quick-link i{background:var(--ak-surface)!important}
html .footer-logo{color:#d7fa7d!important}html .footer-logo .fa-qrcode{width:32px;height:32px;background:url('/assets/attendking-home-v1/favicon.svg') center/contain no-repeat;font-size:0}
@media(max-width:700px){html .main-grid{grid-template-columns:minmax(0,1fr)!important}html .report-header,html .report-actions{flex-wrap:wrap;max-width:100%}html .report-title{font-size:25px;overflow-wrap:anywhere;white-space:normal}html .device-access-settings{max-width:100%}html .device-checkboxes{flex-wrap:wrap}html .qr-card-body{flex-direction:column}html .quick-preset-buttons{grid-template-columns:minmax(0,1fr)}html .qr-daily-url{min-width:0;max-width:100%;flex-wrap:wrap}html input{max-width:100%}}
@media(max-width:700px){html .qr-card-header{flex-wrap:wrap;gap:12px}html .qr-card-header>div{min-width:0;max-width:100%;flex-wrap:wrap}html .qr-name-wrapper{flex-basis:100%}}
html body[class*="effect-"] .org-name{background:none!important;-webkit-text-fill-color:#f4faed!important;color:#f4faed!important}
html body[class*="effect-"] .org-description{color:#d9e8d8!important}
html[data-ak-theme="2"] .date-display{color:var(--ak-muted)!important}
html :is(.remember-me label,.signup-link,.register-link,.login-link){color:var(--ak-muted)!important}
html :is(.signup-link a,.register-link a,.login-link a){color:var(--ak-primary)!important}
html body[data-ak-org-preset="blue"]{--theme-primary:#1d6247;--theme-secondary:#4c8b61;--theme-bg-start:#ecf3e7;--theme-bg-end:#dae9d3}
html[data-ak-theme="2"] body[data-ak-org-preset="blue"]{--theme-primary:#dcf891;--theme-secondary:#a8d181;--theme-bg-start:#0c1425;--theme-bg-end:#142737}

.ak-sms-dialog{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--ak-line);border-radius:24px;background:var(--ak-surface);color:var(--ak-text);padding:0;box-shadow:0 28px 100px #0005;font-family:inherit}.ak-sms-dialog::backdrop{background:#071c21a6;backdrop-filter:blur(6px)}.ak-sms-dialog[open]{animation:akSmsEnter .2s ease-out}.ak-sms-dialog-head{display:flex;align-items:center;gap:12px;padding:22px 26px;border-bottom:1px solid var(--ak-line);color:var(--ak-ink);font-weight:800}.ak-sms-dialog-head small{display:block;font-size:9px;letter-spacing:.15em;color:var(--ak-muted);margin-top:3px}.ak-sms-close{margin-inline-start:auto;background:var(--ak-soft);color:var(--ak-muted);border:0;border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:24px}.ak-sms-dialog-body{padding:26px}.ak-sms-stage{display:inline-block;font-size:11px;font-weight:750;color:var(--ak-primary);background:var(--ak-soft);padding:5px 10px;border-radius:20px}.ak-sms-dialog h2{font-size:24px;line-height:1.4;margin:14px 0 10px;color:var(--ak-ink);letter-spacing:-.04em}.ak-sms-dialog p{font-size:14px;line-height:1.7;color:var(--ak-muted);margin:0}.ak-sms-route{margin:22px 0;display:grid;gap:14px;padding:18px 20px;border:1px solid var(--ak-line);border-radius:14px}.ak-sms-route>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.ak-sms-route dt{font-size:12px;color:var(--ak-muted)}.ak-sms-route dd{font-weight:750;font-size:15px;font-variant-numeric:tabular-nums}.ak-sms-route small{font-size:10px;font-weight:500;margin-inline-start:5px;color:var(--ak-muted)}.ak-sms-preview{padding:18px 20px;border-radius:14px;background:var(--ak-soft)}.ak-sms-preview>span{font-size:10px;letter-spacing:.06em;color:var(--ak-muted);font-weight:700}.ak-sms-preview p{margin-top:8px;color:var(--ak-text)}.ak-sms-dialog .ak-sms-cost{font-size:11px;margin-top:14px}.ak-sms-dialog-actions{display:flex;gap:10px;padding:20px 26px;border-top:1px solid var(--ak-line)}.ak-sms-dialog-actions .btn:first-child{flex:1}.ak-sms-dialog-actions .btn:last-child{flex:2}.ak-sms-dialog-actions .btn{justify-content:center;padding:12px;font:inherit;font-size:13px;font-weight:600;line-height:1.4}.ak-sms-progress{font-size:12px;color:var(--ak-primary);margin-top:16px}.ak-sms-progress:not([hidden]){display:flex;align-items:center;gap:10px}.ak-sms-progress>span{width:16px;height:16px;border:2px solid var(--ak-line);border-top-color:var(--ak-primary);border-radius:50%;animation:akSmsSpin .7s linear infinite}.ak-sms-dialog[data-result=error] .ak-sms-stage{background:#ffeadb;color:#943c19}.ak-sms-dialog[data-result=success] .ak-sms-stage{background:#dff3d4;color:#20583b}@keyframes akSmsSpin{to{transform:rotate(360deg)}}@keyframes akSmsEnter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:520px){.ak-sms-dialog-body{padding:22px}.ak-sms-dialog-head,.ak-sms-dialog-actions{padding:18px 22px}.ak-sms-dialog h2{font-size:22px}.ak-sms-route small{display:none}}@media(prefers-reduced-motion:reduce){.ak-sms-dialog[open],.ak-sms-progress>span{animation:none}}

/* ===== 2026-10-01 낮/밤 테마 전환 + 사용성 정리 ===== */
/* 머리말: 띠 하나로. 글자 크기를 고르게. */
html :is(.site-header,header.header){position:sticky;top:0;z-index:1000;backdrop-filter:blur(10px);background:color-mix(in srgb,var(--ak-surface) 94%,transparent)!important}
html :is(.site-header,header.header) .header-inner{height:64px;gap:14px}
html :is(.site-header,header.header) :is(.site-logo,.logo){font-size:19px!important;font-weight:800;letter-spacing:-.04em;gap:10px;display:inline-flex;align-items:center;white-space:nowrap}
html :is(.site-header,header.header) .header-nav{gap:6px;font-size:14px}
html :is(.site-header,header.header) .header-nav a{font-size:14px!important;font-weight:600;padding:9px 13px!important;border-radius:10px;white-space:nowrap}
html :is(.site-header,header.header) .header-nav :is(.user-info,.lang-btn){font-size:13px!important}
html .header-nav .btn-login,html .header-nav a.btn-primary{padding:9px 15px!important}
html .mobile-menu-btn{color:var(--ak-ink)!important;width:40px;height:40px;border-radius:10px}
html[data-ak-theme="2"] .ak-mode-toggle{border-color:#4a6076}
/* 요약 숫자 카드: 휴대폰에서 두 칸 */
html .stats-grid{gap:14px}
html .stat-card{padding:22px 18px}
@media(max-width:700px){
 html .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
 html .stat-card{padding:16px 10px!important;border-radius:16px}
 html .stat-card :is(.stat-icon,.stat-card-icon){width:40px!important;height:40px!important;font-size:17px!important;margin-bottom:10px!important}
 html .stat-card :is(.stat-value,.stat-number){font-size:26px!important}
 html .quick-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}
 html .quick-link{flex-direction:column;align-items:flex-start;gap:10px;padding:14px!important}
 html .quick-link i{width:40px!important;height:40px!important;font-size:18px!important}
 html .quick-link-text{font-size:15px}html .quick-link-desc{font-size:12px}
 html :is(.btn,.action-btn,.tab,.tab-btn){min-height:42px}
 html :is(.site-header,header.header) .header-nav.active{top:64px;padding:14px 16px;gap:6px;border-bottom:1px solid var(--ak-line);background:var(--ak-surface)!important;box-shadow:0 18px 40px #0e2b2226}
 html header.header .header-nav .user-info{display:none}
 html header.header .header-nav a{padding:8px 9px!important;font-size:13px!important}
}
/* 밤 테마에서 빠진 면 채우기 */
html[data-ak-theme="2"] :is(.quick-link,.quick-nav,.quick-nav-bar,.group-stat-card,.group-summary-item,.calendar-day,.calendar-grid,.calendar-header,.mobile-member-card,.mobile-card-header,.filter-tabs,.status-tabs,.dropdown-item,.modal-body,.modal-overlay .modal,.notice-box,.help-box,.guide-box,.stat-box,.date-nav,.time-preset-item,.member-detail-section,.alert-info){background:var(--ak-surface)!important;color:var(--ak-text)!important;border-color:var(--ak-line)!important}
html[data-ak-theme="2"] :is(.quick-link-text,.quick-link-desc,.mobile-card-name,.mobile-card-value,.calendar-day-number,h1,h2,h3,h4,label,strong,.member-name,.clickable-name){color:var(--ak-ink)}
html[data-ak-theme="2"] :is(.mobile-card-phone,.mobile-card-label,small){color:var(--ak-muted)}
html[data-ak-theme="2"] .quick-link i{background:var(--ak-soft)!important;color:var(--ak-lime)!important}
html[data-ak-theme="2"] :is(.btn-primary,.btn-login,button[type=submit].btn,.tab.active,.tab-btn.active){color:#10212b!important}
html[data-ak-theme="2"] :is(.welcome-banner,.org-header,.dashboard-hero){background:linear-gradient(115deg,#12283a,#1c3f3a)!important;border-color:#30465a}
html[data-ak-theme="2"] img[src*="qr"],html[data-ak-theme="2"] canvas{background:#fff}
/* 긴 명단: 나눠 보기 */
.ak-more-row{display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px 6px}
.ak-more-row button{min-width:min(340px,100%);padding:13px 22px;border-radius:12px;border:1px solid var(--ak-line);background:var(--ak-soft);color:var(--ak-ink);font:inherit;font-weight:700;cursor:pointer}
.ak-more-row button:hover{border-color:var(--ak-primary)}
.ak-more-row small{color:var(--ak-muted);font-size:12px}
.ak-hidden-row{display:none!important}
/* AI 실험실 소식 카드(대시보드) */
.ak-ainews{margin:0 0 24px;padding:20px 22px;border:1px solid var(--ak-line);border-radius:18px;background:var(--ak-surface);box-shadow:var(--ak-shadow)}
.ak-ainews-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.ak-ainews-head b{display:flex;align-items:center;gap:8px;color:var(--ak-ink);font-size:15px}
.ak-ainews-head b:before{content:"";width:8px;height:8px;border-radius:50%;background:#7fc241;box-shadow:0 0 0 4px #7fc24133}
.ak-ainews-head a{font-size:12px;font-weight:700;color:var(--ak-primary)!important;white-space:nowrap}
.ak-ainews ul{list-style:none;display:grid;gap:8px;margin:0;padding:0}
.ak-ainews li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:baseline;font-size:13px;line-height:1.55;color:var(--ak-text)}
.ak-ainews li time{font-size:11px;color:var(--ak-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.ak-ainews li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ak-ainews p{margin:10px 0 0;font-size:11px;color:var(--ak-muted)}
html :is(.login-box,.register-box,.auth-box,.login-container,.register-container,.auth-container) a:not(.btn){color:var(--ak-primary)!important}
@media(max-width:768px){html header.header .header-inner:has(.breadcrumb){position:relative}html header.header .header-inner:has(.breadcrumb)>.ak-mode-toggle{position:absolute;top:11px;inset-inline-end:16px;margin:0}html header.header .header-inner:has(.breadcrumb)>.ak-language{position:absolute;top:11px;inset-inline-end:62px;margin:0}}
