/* The mobile shell is web presentation; native and wide web views retain their layout. */
.mobile-chrome,.mobile-more,.mobile-cell-label{display:none}
html[data-kwip-mode] body[data-mobile-pane]{height:var(--mobile-height,100dvh);position:relative;overflow:hidden}
body[data-mobile-pane] .mobile-chrome{display:contents}
body[data-mobile-pane] .mobile-chrome[hidden]{display:none}
body[data-mobile-pane] .mobile-header{order:-2;display:flex;align-items:center;justify-content:space-between;min-height:56px;height:auto;flex-shrink:0;margin:0;padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));background:#fff;border-bottom:1px solid var(--line)}
body[data-mobile-pane] .mobile-header>button,body[data-mobile-pane] .mobile-header>span{width:78px;flex-shrink:0}
body[data-mobile-pane] .mobile-header>button{padding:0;text-align:left;color:var(--accent);border:0;background:transparent}
body[data-mobile-pane] .mobile-header>button[hidden]{display:block;visibility:hidden}
body[data-mobile-pane] .mobile-header strong{font-size:16px}
body[data-mobile-pane] .guest-notice{order:-1;padding:6px 16px;min-height:48px;gap:10px;font-size:12px}
body[data-mobile-pane] .guest-notice>span{line-height:1.4}
html[data-kwip-mode=account] body[data-mobile-pane] .guest-notice{display:none}
html[data-kwip-mode] body[data-mobile-pane] .shell{display:block;min-height:0;overflow:hidden}
body[data-mobile-pane] .app-rail{display:none}
html[data-kwip-mode] body[data-mobile-pane] main{height:100%;padding:20px max(16px,env(safe-area-inset-right)) 28px max(16px,env(safe-area-inset-left));overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
html[data-kwip-mode] body[data-mobile-pane] .shell>nav{display:none;position:absolute;inset:0;width:auto;padding:8px 16px 24px;background:#fff;overflow:auto;border:0;z-index:2;box-shadow:none}
html[data-kwip-mode] body[data-mobile-pane=goals] .shell>nav{display:block}
body[data-mobile-pane]:not([data-mobile-pane=content]) main{visibility:hidden}
body[data-mobile-pane] .sidebar-brand{display:none}
body[data-mobile-pane] .nav-heading{padding:12px 0;min-height:48px}
body[data-mobile-pane] .nav-row{flex-wrap:wrap;min-height:48px;border-radius:8px;margin:4px 0}
body[data-mobile-pane] .nav-title{font-size:15px;white-space:normal;text-align:left;line-height:1.4;padding:12px 8px;min-width:0}
body[data-mobile-pane] .nav-chevron{flex-shrink:0}
body[data-mobile-pane] .row-actions{display:flex;opacity:1;visibility:visible;margin-left:auto;gap:2px}
body[data-mobile-pane] .row-actions button{width:44px;height:44px}
body[data-mobile-pane] .nav-children{margin-left:16px}
body[data-mobile-pane] .mobile-tabs{order:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex-shrink:0;background:#fff;border-top:1px solid var(--line);padding:5px max(8px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
body[data-mobile-pane] .mobile-tabs button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:54px;border:0;background:transparent;font-size:11px;color:var(--muted);padding:4px}
body[data-mobile-pane] .mobile-tabs img,body[data-mobile-pane] .mobile-more img{width:20px;height:20px}
body[data-mobile-pane] .mobile-tabs [aria-current]{color:var(--accent);background:#fbf4f6;border-radius:8px;font-weight:600}
body[data-mobile-pane] .mobile-more{display:none;position:absolute;inset:0;padding:20px max(16px,env(safe-area-inset-left));background:#faf9fb;overflow:auto;z-index:3}
body[data-mobile-pane=more] .mobile-more{display:block}
body[data-mobile-pane] .mobile-more h1{font-size:24px;margin:0 0 20px}
body[data-mobile-pane] .mobile-more button{display:flex;align-items:center;gap:16px;padding:16px;width:100%;text-align:left;font-size:16px;border:1px solid var(--line);border-bottom:0;border-radius:0;background:#fff}
body[data-mobile-pane] .mobile-more button:last-child{border-bottom:1px solid var(--line)}
body[data-mobile-pane] .mobile-status{order:2;flex-shrink:0;padding:8px 16px;background:#f8f8fa;border-top:1px solid var(--line);font-size:12px;max-height:72px;overflow:auto}
body[data-mobile-pane] .mobile-status[hidden]{display:none}
body[data-mobile-pane] main>footer{display:none}
body[data-mobile-pane] button,body[data-mobile-pane] input:not([type=checkbox]):not([type=radio]),body[data-mobile-pane] select{min-height:44px}
body[data-mobile-pane] input:not([type=checkbox]):not([type=radio]),body[data-mobile-pane] textarea,body[data-mobile-pane] select{font-size:16px;max-width:100%;min-width:0}
body[data-mobile-pane] input[type=checkbox],body[data-mobile-pane] input[type=radio]{width:20px;height:20px;flex-shrink:0}
body[data-mobile-pane] label:has(input[type=checkbox]),body[data-mobile-pane] label:has(input[type=radio]){min-height:44px;align-items:center}
body[data-mobile-pane] .workspace-grid{grid-template-columns:minmax(0,1fr)}
body[data-mobile-pane] .workspace-module{grid-column:1/-1;min-width:0}
body[data-mobile-pane] .heading,body[data-mobile-pane] .module-heading{flex-wrap:wrap;gap:12px}
body[data-mobile-pane] .heading h1{font-size:26px;overflow-wrap:anywhere}
body[data-mobile-pane] .heading>div{display:flex;flex-wrap:wrap;gap:8px}
body[data-mobile-pane] .workspace-crumb{overflow-wrap:anywhere;white-space:normal}
body[data-mobile-pane] .workspace-tabs{overflow-x:auto;flex-wrap:nowrap;max-width:100%;scrollbar-width:thin}
body[data-mobile-pane] .workspace-tabs button{flex-shrink:0}
body[data-mobile-pane] .workspace-description{line-height:1.6}
body[data-mobile-pane] .table-wrap{overflow:visible}
body[data-mobile-pane] table[data-mobile-cards]{display:block;width:100%;min-width:0}
body[data-mobile-pane] table[data-mobile-cards]>thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body[data-mobile-pane] table[data-mobile-cards]>tbody{display:block}
body[data-mobile-pane] table[data-mobile-cards]>tbody>tr{display:block;border-bottom:1px solid var(--line);padding:12px 16px}
body[data-mobile-pane] table[data-mobile-cards]>tbody>tr:last-child{border-bottom:0}
body[data-mobile-pane] table[data-mobile-cards]>tbody>tr>td{display:block;width:auto;border:0;padding:6px 0;white-space:normal;overflow-wrap:anywhere;max-width:none}
body[data-mobile-pane] .mobile-cell-label{display:block;color:var(--muted);font-size:11px;margin-bottom:4px;font-weight:400}
body[data-mobile-pane] .home-target{grid-template-columns:1fr;gap:6px}
body[data-mobile-pane] dialog[open]{position:fixed;inset:0;margin:0;width:100%;max-width:100%;height:var(--mobile-height,100dvh);max-height:var(--mobile-height,100dvh);border:0;border-radius:0;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);overflow:auto;box-sizing:border-box}
body[data-mobile-pane] dialog .dialog-heading{position:sticky;top:0;background:#fff;z-index:3;flex-shrink:0;padding:16px}
body[data-mobile-pane] dialog .dialog-heading h2{font-size:20px}
body[data-mobile-pane] dialog .dialog-actions{position:sticky;bottom:0;background:#fff;padding:12px 16px;flex-shrink:0;flex-wrap:wrap;z-index:3}
body[data-mobile-pane] dialog .dialog-actions button{flex:1;white-space:normal}
body[data-mobile-pane] dialog .record-editor{height:100%;max-height:100%;display:flex;flex-direction:column;overflow:hidden}
body[data-mobile-pane] dialog .record-form-body{flex:1;min-height:0;overflow:auto;padding:16px}
body[data-mobile-pane] dialog .property-row,body[data-mobile-pane] dialog .record-form-pair,body[data-mobile-pane] dialog .form-row{grid-template-columns:minmax(0,1fr);gap:8px}
body[data-mobile-pane] .goal-start-dialog .goal-start{padding:16px 16px 0;min-height:100%;box-sizing:border-box}
body[data-mobile-pane] .goal-start-dialog .start-choices{grid-template-columns:minmax(0,1fr);gap:10px}
body[data-mobile-pane] .goal-start-dialog .start-choice{min-height:100px}
body[data-mobile-pane] .goal-start-dialog .start-field,body[data-mobile-pane] .goal-start-dialog .start-review>div{grid-template-columns:minmax(0,1fr);gap:8px}
body[data-mobile-pane] .goal-start-dialog .start-field small{grid-column:1}
body[data-mobile-pane] .goal-start-dialog .start-actions{padding-bottom:max(16px,env(safe-area-inset-bottom));flex-wrap:wrap}
body[data-mobile-pane] .goal-start-dialog .start-actions button{flex:1}
@media(pointer:coarse){html[data-kwip-mode] button{min-height:44px}}
body[data-mobile-pane] .mobile-header strong{font-family:inherit;font-weight:600}
body[data-mobile-pane] .mobile-header>span{display:block}
body[data-mobile-pane] #update-form{height:100%;max-height:100%}
body[data-mobile-pane] .record-editor .record-properties>label{grid-template-columns:minmax(0,1fr);gap:8px}
body[data-mobile-pane] .goal-plan-summary table[data-mobile-cards]>tbody>tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 16px}
body[data-mobile-pane] .goal-plan-summary table[data-mobile-cards]>tbody>tr>td:first-child,body[data-mobile-pane] .goal-plan-summary table[data-mobile-cards]>tbody>tr>td:last-child{grid-column:1/-1}
body[data-mobile-pane] .mobile-header{display:grid;grid-template-columns:78px minmax(0,1fr) 78px;gap:0}
body[data-mobile-pane] .mobile-header strong{text-align:center}
/* Saved desktop spans, including Add block, must not create implicit phone columns. */
body[data-mobile-pane] .workspace-grid{display:flex;flex-direction:column;gap:16px}
body[data-mobile-pane] .workspace-grid>*{width:100%;box-sizing:border-box;flex-shrink:0}
