/* OTG presentation only. Business records, forms, and API use the shared code. */
body.otg{font-size:15px;--otg-nav-height:68px}
.otg .app-main{margin-left:0}
.otg .sidebar{width:min(300px,86vw);transform:translateX(-100%);transition:transform .2s;padding:26px 20px max(20px,env(safe-area-inset-bottom));z-index:45}
.otg.nav-open .sidebar{transform:translateX(0)}
.otg.nav-open .mobile-shade{display:block;position:fixed;inset:0;z-index:44;background:#203e4a70;border:0;width:100%}
.otg .sidebar .nav-link{min-height:46px;font-size:13px;margin-bottom:3px}
.otg .sidebar .workspace-note{display:none}
.otg .sidebar .nav-heading{margin-top:16px}
.otg .sidebar .sidebar-footer{padding-top:16px}
.otg .otg-desktop-link{display:block;color:#708a7e;font-size:12px;padding:12px 14px;min-height:44px}
.otg .user-box strong{max-width:165px}
.otg .mobile-menu{display:inline-flex}
.otg .topbar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);height:calc(68px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));gap:8px}
.otg .topbar .breadcrumb{gap:0;min-width:0}
.otg .breadcrumb>.icon,.otg .breadcrumb>span:not(.demo-tag),.otg .shortcut,.otg .today-pill{display:none}
.otg .breadcrumb strong{max-width:175px;font-size:13px}
.otg .breadcrumb .demo-tag{display:none}
.otg .global-search{gap:8px;min-width:0}
.otg .global-search input,.otg .global-search input:focus{width:160px;font-size:16px;min-height:44px}
.otg .topbar-right{gap:4px}
.otg .content{max-width:1120px;padding:28px max(24px,env(safe-area-inset-right)) calc(var(--otg-nav-height) + env(safe-area-inset-bottom) + 28px) max(24px,env(safe-area-inset-left))}
.otg .page-heading h1{font-size:28px;letter-spacing:-.8px}
.otg .page-heading p{font-size:13px}
.otg .page-heading .eyebrow{font-size:9px}
.otg .heading-actions{padding-top:15px}
.otg .button,.otg .button.small{min-height:44px;font-size:12px}
.otg .icon-button{min-height:44px;min-width:44px}
.otg .toolbar input,.otg .toolbar select,.otg input,.otg select,.otg textarea{font-size:16px;min-height:44px}
.otg label{font-size:12px}
.otg label small{font-size:11px}
.otg .dashboard-grid,.otg .settings-grid,.otg .detail-layout{grid-template-columns:minmax(0,1fr);gap:22px}
.otg .customer-list,.otg .dashboard-aside,.otg .settings-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.otg .customer-card{min-width:0;padding:21px}
.otg .customer-card.needs-attention{padding-left:19px}
.otg .customer-name{font-size:15px}
.otg .customer-address{font-size:11px;max-width:100%}
.otg .customer-top{gap:11px;margin-bottom:16px}
.otg .customer-top .icon-button{min-width:36px;width:36px}
.otg .badges{gap:5px}
.otg .badge{font-size:10px;padding:3px 7px}
.otg .last-meeting{display:none}
.otg .warning-strip,.otg .warning-strip button{font-size:12px}
.otg .warning-strip button{min-height:32px;padding:4px 0}
.otg .metric{padding:18px}
.otg .metric-top{font-size:11px}
.otg .metric-bottom{font-size:10px;display:block;margin:5px 0 0}
.otg .metric strong{font-size:27px}
.otg .section-top h2{font-size:16px}
.otg .text-link{font-size:12px;min-height:44px}
.otg .filter-tab{font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:4px;padding:8px 11px}
.otg .toolbar>.eyebrow{display:none}
.otg .toolbar{gap:10px}
.otg .toolbar-right{flex-wrap:wrap}
.otg .panel-heading h2{font-size:15px}
.otg .mini-title,.otg .record-title{font-size:14px;line-height:1.5}
.otg .mini-sub,.otg .record-meta{font-size:11px;gap:7px}
.otg .mini-sub .badge{font-size:10px}
.otg .record-snippet{font-size:12px}
.otg .panel-footer{font-size:12px;min-height:46px}
.otg .task-mini{padding:15px 0;gap:12px}
.otg .check{height:21px;width:21px;position:relative;margin-top:2px}
.otg .check:before{content:"";position:absolute;inset:-12px}
.otg .record-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:7px 12px;padding:18px}
.otg .record-main{grid-column:2;grid-row:1;min-width:0}
.otg .record-actions{grid-column:3;grid-row:1;margin:0}
.otg .record-date{grid-column:2;grid-row:2;text-align:left;font-size:11px}
.otg .record-date strong{display:inline;margin-left:5px}
.otg .record-card>.check,.otg .record-card>.avatar,.otg .record-card>.agenda-time,.otg .record-card>.metric-icon{grid-column:1;grid-row:1}
.otg .record-meta{overflow-wrap:anywhere}
.otg .detail-tabs{position:sticky;top:calc(68px + env(safe-area-inset-top));background:var(--bg);z-index:10;gap:22px;padding-top:4px}
.otg .detail-tab{font-size:12px;min-height:48px;padding:14px 0}
.otg .detail-header p{font-size:12px}
.otg .info-rows dt{font-size:11px}
.otg .info-rows dd{font-size:13px}
.otg .detail-field dt{font-size:12px}
.otg .detail-field dd{font-size:14px}
.otg .check-label{min-height:44px;font-size:13px}
.otg .check-label input{width:20px;height:20px;min-height:20px}
.otg .otg-bottom-nav{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:7px max(10px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));min-height:calc(var(--otg-nav-height) + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e0e7e3;box-shadow:0 -4px 20px #214e4805;z-index:30}
.otg .otg-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:54px;background:transparent;border:0;border-radius:12px;color:#84938c;font-size:11px;font-weight:500;padding:5px 2px;line-height:1.3}
.otg .otg-nav-item .icon{width:21px;height:21px}
.otg .otg-nav-item.active{color:var(--green);background:var(--green-light);font-weight:650}
.otg .otg-nav-item:hover{background:#f0f5f2}
.otg #toasts{bottom:calc(var(--otg-nav-height) + env(safe-area-inset-bottom) + 16px)}
.otg .auth-layout{display:block;min-height:100dvh}
.otg .auth-story{min-height:0;padding:calc(24px + env(safe-area-inset-top)) 26px 24px}
.otg .auth-story>div,.otg .auth-story>small{display:none}
.otg .auth-form{padding:36px 24px calc(30px + env(safe-area-inset-bottom))}
.otg .auth-form-inner{max-width:420px}
.otg .auth-form-inner h2{font-size:27px}
.otg .auth-form-inner>p{font-size:13px}
.otg .footer-note{font-size:11px}
@media(min-width:761px){.otg .dashboard-aside .panel,.otg .settings-aside .settings-card{margin-bottom:0}.otg .dashboard-aside .quiet-note{display:none}}
@media(max-width:700px){.otg .customer-list,.otg .dashboard-aside,.otg .settings-aside{grid-template-columns:minmax(0,1fr)}.otg .metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.otg .content{padding:24px max(18px,env(safe-area-inset-right)) calc(var(--otg-nav-height) + env(safe-area-inset-bottom) + 28px) max(18px,env(safe-area-inset-left))}.otg .page-heading h1{font-size:25px}.otg .page-heading p{font-size:12px}.otg .heading-actions .button{padding:10px 11px}.otg .metric{padding:16px}.otg .global-search input,.otg .global-search input:focus{width:120px}.otg .breadcrumb strong{max-width:110px;font-size:12px}.otg .record-card{padding:16px;gap:7px 9px}.otg .record-actions .icon-button{min-width:36px;width:36px}.otg .record-title{font-size:13px}.otg .record-meta{font-size:11px}.otg .detail-fields{grid-template-columns:minmax(0,1fr)}.otg dialog .form-grid{grid-template-columns:minmax(0,1fr)}.otg dialog .form-grid .span-two{grid-column:auto}.otg .settings-aside{display:grid}.otg .detail-header h1{font-size:24px}.otg .customer-top .icon-button{min-width:30px;width:30px}.otg .auth-form .form-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:370px){.otg .global-search input,.otg .global-search input:focus{width:95px}.otg .breadcrumb strong{max-width:80px}.otg .topbar{padding-left:10px;padding-right:10px}.otg .content{padding-left:14px;padding-right:14px}.otg .customer-card{padding:17px}.otg .page-heading{gap:10px}.otg .page-heading h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){.otg .sidebar{transition:none}}

@media(max-width:700px){.otg .metric{padding:14px}.otg .metric-top{margin-bottom:4px}.otg .metric-icon{width:26px;height:26px}.otg .metric strong{font-size:25px;line-height:1}.otg .metric-bottom{margin-top:3px;line-height:1.3}}
.otg.nav-open{overflow:hidden}.otg .sidebar{height:100dvh}
@media(max-width:400px){.otg dialog footer:has(>button:nth-child(3)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.otg dialog footer:has(>button:nth-child(3))>.danger{grid-column:1/-1;order:2;margin:0}.otg dialog form .dialog-body{max-height:calc(100dvh - 290px)}}
.otg .task-layout{grid-template-columns:minmax(0,1fr)}.otg .task-panel{padding:22px}.otg .task-panel h2{font-size:16px}.otg .task-heading .heading-actions{padding-top:0}.otg .task-back{font-size:13px}.otg .task-progress-label,.otg .task-help{font-size:12px}.otg .step-title{font-size:14px}.otg .step-row{padding:17px 0}.otg .step-row>.icon-button{min-width:36px;width:36px}.otg .step-add-form .button{font-size:12px}.otg .task-status-line{font-size:12px}.otg .task-log-entry{padding:20px 0}.otg .log-text{font-size:14px}.otg .log-meta{font-size:11px}
@media(max-width:700px){.otg .task-panel{padding:19px}.otg .step-add-form{grid-template-columns:minmax(0,1fr)}.otg .step-add-form .button{justify-self:end}.otg .log-marker{display:none}.otg .task-log-entry{gap:8px}.otg .task-log-entry>.icon-button{width:34px;min-width:34px}.otg .task-progress-label{font-size:11px}.otg .task-heading .heading-actions{width:100%}.otg .task-heading .heading-actions .button{flex:1}}
.otg .step-row>.icon-button,.otg .task-log-entry>.icon-button{min-width:44px;width:44px}
