/* PC 관리 · 복약일과 v1.8 디자인 토큰 기반 통합 테마 */
:root{color-scheme:light;--app-bg:#f4f7fd;--card:#fff;--ink:#1c2941;--muted-text:#7e8ca2;--accent:#2c72ec;--soft-blue:#eaf2ff;--success:#18bf76;--hairline:#e8edf6;--shadow:0 10px 32px rgba(38,66,113,.055);--line:#e8edf6;--muted:#7e8ca2}
html,body{background:#f7f9fd!important;color:var(--ink)!important;font-family:Pretendard,'Noto Sans KR','Malgun Gothic',system-ui,sans-serif!important}
body{background:linear-gradient(180deg,#f0f4ff 0,#f7f9fd 280px,#f7f9fd 100%)!important}
main{max-width:970px;padding:16px 15px 65px}
main>header{padding:12px 3px 10px}
main>header h1{font-size:21px;color:#1b3657}
main>header p{font-size:12px;color:#7e8ca2}
section{background:#fff;border:1px solid #e8edf6;box-shadow:var(--shadow);color:#1c2941;backdrop-filter:none}
h1,h2,h3,strong{color:#1c2941}
label{color:#526783}
small,footer,.display-help,.password-help{color:#7e8ca2!important}
button{background:#2c72ec;border:1px solid #2c72ec;border-radius:12px;color:#fff;box-shadow:none}
button:hover:not(:disabled){box-shadow:0 5px 16px #2c72ec25}
input,select,textarea{background:#f9fbff!important;color:#1c2941!important;border:1px solid #dce5f2!important;border-radius:12px!important;box-shadow:none!important}
input::placeholder,textarea::placeholder{color:#96a5b9!important}
input:focus,textarea:focus{border-color:#2c72ec!important;outline:2px solid #2c72ec26}
#login{background:#fff;max-width:440px;border-radius:25px;padding:27px;box-shadow:0 14px 42px #33558013}
#login h2{font-size:22px}
#loginMsg,#dashboardMsg{color:#376bbd}
#dashboard{background:transparent!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0 0 75px!important;color:#1c2941!important;overflow:visible}
#dashboard>.bar:first-child{border-bottom:0;padding:7px 3px 10px}
#dashboard #deviceName{color:#7e8ca2;font-size:12px}
#dashboard #logout{background:#fff;border:1px solid #e8edf6;color:#526783;font-size:12px;min-height:36px}
#mobileAppHeader{background:transparent!important;padding:12px 4px 19px;gap:11px}
#mobileAppHeader .brand-mark{background:#e8efff!important;color:#2e6be8!important;border-radius:14px;width:40px;height:40px;font-size:23px}
#mobileAppHeader strong{color:#1c2941!important;font-size:20px;font-weight:830}
#mobileAppHeader small{color:#7e8ca2!important;font-size:11px}
#mobileAppHeader .app-version{background:#fff!important;border:1px solid #e9eef7;color:#526783!important}
#mobileMainNav{display:flex;gap:7px;padding:8px;margin:0 0 20px;background:#fff;border:1px solid #e9edf6;border-radius:18px;box-shadow:var(--shadow)}
#mobileMainNav button{flex:1;min-width:0;background:transparent!important;color:#8290a5!important;border:0!important;border-radius:14px;height:65px;font-size:22px;gap:5px}
#mobileMainNav button span{font-size:11px;font-weight:730}
#mobileMainNav button.active{background:#ecf3ff!important;color:#2568e8!important;box-shadow:none}
#instructionTitle{color:#1c2941!important;font-size:25px;letter-spacing:-.055em;font-weight:830;margin:15px 3px 18px}
#dashboard .instruction-nav{background:#fff;padding:6px;gap:5px;border:1px solid #e9edf6;border-radius:17px;box-shadow:var(--shadow);margin:0 0 14px}
#dashboard .instruction-nav button{background:transparent!important;color:#8290a5!important;border:0;border-radius:12px;font-size:13px;font-weight:750;padding:13px 4px}
#dashboard .instruction-nav button.selected{background:#ecf3ff!important;color:#2568e8!important}
#dashboard .instruction-panel,#dashboard #pcCapturePanel{background:#fff!important;border:1px solid #e8edf6!important;border-radius:23px!important;padding:22px 19px!important;box-shadow:var(--shadow)!important;color:#1c2941!important}
#dashboard .instruction-panel h2,#dashboard #pcCapturePanel h2{color:#1c2941!important;font-size:19px}
#dashboard .instruction-panel h3{color:#1c2941!important}
#dashboard .instruction-panel label{color:#526783!important;font-size:13px}
#dashboard .instruction-panel textarea,#dashboard .instruction-panel input{background:#f9fbff!important;border:1px solid #dce5f2!important;color:#1c2941!important;border-radius:12px!important;font-size:15px}
#dashboard .instruction-panel button,#dashboard #pcCapturePanel button{background:#2c72ec!important;border:1px solid #2c72ec!important;border-radius:12px!important;color:#fff!important;box-shadow:none!important}
#dashboard #voiceInstruction{background:#eaf2ff!important;border-color:#d5e4fb!important;color:#3166cc!important}
#dashboard #shutdownStatus,#dashboard #instructionStatus,#dashboard #pcCaptureStatus{color:#667b98!important}
#dashboard .instruction-panel .shutdown-announce{color:#526783!important}
#dashboard .instruction-panel .shutdown-announce input{accent-color:#2c72ec}
#dashboard #pcCaptureImage{border:1px solid #e8edf6!important;background:#f4f7fd!important}
.visible-config,#displayItems,.device,.snapshot,#pcCapturePanel{background:#fff!important;border:1px solid #e8edf6!important;color:#1c2941!important;box-shadow:var(--shadow)!important}
.visible-config>button{background:#ecf3ff!important;color:#2568e8!important;border:1px solid #d5e4fb!important}
.display-item,.connected-section{border-color:#e8edf6!important;color:#1c2941!important;background:#fff!important}
.display-item small{color:#7e8ca2!important}
.display-status{background:#f0f3f8!important;color:#71839a!important}
.display-status.enabled{background:#e0f8ea!important;color:#168653!important}
.connected-section>summary{color:#1c2941!important}
.cloud-data-table th{background:#f4f7fd!important;color:#526783!important}
.cloud-data-table td,.cloud-data-table th{border-color:#e8edf6!important}
.cloud-filter{background:#fff!important;color:#1c2941!important;border-color:#dce5f2!important}
.cloud-pager button{background:#eaf2ff!important;color:#2c72ec!important;border-color:#d5e4fb!important}
.monthbar button{background:#fff!important;border-color:#e8edf6!important;color:#2c72ec!important}
.monthbar h2,#selectedDate{color:#1c2941!important}
.weekday{color:#7e8ca2!important}
.day{background:#fff!important;border:1px solid #e8edf6!important;color:#1c2941!important;box-shadow:0 2px 7px #263f6a08}
.day.today{border-color:#2c72ec!important}
.day.selected{background:#2c72ec!important;color:#fff!important;border-color:#2c72ec!important}
.registered-dot{background:#18bf76!important;box-shadow:none}
.limit-row{border-color:#e8edf6!important}
.limit-row label{color:#526783!important}
#refresh{background:#eaf2ff!important;color:#2c72ec!important;border-color:#d5e4fb!important}
#captureViewer{background:#f7f9fd!important;color:#1c2941!important}
.capture-viewer-toolbar{background:#fff!important;border-color:#e8edf6!important}
.capture-viewer-toolbar strong{color:#1c2941!important}
.capture-viewer-toolbar button{background:#eaf2ff!important;border-color:#d5e4fb!important;color:#2568e8!important}
.capture-viewer-toolbar span,.capture-viewer-hint{color:#7e8ca2!important}
.capture-viewer-stage{background:#f0f4ff}
footer{color:#7e8ca2!important}
@media(max-width:600px){main{padding:8px 12px 95px}body:has(#dashboard:not([hidden])) main>header{display:none}#dashboard{padding-bottom:92px!important}#mobileMainNav{position:fixed;top:auto;left:0;right:0;bottom:0;z-index:30;margin:0;padding:8px 6px calc(8px + env(safe-area-inset-bottom));gap:0;border-radius:21px 21px 0 0;box-shadow:0 -12px 32px #1d3e641b!important;border-bottom:0}#mobileMainNav button{min-height:54px;height:54px;font-size:22px;padding:5px 1px}#mobileMainNav button span{font-size:10px}#dashboard .instruction-panel,#dashboard #pcCapturePanel{padding:19px 15px!important}#mobileAppHeader{padding:17px 2px 16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
