@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&display=swap');
:root{
  --ink:#232B45; --ink-soft:#5F6B85; --paper:#EBF1F9; --paper-raised:#F6FAFD;
  --line: rgba(42,58,90,0.10); --night:#2E3358; --nap:#6C7FA6;
  --gold:#C9962B; --gold-bg:#FCEFD6; --radius:18px;
  --star-accent:#B98FD0; --star-accent-bg:#F1E9FA;
  --bg: var(--paper); --bg-soft: var(--paper-raised); --amber: var(--gold);
  --dusk-soft: var(--gold-bg); --card: var(--paper-raised);
  --error:#C1553F; --highlight:#E8F0FC;
}
*{ box-sizing:border-box; }
[hidden]{ display:none!important; }
html,body{ margin:0; padding:0; }
body{
  background: var(--paper); color: var(--ink);
  font-family: 'Pretendard', 'Noto Sans KR', -apple-system, sans-serif;
  line-height:1.5; min-height:100vh; -webkit-font-smoothing:antialiased;
}

/* ---------- 사이트 상단 탭 내비게이션 ---------- */
.site-header{
  position: sticky; top: 0; z-index: 50;
  background: var(--paper-raised); border-bottom: 1px solid var(--line);
  box-shadow: 0 1px 2px rgba(35,43,69,0.03);
}
.site-header-inner{
  max-width: 1080px; margin: 0 auto; padding: 14px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.site-brand{ display:flex; align-items:center; text-decoration:none; cursor:pointer; }
.site-brand .brand-logo{ height:52px; width:auto; display:block; }
.site-tabs{ display:flex; gap:4px; background: rgba(35,43,69,0.05); padding:4px; border-radius: 12px; }
.site-tab-btn{
  border:none; background:transparent; padding:9px 18px; border-radius:9px;
  font-family:'Pretendard','Noto Sans KR',sans-serif; font-size:14.5px; font-weight:600; color: var(--ink-soft);
  cursor:pointer; transition: all .15s ease;
}
.site-tab-btn.active{ background: var(--night); color: #fff; }
.site-ad-slot{
  display:flex; justify-content:center; align-items:center;
  min-height:50px; padding:8px 0; background: var(--paper);
}
.site-ad-slot__desktop{ display:none; }
.site-ad-slot__mobile{ width:fit-content; }
.site-ad-slot--tall{ min-height:100px; }
.site-ad-slot--bordered{ border-top:1px solid rgba(35,43,69,0.08); }
@media(min-width:800px){
  .site-ad-slot{ min-height:90px; }
  .site-ad-slot__mobile{ display:none; }
  .site-ad-slot__desktop{ display:block; }
}
.site-skyscraper-ad{ display:none; }
@media(min-width:1600px){
  .site-skyscraper-ad{
    display:block; position:fixed; top:140px; right:24px; z-index:10;
  }
}
.site-footer{
  display:block;
  padding:32px 24px 40px; background: var(--paper); border-top:1px solid rgba(35,43,69,0.08);
}
.reco-section{ max-width:1080px; margin:0 auto; }
html.non-prod .site-ad-slot,
html.non-prod .site-skyscraper-ad,
html.non-prod .reco-section,
html.non-prod .adsbygoogle,
html.non-prod ins.adsbygoogle{ display:none !important; }
.copyright-notice{ text-align:center; font-size:11px; color:#B8BBD0; margin:28px 0 0; }
.app-promo-banner{
  position:fixed; left:12px; right:12px; bottom:12px; z-index:40;
  display:flex; align-items:center; gap:10px;
  background: var(--night); color:#fff; border-radius:14px;
  padding:12px 12px 12px 16px; box-shadow:0 10px 30px -10px rgba(35,43,69,0.45);
  max-width:520px; margin:0 auto;
}
.app-promo-text{ flex:1; font-size:13px; font-weight:600; line-height:1.4; }
.app-promo-cta{
  flex:0 0 auto; background: var(--gold); color:#3A2A08; text-decoration:none;
  font-size:12.5px; font-weight:700; padding:8px 14px; border-radius:9px; white-space:nowrap;
}
.app-promo-close{
  flex:0 0 auto; background:transparent; border:none; color:rgba(255,255,255,0.7);
  font-size:15px; cursor:pointer; padding:4px 6px;
}
.announce-overlay{
  position:fixed; inset:0; z-index:60; background:rgba(35,43,69,0.45);
  display:flex; align-items:center; justify-content:center; padding:24px;
}
.announce-card{
  position:relative; max-width:360px; width:100%; background:var(--paper-raised);
  border-radius:22px; padding:32px 26px 26px; text-align:center;
  box-shadow:0 20px 50px -12px rgba(35,43,69,0.35);
}
.announce-close{
  position:absolute; top:14px; right:14px; background:transparent; border:none;
  font-size:16px; color:var(--ink-soft); cursor:pointer; padding:6px;
}
.announce-emoji{ font-size:38px; margin-bottom:6px; }
.announce-title{
  font-family:'Gowun Batang','Fraunces',serif; font-size:19px; color:var(--night);
  margin:0 0 12px;
}
.announce-body{ font-size:14.5px; color:var(--ink); line-height:1.6; margin:0 0 14px; }
.announce-list{ list-style:none; margin:0 0 16px; padding:0; text-align:left; display:flex; flex-direction:column; gap:12px; }
.announce-list li{ font-size:14px; color:var(--ink); line-height:1.55; }
.announce-note{ display:block; font-size:12px; color:var(--ink-soft); margin-top:3px; }
.announce-signoff{ font-size:13px; color:var(--gold); font-weight:700; margin:0 0 20px; }
.announce-cta{
  width:100%; padding:13px 18px; background:var(--night); color:#fff;
  border:none; border-radius:12px; font-size:14.5px; font-weight:700; cursor:pointer;
}
.announce-dismiss-forever{
  display:block; width:100%; margin-top:12px; background:transparent; border:none;
  font-size:12.5px; color:var(--ink-soft); text-decoration:underline; cursor:pointer; padding:4px;
}
.share-compose-overlay{
  position:fixed; inset:0; z-index:65; background:rgba(35,43,69,0.45);
  display:flex; align-items:center; justify-content:center; padding:20px;
}
.share-compose-card{
  position:relative; max-width:420px; width:100%; max-height:88vh; overflow-y:auto;
  background:var(--paper-raised); border-radius:22px; padding:30px 24px 24px; text-align:left;
  box-shadow:0 20px 50px -12px rgba(35,43,69,0.35);
}
.share-compose-title{
  font-family:'Gowun Batang','Fraunces',serif; font-size:19px; color:var(--night);
  margin:0 0 6px; text-align:center;
}
.share-compose-sub{ font-size:13px; color:var(--ink-soft); margin:0 0 16px; text-align:center; }
.share-preview-label{ font-size:12.5px; font-weight:700; color:var(--ink-soft); margin-bottom:6px; }
.share-preview{
  white-space:pre-wrap; word-break:break-word; font-family:'Noto Sans KR',sans-serif;
  font-size:13px; line-height:1.6; color:var(--ink); background:var(--bg-soft);
  border:1px solid var(--line); border-radius:12px; padding:14px; margin:0 0 18px; max-height:220px; overflow-y:auto;
}
.share-compose-sub2{ font-size:13px; font-weight:700; color:var(--night); margin-bottom:10px; }
.quick-add-row{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.quick-add-btn{
  flex:1 1 auto; padding:10px 12px; background:var(--bg-soft); border:1px solid var(--line);
  border-radius:11px; font-size:13px; font-weight:700; color:var(--ink); cursor:pointer;
}
.quick-add-btn:active{ transform:translateY(1px); }
.quick-add-list{ display:flex; flex-direction:column; gap:10px; margin-bottom:16px; }
.quick-add-item{
  display:flex; flex-wrap:wrap; align-items:center; gap:8px 10px; padding:10px 12px;
  background:var(--highlight); border-radius:11px;
}
.quick-add-item-head{ display:flex; align-items:center; gap:8px; flex:1 1 100%; }
.quick-add-item-emoji{ font-size:17px; flex:0 0 auto; }
.quick-add-item-label{ font-size:13.5px; font-weight:700; color:var(--night); flex:1 0 auto; }
.quick-add-item-remove{
  flex:0 0 auto; background:transparent; border:none; color:var(--error);
  font-size:13px; cursor:pointer; padding:4px 6px; margin-left:auto;
}
.quick-add-time-row{ display:flex; align-items:center; gap:8px; flex-wrap:nowrap; flex:1 1 100%; min-width:0; width:100%; box-sizing:border-box; }
.qa-select{
  border:1px solid var(--line); border-radius:8px; padding:7px 6px; font-size:13px;
  font-family:'Noto Sans KR',sans-serif; background:var(--paper-raised); color:var(--ink);
  box-sizing:border-box;
}
.qa-select.qa-ampm{ font-weight:700; flex:0 0 74px; }
.qa-select.qa-time{ flex:0 1 110px; min-width:0; text-align:center; }
.qa-unit{ font-size:12.5px; color:var(--ink-soft); }
.share-memo-label{
  display:block; font-size:13px; font-weight:600; color:var(--ink-soft); margin-bottom:18px;
}
.share-memo-input{
  display:block; width:100%; margin-top:6px; padding:11px 12px; border:1px solid var(--line);
  border-radius:11px; font-family:'Noto Sans KR',sans-serif; font-size:14px; color:var(--ink);
  background:var(--bg-soft); resize:vertical; box-sizing:border-box;
}
.reco-disclosure{ font-size:11.5px; color:#8A8FA6; margin:0 0 4px; text-align:center; }
.reco-support{ font-size:12.5px; font-weight:700; color:var(--night); margin:0 0 22px; text-align:center; }
.reco-heading{ font-family:'Gowun Batang','Fraunces',serif; font-size:16px; color:#2E3358; margin:0 0 12px; }
.reco-heading:not(:first-of-type){ margin-top:30px; }
.reco-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px; }
.reco-card{
  display:flex; flex-direction:column; gap:8px; justify-content:space-between;
  background:#F6FAFD; border:1px solid rgba(42,58,90,0.10); border-radius:14px; padding:16px;
  text-decoration:none; transition:transform .15s ease, box-shadow .15s ease;
}
.reco-card:hover{ transform:translateY(-2px); box-shadow:0 8px 20px -12px rgba(35,43,69,0.25); }
.reco-card--multi{ text-decoration:none; }
.reco-title{ font-size:13.5px; font-weight:600; color:#2E3358; line-height:1.45; }
.reco-desc{ font-size:12px; color:#6B7089; line-height:1.5; flex:1; }
.reco-cta{ font-size:12.5px; font-weight:700; color:#C9962B; text-decoration:none; }
.reco-cta-row{ display:flex; flex-wrap:wrap; gap:6px 14px; align-items:baseline; }
.reco-cta--alt{ color:#8A8FA6; font-weight:600; }
.reco-grid--banner{ align-items:start; }
.reco-banner-card{
  display:flex; flex-direction:column; gap:6px; align-items:center;
  background:#F6FAFD; border:1px solid rgba(42,58,90,0.10); border-radius:14px; padding:16px;
}
.reco-banner-card .reco-title{ text-align:center; }
.reco-banner-card .reco-desc{ text-align:center; margin-bottom:6px; }
@media(max-width:640px){
  .reco-grid{ grid-template-columns:1fr 1fr; }
  .reco-grid--banner{ grid-template-columns:repeat(auto-fill,minmax(140px,1fr)); }
}
@media(max-width:640px){
  .site-header-inner{ padding:12px 14px; flex-direction:column; align-items:stretch; }
  .site-tabs{ width:100%; }
  .site-tab-btn{ flex:1; }
}

#app-calc .page{max-width:1080px;margin:0 auto;padding:48px 24px 80px}#app-calc .rc-hero{text-align:center;margin-bottom:40px}#app-calc .rc-eyebrow{display:inline-block;font-size:12px;letter-spacing:.18em;color:var(--night);font-weight:600;margin-bottom:14px}#app-calc h1{font-family:'Gowun Batang',serif;font-weight:700;font-size:clamp(28px,4vw,40px);margin:0 0 28px;line-height:1.35;color:var(--ink)}#app-calc .stack{display:flex;flex-direction:column;gap:24px}#app-calc .card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:0 8px 24px -16px rgba(35,44,75,.2)}#app-calc .card h2{font-family:'Gowun Batang',serif;font-size:19px;margin:0 0 4px}#app-calc .rc-collapse-toggle{all:unset;display:flex;align-items:center;justify-content:space-between;width:100%;cursor:pointer;box-sizing:border-box}#app-calc .rc-collapse-toggle h2{flex:1}#app-calc .rc-collapse-icon{font-size:18px;color:var(--ink-soft);transition:transform .15s ease;margin-left:12px}#app-calc .rc-collapse-toggle[aria-expanded="true"] .rc-collapse-icon{transform:rotate(180deg)}#app-calc .rc-collapse-body{margin-top:18px}#app-calc .card .rc-sub{font-size:12.5px;color:var(--ink-soft);margin:0 0 18px}#app-calc .schedule-inputs{display:grid;gap:14px;margin-bottom:8px}#app-calc .schedule-inputs label, #app-calc .inline-inputs label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ink-soft)}#app-calc .schedule-inputs input, #app-calc .inline-inputs input{font-family:'Noto Sans KR',sans-serif;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft);color:var(--ink)}#app-calc .hint{font-size:11.5px;font-weight:400;color:#8A8FA6}#app-calc button{font-family:'Noto Sans KR',sans-serif;font-weight:700;font-size:14px;border-radius:10px;border:none;cursor:pointer;transition:transform .15s ease,background .15s ease}#app-calc #calcBtn{justify-self:start;padding:11px 22px;background:var(--amber);color:#4A3013}#app-calc .small-btn{padding:11px 18px;background:var(--night);color:#fff}#app-calc button:active{transform:translateY(1px)}#app-calc .error{color:var(--error);font-size:13px;font-weight:600;background:#FBEBE7;border:1px solid #F0CFC5;border-radius:10px;padding:10px 14px;margin:10px 0 0}#app-calc .disclaimer-note{font-size:11.5px;color:#9A9EB5;margin:18px 0 0;text-align:center}#app-calc .share-btn-wrap{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);text-align:center}#app-calc .share-btn{width:100%;padding:13px 18px;background:var(--night);color:#fff;font-size:14.5px}#app-calc .share-btn:active{transform:translateY(1px)}#app-calc .share-hint{font-size:12px;color:var(--ink-soft);margin:8px 0 0}#app-calc .summary{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}#app-calc .stat{min-width:90px}#app-calc .stat .num{font-family:'Gowun Batang',serif;font-size:22px;color:var(--night);font-weight:700}#app-calc .stat .rc-label{font-size:11.5px;color:var(--ink-soft);margin-top:2px}#app-calc .result-table{width:100%;border-collapse:collapse;margin-top:18px;font-size:13.5px}#app-calc .result-table th, #app-calc .result-table td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);white-space:nowrap}#app-calc .result-table th{color:var(--ink-soft);font-weight:600;font-size:12px}#app-calc .result-table td.rc-time{font-variant-numeric:tabular-nums;font-weight:600;color:var(--ink)}#app-calc .result-table tr.wake-row td, #app-calc .result-table tr.nap-row td, #app-calc .result-table tr.bedtime-row td{background:var(--highlight)!important;color:var(--night)!important;font-weight:800!important}#app-calc .result-table tr.wake-row td:first-child, #app-calc .result-table tr.nap-row td:first-child, #app-calc .result-table tr.bedtime-row td:first-child{border-top-left-radius:10px;border-bottom-left-radius:10px}#app-calc .result-table tr.wake-row td:last-child, #app-calc .result-table tr.nap-row td:last-child, #app-calc .result-table tr.bedtime-row td:last-child{border-top-right-radius:10px;border-bottom-right-radius:10px}#app-calc .sim-wrap{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}#app-calc .sim-wrap h3{font-family:'Gowun Batang',serif;font-size:16px;margin:0 0 4px}#app-calc .sim-wrap .rc-sub{font-size:12.5px;color:var(--ink-soft);margin:0 0 14px}#app-calc .sim-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:12px;background:var(--bg-soft);border:1px solid var(--line);margin-bottom:10px}#app-calc .sim-tag{font-size:13px;font-weight:700;color:var(--night);flex:0 0 auto}#app-calc .sim-arrow{flex:1;text-align:center;color:#B8BBD0;font-size:12px}#app-calc .sim-result{flex:0 0 auto;text-align:right}#app-calc .sim-result .num{font-family:'Gowun Batang',serif;font-size:19px;font-weight:700;color:var(--ink)}#app-calc .sim-result .rc-label{font-size:10.5px;color:var(--ink-soft)}#app-calc .inline-inputs{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}#app-calc .interval-result{margin-top:14px;padding:14px 16px;border-radius:12px;background:var(--bg-soft);border:1px solid var(--line);font-weight:700;color:var(--night)}#app-calc .ref-table{width:100%;border-collapse:collapse;font-size:13.5px}#app-calc .ref-table th, #app-calc .ref-table td{text-align:center;padding:11px 8px;border-bottom:1px solid var(--line)}#app-calc .ref-table thead th{background:var(--dusk-soft);color:var(--night);font-weight:700;font-size:12.5px;line-height:1.35}#app-calc .ref-table tbody th{text-align:center;font-weight:700;color:var(--ink);background:var(--bg-soft)}#app-calc .ref-table td{color:var(--ink-soft)}#app-calc :focus-visible{outline:2px solid var(--night);outline-offset:2px}
@media(max-width:640px){#app-calc .page{padding:28px 14px 56px}#app-calc .rc-hero{margin-bottom:26px}#app-calc .card{padding:18px;border-radius:16px}#app-calc .schedule-inputs input, #app-calc .inline-inputs input{font-size:16px;padding:12px}#app-calc #calcBtn, #app-calc .small-btn{width:100%;justify-self:stretch;padding:13px 18px}#app-calc .summary{gap:12px}#app-calc .stat{min-width:calc(50% - 8px)}#app-calc .stat .num{font-size:18px}#app-calc .sim-row{align-items:flex-start;flex-direction:column;gap:6px}#app-calc .sim-arrow, #app-calc .sim-result{text-align:left}#app-calc .inline-inputs{grid-template-columns:1fr}#app-calc .result-table{font-size:12.5px;table-layout:fixed}#app-calc .result-table th, #app-calc .result-table td{padding:8px 5px}#app-calc .result-table th:first-child, #app-calc .result-table td:first-child{width:58px}#app-calc .ref-table, #app-calc .ref-table thead, #app-calc .ref-table tbody, #app-calc .ref-table th, #app-calc .ref-table td, #app-calc .ref-table tr{display:block;width:100%}#app-calc .ref-table{min-width:0;font-size:12px}#app-calc .ref-table thead{display:none}#app-calc .ref-table tbody tr{border:1px solid var(--line);border-radius:14px;padding:10px 12px;margin-bottom:10px;background:var(--bg-soft)}#app-calc .ref-table tbody th{background:transparent;text-align:left;padding:0 0 8px;border-bottom:1px solid var(--line);font-size:14px;color:var(--night)}#app-calc .ref-table td{display:flex;justify-content:space-between;gap:12px;text-align:right;padding:7px 0;border-bottom:1px dashed var(--line);white-space:normal}#app-calc .ref-table td:last-child{border-bottom:none}#app-calc .ref-table td::before{content:attr(data-label);flex:0 0 auto;text-align:left;font-weight:700;color:var(--ink)}#app-calc .nap-row-input{grid-template-columns:1fr 1fr;}#app-calc .removeNapRowBtn{grid-column:1/3;width:100%;height:auto;padding:8px}}



  

  
  
  

  .wrap{ max-width: 980px; margin:0 auto; padding: 56px 24px 120px; }#app-search header.hero{ position:relative; padding: 8px 0 40px; border-bottom: 1px solid var(--line); margin-bottom: 40px; }#app-search .eyebrow{
    font-size:13px; letter-spacing:0.14em; color: var(--ink-soft); text-transform:uppercase;
    margin-bottom:14px; display:flex; align-items:center; gap:10px;
  }#app-search .eyebrow .dot{ width:6px; height:6px; border-radius:50%; background:var(--gold); }#app-search h1.title{
    font-family:'Fraunces', 'Pretendard', serif; font-weight:600;
    font-size: clamp(34px, 5vw, 52px); line-height:1.08; margin:0 0 18px; letter-spacing:-0.01em;
  }#app-search h1.title em{ font-style:normal; color: var(--ink); font-variation-settings: 'opsz' 60; }#app-search p.sub{ font-size:16.5px; color: var(--ink-soft); max-width: 600px; margin:0; }#app-search .legend-strip{
    margin-top:28px; display:flex; align-items:center; gap:18px; flex-wrap:wrap;
    font-size:13px; color:var(--ink-soft);
  }#app-search /* ---------- Search panel ---------- */
  .panel{
    background: var(--paper-raised); border: 1px solid var(--line); border-radius: var(--radius);
    padding: 28px; margin-bottom: 36px; box-shadow: 0 1px 2px rgba(35,43,69,0.03);
  }#app-search .tabs{
    display:flex; gap:4px; background: rgba(35,43,69,0.05);
    padding:4px; border-radius: 12px; width:fit-content; margin-bottom:24px;
  }#app-search .tab-btn{
    border:none; background:transparent; padding:9px 18px; border-radius:9px;
    font-family:inherit; font-size:14.5px; font-weight:600; color: var(--ink-soft);
    cursor:pointer; transition: all .15s ease;
  }#app-search .tab-btn.active{ background: var(--night); color: #fff; }#app-search .search-row{ display:flex; align-items:flex-start; gap:20px; flex-wrap:wrap; }#app-search .field-group{ display:flex; flex-direction:column; gap:8px; }#app-search .field-group label{ font-size:13px; color:var(--ink-soft); font-weight:600; }#app-search .num-input{
    display:flex; align-items:center; gap:6px;
    background:#fff; border:1.5px solid var(--line); border-radius:12px; padding: 10px 14px;
  }#app-search .num-input input[type=number]{
    border:none; outline:none; width:64px;
    font-family:'Pretendard', sans-serif; font-size:17px; font-weight:600; color:var(--ink); background:transparent;
  }#app-search .num-input input[type=number]::placeholder{
    font-family:'Pretendard', sans-serif; font-size:14px; font-weight:500; color:var(--ink-soft); opacity:1;
  }#app-search .num-input input[type=text]{
    border:none; outline:none; width:100%;
    font-family:'Pretendard', sans-serif; font-size:16px; font-weight:600; color:var(--ink); background:transparent;
  }#app-search .num-input span{ font-size:14px; color:var(--ink-soft); }#app-search .field-group--narrow{ width:96px; }#app-search .num-input--narrow input[type=number]{ width:40px; }#app-search .hm-sep{ font-family:'Fraunces',serif; font-size:20px; color:var(--ink-soft); }#app-search .search-btn{
    border:none; background: var(--night); color:#fff;
    font-family:'Pretendard', sans-serif; font-size:14.5px; font-weight:700;
    padding: 11px 26px; border-radius:12px; cursor:pointer;
    transition: background .15s ease, transform .05s ease;
  }#app-search .search-btn:hover{ background:#3a4070; }#app-search .search-btn:active{ transform: scale(0.97); }#app-search .search-btn.pulse{ animation: btnPulse 0.4s ease; }#app-search @keyframes btnPulse{
    0%{ box-shadow: 0 0 0 0 rgba(201,150,43,0.55); }#app-search 100%{ box-shadow: 0 0 0 10px rgba(201,150,43,0); }#app-search }

  .helper-text{ font-size:13px; color:var(--ink-soft); margin-top:6px; }#app-search .sort-hint{ margin-top:0; margin-bottom:6px; }#app-search .disclaimer-note{ font-size:11.5px; color:#9A9EB5; margin:24px 0 0; text-align:center; }#app-search .disclaimer-note--top{ text-align:left; margin:0 0 20px; line-height:1.6; }#app-search .field-hint{ font-size:11.5px; color:var(--ink-soft); margin:6px 0 0; }#app-search .field-group-pair{ display:flex; gap:12px; }#app-search .computed-age{
    font-size:14px; color:var(--ink); background:rgba(35,43,69,0.05);
    border-radius:10px; padding:10px 14px; margin-top:14px; display:inline-block;
  }#app-search .computed-age b{ font-family:'Fraunces',serif; color:var(--gold); font-size:15px; }#app-search /* ---------- Results ---------- */
  .results-head{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:16px; flex-wrap:wrap; gap:8px; }#app-search .results-count{ font-size:14px; color:var(--ink-soft); }#app-search .results-count b{ color:var(--ink); font-family:'Fraunces',serif; font-size:16px; }#app-search .day-card{
    background: var(--paper-raised); border:1px solid var(--line); border-radius: var(--radius);
    padding: 22px 24px 20px; margin-bottom: 16px; transition: box-shadow .15s ease;
  }#app-search .day-card:hover{ box-shadow: 0 4px 18px rgba(35,43,69,0.07); }#app-search .day-card.starred-card{
    border: 2px solid var(--star-accent);
    box-shadow: 0 2px 14px rgba(185,143,208,0.20);
    background: linear-gradient(180deg, var(--star-accent-bg) 0%, var(--paper-raised) 90px);
  }#app-search .day-card-top{ display:flex; justify-content:space-between; align-items:flex-start; gap: 16px; flex-wrap:wrap; margin-bottom:16px; }#app-search .day-meta .date{ font-size:11.5px; color:var(--ink-soft); font-weight:500; letter-spacing:0.02em; }#app-search .day-meta .age{ font-family:'Fraunces', serif; font-weight:600; font-size:14.5px; color:var(--ink); margin-top:3px; }#app-search .stat-pills{ display:flex; gap:8px; flex-wrap:wrap; }#app-search .pill{
    background: rgba(35,43,69,0.05); border-radius:20px; padding:6px 13px;
    font-size:13px; color: var(--ink); display:flex; align-items:center; gap:6px; white-space:nowrap;
  }#app-search .pill.highlight{ background: var(--gold-bg); color:#7A5A0F; font-weight:700; }#app-search .pill.starred{ background: var(--star-accent-bg); color: var(--star-accent); font-weight:700; }#app-search /* ---------- Schedule table ---------- */
  table.sched{ width:100%; border-collapse:collapse; margin-top:4px; }#app-search table.sched th{
    text-align:right; font-size:12px; color:var(--ink-soft); font-weight:600;
    padding:6px 4px; border-bottom:1px solid var(--line);
  }#app-search table.sched th:first-child{ text-align:left; }#app-search table.sched td{
    padding:9px 4px; font-size:14px; border-bottom:1px solid rgba(35,43,69,0.05);
    vertical-align:baseline;
  }#app-search table.sched tr:last-child td{ border-bottom:none; }#app-search table.sched td:nth-child(2), #app-search table.sched td:nth-child(3){ text-align:right; white-space:nowrap; }#app-search table.sched .label{ font-weight:700; display:inline-block; min-width:42px; }#app-search table.sched tr.row-wake .label{ color: var(--ink-soft); }#app-search table.sched tr.row-nap .label{ color: var(--nap); }#app-search table.sched tr.row-night .label{ color: var(--night); }#app-search table.sched .time{ font-family:'Fraunces', serif; color:var(--ink); margin-left:4px; }#app-search table.sched .waketag{ color:var(--ink-soft); }#app-search table.sched .amount{ font-weight:600; }#app-search table.sched .star{ color: var(--gold); margin-left:2px; }#app-search table.sched tr.row-night td{ background: rgba(46,51,88,0.035); }#app-search .empty-state{ text-align:center; padding: 60px 20px; color: var(--ink-soft); }#app-search .empty-state .big{ font-family:'Fraunces', serif; font-size:22px; color:var(--ink); margin-bottom:8px;}#app-search .locked-teaser{ text-align:center; padding:36px 24px; margin-top:8px; background: var(--gold-bg); border:1px dashed var(--gold); border-radius: var(--radius); }#app-search .locked-icon{ font-size:28px; margin-bottom:8px; }#app-search .locked-title{ font-family:'Gowun Batang','Fraunces',serif; font-size:17px; color:var(--night); font-weight:700; margin-bottom:6px; }#app-search .locked-desc{ font-size:13px; color:var(--ink-soft); }#app-search footer{ margin-top:60px; padding-top:24px; border-top:1px solid var(--line); font-size:12.5px; color: var(--ink-soft); text-align:center; }

  @media (max-width:560px){#app-search .search-row{ flex-direction:column; align-items:stretch; }#app-search table.sched{ font-size:12.5px; }
  }

