body{background:var(--cc-bg)}
.app-shell{max-width:1190px;gap:31px;min-height:100dvh}
.side{background:transparent}
.brand-mark{color:var(--cc-teal);background:transparent;border-radius:9px}
.side .brand strong{font-size:18px}
.nav-button.active{color:var(--cc-teal);background:var(--cc-surface-hi)}
.topbar.cc-topbar{display:flex;min-height:56px;align-items:center;margin-bottom:13px;position:relative}
.cc-topbar .mobile-brand{display:flex;align-items:center;gap:8px}
.cc-topbar .mobile-brand .brand-mark{background:transparent;padding:0;min-width:36px;width:36px;height:38px}
.cc-topbar .mobile-brand .brand-mark .icon{height:34px;width:34px;stroke-width:2.4}
.cc-topbar .mobile-brand strong{font-size:22px;font-weight:800;letter-spacing:-.055em;line-height:1.12;white-space:nowrap}
.cc-topbar .mobile-brand strong em{font-style:normal;color:var(--cc-teal)}
.cc-topbar .mobile-brand .eyebrow{font-size:11px;line-height:1.4;color:var(--cc-muted)}
.cc-header-right{margin-left:auto;display:flex;align-items:center;gap:6px}
.cc-topbar .icon-button{border:0;background:transparent;color:var(--cc-text);position:relative;border-radius:12px}
.cc-topbar .icon-button:hover{background:var(--subtle)}
.cc-bell-dot{position:absolute;right:9px;top:9px;width:7px;height:7px;background:var(--cc-teal);border-radius:50%;border:2px solid var(--cc-bg);box-sizing:content-box}
.card{border-radius:18px;padding:19px}
.section-title{margin:19px 0 11px}
.action-tile{min-height:105px;padding:15px;border-radius:15px}
.section-heading{margin-bottom:17px}
@media(min-width:701px){.cc-topbar .mobile-brand{display:flex}.cc-topbar .cc-theme-toggle{display:grid}.main{max-width:900px}}
@media(max-width:700px){
 .app-shell{padding:13px 14px calc(92px + env(safe-area-inset-bottom))}
 .topbar.cc-topbar{margin-bottom:13px}
 .cc-topbar .mobile-brand strong{font-size:21px}
 .cc-topbar .mobile-brand .brand-mark{height:36px;width:34px}
 .cc-theme-toggle{display:none!important}
 .bottom-nav{background:linear-gradient(180deg,#101824,#0a111a);border-top:1px solid #223341;padding:0 8px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgb(0 0 0 / 22%)}
 [data-theme=light] .bottom-nav{background:linear-gradient(180deg,#fff,#f7f9fb);border-color:#e1e6eb}
 .bottom-inner{max-width:540px}
 .bottom-btn{height:65px;min-height:64px;gap:4px;position:relative;border-radius:0;color:var(--faint)}
 .bottom-btn .icon{width:23px;height:23px}
 .bottom-btn.active{color:var(--cc-teal);background:transparent}
 .bottom-btn.active::before{content:"";position:absolute;top:0;left:19%;right:19%;height:3px;background:var(--cc-teal);border-radius:0 0 7px 7px}
 .bottom-btn span{font-size:10px;font-weight:600}
 .card{padding:17px;border-radius:17px}
}
@media(max-width:370px){.app-shell{padding-left:11px;padding-right:11px}.bottom-btn span{font-size:9.4px}}

@media(min-width:701px){.side .brand{visibility:hidden}}

/* v0.2.1: app shell + detail flow */
@media(max-width:700px){
  .app-shell{padding:8px 12px calc(79px + env(safe-area-inset-bottom))}
  .topbar.cc-topbar{min-height:45px;margin-bottom:7px}
  .cc-topbar .mobile-brand .brand-mark{width:30px;min-width:30px;height:30px}
  .cc-topbar .mobile-brand .brand-mark .icon{width:29px;height:29px}
  .cc-topbar .mobile-brand strong{font-size:18px;letter-spacing:-.04em}
  .cc-topbar .mobile-brand .eyebrow{font-size:10.5px}
  .cc-topbar .icon-button{min-width:40px;min-height:40px}
  .bottom-nav{padding:0 8px calc(4px + env(safe-area-inset-bottom))}
  .bottom-btn{height:55px;min-height:55px;gap:3px}
  .bottom-btn .icon{width:21px;height:21px}
  .bottom-btn span{font-size:9.6px}
  .cc-source-note{display:none}
  .section-heading h1{font-size:23px}
  .section-heading{margin-bottom:12px}
}
.cc-detail-page{max-width:680px;margin:auto}
.cc-back{display:inline-flex;align-items:center;gap:8px;color:var(--cc-muted);background:transparent;border:0;padding:8px 0;margin-bottom:9px;font-size:13px}
.cc-back-icon{transform:rotate(180deg)}
.cc-detail-card{background:var(--cc-surface);border-color:var(--cc-stroke)}
.cc-detail-title{display:flex;align-items:center;gap:12px}
.cc-detail-title>.icon{width:30px;height:30px;color:var(--cc-teal)}
.cc-detail-title h1{font-size:22px;margin-bottom:8px}
.cc-detail-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cc-detail-metrics>div{background:var(--cc-surface-hi);padding:12px;border-radius:12px;display:flex;flex-direction:column;gap:5px}
.cc-detail-metrics small{color:var(--cc-muted);font-size:11px}
.cc-detail-metrics strong{font-size:14px}
.cc-detail-actions{display:flex;flex-wrap:wrap;gap:8px}
.cc-doc-list{display:grid;gap:7px}
.cc-doc-item{display:flex;align-items:center;gap:9px;min-width:0;background:var(--cc-surface-hi);padding:8px;border-radius:12px}
.cc-doc-item small{display:block;color:var(--cc-muted)}
.cc-doc-item .icon-button{width:36px;height:36px;min-width:36px;min-height:36px}
.cc-care-list{margin-bottom:16px}
.cc-care-item{display:flex;align-items:center;gap:9px;min-width:0;color:var(--cc-text);text-align:left;background:transparent;border:0;padding:10px 3px}
.cc-care-item + .cc-care-item{border-top:1px solid var(--cc-stroke)}
.cc-care-item .grow{display:flex;flex-direction:column;min-width:0}
.cc-care-item small{color:var(--cc-muted);font-size:11px}
.cc-diary-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.cc-all-alerts .cc-alert-row{border-radius:10px}
.cc-detail-card .btn{min-height:43px}
/* Compactação coerente das abas secundárias; controles continuam >=44px. */
@media(max-width:700px){
  .main>.section-heading{margin-top:4px}
  .main>.section-heading h1{font-size:21px;letter-spacing:-.035em}
  .main>.section-heading p{font-size:12px;line-height:1.45;margin-top:4px}
  .main>.section-title{margin:16px 0 9px}
  .main .card{padding:14px;border-radius:16px}
  .main .grid{gap:10px}
  .main .stack-md{gap:10px}
  .main .list-row{min-height:48px;padding:8px 4px;gap:9px}
  .main .circle-icon{width:35px;height:35px;border-radius:10px}
  .main .tile-grid{gap:8px}
  .main .action-tile{min-height:85px;padding:12px}
  .main .guide-list-item{min-height:60px;padding:9px 11px}
  .main .stat-card{padding:10px}
  .main .stat-card strong{font-size:18px}
  .main .guide-step{padding:12px}
  .main .guide-illustration{min-height:120px;padding:10px}
  .main .timeline-item{padding:11px;gap:9px}
  .main .care-row{padding:9px 0}
  .modal{padding:19px 16px calc(18px + env(safe-area-inset-bottom))}
  .modal-header{margin-bottom:14px}
  .form-grid{gap:9px}
  .form-actions{margin-top:12px}
  .modal .btn{min-height:44px}
}
