/* 간단 홈. 'main'에서는 간단 홈만, 각 문(learn/record/care)에서는 그 주제의 기존 칸만 보인다. full = 예전 전체 화면. */
#scr-home[data-layout=simple] #home-sound,#scr-home[data-layout=simple] #btn-journal{display:none}
#scr-home[data-layout=simple][data-view=main] .pad>*:not(#home-simple){display:none!important}
#scr-home[data-layout=simple]:not([data-view=main]) .pad>*:not(#home-viewbar){display:none!important}
#scr-home[data-layout=simple][data-view=learn] .pad>:is(.bar,.progress-label,#daily-home,#journey,#active-wrap,#today-wrap,#weekend-wrap,#plan-wrap,#history-wrap,#mission-board){display:block!important}
/* mission-board holds both the 20-story map (배우기) and the daily quests (나에게 맞춤). */
#scr-home[data-view=learn] #mission-board>:not(.campaign-book){display:none!important}
#scr-home[data-view=care] #mission-board>*{display:none!important}
#scr-home[data-view=care] #mission-board>:is(.mission-heading,.mission-heading~*){display:revert!important}
#scr-home[data-view=care] #mission-board>.mission-map{display:grid!important}
/* revert는 작성자 CSS까지 되돌려 제목 줄이 block이 되고 등급 배지가 아래 문단과 겹쳤다 → 원래 flex로 고정 */
#scr-home[data-view=care] #mission-board>.mission-heading{display:flex!important}
#scr-home[data-layout=simple][data-view=record] .pad>:is(#personal-care,.assessment-launchers){display:block!important}
#scr-home[data-layout=simple][data-view=care] .pad>:is(#personal-care,#mission-board){display:block!important}
#scr-home[data-view=record] :is(.care-profile,.care-sounds),#scr-home[data-view=care] :is(.care-weather,.care-schedule){display:none!important}
#scr-home[data-view=learn] #daily-home .daily-intents{display:none}
#home-simple{display:flex;flex-direction:column;gap:16px;padding:6px 0 10px;color:#263d34}
.hs-hello{margin:4px 2px 0;font-size:15px;color:#566a5f}
.hs-today{padding:24px;border-radius:24px;background:linear-gradient(145deg,#2f6a57,#24533f);color:#f6f3e6;box-shadow:0 8px 24px rgba(30,60,48,.18)}
.hs-today small{font-size:13px;font-weight:700;color:#cfe6d9;letter-spacing:.02em}
.hs-today h2{font-size:clamp(22px,4.5vw,28px);line-height:1.35;margin:8px 0 6px;letter-spacing:-.03em}
.hs-today p{margin:0 0 18px;line-height:1.65;color:#e2eee6}
.hs-go{width:100%;margin:0;min-height:58px;font-size:18px;background:#f0d48a;color:#1f342a;box-shadow:0 3px 0 #b39349}
.hs-weather{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 14px;border-radius:18px;background:#f4f7f1;border:1px solid #dde5d9}
.hs-weather>span{font-weight:700;font-size:15px}
.hs-weather div{display:flex;gap:6px;flex:1 1 260px}
.hs-weather button{flex:1;min-height:52px;border:1px solid #c5d3c8;border-radius:14px;background:#fff;font:inherit;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:4px 2px}
.hs-weather button b{font-size:21px;line-height:1.1}.hs-weather button small{font-size:11.5px;color:#4d6157}
.hs-weather button[aria-pressed=true]{background:#2f6a57;border-color:#2f6a57}.hs-weather button[aria-pressed=true] small{color:#fff}
.hs-weather em{font-style:normal;font-size:12.5px;color:#5b6e63;flex-basis:100%}
.hs-doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hs-doors button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:118px;padding:18px;border:1px solid #d5dfd3;border-radius:20px;background:#fffdf7;color:#263d34;font:inherit;text-align:left;cursor:pointer;box-shadow:0 2px 0 #dfe6db}
.hs-doors button b{font-size:30px;line-height:1}
.hs-doors button span{font-size:19px;font-weight:800;margin-top:6px}
.hs-doors button small{font-size:13px;color:#5d6f64;line-height:1.45}
.hs-doors button:hover{border-color:#8fb5a2}
.hs-foot{display:flex;justify-content:space-between;gap:10px;padding:4px 2px}
.hs-link{border:0;background:none;color:#5b6e63;font:inherit;font-size:13.5px;text-decoration:underline;cursor:pointer;min-height:44px;padding:0 4px}
#home-viewbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 12px}
#home-viewbar:empty{display:none}
#home-viewbar h2{flex:1 1 55%;margin:0;font-size:20px;white-space:nowrap}#home-viewbar h2:focus{outline:none}
.home-back{border:1px solid #c5d3c8;border-radius:12px;background:#fff;font:inherit;font-weight:700;padding:8px 14px;min-height:44px;cursor:pointer;color:#2c4339}
#home-viewbar .btn{width:auto;margin:0;flex:1 1 40%}
#home-simple button:focus-visible,#home-viewbar button:focus-visible{outline:3px solid #926214;outline-offset:3px}
@media(max-width:380px){.hs-doors button{min-height:104px;padding:14px}.hs-doors button span{font-size:17px}}
/* 로그인: 환영 문장 → 로그인/가입 → (아래) 둘러보기 */
.login-welcome{margin:6px 0 18px}
.login-welcome h2{font-size:clamp(22px,5vw,26px);line-height:1.35;margin:0 0 8px;letter-spacing:-.03em;color:#233a30}
.login-welcome p{margin:0;line-height:1.7;color:#4f6358}
#scr-login .character-entry{margin:28px 0 8px;padding:16px 18px;background:#f6f7f0;border-color:#dde3d4}
#scr-login .character-entry p{margin:6px 0;font-size:14.5px}
#scr-login .character-entry .btn{margin:8px 0 0}
.learn-reward{margin:14px 0;padding:14px 16px;border-radius:16px;background:linear-gradient(140deg,#fff4d6,#eaf4e6);border:1px solid #e4cf8f;color:#3b3415;line-height:1.6}
.learn-reward b{font-size:17px}.learn-reward p{margin:6px 0 0}.learn-reward small{display:block;margin-top:6px;color:#5f5a3c}
/* 처음 오신 분 안내 */
#onboarding{position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(520px,calc(100% - 24px));max-height:92dvh;overflow-y:auto;padding:22px 22px 18px;border:0;border-radius:26px;background:linear-gradient(160deg,#f6faf3,#fff7e6);color:#233a30;text-align:center;box-shadow:0 20px 60px rgba(20,40,30,.3)}
#onboarding::backdrop{background:rgba(20,40,32,.6)}
.ob-top{display:flex;justify-content:space-between;align-items:center;color:#5d6f64;font-size:13.5px}
#ob-skip{border:0;background:none;color:#5d6f64;text-decoration:underline;font:inherit;min-height:44px;cursor:pointer}
.ob-icon{font-size:54px;line-height:1;margin:8px 0 6px}
#onboard-title{font-size:clamp(22px,5vw,26px);line-height:1.35;margin:4px 0 10px;letter-spacing:-.03em}#onboard-title:focus{outline:none}
.ob-body{font-size:17px;line-height:1.7;margin:0 0 10px}
.ob-list{list-style:none;padding:0;margin:4px 0 12px;display:flex;flex-direction:column;gap:8px;text-align:left}
.ob-list li{background:#fff;border:1px solid #dde5d9;border-radius:14px;padding:12px 14px;font-size:16px;line-height:1.5}
.ob-note{font-size:14.5px;line-height:1.6;color:#55675d;background:#eef4ea;border-radius:12px;padding:10px 12px;margin:6px 0 12px}
.ob-listen{border:1px solid #c5d3c8;background:#fff;border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;min-height:44px;cursor:pointer;color:#2f5a4b}
.ob-dots{display:flex;justify-content:center;gap:6px;margin:14px 0 10px}.ob-dots i{width:8px;height:8px;border-radius:50%;background:#cfdad1}.ob-dots i.on{background:#2f6a57;width:22px;border-radius:4px}
.ob-nav{display:flex;gap:10px}.ob-nav .btn{flex:1;margin:0;min-height:54px;font-size:17px}.ob-nav .btn[hidden]{display:none}
#onboarding button:focus-visible{outline:3px solid #926214;outline-offset:3px}
.hs-hint{margin:0 0 -6px;padding:10px 14px;border-radius:14px;background:#fff4cf;border:1px solid #e9cf7d;color:#4b3c10;line-height:1.55;font-size:15px}
.hs-hint button{margin-left:6px;border:1px solid #c9a94e;background:#fff;border-radius:10px;padding:6px 12px;min-height:44px;font:inherit;cursor:pointer}
.hs-foot{flex-wrap:wrap}
.use-check{margin:16px 0;padding:14px 16px;border-radius:16px;background:#f3f6fb;border:1px solid #d8dfec;text-align:left}
.use-check>b{font-size:16px;display:block}.use-check>small{color:#5b6573}
.use-ratings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0 4px}
.use-ratings button{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:64px;border:1px solid #c9d2e0;border-radius:14px;background:#fff;font:inherit;cursor:pointer;padding:6px 2px}
.use-ratings button span{font-size:26px;line-height:1.1}.use-ratings button small{font-size:11.5px;color:#4b5563}
.use-ratings button[aria-pressed=true]{border-color:#2f6a57;background:#e4f1e9}
.use-issues div{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.use-issues div button{border:1px solid #c9d2e0;border-radius:12px;background:#fff;font:inherit;font-size:13.5px;padding:8px 12px;min-height:44px;cursor:pointer}
.use-issues div button[aria-pressed=true]{background:#2f6a57;color:#fff;border-color:#2f6a57}
.use-issues .btn{width:auto;margin:4px 0 0}
.use-thanks{margin:8px 0 0;color:#2f5a4b;font-weight:700}
.hs-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hs-tools button{min-height:48px;border:1px solid #d5dfd3;border-radius:14px;background:#f8faf5;font:inherit;font-size:13.5px;font-weight:700;color:#3a5045;cursor:pointer;padding:6px 4px}
.hs-tools button[aria-pressed=true]{background:#2f6a57;color:#fff;border-color:#2f6a57}
html.big-text body{zoom:1.18}
#home-help{position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(480px,calc(100% - 24px));max-height:90dvh;overflow-y:auto;border:0;border-radius:22px;padding:22px;background:#fcfdf8;color:#233a30}
#home-help::backdrop{background:rgba(20,40,32,.55)}
#home-help h2{margin:0 0 8px;font-size:21px}#home-help p{line-height:1.65}
.help-times{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.help-times .btn{margin:0;width:auto}
.help-custom{display:flex;align-items:center;gap:10px;margin:8px 0}.help-custom input{flex:1;min-height:44px;font:inherit}
#home-help .btn{min-height:48px}
.help-steps{line-height:1.8;font-size:16px;padding-left:22px}
.help-menu{display:flex;flex-direction:column;gap:8px;margin:10px 0 14px}
.help-menu button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:56px;padding:10px 14px;border:1px solid #d5dfd3;border-radius:14px;background:#fff;font:inherit;font-size:16px;font-weight:700;color:#2c4339;cursor:pointer}
.help-menu button small{font-weight:400;font-size:13px;color:#5d6f64}
.help-menu button[aria-pressed=true]{border-color:#2f6a57;background:#e8f2ec}
#home-viewbar{flex-wrap:wrap}
#clinic-sheet{position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(720px,calc(100% - 24px));max-height:94dvh;overflow-y:auto;border:0;border-radius:18px;padding:20px;background:#fff;color:#1f2d27}
#clinic-sheet::backdrop{background:rgba(20,40,32,.55)}
.cs-page header h2{margin:0;font-size:22px}.cs-page header p{margin:4px 0 12px;color:#55665c}
.cs-page section{border-top:1px solid #e1e6dd;padding:10px 0}
.cs-page h3{font-size:16px;margin:0 0 6px}.cs-page p{margin:4px 0;line-height:1.6}
.cs-page table{width:100%;border-collapse:collapse;font-size:14px}.cs-page th,.cs-page td{border-bottom:1px solid #edf0ea;padding:6px 4px;text-align:left}
.cs-note{background:#fbf2dc;padding:6px 10px;border-radius:8px}
.cs-foot{font-size:12.5px;color:#5d6b63;border-top:1px solid #e1e6dd;padding-top:8px;margin-top:6px}
.cs-actions{display:flex;gap:8px;margin-top:12px}.cs-actions .btn{flex:1;margin:0}
@media print{
  body.printing-sheet .app,body.printing-sheet dialog:not(#clinic-sheet){display:none!important}
  body.printing-sheet #clinic-sheet{position:static;width:100%;max-height:none;overflow:visible;box-shadow:none;padding:0}
  body.printing-sheet #clinic-sheet::backdrop{background:none}
  body.printing-sheet .cs-actions{display:none}
}
.cs-page header{display:block!important;position:static!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;min-height:0!important}