/* ============ 수면가이드 ============ */
.guide-wrap{ max-width:760px; margin:0 auto; padding:48px 24px 40px; }
/* 헤더는 일과계산기 탭(.rc-hero)과 동일한 톤앤매너로 맞춤 */
#app-guide .rc-hero, #app-search .rc-hero{ text-align:center; margin-bottom:26px; }
#app-guide .rc-eyebrow, #app-search .rc-eyebrow{
  display:inline-block; font-size:12px; letter-spacing:.18em;
  color:var(--night); font-weight:600; margin-bottom:14px;
}
#app-guide .rc-hero h1, #app-search .rc-hero h1{
  font-family:'Gowun Batang',serif; font-weight:700;
  font-size:clamp(28px,4vw,40px); margin:0; line-height:1.35; color:var(--ink);
}
.guide-lead{
  font-size:14.5px; color:var(--ink-soft); text-align:center;
  line-height:1.65; margin:0 0 26px;
}
.guide-chapter{
  background:var(--paper-raised); border:1px solid var(--line);
  border-radius:var(--radius); margin-bottom:14px; overflow:hidden;
}
.guide-chapter-head{
  width:100%; display:flex; align-items:center; justify-content:space-between;
  gap:12px; padding:18px 18px; background:transparent; border:none;
  cursor:pointer; text-align:left; font-family:inherit;
}
.guide-chapter-title{
  font-family:'Gowun Batang','Fraunces',serif; font-size:17px;
  font-weight:700; color:var(--night); line-height:1.4;
}
.guide-chapter-arrow{ font-size:12px; color:var(--ink-soft); flex:0 0 auto; }
.guide-chapter-body{ padding:0 18px 6px; }
.guide-chapter:not([data-open="true"]) .guide-chapter-body{ display:none; }

