:root{--brand-navy: #0f172a;--brand-navy-light: #1e293b;--brand-primary: #0284c7;--brand-primary-hover: #0369a1;--brand-primary-light: #e0f2fe;--color-debt: #dc2626;--color-debt-bg: #fee2e2;--color-debt-border: #fca5a5;--color-payment: #16a34a;--color-payment-bg: #dcfce7;--color-payment-border: #86efac;--color-settled: #059669;--color-settled-bg: #d1fae5;--bg-app: #f8fafc;--bg-surface: #ffffff;--bg-surface-subtle: #f1f5f9;--bg-surface-elevated: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--text-inverse: #ffffff;--border-subtle: #e2e8f0;--border-medium: #cbd5e1;--border-focus: #0284c7;--font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-2xs: .6875rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .04);--min-touch-target: 44px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;min-height:100%;font-family:var(--font-family-sans);background-color:var(--bg-app);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}button{font-family:inherit;border:none;background:none;cursor:pointer;touch-action:manipulation;min-height:var(--min-touch-target);display:inline-flex;align-items:center;justify-content:center;transition:transform var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}button:active{transform:scale(.97)}h1,h2,h3,h4{color:var(--text-primary);font-weight:700;line-height:1.25}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}p{color:var(--text-secondary)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-box{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.skeleton-box{animation:none!important;background:#e2e8f0!important}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-surface-subtle)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}.app-shell{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-app);color:var(--text-primary)}.app-shell-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);backdrop-filter:blur(8px)}.app-shell-brand{display:flex;align-items:center;gap:var(--space-2)}.app-shell-logo-badge{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--brand-primary),#0369a1);color:#fff;font-weight:800;font-size:var(--font-size-base);box-shadow:var(--shadow-sm)}.app-shell-title{font-size:var(--font-size-base);font-weight:700;color:var(--brand-navy);letter-spacing:-.02em}.app-shell-badge{font-size:var(--font-size-xs);font-weight:600;color:var(--brand-primary);background-color:var(--brand-primary-light);padding:2px 8px;border-radius:var(--radius-full)}.app-shell-network-banner{display:none;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background-color:#fef3c7;color:#92400e;font-size:var(--font-size-xs);font-weight:600;border-bottom:1px solid #fde68a;text-align:center}.app-shell-network-banner.is-offline{display:flex}.app-shell-main{flex:1;width:100%;max-width:640px;margin:0 auto;padding:var(--space-4)}.app-shell-footer{padding:var(--space-6) var(--space-4);text-align:center;font-size:var(--font-size-xs);color:var(--text-muted);border-top:1px solid var(--border-subtle);background-color:var(--bg-surface)}@media(min-width:768px){.app-shell-main{max-width:720px;padding:var(--space-6) var(--space-4)}.app-shell-header{padding:var(--space-4) var(--space-8)}}.dashboard-container{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0}.dashboard-greeting-title{font-size:var(--font-size-xl);font-weight:800;color:var(--brand-navy);letter-spacing:-.02em;line-height:1.2}.dashboard-greeting-subtitle{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:2px}.dashboard-header-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);font-weight:600;color:var(--brand-primary);background-color:var(--brand-primary-light);padding:4px 12px;border-radius:var(--radius-full);white-space:nowrap;box-shadow:var(--shadow-sm)}.balance-card{position:relative;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;padding:var(--space-6) var(--space-5);border-radius:var(--radius-2xl);box-shadow:0 10px 25px -5px #0f172a33,0 8px 10px -6px #0f172a33;overflow:hidden;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.balance-card:after{content:"";position:absolute;top:-30%;right:-20%;width:180px;height:180px;background:radial-gradient(circle,#0284c740,#0284c700 70%);border-radius:50%;pointer-events:none}.balance-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.balance-card-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8}.balance-card-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--font-size-xs);font-weight:700;padding:3px 10px;border-radius:var(--radius-full)}.balance-card-badge.is-settled{background-color:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.3)}.balance-card-badge.is-active{background-color:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.balance-card-amount{font-size:var(--font-size-3xl);font-weight:800;letter-spacing:-.03em;color:#fff;margin-bottom:var(--space-3);line-height:1.15}.balance-card-settled-message{display:flex;align-items:center;gap:var(--space-2);background-color:#10b98126;border:1px solid rgba(16,185,129,.3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:var(--font-size-xs);color:#a7f3d0;font-weight:500;margin-top:var(--space-2)}.balance-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid rgba(255,255,255,.1);font-size:var(--font-size-xs);color:#94a3b8}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.summary-card{display:flex;flex-direction:column;padding:var(--space-4);background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.summary-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.summary-card-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-md);font-size:.875rem;font-weight:700}.summary-card-icon.debt{background-color:var(--color-debt-bg);color:var(--color-debt)}.summary-card-icon.payment{background-color:var(--color-payment-bg);color:var(--color-payment)}.summary-card-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary)}.summary-card-amount{font-size:var(--font-size-lg);font-weight:800;letter-spacing:-.02em;color:var(--brand-navy);margin-bottom:2px}.summary-card-subtext{font-size:var(--font-size-xs);color:var(--text-muted)}.transactions-section{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.transactions-section-header{display:flex;align-items:center;justify-content:space-between}.transactions-section-title{font-size:var(--font-size-base);font-weight:700;color:var(--brand-navy)}.transactions-count-badge{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);background-color:var(--bg-surface-subtle);padding:2px 8px;border-radius:var(--radius-full)}.transactions-list{display:flex;flex-direction:column;gap:var(--space-2)}.transaction-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:background-color var(--transition-fast),transform var(--transition-fast)}.transaction-item:hover{background-color:var(--bg-surface-subtle);transform:translateY(-1px)}.transaction-item-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.transaction-type-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);font-size:1rem;font-weight:700;flex-shrink:0}.transaction-type-icon.debt{background-color:var(--color-debt-bg);color:var(--color-debt)}.transaction-type-icon.payment{background-color:var(--color-payment-bg);color:var(--color-payment)}.transaction-item-details{display:flex;flex-direction:column;min-width:0}.transaction-item-description{font-size:var(--font-size-sm);font-weight:600;color:var(--brand-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-item-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.transaction-item-type-label{font-weight:600}.transaction-item-type-label.debt{color:var(--color-debt)}.transaction-item-type-label.payment{color:var(--color-payment)}.transaction-item-right{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;margin-left:var(--space-2)}.transaction-item-amount{font-size:var(--font-size-sm);font-weight:700;letter-spacing:-.01em}.transaction-item-amount.debt{color:var(--color-debt)}.transaction-item-amount.payment{color:var(--color-payment)}@media(max-width:380px){.summary-grid{grid-template-columns:1fr}.balance-card-amount{font-size:var(--font-size-2xl)}}.portal-nav-tabs{display:flex;background-color:#f1f5f9;padding:4px;border-radius:var(--radius-xl);margin-bottom:var(--space-4);border:1px solid var(--border-subtle);width:100%}.portal-nav-tab-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:10px 16px;border-radius:var(--radius-lg);border:none;background:transparent;font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;min-height:var(--min-touch-target)}.portal-nav-tab-btn:hover{color:var(--brand-navy)}.portal-nav-tab-btn.is-active{background-color:#fff;color:var(--brand-navy);box-shadow:var(--shadow-sm);font-weight:700}.ledger-container{display:flex;flex-direction:column;gap:var(--space-4);width:100%}.ledger-header{display:flex;flex-direction:column;gap:4px;padding:var(--space-2) 0}.ledger-title{font-size:var(--font-size-xl);font-weight:800;color:var(--brand-navy);letter-spacing:-.02em}.ledger-subtitle{font-size:var(--font-size-xs);color:var(--text-secondary)}.ledger-filter-bar{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none}.ledger-filter-bar::-webkit-scrollbar{display:none}.ledger-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);min-height:40px}.ledger-filter-chip:hover{border-color:var(--brand-primary);color:var(--brand-navy)}.ledger-filter-chip.is-active{background-color:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}.ledger-filter-chip .chip-count{font-size:.7rem;padding:1px 6px;border-radius:var(--radius-full);background-color:#00000014}.ledger-filter-chip.is-active .chip-count{background-color:#ffffff40;color:#fff}.ledger-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);background:var(--bg-surface);border-radius:var(--radius-xl);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.ledger-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);border-color:#cbd5e1}.ledger-card-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.ledger-card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);font-size:1.125rem;font-weight:800;flex-shrink:0}.ledger-card-icon.debt{background-color:var(--color-debt-bg);color:var(--color-debt)}.ledger-card-icon.payment{background-color:var(--color-payment-bg);color:var(--color-payment)}.ledger-card-content{display:flex;flex-direction:column;min-width:0}.ledger-card-desc{font-size:var(--font-size-sm);font-weight:700;color:var(--brand-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ledger-card-meta{display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--text-muted);margin-top:2px}.ledger-card-right{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;margin-left:var(--space-2)}.ledger-card-amount{font-size:var(--font-size-base);font-weight:800;letter-spacing:-.01em}.ledger-card-amount.debt{color:var(--color-debt)}.ledger-card-amount.payment{color:var(--color-payment)}.ledger-pagination{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.btn-load-more{display:inline-flex;align-items:center;justify-content:center;padding:10px 24px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);font-size:var(--font-size-xs);font-weight:700;color:var(--brand-navy);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast);min-height:var(--min-touch-target)}.btn-load-more:hover{background-color:#f8fafc;border-color:var(--brand-primary);color:var(--brand-primary)}.ledger-pagination-info{font-size:var(--font-size-xs);color:var(--text-muted)}.modal-backdrop{position:fixed;inset:0;background-color:#0f172a99;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:999;padding:var(--space-4)}.modal-card{background:var(--bg-surface);border-radius:var(--radius-2xl);padding:var(--space-6);max-width:440px;width:100%;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:var(--space-4);position:relative}.modal-header{display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--font-size-lg);font-weight:800;color:var(--brand-navy)}.modal-close-btn{background:transparent;border:none;font-size:1.25rem;color:var(--text-muted);cursor:pointer;padding:4px 8px;border-radius:var(--radius-md)}.modal-close-btn:hover{color:var(--brand-navy);background-color:#f1f5f9}.modal-detail-list{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.modal-detail-row{display:flex;justify-content:space-between;align-items:flex-start;font-size:var(--font-size-sm)}.modal-detail-label{color:var(--text-secondary);font-weight:500}.modal-detail-value{color:var(--brand-navy);font-weight:700;text-align:right}.modal-badge-readonly{display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:var(--font-size-xs);color:var(--text-muted);background-color:#f1f5f9;padding:6px 12px;border-radius:var(--radius-full);text-align:center}.chat-fab-button{position:fixed;bottom:calc(20px + var(--safe-area-bottom));right:calc(20px + var(--safe-area-right));width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border:none;box-shadow:0 8px 24px -4px #0284c766,0 4px 8px -2px #0f172a33;cursor:pointer;z-index:900;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.chat-fab-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 28px -4px #0284c780,0 6px 12px -2px #0f172a40}.chat-fab-button:active{transform:scale(.95)}.chat-fab-pulse{position:absolute;top:2px;right:2px;width:14px;height:14px;background-color:#10b981;border:2px solid #ffffff;border-radius:50%}.chat-popup-container{position:fixed;bottom:calc(88px + var(--safe-area-bottom));right:calc(20px + var(--safe-area-right));width:360px;max-width:calc(100vw - 32px);height:500px;max-height:calc(100vh - 120px);background:#fff;border-radius:var(--radius-2xl);box-shadow:0 20px 40px -8px #0f172a40,0 1px 3px #0000000d;border:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;z-index:950;transition:opacity var(--transition-normal),transform var(--transition-normal)}.chat-popup-container.is-hidden{display:none;opacity:0;transform:translateY(16px) scale(.95);pointer-events:none}.chat-header{background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.chat-header-info{display:flex;align-items:center;gap:10px}.chat-header-avatar{width:36px;height:36px;border-radius:50%;background:#0284c7;display:flex;align-items:center;justify-content:center;font-size:1.125rem}.chat-header-titles{display:flex;flex-direction:column}.chat-header-title{font-size:.9375rem;font-weight:700;color:#fff;line-height:1.2}.chat-header-status{display:flex;align-items:center;gap:4px;font-size:.75rem;color:#38bdf8;font-weight:500}.chat-status-dot{width:6px;height:6px;background-color:#10b981;border-radius:50%}.chat-header-close-btn{background:transparent;border:none;color:#94a3b8;font-size:1.25rem;cursor:pointer;padding:4px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.chat-header-close-btn:hover{color:#fff;background-color:#ffffff1a}.chat-messages-body{flex:1;padding:16px;overflow-y:auto;background-color:#f8fafc;display:flex;flex-direction:column;gap:12px}.chat-bubble-wrapper{display:flex;flex-direction:column;max-width:80%}.chat-bubble-wrapper.is-client{align-self:flex-end;align-items:flex-end}.chat-bubble-wrapper.is-owner{align-self:flex-start;align-items:flex-start}.chat-bubble{padding:10px 14px;border-radius:16px;font-size:.875rem;line-height:1.4;word-break:break-word;box-shadow:0 1px 2px #0000000d}.chat-bubble-wrapper.is-client .chat-bubble{background-color:#0284c7;color:#fff;border-bottom-right-radius:4px}.chat-bubble-wrapper.is-owner .chat-bubble{background-color:#fff;color:#0f172a;border:1px solid var(--border-subtle);border-bottom-left-radius:4px}.chat-bubble-image{max-width:100%;border-radius:10px;margin-bottom:6px;display:block;cursor:pointer;transition:opacity var(--transition-fast)}.chat-bubble-image:hover{opacity:.9}.chat-bubble-time{font-size:.6875rem;color:#94a3b8;margin-top:4px;padding:0 2px}.chat-bubble-wrapper.is-client .chat-bubble-time{text-align:right}.chat-empty-state{margin:auto;text-align:center;color:var(--text-muted);font-size:.8125rem;padding:20px;display:flex;flex-direction:column;align-items:center;gap:8px}.chat-empty-icon{font-size:2rem;opacity:.6}.chat-uploading-bar{display:flex;align-items:center;gap:8px;background:#e0f2fe;color:#0284c7;padding:8px 12px;font-size:.75rem;font-weight:600;border-top:1px solid #bae6fd}.chat-spinner{width:14px;height:14px;border:2px solid #bae6fd;border-top-color:#0284c7;border-radius:50%;animation:spin 1s linear infinite}.chat-footer{padding:10px 12px;background-color:#fff;border-top:1px solid var(--border-subtle);display:flex;align-items:center;gap:8px}.chat-attach-btn{background:transparent;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background-color var(--transition-fast);flex-shrink:0}.chat-attach-btn:hover{color:var(--brand-primary);background-color:#f1f5f9}.chat-input-text{flex:1;border:1px solid var(--border-subtle);background-color:#f8fafc;padding:10px 14px;border-radius:var(--radius-full);font-size:.875rem;color:var(--text-primary);outline:none;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.chat-input-text:focus{border-color:var(--brand-primary);background-color:#fff}.chat-send-btn{width:38px;height:38px;border-radius:50%;background:var(--brand-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;transition:transform var(--transition-fast),background-color var(--transition-fast)}.chat-send-btn:hover{background-color:var(--brand-primary-hover)}.chat-send-btn:active{transform:scale(.92)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}@media(max-width:480px){.chat-popup-container{right:12px;bottom:calc(76px + var(--safe-area-bottom));width:calc(100vw - 24px);height:460px}}
