/* NHN Academy mobile application shell — v0.59.5
   Phone layout is viewport-driven so it also behaves correctly when resized. */
.nhn-mobile-nav{display:none}
.nhn-profile-link>span{display:none}

@media (max-width:767px){
  :root{--nhn-mobile-gutter:16px;--nhn-mobile-nav-height:68px}
  html{scroll-padding-bottom:calc(var(--nhn-mobile-nav-height) + 18px)}
  html,body.nhn-academy-page{max-width:100%;overflow-x:clip}
  body.nhn-academy-page{padding-bottom:calc(var(--nhn-mobile-nav-height) + env(safe-area-inset-bottom))}

  /* Compact header and account shortcut */
  .nhn-header{position:sticky;z-index:9000;top:0;height:58px;min-height:58px;padding:0 var(--nhn-mobile-gutter);align-items:center;box-shadow:0 1px 12px rgba(16,33,64,.06)}
  .nhn-team-header .nhn-brand strong{font-size:14px}.nhn-team-header .nhn-brand small{font-size:9px;margin-top:3px}
  .nhn-menu-toggle{display:none!important}
  .nhn-header .nhn-account{display:flex;margin-left:auto}
  .nhn-profile-link{display:grid!important;place-items:center;width:38px;height:38px;margin:0!important;border:1px solid #d8e1ec;border-radius:50%;background:var(--nhn-mint);color:var(--nhn-green);text-decoration:none}
  .nhn-profile-link>span{display:block;font-size:14px;font-weight:900}.nhn-profile-link>b{display:none}
  .nhn-profile-link.is-active{background:var(--nhn-green);color:#fff}
  .nhn-nav{display:none!important}

  /* Persistent thumb navigation */
  .nhn-mobile-nav{position:fixed;z-index:8999;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(6,1fr);height:calc(var(--nhn-mobile-nav-height) + env(safe-area-inset-bottom));padding:6px 4px env(safe-area-inset-bottom);border-top:1px solid #d8e1ec;background:rgba(255,255,255,.97);box-shadow:0 -8px 28px rgba(16,33,64,.1);backdrop-filter:blur(14px)}
  .nhn-mobile-nav a,.nhn-mobile-nav button{position:relative;display:grid;grid-template-rows:26px 18px;place-items:center;min-width:0;min-height:0;padding:0;border:0;border-radius:12px;background:transparent;color:#68788d;font:inherit;text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .nhn-mobile-nav a>span,.nhn-mobile-nav button>span{font-size:21px;line-height:1}.nhn-mobile-nav a>b,.nhn-mobile-nav button>b{overflow:hidden;max-width:100%;font-size:10px;line-height:1;white-space:nowrap;text-overflow:ellipsis}
  .nhn-mobile-nav a.is-active{background:#eef3f8;color:var(--nhn-green)}
  .nhn-mobile-nav a.is-active:before{content:"";position:absolute;top:-6px;width:30px;height:3px;border-radius:0 0 4px 4px;background:var(--nhn-gold)}
  .nhn-mobile-nav button:active{background:#eef3f8;color:var(--nhn-green)}.nhn-mobile-nav button.is-missing{color:#8b7650}

  /* Compact secondary navigation within the active area */
  .nhn-mobile-context-nav{display:block;width:calc(100% - (var(--nhn-mobile-gutter) * 2));margin:11px auto 0;border:1px solid #d8e1ec;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(16,33,64,.045)}
  .nhn-mobile-context-nav summary{position:relative;display:grid;gap:1px;padding:11px 42px 11px 14px;list-style:none;color:var(--nhn-green);cursor:pointer}
  .nhn-mobile-context-nav summary::-webkit-details-marker{display:none}.nhn-mobile-context-nav summary>span{color:#68788d;font-size:9px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.nhn-mobile-context-nav summary>strong{font-size:13px;line-height:1.25}
  .nhn-mobile-context-nav summary:after{content:"⌄";position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:20px;transition:transform .2s}.nhn-mobile-context-nav[open] summary:after{transform:translateY(-50%) rotate(180deg)}
  .nhn-mobile-context-nav>div{display:grid;gap:3px;padding:7px;border-top:1px solid #d8e1ec}.nhn-mobile-context-nav>div>a{min-height:42px;padding:11px 12px;border-radius:9px;color:var(--nhn-ink);font-size:14px;font-weight:750;text-decoration:none}.nhn-mobile-context-nav>div>a.is-active{background:var(--nhn-mint);color:var(--nhn-green);font-weight:900}

  /* Shared page rhythm */
  .nhn-wrap,.nhn-hub-dashboard,.nhn-content-shell,.nhn-contacts-shell,.nhn-team-shell,.nhn-partner-shell,.nhn-profile-shell,.nhn-activity-shell,.nhn-tools-shell,.nhn-events-shell,.nhn-presenter-shell,.nhn-presenter-detail,.nhn-glossary-shell{width:100%;max-width:none;margin-right:0;margin-left:0;padding-right:var(--nhn-mobile-gutter);padding-left:var(--nhn-mobile-gutter)}
  .nhn-hub-dashboard,.nhn-contacts-shell,.nhn-team-shell{padding-top:20px}
  .nhn-content-shell{display:block;margin-top:16px;margin-bottom:30px}
  .nhn-sidebar{display:none}
  .nhn-content-shell>.nhn-mobile-learn{display:block;margin:0 0 12px;border:1px solid #d8e1ec;border-radius:15px;background:#fff;box-shadow:0 6px 20px rgba(16,33,64,.05)}
  .nhn-content-shell>.nhn-mobile-learn summary{position:relative;display:grid;gap:2px;padding:13px 44px 13px 15px;list-style:none;color:var(--nhn-green);cursor:pointer}
  .nhn-content-shell>.nhn-mobile-learn summary::-webkit-details-marker{display:none}
  .nhn-content-shell>.nhn-mobile-learn summary>span{color:#68788d;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
  .nhn-content-shell>.nhn-mobile-learn summary>strong{overflow:hidden;font-size:14px;white-space:nowrap;text-overflow:ellipsis}
  .nhn-content-shell>.nhn-mobile-learn summary:after{content:"⌄";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:22px;transition:transform .2s}
  .nhn-content-shell>.nhn-mobile-learn[open] summary:after{transform:translateY(-50%) rotate(180deg)}
  .nhn-content-shell>.nhn-mobile-learn .nhn-mobile-learn-links{max-height:min(58dvh,470px);padding:4px 12px 14px;overflow:auto;border-top:1px solid #d8e1ec}
  .nhn-content-shell>.nhn-mobile-learn .nhn-learn-group{padding:11px 0 2px}.nhn-content-shell>.nhn-mobile-learn .nhn-learn-group+.nhn-learn-group{border-top:1px solid #edf1ef}
  .nhn-content-shell>.nhn-mobile-learn .nhn-learn-group>strong{display:block;padding:0 8px 5px;color:#68788d;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
  .nhn-content-shell>.nhn-mobile-learn .nhn-learn-group>a{display:block;padding:10px 9px;border-radius:9px;color:var(--nhn-ink);font-size:14px;text-decoration:none}
  .nhn-content-shell>.nhn-mobile-learn .nhn-learn-group>a.is-active{background:var(--nhn-mint);color:var(--nhn-green);font-weight:900}
  .nhn-content{padding:24px 18px;border-radius:20px;box-shadow:0 8px 28px rgba(16,33,64,.07)}
  .nhn-content>h1{font-size:clamp(36px,11vw,48px);line-height:1.02}.nhn-lead{padding-bottom:22px;font-size:16px;line-height:1.55}
  .nhn-editor-content{font-size:16px;line-height:1.68}.nhn-editor-content h2{margin-top:32px;font-size:26px}
  .nhn-hero{padding:42px 0 72px}.nhn-hero h1{font-size:clamp(39px,12vw,52px)}.nhn-hero p{font-size:16px}
  .nhn-section-head{margin:36px 0 17px}.nhn-section-head h2,.nhn-compass h2{font-size:30px}.nhn-section-head p{font-size:16px}
  .nhn-card,.nhn-side-card,.nhn-quick-card{border-radius:18px}.nhn-card{padding:21px}
  .nhn-footer{padding:26px 16px 18px;font-size:12px}

  /* Dashboard prioritizes the next useful action */
  .nhn-hub-welcome{align-items:flex-start;margin-bottom:19px}.nhn-hub-welcome h1{font-size:38px}.nhn-hub-welcome-action{font-size:15px;line-height:1.45}.nhn-hub-user-chip{display:none}
  .nhn-hub-layout{grid-template-columns:1fr;gap:16px}.nhn-hub-main,.nhn-hub-side{gap:16px}
  .nhn-next-step{display:block;padding:24px 20px;border-radius:21px}.nhn-next-step h2{margin:16px 0 9px;font-size:32px}.nhn-next-step p{font-size:15px}.nhn-next-meta{gap:9px;margin-top:14px;font-size:12px}
  .nhn-next-actions{display:grid;gap:9px}.nhn-next-actions .nhn-hub-button{width:100%;min-height:46px}
  .nhn-quick-grid,.nhn-daily-actions,.nhn-momentum-profile-grid{grid-template-columns:1fr!important}

  /* People, customers and teams */
  .nhn-people-header{align-items:flex-start;flex-direction:column;gap:16px;padding:8px 0 18px}.nhn-people-header h1{font-size:42px}.nhn-people-header p{font-size:15px;line-height:1.5}.nhn-people-add{width:100%;min-height:48px}
  .nhn-people-levels{display:flex;gap:6px;margin-right:calc(var(--nhn-mobile-gutter) * -1);margin-left:calc(var(--nhn-mobile-gutter) * -1);padding:6px var(--nhn-mobile-gutter);overflow-x:auto;border-right:0;border-left:0;border-radius:0;scrollbar-width:none}.nhn-people-levels::-webkit-scrollbar{display:none}.nhn-people-levels a{flex:0 0 auto;padding:11px 14px}.nhn-people-levels a small{display:none}
  .nhn-contact-actions{grid-template-columns:1fr}.nhn-contact-action{min-height:76px;padding:15px 16px}.nhn-contact-action strong{font-size:17px}.nhn-contact-action small{font-size:13px}
  .nhn-people-summary{display:flex!important;margin-right:calc(var(--nhn-mobile-gutter) * -1);overflow-x:auto;padding-right:var(--nhn-mobile-gutter);scrollbar-width:none}.nhn-people-summary button{flex:0 0 112px}
  .nhn-contacts-preview,.nhn-contact-table,.nhn-contact-row,.nhn-contact-name,.nhn-contact-name>span,.nhn-customer-row,.nhn-care-panel,.nhn-care-card{min-width:0;max-width:100%}
  .nhn-contacts-preview{overflow:hidden}.nhn-contact-table,.nhn-team-list-card{overflow:hidden;border:0;background:transparent}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px 12px!important;align-items:center;margin-bottom:10px;padding:16px!important;border:1px solid #d8e1ec!important;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(16,33,64,.04)}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>[data-label="Connection"]{display:none!important}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-name{grid-column:1/-1;width:100%;padding:0;border:0;background:transparent;text-align:left}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-name>span{min-width:0}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-name strong{display:block;overflow:hidden;font-size:17px;line-height:1.25;white-space:nowrap;text-overflow:ellipsis}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-name small{display:block;margin-top:2px;font-size:11px;line-height:1.3}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-next{display:grid!important;grid-column:1;grid-template-columns:1fr;justify-content:start!important;gap:3px;min-width:0}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-next:before{content:"Next step";color:#68788d;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-next strong{font-size:14px;line-height:1.35;overflow-wrap:break-word;word-break:normal}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-next small{font-size:11px;line-height:1.3}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-row-actions{display:block!important;grid-column:2;justify-self:end}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-row-actions:before{display:none!important}
  .nhn-contact-table>.nhn-contact-row:not(.nhn-contact-head)>.nhn-contact-row-actions button{min-height:42px;padding:0 14px!important;border:0!important;border-radius:11px!important;background:var(--nhn-green)!important;color:#fff!important;font-size:12px!important;white-space:nowrap}
  .nhn-customer-row *,.nhn-care-card *{overflow-wrap:break-word;word-break:normal}
  .nhn-care-panel{right:0;left:0;width:100%!important}.nhn-care-panel>header{min-width:0}.nhn-care-header-actions{flex:0 0 auto}
  .nhn-team-activity-table-wrap{margin-right:-14px;overflow-x:auto}

  /* Forms and actions are finger-friendly */
  input:not([type=checkbox]):not([type=radio]),select,textarea{max-width:100%;font-size:16px!important}
  button,.nhn-button,.nhn-hub-button{min-height:44px}
  .nhn-form-grid,.nhn-contact-plan-grid,.nhn-team-plan-form fieldset{grid-template-columns:1fr!important}
  .nhn-form-actions,.nhn-contact-form-actions,.nhn-profile-language-actions,.nhn-room-host-actions,.nhn-room-next-actions{display:grid!important;grid-template-columns:1fr!important}
  .nhn-form-actions>*,.nhn-contact-form-actions>*,.nhn-profile-language-actions>*,.nhn-room-host-actions>*,.nhn-room-next-actions>*{width:100%}
  .nhn-contact-top-actions{padding:13px}.nhn-contact-form-actions{bottom:0;margin-right:-18px;margin-bottom:-24px;margin-left:-18px;padding:12px 18px calc(12px + env(safe-area-inset-bottom))}

  /* Dialogs become stable, scrollable phone sheets */
  .nhn-contact-modal,.nhn-people-action-modal,.nhn-care-modal,.nhn-team-modal,.nhn-team-rules-modal,.nhn-profile-language-modal,.nhn-partner-modal,.nhn-share-sheet,.nhn-external-modal{padding:0!important;place-items:end center!important}
  .nhn-contact-modal-panel,.nhn-people-action-modal>section,.nhn-care-modal>section,.nhn-team-modal>section,.nhn-team-rules-modal>section,.nhn-profile-language-modal>section,.nhn-partner-modal>section,.nhn-share-sheet>section,.nhn-external-modal>section{width:100%!important;max-width:none!important;max-height:calc(100dvh - 18px)!important;margin:18px 0 0!important;border-radius:22px 22px 0 0!important;overflow:auto!important;overscroll-behavior:contain}
  .nhn-contact-modal-panel{padding:27px 18px calc(20px + env(safe-area-inset-bottom))}.nhn-contact-modal-panel h2{font-size:27px}
  .nhn-memory-panel{padding-bottom:env(safe-area-inset-bottom)}

  /* Cards and tool/event surfaces */
  .nhn-tools-hero,.nhn-glossary-hero,.nhn-contacts-hero,.nhn-leadership-hero{border-radius:20px!important}
  .nhn-resource-grid,.nhn-testimonial-grid,.nhn-external-grid,.nhn-events-grid{grid-template-columns:1fr!important}
  .nhn-resource-card,.nhn-events-card{border-radius:18px}
  .nhn-journey-stages{scroll-snap-type:x proximity}.nhn-journey-stages a{scroll-snap-align:start}
  .nhn-event-progress{scroll-snap-type:x proximity}.nhn-event-progress>div{scroll-snap-align:start}
  .nhn-events-hub{width:100%!important;padding-right:var(--nhn-mobile-gutter)!important;padding-bottom:28px!important;padding-left:var(--nhn-mobile-gutter)!important}
  .nhn-events-footer{padding-bottom:18px}

  /* Prevent anchored content from hiding behind the fixed bars */
  [id]{scroll-margin-top:72px}
}

@media (max-width:370px){
  .nhn-mobile-nav a>b,.nhn-mobile-nav button>b{font-size:9px}.nhn-mobile-nav a>span,.nhn-mobile-nav button>span{font-size:19px}
  .nhn-team-header .nhn-brand strong{font-size:13px}
}

@media (min-width:768px){.nhn-mobile-context-nav{display:none}}

@media (orientation:landscape) and (max-height:520px){.nhn-header{position:static}}