.guide-item{ padding:16px 0; border-top:1px solid var(--line); }
.guide-item h2{
  font-size:15.5px; font-weight:700; color:var(--night);
  margin:0 0 10px; line-height:1.45; word-break:keep-all;
}
.guide-spec{
  font-size:13.5px; color:var(--nap); font-weight:600;
  margin:0 0 8px; line-height:1.6; word-break:keep-all;
}
.guide-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:9px; }
.guide-list li{
  font-size:14.5px; color:var(--ink); line-height:1.65; word-break:keep-all;
}
.guide-list li b{ color:var(--night); font-weight:700; }
.guide-tip{
  margin:12px 0 0; padding:11px 13px; background:var(--highlight);
  border-radius:10px; font-size:13.5px; color:var(--ink); line-height:1.6; word-break:keep-all;
}
.guide-tip--warn{ background:var(--star-accent-bg); color:var(--night); font-weight:600; }

.guide-table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.guide-table{ width:100%; border-collapse:collapse; font-size:13.5px; }
.guide-table th, .guide-table td{
  padding:10px 8px; text-align:left; border-bottom:1px solid var(--line); white-space:nowrap;
}
.guide-table th{ color:var(--ink-soft); font-weight:600; font-size:12.5px; }
.guide-table td:first-child{ font-weight:700; color:var(--night); }

