.sidebar{top:var(--sidebar-top,var(--header-height));width:var(--sidebar-width);height:calc(100vh - var(--sidebar-top,var(--header-height)));background-color:var(--bg-secondary);border-right:1px solid var(--border);transition:width var(--dur-base) var(--ease-ios);flex-direction:column;flex-shrink:0;gap:6px;padding:12px;display:flex;position:sticky;overflow-y:auto}.sidebar--collapsed{width:64px}.sidebar--collapsed .sidebar__category,.sidebar--collapsed .sidebar__item-label,.sidebar--collapsed .sidebar__profile-text{display:none}.sidebar--collapsed .sidebar__item,.sidebar--collapsed .sidebar__profile{justify-content:center}.sidebar__nav{flex-direction:column;flex:1;gap:4px;display:flex}.sidebar__category{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);padding:14px 8px 6px;font-weight:600}.sidebar__group-wrap:first-child .sidebar__category{padding-top:4px}.sidebar__group{flex-direction:column;gap:2px;display:flex}.sidebar__item{border-radius:var(--radius-pill);font-size:var(--font-size-base);color:var(--text-secondary);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;gap:10px;padding:9px 12px;display:flex}.sidebar__item-icon{width:22px;height:22px;color:var(--text-tertiary);flex-shrink:0;place-items:center;display:grid}.sidebar__item:hover{color:var(--text-primary);background:#0b1b2e0d}.sidebar__item:hover .sidebar__item-icon{color:var(--text-secondary)}.sidebar__item--active,.sidebar__item--active:hover{background:var(--accent);color:#fff;font-weight:600}.sidebar__item--active .sidebar__item-icon,.sidebar__item--active:hover .sidebar__item-icon{color:#fff}.sidebar__profile{border-top:.5px solid var(--border);color:var(--text-primary);align-items:center;gap:10px;margin-top:auto;padding:10px;display:flex}.sidebar__avatar{background:linear-gradient(135deg, var(--accent), var(--accent-purple));color:#fff;width:32px;height:32px;font-weight:600;font-size:var(--font-size-sm);border-radius:50%;flex-shrink:0;place-items:center;display:grid;overflow:hidden}.sidebar__avatar img{object-fit:cover;width:100%;height:100%}.sidebar__profile-text{flex-direction:column;min-width:0;display:flex}.sidebar__profile-name{font-size:var(--font-size-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.sidebar__profile-sub{font-size:var(--font-size-xs);color:var(--text-tertiary)}@media (max-width:768px){.sidebar{display:none}}
.btab{z-index:6500;background:color-mix(in srgb, var(--bg-primary) 80%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:.5px solid var(--border);padding-bottom:var(--safe-area-bottom);display:none;position:fixed;bottom:0;left:0;right:0}.btab__item{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px 6px;font-size:10px;text-decoration:none;display:flex}.btab__icon{place-items:center;width:24px;height:24px;display:grid}.btab__item--active{color:var(--accent)}.btab__label{font-size:10px;line-height:1}@media (max-width:768px){.btab{display:flex}}
.cmdk{z-index:9000;animation:cmdk-fade var(--dur-fast) var(--ease-out);background:#0000004d;justify-content:center;align-items:flex-start;padding-top:12vh;display:flex;position:fixed;inset:0}@keyframes cmdk-fade{0%{opacity:0}to{opacity:1}}.cmdk__panel{background:var(--bg-primary);border:.5px solid var(--border);border-radius:var(--radius-lg);width:92%;max-width:560px;max-height:60vh;box-shadow:var(--shadow-md);animation:cmdk-pop var(--dur-base) var(--ease-ios);flex-direction:column;display:flex;overflow:hidden}@keyframes cmdk-pop{0%{opacity:0;transform:scale(.96)translateY(-8px)}to{opacity:1;transform:none}}.cmdk__input-row{border-bottom:.5px solid var(--border-light);align-items:center;gap:10px;padding:14px 16px;display:flex}.cmdk__input-icon{width:20px;height:20px;color:var(--text-tertiary);flex-shrink:0}.cmdk__input{font-size:var(--font-size-md);color:var(--text-primary);font-family:var(--font-sans);background:0 0;border:none;outline:none;flex:1}.cmdk__esc{background:var(--bg-tertiary);color:var(--text-tertiary);border-radius:6px;padding:2px 6px;font-size:11px}.cmdk__results{padding:6px;overflow-y:auto}.cmdk__empty{text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm);padding:24px}.cmdk__item{border-radius:var(--radius);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.cmdk__item--active{background:var(--bg-secondary)}.cmdk__item-icon{width:22px;height:22px;color:var(--text-tertiary);flex-shrink:0;place-items:center;display:grid}.cmdk__item--active .cmdk__item-icon{color:var(--accent)}.cmdk__item-text{flex-direction:column;display:flex}.cmdk__item-label{font-size:var(--font-size-base);color:var(--text-primary);font-weight:500}.cmdk__item-desc{font-size:var(--font-size-xs);color:var(--text-tertiary)}
.modal-overlay{z-index:200;background-color:#0006;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out ios-fade-in;display:flex;position:fixed;inset:0}@keyframes ios-fade-in{0%{opacity:0}to{opacity:1}}.modal{background-color:var(--card);border:1px solid var(--n-border);border-radius:var(--radius-card);width:100%;max-width:480px;max-height:calc(100vh - 32px);padding:20px;animation:.25s cubic-bezier(.2,.8,.2,1) ios-scale-in;overflow-y:auto}@keyframes ios-scale-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.modal__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal__title{color:var(--text-primary);font-size:17px;font-weight:600;font-family:var(--font-sans)}.modal__close{cursor:pointer;width:30px;height:30px;color:var(--n-muted);background:var(--bg-tertiary);border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:background-color .15s;display:flex}.modal__close:hover{background-color:var(--border)}.modal--action-sheet{border-radius:14px;max-width:400px;padding:0;overflow:hidden}.modal--action-sheet .modal__action{min-height:57px;color:var(--accent);border-bottom:.5px solid var(--border-light);cursor:pointer;font-size:17px;font-weight:400;font-family:var(--font-sans);justify-content:center;align-items:center;padding:0 16px;transition:background-color .1s;display:flex}.modal--action-sheet .modal__action:last-child{border-bottom:none}.modal--action-sheet .modal__action:active{background:var(--bg-tertiary)}.modal--action-sheet .modal__action--destructive{color:var(--accent-error)}.modal--action-sheet .modal__action--cancel{font-weight:600}.modal--alert{text-align:center;border-radius:14px;max-width:270px;padding:0}.modal--alert .modal__alert-body{padding:20px 16px}.modal--alert .modal__alert-title{margin-bottom:4px;font-size:17px;font-weight:600}.modal--alert .modal__alert-message{color:var(--n-muted);font-size:13px;line-height:1.4}.modal--alert .modal__alert-actions{border-top:.5px solid var(--border-light);display:flex}.modal--alert .modal__alert-btn{min-height:44px;color:var(--accent);cursor:pointer;border-right:.5px solid var(--border-light);font-size:17px;font-family:var(--font-sans);flex:1;justify-content:center;align-items:center;display:flex}.modal--alert .modal__alert-btn:last-child{border-right:none}.modal--alert .modal__alert-btn:active{background:var(--bg-tertiary)}.modal--alert .modal__alert-btn--destructive{color:var(--accent-error)}.modal--alert .modal__alert-btn--primary{font-weight:600}
.dashboard{min-height:calc(100vh - var(--header-height));display:flex}.dashboard__main{background-color:var(--bg-primary);flex:1;min-width:0;padding:32px}.guest-shell{flex-direction:column;min-height:100vh;display:flex}.guest-shell__main{flex:1;width:100%}@media (max-width:768px){.dashboard__main{padding:16px;padding-bottom:calc(64px + var(--safe-area-bottom))}}
.ptr-indicator{top:var(--header-height);pointer-events:none;z-index:6000;justify-content:center;display:flex;position:fixed;left:0;right:0}.ptr-indicator__spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;margin-top:8px}.ptr-indicator--refreshing .ptr-indicator__spinner{animation:.8s linear infinite ptr-spin}@keyframes ptr-spin{to{transform:rotate(360deg)}}@media (min-width:769px){.ptr-indicator{display:none}}
.ip-status-banner{min-height:var(--notification-height);color:var(--text-on-tone);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-sans);transition:background-color var(--transition);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;padding:5px 44px;line-height:1.3;display:flex;position:relative}.ip-status-banner--ok{background-color:var(--accent-success)}.ip-status-banner--warn{background-color:var(--accent-warning)}.ip-status-banner--bad{background-color:var(--accent-error)}.ip-status-banner__text{min-width:0}.ip-status-banner__toggle{color:inherit;cursor:pointer;font-size:var(--font-size-sm);font-family:var(--font-sans);text-underline-offset:2px;opacity:.9;background:0 0;border:none;flex-shrink:0;align-items:center;gap:5px;padding:2px 4px;text-decoration:underline;display:inline-flex}.ip-status-banner__toggle:hover{opacity:1}.ip-status-banner__toggle-icon{display:none}.ip-status-banner__cta{color:inherit;text-underline-offset:2px;white-space:nowrap;flex-shrink:0;padding:2px 4px;font-weight:600;text-decoration:underline}.ip-status-banner__cta:hover{opacity:.85}.ip-status-banner__proof{text-align:center;font-size:var(--font-size-xs);flex-basis:100%;font-weight:500}.ip-status-banner__close{right:12px;top:calc(var(--notification-height) / 2);color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:inline-flex;position:absolute;transform:translateY(-50%)}.ip-status-banner__close:hover{opacity:1}@media (max-width:768px){.ip-status-banner__text{text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;min-width:0;overflow:hidden}.ip-status-banner__toggle-text{display:none}.ip-status-banner__toggle-icon{display:inline-flex}}
@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation-duration:var(--dur-base);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--dur-base);animation-timing-function:var(--ease-out)}::view-transition-old(root){animation-name:vt-fade-out}::view-transition-new(root){animation-name:vt-fade-in}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}.route-fade-in{animation:route-fade var(--dur-base) var(--ease-out)}@keyframes route-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.btn{border-radius:var(--radius-pill);min-height:44px;font-size:15px;font-weight:600;font-family:var(--font-sans);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;appearance:none;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out);border:none;justify-content:center;align-items:center;gap:6px;padding:12px 20px;line-height:1.2;display:inline-flex}.btn:active:not(:disabled){opacity:.65;transform:scale(.98)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn--primary{background-color:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-card)}.btn--primary:hover:not(:disabled){box-shadow:var(--shadow-float), var(--glow-accent);transform:translateY(-1px)}.btn--secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn--secondary:hover:not(:disabled){background-color:color-mix(in srgb, var(--bg-tertiary) 80%, var(--n-border-strong))}.btn--ghost{background-color:var(--card,#fff);color:var(--ink);border:1px solid var(--n-border-strong);min-height:auto;padding:8px 16px}.btn--ghost:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.btn--tinted{background-color:color-mix(in srgb, var(--accent) 10%, var(--card,#fff));color:var(--accent);border:1px solid #0000}.btn--error,.btn--destructive,.btn--danger{background-color:var(--accent-error);color:#fff}.btn--error:hover:not(:disabled),.btn--destructive:hover:not(:disabled),.btn--danger:hover:not(:disabled),.btn--tinted:hover:not(:disabled){filter:brightness(.95)}.btn--success{background-color:var(--accent-success);color:#fff}.btn--dark{background-color:var(--accent);color:var(--accent-inverse)}.btn--sm{border-radius:var(--radius-pill);min-height:34px;padding:6px 16px;font-size:14px}.btn--lg{min-height:50px;padding:14px 28px;font-size:16px}.btn--block{width:100%}.btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px;box-shadow:none}
.input,.textarea,.select{background-color:var(--bg-primary);width:100%;min-height:44px;color:var(--text-primary);border:.5px solid var(--border);border-radius:var(--radius-input);font-size:15px;font-family:var(--font-sans);appearance:none;outline:none;padding:11px 16px;transition:border-color .2s,box-shadow .2s}.input::placeholder,.textarea::placeholder{color:var(--n-faint)}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--focus) 20%, transparent)}.input:disabled,.textarea:disabled,.select:disabled{background-color:var(--bg-tertiary);color:var(--n-muted);cursor:not-allowed;opacity:.5}.textarea{resize:vertical;min-height:88px;line-height:1.47}.select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='8' fill='none'%3E%3Cpath d='M1 1.5l5.5 5 5.5-5' stroke='%23999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--n-muted);letter-spacing:.2px;padding:0 4px;font-size:13px;font-weight:500}.form-hint{color:var(--n-muted);padding:0 4px;font-size:13px}.input--grouped{border:none;border-bottom:.5px solid var(--border-light);background:0 0;border-radius:0;min-height:44px;padding:12px 16px}.input--grouped:last-child{border-bottom:none}.input--grouped:focus{box-shadow:none;border-color:var(--border-light)}.simple-switch,.toggle-switch{flex-shrink:0;width:51px;height:31px;display:inline-block;position:relative}.simple-switch input,.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.simple-slider,.toggle-switch__track{cursor:pointer;background:#e9e9ea;border-radius:15.5px;transition:background-color .25s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.simple-slider:before,.toggle-switch__track:before{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .25s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 3px 8px #00000026,0 1px 1px #0000000f}.simple-switch input:checked+.simple-slider,.toggle-switch input:checked+.toggle-switch__track{background:var(--accent-success)}.simple-switch input:checked+.simple-slider:before,.toggle-switch input:checked+.toggle-switch__track:before{transform:translate(20px)}.simple-switch input:disabled+.simple-slider,.toggle-switch input:disabled+.toggle-switch__track{opacity:.5;cursor:not-allowed}.simple-switch input:active+.simple-slider:before,.toggle-switch input:active+.toggle-switch__track:before{width:31px}.simple-switch input:checked:active+.simple-slider:before,.toggle-switch input:checked:active+.toggle-switch__track:before{width:31px;transform:translate(16px)}.segmented-control{background:var(--bg-tertiary);border-radius:8px;gap:0;padding:2px;display:flex}.segmented-control__item{text-align:center;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:7px;flex:1;padding:7px 12px;font-size:13px;font-weight:500;transition:all .2s}.segmented-control__item--active{background:var(--bg-primary);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a}
.styled-input-wrapper{width:100%;display:flex;position:relative}.styled-input{background-color:var(--bg-primary);width:100%;color:var(--text-primary);border:.5px solid var(--border);border-radius:var(--radius-lg);font-size:var(--font-size-lg);font-family:var(--font-sans);transition:border-color var(--transition), box-shadow var(--transition);appearance:none;outline:none;padding:12px 16px}.styled-input::placeholder{color:var(--text-tertiary)}.styled-input:hover{border-color:var(--text-tertiary)}.styled-input:focus,.styled-input:focus-visible{border-color:var(--accent-info);box-shadow:0 0 0 3px #007aff1f}.styled-input.token{-webkit-text-security:disc;padding-right:48px}select.styled-input{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='8' fill='none'%3E%3Cpath d='M1 1.5l5.5 5 5.5-5' stroke='%23999' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}.show-token-button{border-radius:var(--radius);cursor:pointer;width:40px;height:40px;color:var(--text-secondary);transition:background-color var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;right:4px;overflow:hidden;transform:translateY(-50%)}.show-token-button:hover,.show-token-button:active{background-color:var(--bg-tertiary)}.eyes-token{cursor:pointer;width:80px;transition:transform var(--transition), opacity var(--transition);justify-content:center;align-items:center;display:flex}.show-token-button:active .eyes-token{opacity:.8;transform:scale(.9)}@media (prefers-color-scheme:dark){.styled-input:focus,.styled-input:focus-visible{box-shadow:0 0 0 3px #007aff1f}}
.card{background-color:var(--card,#fff);border:1px solid var(--n-border,#e2e8f0);border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:transform var(--dur-default) var(--ease-out), box-shadow var(--dur-default) var(--ease-out), border-color var(--dur-default) var(--ease-out);overflow:hidden}.card:hover{box-shadow:var(--shadow-float), var(--glow-accent);border-color:color-mix(in srgb, var(--accent) 30%, var(--n-border-strong,#cbd5e1));transform:translateY(-2px)}.card--compact{padding:12px 16px}.card--grouped,.card{padding:0}.card--padded{padding:16px}.card--success{border-left:3px solid var(--accent-success)}.card--info{border-left:3px solid var(--accent)}.card--warning{border-left:3px solid var(--accent-warning)}.card--error{border-left:3px solid var(--accent-error)}.card__item{border-bottom:.5px solid var(--border-light);justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:11px 16px;display:flex}.card__item:last-child{border-bottom:none}.card__item-label{color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:17px}.card__item-value{color:#8e8e93;text-align:right;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:17px}.card__item--disclosure:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='13' fill='none'%3E%3Cpath d='M1 1l5.5 5.5L1 12' stroke='%23C7C7CC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50% no-repeat;flex-shrink:0;width:8px;height:13px}.card-section-title{color:#8e8e93;text-transform:uppercase;letter-spacing:-.08px;padding:8px 16px 6px;font-size:13px;font-weight:400}.card-section-footer{color:#8e8e93;padding:6px 16px 8px;font-size:13px;line-height:1.4}.card-title{color:var(--text-primary);padding:16px 16px 0;font-size:17px;font-weight:600}.card-description{color:#8e8e93;padding:4px 16px 16px;font-size:15px;line-height:1.47}
.notification-bar{z-index:50;height:var(--notification-height);color:#fff;background-color:#007aff;flex-shrink:0;justify-content:center;align-items:center;padding:0 40px 0 16px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;font-size:13px;font-weight:500;display:flex;position:sticky;top:0}.notification-bar a{color:inherit;margin-left:6px;text-decoration:underline}.notification-bar a:hover{opacity:.8}.notification-bar__close{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;padding:4px 8px;font-size:16px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.notification-bar__close:hover{opacity:1}@media (prefers-color-scheme:dark){.notification-bar{background-color:#0a84ff}}
.theme-toggle{display:inline-flex;position:relative}.theme-toggle__trigger{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:none;border-radius:50%;place-items:center;font-size:16px;line-height:1;display:grid}.theme-toggle__trigger:hover{background:var(--bg-secondary)}.theme-toggle__menu{z-index:60;background:var(--bg-primary);border:.5px solid var(--border);border-radius:var(--radius-lg);min-width:168px;box-shadow:var(--shadow-md);animation:theme-menu-in var(--dur-fast) var(--ease-out);flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}@keyframes theme-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.theme-toggle__item{border-radius:var(--radius);width:100%;font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;align-items:center;gap:10px;padding:8px 10px;display:flex}.theme-toggle__item:hover{background:var(--bg-secondary);color:var(--text-primary)}.theme-toggle__item--active{color:var(--text-primary);font-weight:600}.theme-toggle__item-icon{flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.theme-toggle__item-label{flex:1}.theme-toggle__check{color:var(--accent);font-weight:700}
