.tb-bottom-nav{position:fixed;left:0;right:0;bottom:0;padding:8px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 8px);box-sizing:border-box;z-index:99999}.tb-bottom-nav-inner{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;justify-content:center;align-items:center;width:min(100%,520px);padding:0;margin:0 auto;box-sizing:border-box}.tb-nav-item{color:inherit;text-decoration:none;min-width:0!important;padding:6px 2px!important;border-radius:10px;font-weight:700}.tb-nav-item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-content-padding-bottom{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important}:root{color-scheme:light;--tb-bg: #D9E2EB;--tb-bg-gradient: #F0F0F0;--tb-panel: #FFFFFF;--tb-panel-2: #F3F4F6;--tb-panel-soft: rgba(255, 255, 255, .92);--tb-border: rgba(0, 0, 0, .1);--tb-border-accent: rgba(0, 0, 0, .28);--tb-text: #111827;--tb-muted: #6B7280;--tb-subtle: #9CA3AF;--tb-primary: #111111;--tb-primary-soft: rgba(0, 0, 0, .1);--tb-primary-gradient: linear-gradient(135deg, #1F2937 0%, #374151 100%);--tb-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.1);--tb-shadow-hover: 0 4px 16px rgba(0,0,0,.12), 0 8px 32px rgba(0,0,0,.14);--tb-overlay: rgba(17,24,39,.65)}:root[data-theme=dark]{color-scheme:dark;--tb-bg: #07111F;--tb-bg-gradient: #0B1220;--tb-panel: #111827;--tb-panel-2: #1F2937;--tb-panel-soft: rgba(17, 24, 39, .92);--tb-border: rgba(226, 232, 240, .12);--tb-border-accent: rgba(226, 232, 240, .28);--tb-text: #F8FAFC;--tb-muted: #CBD5E1;--tb-subtle: #94A3B8;--tb-primary: #F8FAFC;--tb-primary-soft: rgba(248, 250, 252, .12);--tb-primary-gradient: linear-gradient(135deg, #0F172A 0%, #334155 100%);--tb-shadow: 0 1px 3px rgba(0,0,0,.26), 0 16px 46px rgba(0,0,0,.32);--tb-shadow-hover: 0 8px 22px rgba(0,0,0,.34), 0 20px 54px rgba(0,0,0,.38);--tb-overlay: rgba(2, 6, 23, .78)}html,body,#root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0;height:100%;width:100%;max-width:100%;background:var(--tb-bg);color:var(--tb-text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}*,*:before,*:after{box-sizing:border-box}input,select,textarea{font-size:16px}#root{min-height:100vh;min-height:100dvh}img,svg,video,canvas{max-width:100%}.glass-panel{background:var(--tb-panel-soft);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--tb-border);box-shadow:var(--tb-shadow)}.dateFieldWrap{position:relative;width:100%;overflow:hidden;border-radius:12px;border:2px solid var(--tb-border-accent);background:var(--tb-panel-soft);transition:all .2s ease}.dateFieldWrap:hover{border-color:#00000059;box-shadow:0 4px 12px #00000014}.dateFieldWrap:focus-within{border-color:#374151;box-shadow:0 0 0 3px #0000001f}.dateInput{width:100%;box-sizing:border-box;padding:8px 12px;height:44px;min-height:44px;line-height:24px;background:transparent;border:0;border-radius:0;color:var(--tb-text)}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;padding:4px;border-radius:4px;transition:background .2s}input[type=time]::-webkit-calendar-picker-indicator:hover{background:#00000014}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #00000059}50%{box-shadow:0 0 0 8px #0000}}@keyframes tb-soft-rise{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes tb-soft-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes tb-timeline-node-settle{0%{transform:scale(.9);box-shadow:0 0 #0f172a29}72%{transform:scale(1.04)}to{transform:scale(1);box-shadow:inherit}}.tb-modal-overlay{animation:fadeIn .18s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.tb-modal-card{animation:tb-soft-rise .22s ease-out;transform-origin:center}.tb-interactive{transition:transform .16s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.tb-motion-block{animation:tb-soft-reveal .18s ease-out;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}.tb-motion-block:hover{transform:translateY(-1px)}button:not(.tb-no-motion):not(.tb-interactive):not(:disabled){transition:transform .16s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease,opacity .18s ease}button:not(.tb-no-motion):not(.tb-interactive):hover:not(:disabled){transform:translateY(-1px)}button:not(.tb-no-motion):not(.tb-interactive):active:not(:disabled){transform:translateY(0) scale(.985)}.tb-interactive:hover:not(:disabled){transform:translateY(-1px)}.tb-interactive:active:not(:disabled){transform:translateY(0) scale(.985)}.tb-soft-reveal{animation:tb-soft-reveal .18s ease-out}.tb-timeline-entry{animation:tb-soft-rise .22s ease-out both}.tb-timeline-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,filter .18s ease}.tb-timeline-card:hover{transform:translateY(-1px);filter:saturate(.98)}.tb-timeline-node{animation:tb-timeline-node-settle .26s ease-out both}.tb-empty-surface{animation:tb-soft-reveal .18s ease-out}:focus-visible{outline:2px solid var(--tb-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:100000}.skip-link:focus{position:fixed!important;left:16px!important;top:16px!important;width:auto!important;height:auto!important;overflow:visible!important;background:var(--tb-primary);color:#fff;padding:12px 20px;border-radius:8px;font-weight:600;text-decoration:none;box-shadow:0 4px 12px #00000059}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-contrast:high){:focus-visible{outline:3px solid currentColor;outline-offset:3px}button,a{text-decoration:underline}}button,a,[role=button],input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--tb-subtle);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--tb-muted)}::selection{background:var(--tb-primary-soft);color:var(--tb-text)}.tripNameInput::selection{background:var(--tb-primary-soft);color:var(--tb-text)}button,a,input[type=checkbox],input[type=radio],select{min-height:44px;min-width:44px}input,textarea,select{font-size:16px!important}.expense-form-row{grid-template-columns:1fr 120px}.packlist-add-row{grid-template-columns:200px 1fr auto}.packlist-filter-row{grid-template-columns:1fr 200px}@media(max-width:768px){button{padding:12px 20px;min-height:48px}body{overflow-x:hidden}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;max-width:100%}[role=dialog],.modal{max-width:100vw!important;margin:0!important;border-radius:18px 18px 0 0!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important}.container{padding:12px!important}body{font-size:16px;line-height:1.5}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%}.expense-form-row,.packlist-add-row,.packlist-filter-row{grid-template-columns:1fr!important}.budget-view-toggle button{padding:6px 10px!important;font-size:12px!important}}@media(max-width:480px){.container{padding:8px!important}[style*="padding: 24px"]{padding:16px!important}[style*="fontSize: 24"]{font-size:20px!important}.status-pill{font-size:11px!important;padding:4px 8px!important}}@media(display-mode:standalone){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.browser-only{display:none!important}}*:focus-visible{outline:2px solid #2d7aff;outline-offset:2px}@media(prefers-contrast:high){button,a{border-width:2px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.swipeable{touch-action:pan-y;user-select:none;-webkit-user-select:none}.swipe-hint{opacity:.6;font-size:12px;text-align:center;padding:8px;color:#666}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:pulse 1.5s ease-in-out infinite}.pull-to-refresh{position:fixed;top:0;left:0;right:0;height:60px;display:flex;align-items:center;justify-content:center;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform:translateY(-100%);transition:transform .3s ease;z-index:9998}.pull-to-refresh.visible{transform:translateY(0)}.bottom-sheet{position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:18px 18px 0 0;padding:20px;box-shadow:0 -4px 20px #00000026;transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:9999;max-height:90vh;overflow-y:auto}.bottom-sheet.open{transform:translateY(0)}.bottom-sheet-handle{width:40px;height:4px;background:#ddd;border-radius:2px;margin:0 auto 16px}.smooth-scroll{-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.snap-scroll{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.snap-scroll>*{scroll-snap-align:start}.slide-in{animation:slideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.fade-in{animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(orientation:landscape)and (max-height:500px){.container{padding-top:8px!important;padding-bottom:8px!important}[role=dialog],.modal{max-height:90vh!important;overflow-y:auto}}@media(min-width:768px)and (max-width:1024px){.tablet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}button{min-height:44px}}@media(prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#1a1a1a,#2a2a2a 75%)}.bottom-sheet{background:#1a1a1a;box-shadow:0 -4px 20px #00000080}.bottom-sheet-handle{background:#444}}