.ebook-cta{
  margin-top:26px; padding:28px 22px; text-align:center;
  background:linear-gradient(180deg, var(--star-accent-bg) 0%, var(--paper-raised) 100%);
  border:1px solid var(--line); border-radius:var(--radius);
}
.ebook-cta-emoji{ font-size:34px; margin-bottom:6px; }
.ebook-cta-title{
  font-family:'Gowun Batang','Fraunces',serif; font-size:18px;
  color:var(--night); margin:0 0 10px;
}
.ebook-cta-desc{ font-size:14px; color:var(--ink); line-height:1.7; margin:0 0 8px; word-break:keep-all; }
.ebook-cta-price{ font-size:15px; font-weight:700; color:var(--star-accent); margin:0 0 18px; }
.ebook-cta-btn{
  display:inline-block; padding:14px 30px; background:var(--night); color:#fff;
  border-radius:12px; font-size:14.5px; font-weight:700; text-decoration:none;
}
.ebook-cta-btn:active{ transform:translateY(1px); }

.guide-signoff{
  margin:26px 0 0; text-align:center; font-size:13.5px;
  font-weight:700; color:var(--gold);
}
.guide-disclaimer{
  margin:14px 0 0; text-align:center; font-size:11.5px;
  color:var(--ink-soft); line-height:1.6; word-break:keep-all;
}
@media(max-width:640px){
  .guide-wrap{ padding:28px 14px 36px; }
}
@media(max-width:400px){
  .guide-wrap{ padding:28px 14px 36px; }
  .guide-chapter-head{ padding:16px 14px; }
  .guide-chapter-body{ padding:0 14px 6px; }
  .guide-chapter-title{ font-size:16px; }
}

