@import"https://fonts.googleapis.com/css2?family=Fraunces:wght@600;700;800&display=swap";:root{--bob-sage: #657F6E;--bob-sage-light: #EAF1ED;--bob-sage-soft: #C9D8CF;--bob-amber: #C9A24B;--bob-amber-light: #FBF5E8;--bob-dark: #2A352C;--bob-gray: #737A72;--bob-muted: #949A92;--bob-red: #E57373;--bob-red-light: #FCEEEE;--bob-blue: #6B8FBF;--bob-blue-light: #F0F4F9;--bob-cream: #F4F2EC;--bob-surface: #FCFBF8;--bob-surface-muted: #EEEFEA;--bob-border: #DDDFD8;--bob-white: #FCFBF8;--bob-viewport-max: 700px;--bob-frame-bg: #E4E1D9;--bob-space-1: 4px;--bob-space-2: 8px;--bob-space-3: 12px;--bob-space-4: 16px;--bob-space-5: 24px;--bob-gutter: 16px;--bob-pad: 12px;--bob-stack-gap: 10px;--bob-list-gap: 8px;--bob-app-height: 100dvh;--bob-tab-bar-height: 64px;--bob-fab-gap: 12px;--bob-fab-size: 48px;--bob-scroll-bottom: 24px;--bob-scroll-bottom-tab: 80px;--bob-scroll-bottom-detail: 120px;--bob-textarea-rows: 5;--bob-textarea-row-height: 22px;--bob-textarea-min-height: calc(var(--bob-textarea-rows) * var(--bob-textarea-row-height));--bob-control-h: 40px;--bob-control-h-sm: 36px;--bob-icon-btn: 40px;--bob-text-xs: 10px;--bob-text-sm: 12px;--bob-text-md: 13px;--bob-text-base: 14px;--bob-text-lg: 16px;--bob-text-title: 20px;--bob-text-hero: 22px;--bob-radius-sm: 6px;--bob-radius-md: 8px;--bob-radius-lg: 10px;--bob-radius-full: 9999px;--bob-font-serif: "Fraunces", "Georgia", "Times New Roman", serif;--bob-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", sans-serif}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--bob-font-sans);background:var(--bob-cream);color:var(--bob-dark);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--top-banner-height: 0px;--overlay-top: calc(var(--safe-top) + var(--bob-gutter))}@supports (-webkit-touch-callout: none){@media(display-mode:standalone){:root{--safe-top: max(env(safe-area-inset-top, 0px), 20px);--overlay-top: calc(var(--safe-top) + var(--bob-gutter))}}}.safe-bottom{padding-bottom:var(--safe-bottom)}.safe-top{padding-top:var(--safe-top)}#bob-overlays{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;padding-left:var(--safe-left);padding-right:var(--safe-right);box-sizing:border-box;pointer-events:none;overflow:visible}.bob-overlay-stack--top{position:relative;margin:0 auto;width:min(var(--bob-viewport-max),100%);padding:var(--bob-gutter);box-sizing:border-box;display:flex;flex-direction:column;gap:var(--bob-stack-gap);pointer-events:none}.bob-overlay-stack--top>*{pointer-events:auto}.bob-toast{width:100%;padding:var(--bob-space-3) var(--bob-space-4);border-radius:var(--bob-radius-md);font-size:var(--bob-text-md);font-weight:600;text-align:center;color:#fff;box-shadow:0 4px 12px #0003;animation:bob-toast-in .2s ease forwards}.bob-toast--success{background:var(--bob-sage)}.bob-toast--error{background:var(--bob-red)}@keyframes bob-toast-in{0%{opacity:0}to{opacity:1}}.bob-offline-strip{width:100%;padding:var(--bob-space-2) var(--bob-gutter);background:var(--bob-amber);color:#78350f;font-size:var(--bob-text-sm);font-weight:600;text-align:center;border-radius:var(--bob-radius-md)}.bob-top-prompt{width:100%;background:var(--bob-surface);border-radius:var(--bob-radius-md);padding:var(--bob-pad) var(--bob-space-4);border:1px solid var(--bob-border);box-shadow:0 4px 20px #0000001f}.bob-top-prompt__title{font-size:var(--bob-text-md);font-weight:700;color:var(--bob-dark);margin:0 0 var(--bob-space-1)}.bob-top-prompt__subtitle{font-size:var(--bob-text-sm);color:var(--bob-gray);margin:0 0 var(--bob-stack-gap)}.bob-top-prompt__actions{display:flex;gap:var(--bob-space-2)}.bob-top-prompt__primary{flex:1;min-height:var(--bob-control-h-sm);padding:0 var(--bob-space-3);background:var(--bob-sage);color:#fff;border:none;border-radius:var(--bob-radius-sm);font-weight:600;font-size:var(--bob-text-md);cursor:pointer}.bob-top-prompt__secondary{min-height:var(--bob-control-h-sm);padding:0 var(--bob-space-4);background:var(--bob-surface-muted);color:var(--bob-gray);border:none;border-radius:var(--bob-radius-sm);font-size:var(--bob-text-md);cursor:pointer}.bob-biometric-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:var(--bob-pad)}.bob-biometric-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#2a352c66}.bob-biometric-modal__card{position:relative;width:100%;max-width:320px;background:var(--bob-surface);border-radius:var(--bob-radius-lg);padding:var(--bob-space-5);border:1px solid var(--bob-border);box-shadow:0 8px 32px #00000026}.bob-biometric-modal__title{font-size:var(--bob-text-lg);font-weight:700;font-family:var(--bob-font-serif);color:var(--bob-dark);margin:0 0 var(--bob-space-2)}.bob-biometric-modal__subtitle{font-size:var(--bob-text-sm);color:var(--bob-gray);margin:0 0 var(--bob-space-4);line-height:1.45}.bob-biometric-modal__actions{display:flex;flex-direction:column;gap:var(--bob-space-2)}.bob-biometric-modal__actions .bob-top-prompt__primary,.bob-biometric-modal__actions .bob-top-prompt__secondary{flex:none;width:100%}html{overflow:hidden;height:var(--bob-app-height)}body{overflow:hidden;height:var(--bob-app-height);position:fixed;width:100%}#root{height:var(--bob-app-height);overflow:hidden}.bob-desktop-frame{display:flex;justify-content:center;height:var(--bob-app-height);background:var(--bob-cream)}.bob-viewport{display:flex;flex-direction:column;width:100%;max-width:var(--bob-viewport-max);height:var(--bob-app-height);overflow:hidden;background:var(--bob-cream);transform:translate(0);padding-top:var(--safe-top);padding-left:var(--safe-left);padding-right:var(--safe-right)}@media(min-width:701px){.bob-desktop-frame{background:var(--bob-frame-bg)}.bob-viewport{box-shadow:0 0 0 1px #0000000f,0 12px 48px #0000001f}}.bob-app-frame{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.bob-app-main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.bob-shell{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;box-sizing:border-box;padding-bottom:var(--bob-tab-bar-height)}.bob-shell-main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.bob-page{position:relative;display:flex;flex-direction:column;height:var(--bob-app-height);max-height:var(--bob-app-height);overflow:hidden;background:var(--bob-cream);padding-inline:var(--bob-gutter)}.bob-shell-main .bob-page{flex:1;min-height:0;height:100%;max-height:100%}.bob-page-header{flex-shrink:0;background:var(--bob-cream);margin-inline:calc(-1 * var(--bob-gutter));padding:var(--bob-pad) var(--bob-gutter) var(--bob-space-2);border-bottom:1px solid var(--bob-border);z-index:10}.bob-page-header--compact{padding-top:var(--bob-pad);padding-bottom:var(--bob-pad)}.bob-inbox-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--bob-space-1);margin-top:var(--bob-space-3)}.bob-inbox-tabs__btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;border-radius:var(--bob-radius-md);border:none;cursor:pointer;background:transparent;-webkit-tap-highlight-color:transparent}.bob-inbox-tabs__btn--active{background:var(--bob-sage-soft)}.bob-inbox-tabs__icon{position:relative}.bob-inbox-tabs__badge{position:absolute;top:-5px;right:-9px;min-width:15px;height:15px;border-radius:var(--bob-radius-full);background:var(--bob-amber);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px}.bob-inbox-tabs__label{font-size:var(--bob-text-xs);font-weight:600;line-height:1.2;text-align:center;color:var(--bob-gray)}.bob-inbox-tabs__btn--active .bob-inbox-tabs__label{color:var(--bob-sage)}.bob-page-title{font-family:var(--bob-font-serif);font-size:var(--bob-text-title);font-weight:700;color:var(--bob-dark);margin:0;line-height:1.2}.bob-page-title--hero{font-size:var(--bob-text-hero)}.bob-section-label{font-size:var(--bob-text-xs);font-weight:700;color:var(--bob-gray);margin:0 0 var(--bob-space-2);text-transform:uppercase;letter-spacing:.06em}.bob-detail-header{flex-shrink:0;display:flex;align-items:center;gap:var(--bob-space-2);background:var(--bob-cream);margin-inline:calc(-1 * var(--bob-gutter));padding:var(--bob-space-2) var(--bob-gutter);border-bottom:1px solid var(--bob-border);z-index:10}.bob-detail-header__back{display:flex;align-items:center;justify-content:flex-start;width:auto;height:32px;margin:0;padding:0;background:none;border:none;cursor:pointer;color:var(--bob-sage);flex-shrink:0;-webkit-tap-highlight-color:transparent}.bob-detail-header__main{flex:1;min-width:0}.bob-detail-header__title{font-family:var(--bob-font-serif);font-size:var(--bob-text-lg);font-weight:700;color:var(--bob-dark);margin:0;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bob-detail-header__meta{display:flex;align-items:center;gap:5px;font-size:var(--bob-text-sm);color:var(--bob-gray);margin:3px 0 0;min-width:0}.bob-detail-header__badge{width:18px;height:18px;border-radius:var(--bob-radius-sm);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.bob-detail-header__meta-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bob-detail-message{background:var(--bob-surface);border-radius:var(--bob-radius-md);padding:var(--bob-pad);margin-bottom:var(--bob-stack-gap);border:1px solid var(--bob-border)}.bob-detail-message__body{font-size:var(--bob-text-sm);color:var(--bob-dark);margin:0;white-space:pre-wrap;line-height:1.6}.bob-page-toolbar{flex-shrink:0;padding:var(--bob-space-2) 0;background:var(--bob-cream)}.bob-page-toolbar__search{width:100%;height:var(--bob-control-h);padding:0 var(--bob-space-3);border:1px solid var(--bob-border);border-radius:var(--bob-radius-md);font-size:var(--bob-text-base);background:var(--bob-surface);box-sizing:border-box}.bob-page-toolbar__trigger{width:100%;padding:var(--bob-space-2);text-align:center;font-size:var(--bob-text-sm);color:var(--bob-gray);background:none;border:none;cursor:pointer}.bob-done-filters{display:flex;align-items:center;justify-content:space-between;gap:var(--bob-space-2);padding:var(--bob-space-2) 0 var(--bob-space-1);background:var(--bob-cream);flex-shrink:0}.bob-done-filters__label{font-size:var(--bob-text-sm);font-weight:600;color:var(--bob-dark);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bob-done-filters__label-count{color:var(--bob-gray);font-weight:500}.bob-done-filters__filter{position:relative;flex-shrink:0}.bob-done-filters__trigger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--bob-radius-md);background:none;cursor:pointer;color:var(--bob-gray);-webkit-tap-highlight-color:transparent}.bob-done-filters__trigger--active{color:var(--bob-sage);background:var(--bob-sage-light)}.bob-done-filters__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.bob-done-filters__menu{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:var(--bob-surface);border:1px solid var(--bob-border);border-radius:var(--bob-radius-md);box-shadow:0 4px 12px #00000014;padding:var(--bob-space-1);z-index:1000}.bob-done-filters__option{display:flex;align-items:center;justify-content:space-between;gap:var(--bob-space-2);width:100%;padding:10px 12px;border:none;border-radius:var(--bob-radius-sm);background:none;cursor:pointer;color:var(--bob-dark);font-size:var(--bob-text-sm);font-weight:500;text-align:left;-webkit-tap-highlight-color:transparent}.bob-done-filters__option--active{background:var(--bob-sage-light);color:var(--bob-sage);font-weight:600}.bob-done-filters__option-label{display:inline-flex;align-items:center;gap:6px}.bob-done-filters__check{flex-shrink:0}.bob-page-toolbar+.bob-page-scroll{padding-top:0}.bob-page-scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-top:var(--bob-space-3)}.bob-page-scroll--plain,.bob-page-content{padding-bottom:calc(var(--bob-gutter) + var(--safe-bottom))}.bob-page-content--detail{padding-bottom:calc(var(--bob-scroll-bottom-detail) + var(--safe-bottom))}.bob-page-content--detail-done{padding-bottom:calc(var(--bob-scroll-bottom) + var(--safe-bottom))}.bob-page-content--with-fab{padding-bottom:calc(var(--bob-scroll-bottom) + var(--bob-fab-size) + var(--bob-fab-gap) + var(--bob-gutter))}.bob-fab{position:absolute;bottom:var(--bob-fab-gap);right:var(--bob-fab-gap);width:var(--bob-fab-size);height:var(--bob-fab-size);border-radius:var(--bob-radius-full);background:var(--bob-sage);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 16px #657f6e47;display:flex;align-items:center;justify-content:center;z-index:20}.bob-card{background:var(--bob-surface);border:1px solid var(--bob-border);border-radius:var(--bob-radius-md);padding:var(--bob-pad);margin-bottom:var(--bob-stack-gap)}.bob-card--compact{padding:var(--bob-space-2) var(--bob-pad)}.bob-card--action{text-align:center}.bob-list-card{display:flex;align-items:flex-start;gap:var(--bob-space-2);width:100%;text-align:left;background:var(--bob-surface);border:1px solid var(--bob-border);border-radius:var(--bob-radius-lg);padding:14px;margin-bottom:var(--bob-list-gap);cursor:pointer;font-family:inherit;color:inherit;-webkit-tap-highlight-color:transparent}.bob-list-card:last-child{margin-bottom:0}.bob-page-stack{display:flex;flex-direction:column;gap:var(--bob-stack-gap)}.bob-page-stack>:last-child{margin-bottom:0}.bob-page-stack>.bob-card{margin-bottom:0}.bob-page-stack>.bob-card--action:last-child{margin-bottom:var(--bob-stack-gap)}.bob-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--bob-space-1);min-height:var(--bob-control-h);padding:0 var(--bob-space-4);border:none;border-radius:var(--bob-radius-md);font-size:var(--bob-text-base);font-weight:600;line-height:1;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,opacity .12s ease}.bob-btn:active{transform:scale(.97);opacity:.9}.bob-btn:disabled{opacity:.5;cursor:default}.bob-btn--primary{background:var(--bob-sage);color:#fff}.bob-btn--secondary{background:var(--bob-sage-light);color:var(--bob-sage)}.bob-btn--ghost{background:var(--bob-surface);color:var(--bob-gray);border:1px solid var(--bob-border)}.bob-btn--outline{background:var(--bob-surface);color:var(--bob-sage);border:2px solid var(--bob-sage)}.bob-btn--block{width:100%}.bob-btn--sm{min-height:var(--bob-control-h-sm);padding:0 var(--bob-space-3);font-size:var(--bob-text-md);border-radius:var(--bob-radius-sm)}.bob-input{width:100%;height:var(--bob-control-h);padding:0 var(--bob-space-3);border:1px solid var(--bob-border);border-radius:var(--bob-radius-md);font-size:var(--bob-text-base);background:var(--bob-surface);color:var(--bob-dark);box-sizing:border-box;font-family:inherit}.bob-input--sm{height:var(--bob-control-h-sm);font-size:var(--bob-text-md);border-radius:var(--bob-radius-sm)}.bob-textarea-wrap{position:relative}.bob-textarea{width:100%;min-height:var(--bob-textarea-min-height);padding:10px var(--bob-space-3);padding-bottom:6px;border:1px solid var(--bob-border);border-radius:var(--bob-radius-md) var(--bob-radius-md) 0 0;font-size:var(--bob-text-base);line-height:1.5;background:var(--bob-surface);color:var(--bob-dark);box-sizing:border-box;font-family:inherit;resize:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.bob-textarea-grip{display:flex;align-items:center;justify-content:flex-end;width:100%;height:20px;padding:0 6px;border:1px solid var(--bob-border);border-top:none;border-radius:0 0 var(--bob-radius-md) var(--bob-radius-md);background:var(--bob-surface-muted);color:var(--bob-muted);cursor:ns-resize;touch-action:none;-webkit-tap-highlight-color:transparent}.bob-textarea--loading{color:var(--bob-gray);background:var(--bob-surface-muted);border-radius:var(--bob-radius-md);padding-bottom:10px}.bob-select{width:100%;height:var(--bob-control-h);padding:0 var(--bob-space-3);border:1px solid var(--bob-border);border-radius:var(--bob-radius-sm);font-size:var(--bob-text-md);background:var(--bob-surface);color:var(--bob-dark);box-sizing:border-box;font-family:inherit}.bob-bottom-chrome{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,var(--bob-viewport-max));box-sizing:border-box;display:flex;flex-shrink:0;background:var(--bob-surface);border-top:1px solid var(--bob-border);padding-top:6px;padding-left:calc(var(--bob-pad) + env(safe-area-inset-left,0px));padding-right:calc(var(--bob-pad) + env(safe-area-inset-right,0px));padding-bottom:max(6px,env(safe-area-inset-bottom,0px));z-index:30}.bob-bottom-chrome__tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;cursor:pointer;padding:2px 0;font-family:inherit;-webkit-tap-highlight-color:transparent}.bob-bottom-chrome__label{font-size:var(--bob-text-xs);font-weight:600;color:var(--bob-gray)}.bob-bottom-chrome__tab--active .bob-bottom-chrome__label{color:var(--bob-sage)}.bob-card-action-bar{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(100%,var(--bob-viewport-max));box-sizing:border-box;padding:var(--bob-space-2) var(--bob-pad);padding-left:calc(var(--bob-pad) + env(safe-area-inset-left,0px));padding-right:calc(var(--bob-pad) + env(safe-area-inset-right,0px));padding-bottom:max(var(--bob-space-2),env(safe-area-inset-bottom,0px));background:var(--bob-surface);border-top:1px solid var(--bob-border);display:flex;align-items:center;gap:var(--bob-space-2);z-index:10}.bob-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:var(--bob-radius-md);font-size:var(--bob-text-base);font-weight:600;line-height:1;cursor:pointer;min-height:var(--bob-control-h);flex-shrink:0;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,opacity .12s ease}.bob-action-btn:active{transform:scale(.97);opacity:.9}.bob-action-btn--primary{flex:1;min-width:0;padding:0 var(--bob-space-3);background:var(--bob-sage);color:#fff}.bob-action-btn--outline-amber{flex:1;min-width:0;padding:0 var(--bob-space-3);background:var(--bob-surface);border:2px solid var(--bob-amber);color:var(--bob-amber)}.bob-action-btn--outline-sage{flex:1;min-width:0;padding:0 var(--bob-space-3);background:var(--bob-surface);border:2px solid var(--bob-sage);color:var(--bob-sage)}.bob-action-btn--icon{width:var(--bob-icon-btn);height:var(--bob-icon-btn);min-height:var(--bob-icon-btn);padding:0;background:transparent;color:var(--bob-gray);border-radius:var(--bob-radius-sm)}::-webkit-scrollbar{display:none}*{scrollbar-width:none}button,input,textarea,select{font-family:inherit}textarea{outline:none}input:focus,textarea:focus,select:focus{outline:2px solid var(--bob-sage);outline-offset:-1px}@keyframes mic-pulse{0%,to{box-shadow:0 0 #ef444473}50%{box-shadow:0 0 0 8px #ef444400}}.mic-pulse{animation:mic-pulse 1.2s ease-in-out infinite}
