.track-ui{--track-surface:#fff;--track-canvas:#faf8fe;--track-action:#6936b5;--track-selection:#f0e8fb;--track-ink:#30263e;--track-secondary-text:#665c73;--track-stroke:#e8e1ef;--track-attention:#835000;--track-attention-bg:#fff5df;--track-radius:20px;color:var(--track-ink);font-family:Inter,system-ui,sans-serif;line-height:1.5}.track-ui *,.track-ui :before,.track-ui :after{box-sizing:border-box}.track-ui :focus-visible{outline:3px solid var(--track-action);outline-offset:3px}.track-ui button,.track-ui a{-webkit-tap-highlight-color:transparent}.track-ui button:disabled{opacity:.45;cursor:not-allowed}.track-ui button:not(:disabled),.track-ui a{cursor:pointer}.track-ui svg{flex-shrink:0}.track-family-dashboard{background:var(--track-canvas);flex:1;grid-template-rows:auto auto minmax(220px,1fr) auto auto;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;height:100%;min-height:0;display:grid;overflow:auto}.tf-header{border-bottom:1px solid var(--track-stroke);background:var(--track-canvas);grid-row:1;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 12px;display:flex}.tf-header-copy{min-width:0}.tf-eyebrow{letter-spacing:.12em;color:var(--track-secondary-text);margin:0 0 3px;font-size:11px;font-weight:650}.tf-header h1{letter-spacing:-.03em;overflow-wrap:anywhere;margin:0;font-family:Sora,system-ui,sans-serif;font-size:clamp(20px,2.5vw,24px);font-weight:600;line-height:1.3}.tf-header-description{color:var(--track-secondary-text);margin:3px 0 0;font-size:13px}.tf-header-actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.tf-icon-button{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--track-action);background:0 0;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.tf-icon-button:hover{background:var(--track-selection)}.tf-icon-button svg{width:20px;height:20px}.tf-filters{background:var(--track-canvas);scrollbar-width:thin;grid-row:2;align-items:center;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.tf-chip{border:1px solid var(--track-stroke);background:var(--track-surface);min-height:44px;color:var(--track-secondary-text);border-radius:14px;flex:1 0 auto;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;display:inline-flex}.tf-chip svg{width:17px;height:17px}.tf-chip[aria-pressed=true]{background:var(--track-action);color:#fff;border-color:var(--track-action)}.tf-selector{display:none}.tf-map{background:#eef0ec;grid-row:3;min-width:0;min-height:220px;position:relative;overflow:hidden}.tf-map-renderer{border:0;border-radius:0}.tf-map .track-map-zoom{flex-direction:row!important;bottom:32px!important;left:12px!important;right:auto!important}.tf-map .track-map-zoom button{min-width:44px;min-height:44px}.tf-map .track-map-controls{top:12px!important;right:12px!important}.tf-map .track-map-controls>button{min-width:44px;min-height:44px}.track-ui .track-map-controls>button{width:44px;min-width:44px;height:44px;min-height:44px;color:var(--track-action);background:#ffffffed;border:1px solid #e8e1ef;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;box-shadow:0 3px 14px #35245714}.track-ui .track-map-controls>button>svg{stroke-width:1.8px;width:20px;height:20px;display:block}.track-ui .track-map-controls>button:hover:not(:disabled):not([aria-expanded=true]){background:var(--track-selection)}.track-ui .track-map-controls>button[aria-expanded=true]{background:var(--track-action);border-color:var(--track-action);color:#fff}.tf-map .track-map-layer-menu{right:0}.tf-map .track-map-zoom button+button{border-top:0;border-left:1px solid var(--track-stroke)}.tf-empty{text-align:center;background:var(--track-canvas);flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;min-height:220px;padding:24px;display:flex}.tf-empty h2{margin:0;font-size:19px;font-weight:600}.tf-empty p{max-width:420px;color:var(--track-secondary-text);margin:0;font-size:14px}.tf-empty>svg{color:var(--track-secondary-text);width:28px;height:28px}.tf-context{border-top:1px solid var(--track-stroke);background:var(--track-surface);grid-row:4;min-width:0;padding:12px 18px 10px}.tf-person-row{align-items:center;gap:10px;display:flex}.tf-person{text-align:left;min-width:0;min-height:48px;color:var(--track-ink);background:0 0;border:0;border-radius:12px;flex:1;align-items:center;gap:12px;padding:0;display:flex}.tf-avatar{background:var(--track-selection);color:var(--track-action);border:2px solid var(--track-surface);box-shadow:0 0 0 1px var(--track-stroke)}.tf-person-copy{min-width:0}.tf-person h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:Sora,system-ui,sans-serif;font-size:19px;font-weight:600;line-height:1.4;overflow:hidden}.tf-person small{color:var(--track-secondary-text);font-size:12px;display:block}.tf-cycle{justify-content:flex-end;align-items:center;gap:0;display:flex}.tf-cycle-count{text-align:center;font-variant-numeric:tabular-nums;min-width:38px;color:var(--track-secondary-text);font-size:12px}.tf-record-line{color:var(--track-secondary-text);align-items:flex-start;gap:7px;margin-top:8px;font-size:13px;line-height:1.5;display:flex}.tf-record-line svg{width:16px;height:16px;margin-top:2px}.tf-record-line[data-tone=attention]{color:var(--track-attention)}.tf-record-line time{font-variant-numeric:tabular-nums}.tf-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.tf-action{border:1px solid var(--track-stroke);min-width:0;min-height:58px;color:var(--track-action);background:var(--track-canvas);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:8px 3px;font-size:12px;font-weight:500;display:flex}.tf-action svg{width:19px;height:19px}.tf-action:hover{background:var(--track-selection)}.tf-text-button{min-height:44px;color:var(--track-action);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:13px;font-weight:600;display:inline-flex}.tf-text-button:hover{background:var(--track-selection)}.tf-text-button svg{width:16px;height:16px}.tf-context-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;margin-top:3px;display:flex}.tf-privacy{color:var(--track-secondary-text);align-items:center;gap:5px;font-size:12px;display:flex}.tf-privacy svg{width:14px;height:14px}.tf-record-details{overscroll-behavior:contain;background:var(--track-canvas);border-radius:14px;max-height:180px;margin-top:10px;padding:12px;overflow-y:auto}.tf-record-details p{color:var(--track-secondary-text);margin:0 0 8px;font-size:13px}.tf-record-details dl{gap:8px;margin:0;display:grid}.tf-record-details dt{color:var(--track-secondary-text);font-size:11px;font-weight:600}.tf-record-details dd{color:var(--track-ink);margin:0;font-size:13px}.track-navigation{padding:0 4px env(safe-area-inset-bottom,0px);border-top:1px solid var(--track-stroke);background:var(--track-surface);flex-shrink:0}.track-family-dashboard>.track-navigation{grid-row:5}.track-navigation-inner{grid-template-columns:repeat(5,minmax(0,1fr));max-width:720px;margin-inline:auto;display:grid}.track-navigation-item{min-width:0;min-height:66px;color:var(--track-secondary-text);background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 2px;font-size:12px;text-decoration:none;display:flex;position:relative}.track-navigation-icon{border-radius:16px;place-items:center;width:48px;height:30px;transition:background-color .18s,transform .18s;display:grid;position:relative}.track-navigation-icon svg{width:21px;height:21px}.track-navigation-item[aria-current=page]{color:var(--track-action);font-weight:650}.track-navigation-item[aria-current=page] .track-navigation-icon{background:var(--track-selection)}.track-navigation-item:hover:not(:disabled){background:var(--track-canvas)}.track-navigation-item:active:not(:disabled) .track-navigation-icon{transform:scale(.94)}@media (prefers-reduced-motion:reduce){.track-navigation-icon{transition:none}}.track-navigation-dot{background:#b94e38;border:1px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:2px;right:2px}.tf-sheet{background:var(--track-surface);width:min(100vw,460px);max-width:100vw;padding:22px;overflow-y:auto}.tf-sheet p{color:var(--track-secondary-text)}.tf-search{border:1px solid var(--track-stroke);background:var(--track-canvas);border-radius:12px;width:100%;height:48px;margin-top:18px;padding:10px 12px;font-size:16px}.tf-scope{gap:6px;margin:12px 0;display:flex}.tf-list{margin:10px 0 0;padding:0;list-style:none}.tf-list>li{border-bottom:1px solid var(--track-stroke);padding:14px 0}.tf-list-row{align-items:center;gap:10px;display:flex}.tf-check{place-items:center;min-width:44px;min-height:44px;display:grid}.tf-check input{width:19px;height:19px;accent-color:var(--track-action)}.tf-list-title{text-align:left;min-width:0;color:var(--track-ink);background:0 0;border:0;border-radius:10px;flex:1;padding:4px}.tf-list-title strong{overflow-wrap:anywhere;font-size:15px;display:block}.tf-list-title span{color:var(--track-secondary-text);font-size:12px;display:block}.tf-list-actions,.tf-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;margin-top:8px;display:flex}.tf-pagination span{font-size:13px}.tf-menu-link{min-height:58px;color:var(--track-ink);border-bottom:1px solid var(--track-stroke);align-items:center;gap:12px;padding:10px 8px;text-decoration:none;display:flex}.tf-menu-link svg{width:20px;height:20px;color:var(--track-action)}.tf-menu-link span{font-size:14px;font-weight:500}.tf-support-copy{margin-top:18px;font-size:13px}.track-app-frame:has(.track-family-dashboard){min-height:0;max-height:none}@media (width>=1024px){.track-family-dashboard{grid-template-rows:auto auto minmax(240px,1fr) auto auto;grid-template-columns:260px minmax(0,1fr)}.tf-header{grid-column:1/-1}.tf-selector{border-right:1px solid var(--track-stroke);flex-direction:column;grid-area:2/1/5;gap:6px;min-height:0;padding:18px 12px;display:flex;overflow-y:auto}.tf-selector h2{margin:0 8px 8px;font-size:15px;font-weight:600}.tf-selector-item{text-align:left;min-height:64px;color:var(--track-ink);background:0 0;border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.tf-selector-item[aria-pressed=true]{border-color:var(--track-stroke);background:var(--track-surface)}.tf-selector-item>span:last-child{min-width:0}.tf-selector-item strong{overflow-wrap:anywhere;font-size:14px;display:block}.tf-selector-item small{color:var(--track-secondary-text);font-size:12px;display:block}.tf-filters,.tf-map,.tf-context{grid-column:2}.tf-filters{justify-content:flex-start}.tf-chip{flex-grow:0;padding-inline:15px}.tf-context{padding:14px 22px 8px}.tf-record-details{max-height:150px}.track-family-dashboard>.track-navigation{grid-column:1/-1}}@media (width<=767px){.track-app-frame:has(.track-family-dashboard){height:100dvh}.tf-header{padding:12px 14px 10px}.tf-header-description{max-width:230px;font-size:12px}.tf-header-actions{gap:0}.tf-context{padding-inline:14px}.tf-cycle .tf-icon-button{width:44px}.tf-record-details{max-height:140px}}@media (width<=370px){.tf-header-description{max-width:175px}.tf-filters{gap:4px;padding-inline:8px}.tf-chip{padding-inline:8px}.tf-person-row{flex-wrap:wrap}.tf-cycle{margin-left:auto}}@media (prefers-reduced-motion:reduce){.track-ui *,.track-ui :before,.track-ui :after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms}}.td-switcher-actions{align-items:center;gap:8px;min-width:0;display:flex}.td-account-button{border:1px solid var(--track-stroke);background:var(--track-surface);min-height:44px;color:var(--track-action);border-radius:24px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:600;display:inline-flex}.ta-sheet{width:min(100%,480px);max-height:90dvh;padding:26px 24px max(24px, env(safe-area-inset-bottom));background:var(--track-surface);border-radius:28px 28px 0 0;margin-inline:auto;overflow-y:auto}.ta-identity{background:var(--track-selection);border-radius:18px;align-items:center;gap:12px;margin:24px 0 14px;padding:16px;display:flex}.ta-avatar{width:42px;height:42px;color:var(--track-action);background:#fff;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.ta-identity>div{min-width:0}.ta-identity strong,.ta-identity span:not(.ta-avatar){overflow-wrap:anywhere;display:block}.ta-identity strong{font-size:16px}.ta-identity div>span{color:var(--track-secondary-text);margin-top:3px;font-size:13px}.ta-actions{grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;display:grid}.ta-error{color:#923d2c;margin-top:12px;font-size:13px}.track-map-help{border-top:1px solid var(--track-stroke,#e8e1ef);color:#665c73;background:#fff;flex-shrink:0;padding:0 14px;font-size:11px}.track-map-help summary{cursor:pointer;min-height:32px;padding:7px 0}.track-map-help[open]{max-height:45%;overflow-y:auto}.track-map-help p{padding-bottom:10px;line-height:1.6}.tp-help{color:#665c73;max-width:42rem;margin-top:4px;font-size:12px}.tp-help summary{cursor:pointer;min-height:40px;color:var(--track-action);padding:10px 0;display:list-item}.tp-help p{padding:0 0 12px;line-height:1.6}.ta-sheet>[data-sheet-close],.tf-sheet>[data-sheet-close],.tph-sheet>[data-sheet-close]{border-radius:12px;place-items:center;width:44px;height:44px;display:grid;top:8px;right:8px}.ta-actions button{padding-inline:10px;font-size:13px}.ta-sheet .tf-menu-link{text-align:left;width:100%;height:auto}.ta-sheet .tf-menu-link svg{flex-shrink:0}.ta-sheet .tf-menu-link span{overflow-wrap:anywhere;min-width:0}.ta-sheet [data-account-header]{padding-inline:28px}.ta-billing-back{min-height:44px;color:var(--track-action);align-items:center;gap:8px;margin:-10px 0 10px;font-size:14px;display:inline-flex}.tf-summary-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.tf-summary-actions>:only-child{grid-column:1/-1}.tf-summary-actions .tf-action{flex-direction:row;min-height:44px;padding:8px}.tf-summary-actions .tf-action:first-child{background:var(--track-action);border-color:var(--track-action);color:#fff}.tf-context .tf-record-line{font-size:12px}.track-ui .track-geofence-row{border:1px solid var(--track-stroke);background:var(--track-surface);border-radius:18px;margin-block:12px;padding:14px}.track-ui .track-geofence-row[data-enabled=false]{background:var(--track-canvas);border-style:dashed}.track-ui .track-alert-card{border-radius:20px}.track-ui .track-alert-card[data-unread=true]{box-shadow:inset 3px 0 var(--track-action);background:#fcfaff;border-color:#d6c3ed}.track-ui .track-geofence-editor input:not([type=checkbox]):not([type=range]),.track-ui .track-geofence-editor select{min-height:44px;font-size:16px}.track-ui .track-alert-card .tg-event-button{width:100%;min-height:76px}.nfc-journey{--background:var(--track-canvas);--foreground:var(--track-ink);--card:var(--track-surface);--card-foreground:var(--track-ink);--primary:var(--track-action);--primary-foreground:var(--track-surface);--secondary:var(--track-selection);--secondary-foreground:var(--track-ink);--muted:var(--track-selection);--muted-foreground:var(--track-secondary-text);--accent:var(--track-selection);--accent-foreground:var(--track-ink);--signature:var(--track-action);--signature-foreground:var(--track-surface);--border:var(--track-stroke);--input:var(--track-stroke);--ring:var(--track-action);background:var(--track-canvas);overflow-wrap:anywhere}.nj-page{width:100%;padding:32px 16px 48px}.nj-container{min-width:0;max-width:860px;margin-inline:auto}.nj-container--narrow{max-width:560px}.nj-heading{letter-spacing:-.035em;margin-top:12px;font:600 clamp(24px,4vw,32px)/1.25 Sora,system-ui,sans-serif}.nj-lead{max-width:680px;color:var(--track-secondary-text);margin-top:16px;font-size:16px;line-height:1.7}.nj-card{border:1px solid var(--track-stroke);border-radius:var(--track-radius);background:var(--track-surface);padding:24px}.nj-steps{gap:8px;margin:24px 0;padding:0;list-style:none;display:flex}.nj-steps li{border:1px solid var(--track-stroke);min-width:0;color:var(--track-secondary-text);border-radius:12px;flex:1;padding:12px;font-size:14px}.nj-steps li[aria-current=step]{background:var(--track-selection);color:var(--track-action);border-color:var(--track-action);font-weight:600}.nj-steps span{margin-bottom:3px;font-size:12px;display:block}.nfc-journey .nj-button,.nfc-journey .nj-editor button:not([role=switch]){white-space:normal;border-radius:12px;height:auto;min-height:48px;padding-block:12px}.nfc-journey input:not([type=checkbox]),.nfc-journey textarea{background:var(--track-surface);border-radius:12px;min-height:48px;font-size:16px}.nfc-journey input[type=checkbox]{width:18px;height:18px;accent-color:var(--track-action);flex-shrink:0}.nj-editor label:has(input[type=checkbox]){min-height:44px;padding-block:10px}.nj-editor label{line-height:1.5}.nj-editor section>h2{font-family:Sora,system-ui,sans-serif;font-size:20px}.nj-editor .nj-fields{gap:20px;display:grid}.nj-editor .nj-fields>section{border:1px solid var(--track-stroke);border-radius:var(--track-radius);background:var(--track-surface);padding:24px}.nj-editor .nj-fields>section>p{color:var(--track-secondary-text)}.nj-switch-row{min-height:56px}.nj-switch-row>label{cursor:pointer;flex:1;padding-block:12px}.nj-review{align-items:start;gap:24px;display:grid}.nj-review>*{min-width:0}.nj-review-preview{background:var(--track-surface);border-radius:28px}.nj-review-preview .text-xs{font-size:14px}.nj-review-preview h1{font-size:24px}.nj-notice{background:var(--track-selection);border-radius:14px;margin-block:20px;padding:16px;font-size:14px;line-height:1.65}.nj-notice[data-tone=attention]{background:var(--track-attention-bg);color:var(--track-attention)}.nj-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.nj-actions>button{flex:1}.nj-back{min-height:44px;color:var(--track-action);align-items:center;gap:8px;font-size:14px;display:inline-flex}.nj-status{border:1px solid var(--track-stroke);border-radius:var(--track-radius);background:var(--track-surface);margin-top:24px;padding:24px}@media (width>=768px){.nj-page{padding:48px 24px 64px}.nj-review{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=399px){.nj-card,.nj-editor .nj-fields>section{padding:18px}.nj-steps li{padding:10px 8px;font-size:13px}}@media (prefers-reduced-motion:reduce){.nfc-journey *,.nfc-journey :before,.nfc-journey :after{scroll-behavior:auto;transition:none;animation:none}}