/* 월령별 수면 지도 - 스펙 그리드 */
.guide-spec-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:8px;
  margin:0 0 12px; padding:12px; background:var(--bg-soft);
  border:1px solid var(--line); border-radius:12px;
}
.guide-spec-grid > div{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.guide-spec-grid dt{ font-size:11.5px; color:var(--ink-soft); font-weight:600; }
.guide-spec-grid dd{
  margin:0; font-size:13.5px; color:var(--night); font-weight:700;
  line-height:1.4; word-break:keep-all;
}
@media(max-width:360px){
  .guide-spec-grid{ grid-template-columns:1fr; }
}

/* 깨시 하위 설명(과피로·덜피로) */
.guide-sublist{
  list-style:none; margin:8px 0 0 4px; padding:0 0 0 10px;
  border-left:2px solid var(--line);
  display:flex; flex-direction:column; gap:7px;
}
.guide-sublist li{
  font-size:13.5px; color:var(--ink-soft); line-height:1.6; word-break:keep-all;
}
.guide-sublist li b{ color:var(--night); font-weight:700; }

/* IPSP 신뢰 배지 */
.guide-credential{
  margin:22px 0 0; padding:13px 18px; text-align:center;
  background:var(--highlight); border-radius:12px;
  font-size:13px; color:var(--night); font-weight:600; line-height:1.6; word-break:keep-all;
}

/* 월령별 수면 지도 상단 안내 문구 */
.guide-note{
  font-size:12.5px; color:var(--ink-soft); line-height:1.6; word-break:keep-all;
  margin:0 0 18px; padding:11px 13px; background:var(--bg-soft); border-radius:10px;
}
