:root{color-scheme:light dark;--paper: #f3ede1;--surface: #fbf8f1;--surface-2: #f6f0e4;--white: #ffffff;--ink: #15303a;--ink-2: #425a63;--muted: #8b9089;--faint: #aeb1a8;--line: #e6ddca;--line-2: #dcd0b6;--bronze: #a4682b;--bronze-bg: #f0e4cf;--bronze-line: #e3cda3;--green: #3d6a52;--green-bg: #e2ebe1;--green-line: #bcd2bd;--amber: #9c7322;--amber-bg: #f2e7cb;--amber-line: #e4cf9c;--brick: #a14e37;--brick-bg: #f1ddd2;--brick-line: #e7c4b2;--frost: #0284c7;--frost-bg: #e0f2fe;--frost-line: #bae6fd;--slate-chip: #e9ebe6;--bg-primary: var(--paper);--bg-secondary: var(--surface-2);--bg-card: var(--surface);--bg-glass: var(--surface);--bg-input: var(--white);--accent: var(--bronze);--accent-hover: #8e5822;--accent-glow: rgba(164, 104, 43, .15);--text-primary: var(--ink);--text-secondary: var(--ink-2);--text-muted: var(--muted);--border: var(--line);--border-focus: var(--line-2);--danger: var(--brick);--danger-hover: #8a3f2a;--success: var(--green);--warning: var(--amber);--shadow: rgba(21, 48, 58, .04);--font-title: "IBM Plex Sans", sans-serif;--font-body: "IBM Plex Sans", sans-serif;--font-mono: "IBM Plex Mono", monospace;--font-weight-title: 600;--text-transform-title: none;--letter-spacing-title: -.3px;--backdrop-filter: none;--bg-image: none;--btn-primary-bg: var(--ink);--btn-primary-text: #fbf8f1;--btn-primary-hover: #0f242c;--btn-primary-shadow: rgba(21, 48, 58, .08);--btn-secondary-bg: var(--white);--btn-secondary-border: var(--line-2);--btn-secondary-text: var(--ink);--btn-secondary-hover: var(--surface-2);--editable-hover: #f0e8d6;--transition-speed: .15s}html.dark-theme,body.dark-theme,.dark-theme{--paper: #080304;--surface: #110607;--surface-2: #1a0a0c;--white: #220d10;--ink: #ff453a;--ink-2: #d96b72;--muted: #8f3e44;--faint: #542226;--line: rgba(255, 59, 48, .16);--line-2: rgba(255, 59, 48, .38);--bronze: #ff5252;--bronze-bg: rgba(255, 82, 82, .14);--bronze-line: rgba(255, 82, 82, .35);--green: #ff6b6b;--green-bg: rgba(255, 107, 107, .14);--green-line: rgba(255, 107, 107, .35);--amber: #ff7a45;--amber-bg: rgba(255, 122, 69, .14);--amber-line: rgba(255, 122, 69, .35);--brick: #ff3333;--brick-bg: rgba(255, 51, 51, .18);--brick-line: rgba(255, 51, 51, .45);--frost: #ff4d6d;--frost-bg: rgba(255, 77, 109, .14);--frost-line: rgba(255, 77, 109, .35);--slate-chip: #260e11;--editable-hover: #260c0f;--bg-primary: var(--paper);--bg-secondary: var(--surface-2);--bg-card: var(--surface);--bg-glass: var(--surface);--bg-input: var(--white);--accent: #ff3b30;--accent-hover: #ff6259;--accent-glow: rgba(255, 59, 48, .25);--text-primary: var(--ink);--text-secondary: var(--ink-2);--text-muted: var(--muted);--border: var(--line);--border-focus: var(--line-2);--danger: #ff3333;--danger-hover: #ff5555;--success: #ff6b6b;--warning: #ff7a45;--shadow: rgba(0, 0, 0, .7);--backdrop-filter: none;--bg-image: radial-gradient(circle at 10% 10%, rgba(255, 59, 48, .05) 0%, transparent 40%), radial-gradient(circle at 90% 80%, rgba(255, 59, 48, .03) 0%, transparent 35%);--btn-primary-bg: #ff3b30;--btn-primary-text: #080203;--btn-primary-hover: #ff5252;--btn-primary-shadow: rgba(255, 59, 48, .35);--btn-secondary-bg: rgba(28, 10, 12, .7);--btn-secondary-border: rgba(255, 59, 48, .28);--btn-secondary-text: #ff6b6b;--btn-secondary-hover: rgba(255, 59, 48, .15)}*{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;display:flex;flex-direction:column;line-height:1.5;background-image:var(--bg-image);background-attachment:fixed;transition:background-color var(--transition-speed),color var(--transition-speed)}.app-header{background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;padding:0;width:100%;box-sizing:border-box}.nav-container{max-width:960px;width:100%;margin:0 auto;padding:0 16px;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center}.nav-logo{text-decoration:none;display:flex;align-items:center;gap:8px}.logo-icon{font-size:1.5rem;transition:transform .3s ease}.nav-logo:hover .logo-icon{transform:rotate(-12deg) scale(1.15)}.logo-text{font-family:var(--font-title);font-weight:var(--font-weight-title);font-size:1.35rem;color:var(--text-primary);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title);transition:color var(--transition-speed)}.nav-right{display:flex;align-items:center;gap:16px}.theme-toggle-btn{background:transparent;border:1px solid var(--border);color:var(--text-primary);width:38px;height:38px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.15rem;transition:all var(--transition-speed) cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px var(--shadow);padding:0;line-height:1}.theme-toggle-btn:hover{background-color:var(--bg-secondary);border-color:var(--accent);transform:scale(1.1) rotate(15deg);box-shadow:0 4px 12px var(--shadow)}.theme-toggle-btn:active{transform:scale(.95)}.theme-toggle-icon{display:inline-block;line-height:1;transition:transform .5s ease}.theme-toggle-btn.clicked .theme-toggle-icon{transform:rotate(360deg)}.user-menu{display:flex;align-items:center;gap:12px}.user-name{font-size:.875rem;color:var(--text-secondary);font-weight:700;text-transform:uppercase;font-family:var(--font-title);letter-spacing:.05em}.logout-button{background:transparent;border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.8125rem;font-weight:700;text-transform:uppercase;font-family:var(--font-title);letter-spacing:.05em;transition:all var(--transition-speed)}.logout-button:hover{background-color:var(--bg-secondary);border-color:var(--accent);color:var(--text-primary)}#app-viewport{flex:1;max-width:960px;width:100%;margin:0 auto;padding:24px 16px;display:flex;flex-direction:column;box-sizing:border-box}@media (max-width: 768px){#app-viewport{padding:16px 12px;width:100%;max-width:100vw;overflow-x:hidden;box-sizing:border-box}}.app-footer{text-align:center;padding:24px 16px;font-size:.75rem;color:var(--text-muted);border-top:1px solid var(--border);margin-top:auto;font-family:var(--font-cursive);font-size:1.1rem}h1,h2,h3,h4{font-family:var(--font-title);color:var(--text-primary);font-weight:var(--font-weight-title);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title)}h1{font-size:2.1rem;margin-bottom:8px}h2{font-size:1.5rem;margin-bottom:16px}.form-group{margin-bottom:16px;display:flex;flex-direction:column;gap:6px;min-width:0;width:100%}label{font-family:var(--font-title);font-size:.8125rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}input,select,textarea{width:100%;max-width:100%;min-width:0;background-color:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);padding:10px 12px;border-radius:8px;font-family:var(--font-body);font-size:.9375rem;transition:border-color var(--transition-speed),box-shadow var(--transition-speed),background-color var(--transition-speed)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);background-color:var(--bg-card)}input[type=date]{min-width:0;width:100%;max-width:100%;padding:8px;font-size:.8125rem;font-family:inherit}.input-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;width:100%}.input-row .form-group{margin-bottom:0;min-width:0}.switch-container{display:flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 12px;background-color:var(--bg-input);border:1px solid var(--border);border-radius:8px;transition:border-color var(--transition-speed),background-color var(--transition-speed),transform var(--transition-speed);text-transform:none;letter-spacing:normal;color:var(--text-primary);font-size:.875rem;font-weight:500}.switch-container:hover{border-color:var(--accent);background-color:var(--bg-secondary);transform:translateY(-1px)}.switch-container input[type=checkbox]{width:auto;height:16px;width:16px;margin:0;cursor:pointer}.switch-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:7px;font-size:.9375rem;cursor:pointer;border:1px solid var(--btn-secondary-border);background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);font-family:var(--font-title);font-weight:var(--font-weight-title);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title);min-height:48px;transition:all var(--transition-speed) cubic-bezier(.4,0,.2,1);box-sizing:border-box}.btn:active{transform:scale(.97)}.btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg);box-shadow:0 4px 6px -1px var(--btn-primary-shadow)}.btn-primary:hover{background-color:var(--btn-primary-hover);border-color:var(--btn-primary-hover);box-shadow:0 6px 16px var(--btn-primary-shadow);transform:translateY(-2px)}.btn-secondary{background-color:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);color:var(--btn-secondary-text)}.btn-secondary:hover{background-color:var(--btn-secondary-hover);border-color:var(--accent);transform:translateY(-2px)}.btn-bronze{background-color:var(--bronze);color:#fff;border-color:var(--bronze)}.btn-bronze:hover{background-color:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-2px)}.btn-outline{background-color:var(--white);border:1px solid var(--line-2);color:var(--ink)}.btn-outline:hover{background-color:var(--surface-2);border-color:var(--line-2)}.btn-ghost{background-color:transparent;border:1px solid transparent;color:var(--ink-2)}.btn-ghost:hover{background-color:var(--surface-2);color:var(--ink)}.btn-subtle{background-color:var(--surface-2);border:1px solid transparent;color:var(--ink)}.btn-subtle:hover{background-color:var(--line);color:var(--ink)}.btn-danger{background-color:var(--danger);color:#fff;border-color:var(--danger);box-shadow:0 4px 6px -1px #b4323233}.btn-danger:hover{background-color:var(--danger-hover);border-color:var(--danger-hover);box-shadow:0 6px 16px #b4323259;transform:translateY(-2px)}.btn-ghost-danger{background-color:transparent;border:1px solid transparent;color:var(--danger)}.btn-ghost-danger:hover{background-color:var(--brick-bg);color:var(--danger-hover)}.btn-sm{padding:8px 16px;font-size:.8125rem;min-height:36px}.btn-xs{padding:4px 8px;font-size:.75rem;min-height:28px}.card{background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:0 8px 32px var(--shadow);transition:transform var(--transition-speed) ease,box-shadow var(--transition-speed) ease,border-color var(--transition-speed) ease}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;gap:16px}.spinner{width:40px;height:40px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-view{max-width:400px;margin:80px auto;text-align:center}.login-icon{font-size:3.5rem;margin-bottom:16px;display:inline-block;animation:float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-tagline{color:var(--text-secondary);margin-bottom:24px}.btn-google-mock{background:var(--bg-input);color:var(--text-primary);width:100%;display:flex;align-items:center;justify-content:center;font-weight:700;border:1px solid var(--border);font-family:var(--font-title);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title)}.btn-google-mock:hover{background-color:var(--bg-card);border-color:var(--accent);box-shadow:0 4px 12px var(--shadow);transform:translateY(-2px)}.google-logo{width:18px;height:18px;margin-right:10px}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width: 900px){.dashboard-grid{grid-template-columns:1fr 320px}}.trip-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.trip-list{display:flex;flex-direction:column;gap:12px}.trip-item-card{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:inherit;background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);border-radius:12px;padding:16px 20px;box-shadow:0 4px 12px var(--shadow);transition:all var(--transition-speed) ease}.trip-item-card:hover{border-color:var(--accent);background-color:var(--bg-card);transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow)}.trip-info h3{font-size:1.25rem;margin-bottom:4px;font-weight:700}.trip-dates{font-size:.8125rem;color:var(--text-secondary);display:flex;align-items:center;gap:6px;font-weight:700}.trip-arrow{color:var(--accent);font-size:1.25rem;transition:transform var(--transition-speed)}.trip-item-card:hover .trip-arrow{transform:translate(4px)}.no-trips{text-align:center;padding:40px;color:var(--text-muted)}.trip-detail-header{border-bottom:1px solid var(--line-2);padding-bottom:16px;margin-bottom:20px}.trip-detail-title{font-size:24px;font-weight:600;margin:0 0 10px;color:var(--ink);letter-spacing:-.01em}.trip-detail-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.voyage-meta-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--ink-2)}.voyage-meta-item{display:inline-flex;align-items:center;gap:5px;font-weight:500;white-space:nowrap}.voyage-meta-item i{color:var(--bronze);width:14px;height:14px}.voyage-meta-divider{color:var(--line-2);font-size:11px;-webkit-user-select:none;user-select:none}.voyage-meta-code-pill{display:inline-flex;align-items:center;gap:5px;background-color:var(--surface-2);border:1px solid var(--line-2);border-radius:5px;padding:2px 8px;font-size:12px;color:var(--ink);font-weight:500;cursor:pointer;white-space:nowrap;transition:all .15s ease;-webkit-user-select:none;user-select:none}.voyage-meta-code-pill strong{font-family:var(--font-mono, monospace);font-weight:700;letter-spacing:.5px}.voyage-meta-code-pill i{color:var(--bronze);width:13px;height:13px}.voyage-meta-code-pill .code-copy-icon{color:var(--muted);width:12px;height:12px;margin-left:2px}.voyage-meta-code-pill:hover{background-color:var(--white);border-color:var(--bronze-line)}.voyage-meta-code-pill.copied{background-color:var(--green-bg, #e8f5e9);border-color:var(--green, #2e7d32);color:var(--green, #2e7d32)}.voyage-actions-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.voyage-action-btn{height:32px!important;min-height:32px!important;padding:0 12px!important;font-size:12px!important;font-weight:500!important;display:inline-flex!important;align-items:center!important;gap:6px!important;border-radius:6px!important;background-color:var(--white)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;cursor:pointer;white-space:nowrap!important;transition:all .15s ease}.voyage-action-btn i{width:13px;height:13px;color:var(--bronze)}.voyage-action-btn:hover{background-color:var(--surface-2)!important;border-color:var(--bronze-line)!important;color:var(--bronze)!important}.invite-code-pill:hover{border-color:var(--accent);background-color:var(--bg-card);transform:scale(1.03)}.invite-code-pill.copied:after{content:"Copied!";position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:var(--success);color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;white-space:nowrap}.crew-section{margin-bottom:24px}.crew-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.crew-member-chip{background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);padding:6px 12px;border-radius:16px;font-size:.8125rem;display:flex;align-items:center;gap:8px;font-weight:600;box-shadow:0 2px 6px var(--shadow)}.crew-avatar{width:20px;height:20px;background-color:var(--accent);color:var(--btn-primary-text);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.6875rem}.user-avatar-badge{width:20px;height:20px;color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.6875rem;margin-right:4px;border:1px solid rgba(255,255,255,.1);text-shadow:0 1px 2px rgba(0,0,0,.4)}.remove-crew-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:0 2px;transition:color var(--transition-speed)}.remove-crew-btn:hover{color:var(--danger)}.provision-section-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}@media (min-width: 768px){.provision-section-layout{grid-template-columns:minmax(0,1fr)}}.provisions-list-container{min-width:0;width:100%;max-width:100%;box-sizing:border-box}.filter-bar{display:flex;overflow-x:auto;gap:8px;padding-bottom:8px;margin-bottom:16px;-webkit-overflow-scrolling:touch}.filter-chip{background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);color:var(--text-secondary);padding:8px 16px;border-radius:20px;font-size:.8125rem;font-family:var(--font-title);font-weight:700;text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title);cursor:pointer;white-space:nowrap;transition:all var(--transition-speed);box-shadow:0 2px 6px var(--shadow)}.filter-chip:hover{border-color:var(--accent);background-color:var(--bg-secondary)}.filter-chip.active{background-color:var(--accent);border-color:var(--accent);color:var(--btn-primary-text);box-shadow:0 4px 10px var(--accent-glow)}.provision-list{display:flex;flex-direction:column;gap:12px}.provision-card{position:relative;background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:0 4px 12px var(--shadow);transition:transform var(--transition-speed) ease,box-shadow var(--transition-speed) ease,border-color var(--transition-speed) ease}.provision-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow)}.provision-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.provision-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.provision-name{font-family:var(--font-title);font-size:1.15rem;font-weight:700}.badge{font-size:10.5px;padding:3px 6px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;display:inline-flex;align-items:center;gap:4px;border-width:1px;border-style:solid;line-height:1}.badge-perishable{background-color:var(--frost-bg);color:var(--frost);border-color:var(--frost-line)}.btn-perishable-toggle{background:transparent;border:1px solid transparent;padding:0;min-height:0;height:24px;width:24px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);opacity:.22;transition:all .15s ease;box-sizing:border-box}.btn-perishable-toggle:hover{opacity:.75;background-color:var(--surface-2);color:var(--ink-2);border-color:var(--line-2)}.btn-perishable-toggle.active{opacity:1!important;background-color:var(--frost-bg)!important;border-color:var(--frost-line)!important;color:var(--frost)!important;box-shadow:0 1px 3px #0284c733!important}.btn-perishable-toggle.active:hover{background-color:var(--frost)!important;color:#fff!important;border-color:var(--frost)!important}.btn-perishable-toggle .perishable-icon{width:14px;height:14px;stroke-width:2.2}.btn-perishable-toggle.active .perishable-icon{color:inherit!important}.badge-communal{background-color:var(--bronze-bg);color:var(--bronze);border-color:var(--bronze-line)}.badge-individual{background-color:var(--slate-chip);color:var(--ink-2);border-color:var(--line-2)}.badge-status-proposed{background-color:var(--amber-bg);color:var(--amber);border-color:var(--amber-line)}.badge-status-ordered{background-color:var(--green-bg);color:var(--green);border-color:var(--green-line)}.badge-status-received{background-color:var(--bronze-bg);color:var(--bronze);border-color:var(--bronze-line)}.badge-status-confirmed{background-color:var(--green-bg);color:var(--green);border-color:var(--green-line)}.badge-status-packed{background-color:var(--bronze-bg);color:var(--bronze);border-color:var(--bronze-line)}.provision-category{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-family:var(--font-title)}.provision-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.provision-calc{font-size:.8125rem;color:var(--text-secondary);font-family:var(--font-body)}.provision-formula{font-size:.75rem;color:var(--text-muted);font-style:italic;font-family:var(--font-cursive);font-size:.95rem}.provision-assigned-list{font-size:.75rem;color:var(--text-muted)}.provision-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px;border-top:1px solid var(--border);padding-top:12px}.provision-total-box{background-color:color-mix(in srgb,var(--accent) 8%,transparent);border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);border-radius:8px;padding:10px 16px;text-align:right;display:inline-block;align-self:flex-start;box-shadow:inset 0 1px 2px var(--shadow)}.total-quantity{font-size:1.35rem;font-weight:var(--font-weight-title);color:var(--accent);font-family:var(--font-title);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title)}.total-unit{font-size:.8125rem;color:var(--text-secondary)}.link-icon-btn{text-decoration:none;font-size:.8125rem;color:var(--accent);display:inline-flex;align-items:center;gap:4px}.link-icon-btn:hover{color:var(--accent-hover)}.user-checkbox-list{display:flex;flex-direction:column;gap:8px;background-color:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:10px;max-height:150px;overflow-y:auto}.user-checkbox-item{display:flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer;padding:4px 0}.user-checkbox-item input{width:auto;cursor:pointer}.table-scroll-container{width:100%;max-width:100%;min-width:0;overflow-x:auto;background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);border-radius:12px;margin-top:12px;box-shadow:0 4px 16px var(--shadow);box-sizing:border-box;-webkit-overflow-scrolling:touch}.provisions-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.875rem;text-align:left}.provisions-table th,.provisions-table td{padding:4px;border-bottom:1px solid var(--border);white-space:nowrap;box-sizing:border-box}.provisions-table th:first-child,.provisions-table td:first-child{padding-left:8px;padding-right:2px}.provisions-table th:last-child,.provisions-table td:last-child{padding-right:12px;padding-left:2px}.total-qty-layout{display:grid;grid-template-columns:28px 1fr;column-gap:5px;align-items:baseline;width:100%}.total-qty-num{text-align:right;font-weight:600;font-size:12px;color:var(--ink);white-space:nowrap}.total-qty-unit{text-align:left;font-size:11px;color:var(--muted);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provisions-table th{background-color:color-mix(in srgb,var(--text-secondary) 5%,transparent);color:var(--text-secondary);font-family:var(--font-title);font-weight:700;text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title);font-size:.8rem}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-speed),color var(--transition-speed)}.sortable-header:hover{background-color:var(--line-2)!important;color:var(--text-primary)!important}.provisions-table tr:last-child td{border-bottom:none}.table-row-item{transition:background-color var(--transition-speed)}.table-row-item:hover{background-color:var(--bg-secondary)}.table-consumer-cell,.table-procurer-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis}.view-toggle-btn.active{background-color:var(--accent)!important;border-color:var(--accent)!important;color:var(--btn-primary-text)!important;box-shadow:0 2px 8px var(--accent-glow)}.bulk-actions-bar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background-color:var(--surface);border:1px solid var(--line-2);border-radius:10px;padding:8px 14px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px #15303a29;z-index:1000;animation:slide-up-bulk-desktop .25s cubic-bezier(.4,0,.2,1) forwards;color:var(--ink);max-width:960px;box-sizing:border-box}@keyframes slide-up-bulk-desktop{0%{transform:translate(-50%,30px);opacity:0}to{transform:translate(-50%);opacity:1}}.bulk-header-row{display:flex;align-items:center;gap:10px}.bulk-selected-count{font-family:var(--font-title);font-size:12.5px;font-weight:600;color:var(--ink);white-space:nowrap;padding-right:10px;border-right:1px solid var(--line-2)}.bulk-deselect-btn{font-size:11.5px!important;font-weight:500!important;color:var(--muted)!important;padding:4px 8px!important;min-height:0!important;height:auto!important;border-radius:4px!important;white-space:nowrap!important}.bulk-deselect-btn:hover{color:var(--ink)!important;background-color:var(--surface-2)!important}.bulk-actions-group{display:flex;align-items:center;gap:6px}.bulk-dropdown-container{position:relative;display:inline-block}.bulk-action-trigger-btn{height:32px!important;min-height:32px!important;padding:0 10px!important;font-size:12px!important;font-weight:500!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;white-space:nowrap!important;border-radius:6px!important;background-color:var(--white)!important;border:1px solid var(--line-2)!important;color:var(--ink)!important;cursor:pointer;transition:all .15s ease;box-sizing:border-box}.bulk-action-trigger-btn:hover{background-color:var(--surface-2)!important;border-color:var(--bronze-line)!important}.bulk-delete-btn{height:32px!important;min-height:32px!important;padding:0 10px!important;font-size:12px!important;font-weight:600!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;white-space:nowrap!important;border-radius:6px!important;background-color:var(--brick-bg)!important;border:1px solid var(--brick-line)!important;color:var(--brick)!important;cursor:pointer;transition:all .15s ease;box-sizing:border-box}.bulk-delete-btn:hover{background-color:var(--brick)!important;color:#fff!important}.bulk-btn-icon{width:12px;height:12px;opacity:.75;flex-shrink:0}.bulk-dropdown-menu{display:none;position:absolute;bottom:100%;left:0;margin-bottom:8px;background-color:var(--bg-card);border:1px solid var(--border);border-radius:8px;min-width:150px;box-shadow:0 12px 28px #0812162e;z-index:1010;padding:6px}.bulk-dropdown-menu.double-width{min-width:220px;padding:12px}.bulk-dropdown-container.open .bulk-dropdown-menu{display:block}.bulk-menu-item{width:100%;background:none;border:none;color:var(--text-primary);text-align:left;padding:8px 10px;font-size:.8125rem;cursor:pointer;border-radius:4px;font-weight:600;font-family:var(--font-title);text-transform:var(--text-transform-title);letter-spacing:var(--letter-spacing-title);transition:background-color var(--transition-speed)}.bulk-menu-item:hover{background-color:var(--bg-secondary);color:var(--accent)}.bulk-checkbox-header{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;margin-bottom:6px;font-family:var(--font-title)}.bulk-checkbox-list{display:flex;flex-direction:column;gap:6px;max-height:120px;overflow-y:auto;background-color:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:6px}.bulk-checkbox-item{display:flex;align-items:center;gap:6px;font-size:.75rem;cursor:pointer;padding:2px 0;font-weight:500}.bulk-checkbox-item input{width:auto}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:color-mix(in srgb,var(--bg-primary) 40%,rgba(10,15,30,.75));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:center;z-index:2000;padding:16px;box-sizing:border-box}.modal-content{background-color:var(--bg-glass);-webkit-backdrop-filter:var(--backdrop-filter);backdrop-filter:var(--backdrop-filter);border:1px solid var(--border);border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;padding:24px;position:relative;box-shadow:0 20px 40px var(--shadow);box-sizing:border-box;animation:modal-zoom .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modal-zoom{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-close-btn{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--text-secondary);font-size:1.5rem;font-weight:500;cursor:pointer;padding:0;width:32px;height:32px;display:flex;justify-content:center;align-items:center;border-radius:50%;transition:all var(--transition-speed)}.modal-close-btn:hover{background-color:var(--bg-secondary);color:var(--text-primary);transform:rotate(90deg)}.provision-section-layout.table-layout-active{grid-template-columns:1fr!important}.font-mono{font-family:var(--font-mono)!important;font-variant-numeric:tabular-nums}.logo-icon{width:20px;height:20px;stroke:var(--bronze-line);stroke-width:1.6}.logo-text-tint{color:var(--bronze-line);font-weight:700}.app-header{height:52px;background-color:#15303a!important;border-bottom:1px solid #0f242c!important;display:flex;align-items:center;padding:0;color:var(--white);width:100%;box-sizing:border-box}.app-header .logo-text{color:var(--white)!important}.app-header .user-name{color:var(--white)!important;opacity:.8}.app-header .theme-toggle-btn{border-color:#fff3!important;color:var(--white)!important}.app-header .theme-toggle-btn:hover{background-color:#ffffff1a!important;border-color:var(--bronze-line)!important}.app-header .logout-button{color:var(--white)!important;border-color:#fff3!important}.app-header .logout-button:hover{background-color:#ffffff1a!important;border-color:var(--bronze-line)!important}html.dark-theme .app-header,body.dark-theme .app-header,.dark-theme .app-header{background-color:#0c0405!important;border-bottom:1px solid rgba(255,59,48,.25)!important;color:var(--ink)!important}html.dark-theme .app-header .logo-text,body.dark-theme .app-header .logo-text,.dark-theme .app-header .logo-text{color:var(--ink)!important}html.dark-theme .app-header .logo-icon,body.dark-theme .app-header .logo-icon,.dark-theme .app-header .logo-icon{stroke:var(--accent)!important}html.dark-theme .app-header .logo-text-tint,body.dark-theme .app-header .logo-text-tint,.dark-theme .app-header .logo-text-tint{color:var(--accent)!important}html.dark-theme .app-header .user-name,body.dark-theme .app-header .user-name,.dark-theme .app-header .user-name{color:var(--ink-2)!important}html.dark-theme .app-header .theme-toggle-btn,body.dark-theme .app-header .theme-toggle-btn,.dark-theme .app-header .theme-toggle-btn{border-color:#ff3b304d!important;color:var(--ink)!important}html.dark-theme .app-header .theme-toggle-btn:hover,body.dark-theme .app-header .theme-toggle-btn:hover,.dark-theme .app-header .theme-toggle-btn:hover{background-color:#ff3b3026!important;border-color:var(--accent)!important}html.dark-theme .app-header .logout-button,body.dark-theme .app-header .logout-button,.dark-theme .app-header .logout-button{color:var(--ink)!important;border-color:#ff3b304d!important}html.dark-theme .app-header .logout-button:hover,body.dark-theme .app-header .logout-button:hover,.dark-theme .app-header .logout-button:hover{background-color:#ff3b3026!important;border-color:var(--accent)!important}html.dark-theme .btn-bronze,body.dark-theme .btn-bronze,.dark-theme .btn-bronze,html.dark-theme .btn-danger,body.dark-theme .btn-danger,.dark-theme .btn-danger{color:#080203!important;font-weight:700}html.dark-theme .btn-perishable-toggle.active:hover,body.dark-theme .btn-perishable-toggle.active:hover,.dark-theme .btn-perishable-toggle.active:hover,html.dark-theme .bulk-delete-btn:hover,body.dark-theme .bulk-delete-btn:hover,.dark-theme .bulk-delete-btn:hover,html.dark-theme .invite-code-pill.copied:after,body.dark-theme .invite-code-pill.copied:after,.dark-theme .invite-code-pill.copied:after{color:#080203!important}html.dark-theme .modal-overlay,body.dark-theme .modal-overlay,.dark-theme .modal-overlay{background-color:#050203d9}td.editable{cursor:pointer;position:relative;transition:background-color var(--transition-speed)}td.editable:hover{background-color:var(--editable-hover)!important}.cell-input{width:100%;height:28px;padding:2px 6px;border:1px solid var(--line-2);border-radius:6px;font-family:inherit;font-size:12px;background-color:var(--white);color:var(--ink);outline:none;box-sizing:border-box}.cell-input[type=number]{padding:2px 4px;-moz-appearance:textfield}.cell-input[type=number]::-webkit-inner-spin-button,.cell-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cell-input:focus{border-color:var(--ink);box-shadow:0 0 0 2px #15303a1a}.app-select-wrapper{position:relative;display:block;width:100%;box-sizing:border-box;vertical-align:middle;padding:0;border:none;background:transparent;height:auto}.app-select-trigger{width:100%;height:28px;min-height:28px;background-color:var(--surface);border:1px solid var(--line-2);border-radius:6px;padding:0 6px 0 8px;display:flex;align-items:center;justify-content:space-between;gap:4px;font-family:inherit;font-size:12px;font-weight:500;color:var(--ink);cursor:pointer;box-sizing:border-box;text-align:left;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease;-webkit-user-select:none;user-select:none}.app-select-trigger:hover{background-color:var(--surface-2);border-color:var(--bronze-line)}.app-select-trigger:focus,.app-select-wrapper.open .app-select-trigger{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #2b5a7326}.app-select-label-content{display:inline-flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.app-select-chevron{width:12px;height:12px;flex-shrink:0;color:var(--muted);transition:transform .2s ease}.app-select-wrapper.open .app-select-chevron{transform:rotate(180deg);color:var(--ink)}.app-select-menu{display:none;position:absolute;top:calc(100% + 4px);left:0;min-width:100%;width:max-content;max-width:280px;max-height:220px;overflow-y:auto;background-color:var(--surface);border:1px solid var(--line-2);border-radius:8px;box-shadow:0 10px 28px #08121633;z-index:1200;padding:4px;box-sizing:border-box}.app-select-wrapper.open .app-select-menu{display:block}.app-select-option{width:100%;background:none;border:none;color:var(--ink);text-align:left;padding:6px 8px;font-size:12px;font-family:inherit;font-weight:500;cursor:pointer;border-radius:5px;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background-color .12s ease,color .12s ease;box-sizing:border-box}.app-select-option:hover{background-color:var(--surface-2);color:var(--bronze)}.app-select-option.selected{font-weight:600;color:var(--ink);background-color:var(--surface-2)}.app-select-option-content{display:inline-flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-select-option-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.app-select-check{width:12px;height:12px;color:var(--accent);flex-shrink:0}.filter-select.app-select-wrapper{padding:0!important;border:none!important;background:transparent!important;height:auto!important;box-shadow:none!important}.filter-select.app-select-wrapper .app-select-trigger{height:30px;min-height:30px;background-color:var(--white);border:1px solid var(--line-2);border-radius:6px;padding:0 8px;font-size:12.5px;color:var(--ink);width:100%;box-sizing:border-box}.app-select-qa .app-select-trigger{height:26px;padding:0 6px;font-size:11.5px;border-radius:5px;background-color:var(--white)}.app-select-cell .app-select-trigger{height:24px;padding:0 4px 0 6px;font-size:11.5px;border-radius:4px;background-color:var(--white)}.app-select-drawer .app-select-trigger{height:32px;font-size:12.5px;background-color:var(--white)}.cell-select{width:100%;height:28px;padding:2px 14px 2px 4px;border:1px solid var(--line-2);border-radius:6px;font-family:inherit;font-size:12px;background-color:var(--white);color:var(--ink);outline:none;box-sizing:border-box;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none}.cell-select:focus{border-color:var(--ink)}.consumers-popover{position:absolute;top:calc(100% + 4px);left:0;background-color:var(--surface);border:1px solid var(--line-2);border-radius:7px;padding:12px;box-shadow:0 12px 28px #08121638;z-index:1100;min-width:200px;box-sizing:border-box}.consumers-popover.popover-up{top:auto;bottom:calc(100% + 6px)}.provisions-table tr:has(.consumers-popover){z-index:100!important;position:relative!important}.detail-drawer-row{background-color:#f6f0e480!important}.detail-drawer-container{padding:12px 20px;border-top:1px dashed var(--line-2);border-bottom:1px solid var(--line-2);display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;align-items:start}.detail-drawer-field{display:flex;flex-direction:column;gap:4px}.detail-drawer-field label{font-size:9.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.8px}.detail-drawer-field .input-note{width:100%;padding:6px 10px;border:1px solid var(--line-2);border-radius:6px;font-size:12.5px;background-color:var(--white);color:var(--ink)}.drawer-avatar-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.drawer-avatar-chip{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:12px;border:1px solid var(--line);background-color:var(--white);font-size:11.5px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-speed)}.drawer-avatar-chip.active{background-color:var(--bronze-bg);border-color:var(--bronze-line);color:var(--bronze)}.quick-add-row{background-color:var(--surface)!important;border-top:2px solid var(--line-2)!important;border-bottom:1px solid var(--line-2)!important}.quick-add-row td{vertical-align:middle}.quick-add-caption{padding:8px 16px;background-color:var(--surface-2);border-bottom:1px solid var(--line-2);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:11.5px;color:var(--muted);box-sizing:border-box}.quick-add-formula{font-family:var(--font-mono);color:var(--ink-2);font-weight:500}.quick-add-confirmation{color:var(--green);font-weight:600;transition:opacity .3s}.crew-manifest-bar{display:flex;align-items:center;gap:16px;padding:10px 16px;background-color:var(--surface);border:1px solid var(--line);border-radius:10px;margin-bottom:16px;flex-wrap:wrap}.crew-manifest-header{display:inline-flex;align-items:center;gap:8px}.crew-manifest-label{font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.crew-manifest-toggle-btn{display:none}.crew-manifest-members{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.crew-manifest-members .crew-member-chip{padding:4px 10px;border-radius:14px;box-shadow:none;background-color:var(--surface-2)}.filter-controls-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px;width:100%;max-width:100%;box-sizing:border-box}.filter-controls-selects{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;width:100%;min-width:0}.filter-control-item{min-width:120px;flex:1 1 auto;box-sizing:border-box}.filter-control-view-item{display:none}.filter-control-btn-item{flex:0 0 auto;min-width:auto;margin-left:auto}#manage-providers-btn{flex-shrink:0;white-space:nowrap}.filter-control-label{margin-bottom:2px;font-size:11px;font-weight:700;color:var(--ink-2);white-space:nowrap;letter-spacing:.5px}.filter-select:not(.app-select-wrapper){width:100%;min-width:0;padding:4px 8px;border-radius:6px;font-size:12.5px;background-color:var(--white);border:1px solid var(--line-2);color:var(--ink);box-sizing:border-box;height:32px}.theme-toggle-icon-lucide{stroke-width:1.6}i[data-lucide]{vertical-align:middle;display:inline-block;line-height:1}.active-voyage-row{background-color:var(--surface-2)!important;border-left:3px solid var(--bronze)!important}.voyages-table{width:100%;border-collapse:collapse;font-size:13px;background-color:var(--surface)}.voyages-table th,.voyages-table td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--line-2);vertical-align:middle}.voyages-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);background-color:var(--surface-2)}.voyages-table tr.voyage-row-item{transition:background-color var(--transition-speed)}.voyages-table tr.voyage-row-item:hover{background-color:var(--surface-2)}.voyages-table tr:last-child td{border-bottom:none}.voyage-name-wrapper{display:flex;align-items:center;gap:8px}.voyage-name-wrapper .voyage-icon{color:var(--bronze);width:15px;height:15px;stroke-width:1.6;flex-shrink:0}.voyage-name-text{color:var(--ink);font-weight:600}.voyage-dates-wrapper{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-2)}.voyage-date-icon{color:var(--muted);width:13px;height:13px;stroke-width:1.6;flex-shrink:0}.voyage-mobile-label{display:none}.voyage-chevron{width:16px;height:16px;color:var(--accent)}.voyages-legend{margin-top:12px;display:flex;gap:16px;font-size:11px;color:var(--muted);justify-content:flex-start}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.proposed{background-color:var(--amber)}.legend-dot.confirmed{background-color:var(--green)}.legend-dot.packed{background-color:var(--bronze)}@media (max-width: 768px){.app-header{height:48px!important;padding:0!important}.nav-container{width:100%!important;max-width:100%!important;padding:0 12px!important}.nav-logo{gap:6px!important}.nav-logo .logo-icon{width:20px!important;height:20px!important}.nav-logo .logo-text{font-size:1.1rem!important}.nav-right{gap:6px!important}.theme-toggle-btn{width:28px!important;height:28px!important;font-size:.85rem!important}.user-menu{gap:6px!important}.app-header .user-name{display:none!important}.user-avatar-badge{width:24px!important;height:24px!important;font-size:10px!important;margin-right:0!important}.app-header .logout-button{padding:3px 6px!important;font-size:11px!important;height:26px!important;border-radius:4px!important;gap:3px!important}.trip-detail-header{margin-bottom:12px!important;padding-bottom:12px!important}.trip-detail-title{font-size:19px!important;margin-bottom:6px!important}.trip-detail-bar{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}.voyage-meta-line{font-size:12px!important;gap:6px!important}.voyage-meta-item i{width:13px!important;height:13px!important}.voyage-actions-toolbar{width:100%!important;display:flex!important;gap:6px!important}.voyage-action-btn{flex:1!important;justify-content:center!important;height:30px!important;min-height:30px!important;font-size:11.5px!important;padding:0 6px!important}.crew-manifest-bar{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;padding:12px 14px!important}.crew-manifest-header{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important}.crew-manifest-toggle-btn{display:inline-flex!important;align-items:center!important;gap:4px!important;font-size:11px!important;padding:3px 8px!important;height:22px!important;border-radius:12px!important;color:var(--muted)!important;background-color:var(--surface-2)!important;border:1px solid var(--line-2)!important;cursor:pointer!important}.crew-manifest-toggle-btn:hover{color:var(--ink)!important;border-color:var(--bronze)!important}.crew-manifest-bar:not(.crew-manifest-expanded) .crew-manifest-members{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}.crew-manifest-bar:not(.crew-manifest-expanded) .crew-member-chip{padding:0!important;background:none!important;border:none!important;box-shadow:none!important;cursor:pointer!important;border-radius:50%!important;margin:0!important}.crew-manifest-bar:not(.crew-manifest-expanded) .crew-avatar{width:32px!important;height:32px!important;font-size:12px!important;font-weight:700!important;border:2px solid var(--surface)!important;box-shadow:0 1px 4px #00000026!important}.crew-manifest-bar:not(.crew-manifest-expanded) .crew-member-name,.crew-manifest-bar:not(.crew-manifest-expanded) .remove-crew-btn{display:none!important}.crew-manifest-bar.crew-manifest-expanded .crew-manifest-members{display:flex!important;flex-wrap:wrap!important;gap:8px!important}.crew-manifest-bar.crew-manifest-expanded .crew-member-chip{padding:4px 10px!important;background-color:var(--surface-2)!important;border:1px solid var(--line-2)!important;border-radius:14px!important;display:inline-flex!important;align-items:center!important;gap:6px!important}.crew-manifest-bar.crew-manifest-expanded .crew-avatar{width:20px!important;height:20px!important;font-size:9px!important}.crew-manifest-bar.crew-manifest-expanded .crew-member-name{display:inline!important;font-size:12px!important}.crew-manifest-bar.crew-manifest-expanded .remove-crew-btn{display:inline-flex!important}.provisions-list-container{padding:0!important}.table-scroll-container{overflow-x:visible!important;background:none!important;border:none!important;border-radius:0!important;box-shadow:none!important;margin-top:0!important}.voyages-table{display:block!important;width:100%!important;border:none!important;background:transparent!important}.voyages-table thead{display:none!important}.voyages-table tbody{display:flex!important;flex-direction:column!important;gap:12px!important;width:100%!important}.voyages-table tr.voyage-row-item{display:grid!important;grid-template-columns:1fr auto!important;grid-template-areas:"name status" "dates days" "crew items"!important;align-items:center!important;gap:8px 12px!important;padding:14px 16px!important;background-color:var(--surface)!important;border:1px solid var(--line-2)!important;border-radius:10px!important;box-shadow:0 2px 8px var(--shadow)!important;box-sizing:border-box!important;width:100%!important;height:auto!important}.voyages-table tr.voyage-row-item td{display:flex!important;align-items:center!important;padding:0!important;border:none!important;background:none!important;height:auto!important;white-space:normal!important}.voyages-table tr.voyage-row-item .voyage-cell-name{grid-area:name!important}.voyages-table tr.voyage-row-item .voyage-name-text{font-size:15.5px!important;font-weight:600!important;color:var(--ink)!important}.voyages-table tr.voyage-row-item .voyage-cell-status{grid-area:status!important;justify-content:flex-end!important}.voyages-table tr.voyage-row-item .voyage-cell-dates{grid-area:dates!important;font-size:12px!important;color:var(--muted)!important}.voyages-table tr.voyage-row-item .voyage-cell-days{grid-area:days!important;justify-content:flex-end!important;font-size:12px!important;color:var(--ink-2)!important;font-weight:500!important}.voyages-table tr.voyage-row-item .voyage-cell-crew{grid-area:crew!important}.voyages-table tr.voyage-row-item .voyage-cell-items{grid-area:items!important;justify-content:flex-end!important;font-size:12px!important;color:var(--ink-2)!important;font-weight:500!important}.voyages-table tr.voyage-row-item .voyage-cell-action{display:none!important}.voyage-mobile-label{display:inline!important;font-size:11px!important;color:var(--muted)!important;font-weight:400!important;margin-left:2px!important}.provisions-table{display:block!important;width:100%!important}.provisions-table thead{display:none!important}.provisions-table tbody{display:block!important;width:100%!important}.provisions-table tr.table-row-item,.provisions-table tr.quick-add-row{display:flex!important;flex-wrap:wrap!important;align-items:center!important;padding:14px!important;margin-bottom:14px!important;background-color:var(--surface)!important;border:1px solid var(--line-2)!important;border-radius:10px!important;box-shadow:0 2px 8px var(--shadow)!important;height:auto!important;gap:0!important;box-sizing:border-box!important;position:relative!important;width:100%!important;max-width:100%!important;overflow:hidden!important}.provisions-table tr.quick-add-row{background-color:var(--surface-2)!important;margin-top:16px!important;border:1px dashed var(--bronze-line)!important}.provisions-table tr.table-row-item td,.provisions-table tr.quick-add-row td{display:block!important;padding:3px 0!important;border:none!important;height:auto!important;background:none!important;box-sizing:border-box!important;white-space:normal!important}.provisions-table tr.table-row-item td:nth-child(1),.provisions-table tr.quick-add-row td:nth-child(1){width:28px!important;flex-shrink:0!important;order:1;display:flex!important;justify-content:center!important;align-items:center!important;align-self:flex-start!important;padding-top:3px!important}.provisions-table tr.table-row-item td:nth-child(2),.provisions-table tr.quick-add-row td:nth-child(2){width:calc(100% - 88px)!important;flex-shrink:0!important;flex-grow:0!important;min-width:0!important;font-size:15px!important;font-weight:600!important;order:2;display:flex!important;align-items:center!important;line-height:1.4!important}.provisions-table tr.table-row-item td:nth-child(3),.provisions-table tr.quick-add-row td:nth-child(3){width:28px!important;flex-shrink:0!important;order:3;display:flex!important;justify-content:center!important;align-items:center!important}.provisions-table tr.table-row-item td:nth-child(11){width:32px!important;flex-shrink:0!important;order:4;display:flex!important;justify-content:center!important;align-items:center!important}.provisions-table tr.quick-add-row td:nth-child(11){width:auto!important;flex-shrink:0!important;order:4;display:flex!important;justify-content:center!important;align-items:center!important}.provisions-table tr.table-row-item td:nth-child(4),.provisions-table tr.quick-add-row td:nth-child(4){width:40%!important;padding-left:28px!important;font-size:12.5px!important;color:var(--ink-2)!important;order:5;margin-top:8px!important}.provisions-table tr.table-row-item td:nth-child(10),.provisions-table tr.quick-add-row td:nth-child(10){width:32%!important;order:6;display:flex!important;align-items:center!important;justify-content:center!important;font-size:12px;margin-top:8px!important}.provisions-table tr.table-row-item td:nth-child(9),.provisions-table tr.quick-add-row td:nth-child(9){width:28%!important;text-align:right!important;font-weight:700!important;font-size:13.5px!important;order:7;margin-top:8px!important}.provisions-table tr.table-row-item td:nth-child(9) .total-qty-layout,.provisions-table tr.quick-add-row td:nth-child(9) .total-qty-layout{display:inline-flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:3px!important;width:auto!important}.provisions-table tr.table-row-item td:nth-child(5),.provisions-table tr.quick-add-row td:nth-child(5){width:80px!important;padding-left:28px!important;font-size:12.5px!important;color:var(--muted)!important;order:8;margin-top:6px!important}.provisions-table tr.table-row-item td:nth-child(6),.provisions-table tr.quick-add-row td:nth-child(6){flex:1 1 auto!important;padding-left:4px!important;font-size:12.5px!important;color:var(--muted)!important;order:9;margin-top:6px!important}.provisions-table tr.table-row-item td:nth-child(7),.provisions-table tr.quick-add-row td:nth-child(7){width:70px!important;padding-left:4px!important;font-size:12px!important;color:var(--faint)!important;order:10;margin-top:6px!important}.provisions-table tr.table-row-item td:nth-child(8),.provisions-table tr.quick-add-row td:nth-child(8){width:100%!important;padding-left:28px!important;margin-top:7px!important;order:11;font-size:12.5px}.provisions-table tr.table-row-item td:nth-child(8) .table-consumer-cell,.provisions-table tr.table-row-item td:nth-child(8) .table-procurer-cell{max-width:none!important;overflow:visible!important;text-overflow:unset!important}.provisions-table.cards-minimal tr.table-row-item{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;padding:10px 12px!important;margin-bottom:8px!important;gap:8px!important;min-height:48px!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(1){width:24px!important;flex-shrink:0!important;order:1!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;align-self:center!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(2){width:auto!important;flex:1 1 auto!important;min-width:0!important;order:2!important;display:flex!important;align-items:center!important;font-size:14.5px!important;font-weight:600!important;padding:0!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(2) div{max-width:100%!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(9){width:auto!important;flex-shrink:0!important;order:3!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;font-size:13.5px!important;font-weight:700!important;font-family:var(--font-mono)!important;color:var(--ink)!important;margin:0!important;padding:0 4px!important;text-align:right!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(11){width:28px!important;flex-shrink:0!important;order:4!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}.provisions-table.cards-minimal tr.table-row-item td:nth-child(3),.provisions-table.cards-minimal tr.table-row-item td:nth-child(4),.provisions-table.cards-minimal tr.table-row-item td:nth-child(5),.provisions-table.cards-minimal tr.table-row-item td:nth-child(6),.provisions-table.cards-minimal tr.table-row-item td:nth-child(7),.provisions-table.cards-minimal tr.table-row-item td:nth-child(8),.provisions-table.cards-minimal tr.table-row-item td:nth-child(10){display:none!important}.provisions-table.cards-minimal tr.quick-add-row{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;padding:8px 10px!important;margin-top:10px!important;gap:6px!important;min-height:48px!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(1){width:20px!important;flex-shrink:0!important;order:1!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;align-self:center!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(2){width:auto!important;flex:1 1 0!important;min-width:80px!important;order:2!important;padding:0!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(5){width:46px!important;flex-shrink:0!important;order:3!important;margin:0!important;padding:0!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(6){width:50px!important;flex-shrink:0!important;order:4!important;margin:0!important;padding:0!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(11){width:auto!important;flex-shrink:0!important;order:5!important;margin:0!important;padding:0!important}.provisions-table.cards-minimal tr.quick-add-row td:nth-child(3),.provisions-table.cards-minimal tr.quick-add-row td:nth-child(4),.provisions-table.cards-minimal tr.quick-add-row td:nth-child(7),.provisions-table.cards-minimal tr.quick-add-row td:nth-child(8),.provisions-table.cards-minimal tr.quick-add-row td:nth-child(9),.provisions-table.cards-minimal tr.quick-add-row td:nth-child(10){display:none!important}.provisions-table tr td input.cell-input,.provisions-table tr td select.cell-select{width:100%!important;box-sizing:border-box!important}.provisions-table tr.detail-drawer-row{display:block!important;width:100%!important;margin-bottom:10px!important;border:1px solid var(--line-2)!important;border-top:none!important;border-radius:0 0 10px 10px!important;margin-top:-11px!important;box-sizing:border-box!important;background-color:var(--surface-2)!important}.provisions-table tr.detail-drawer-row td{display:block!important;width:100%!important;padding:0!important}.detail-drawer-container{padding:12px!important;border-top:none!important}.provisions-table tr.table-row-item.detail-drawer-row-active{border-radius:10px 10px 0 0!important;border-bottom-color:transparent!important;margin-bottom:0!important}.crew-section{margin-bottom:12px!important}.filter-controls-row{display:block!important;width:100%!important;max-width:100%!important;margin-bottom:8px!important}.filter-controls-selects{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px 8px!important;width:100%!important;max-width:100%!important;align-items:flex-end!important}.filter-control-item{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important}.filter-control-view-item{display:flex!important}.filter-control-btn-item{margin-left:0!important}.filter-control-label{font-size:9.5px!important;font-weight:700!important;color:var(--muted)!important;letter-spacing:.6px!important;margin-bottom:2px!important;text-transform:uppercase!important;line-height:1!important;display:block!important}.filter-select:not(.app-select-wrapper){width:100%!important;min-width:0!important;max-width:100%!important;height:30px!important;font-size:11.5px!important;padding:2px 6px!important;border-radius:6px!important;box-sizing:border-box!important}.filter-select.app-select-wrapper{padding:0!important;border:none!important;background:transparent!important;height:auto!important}.filter-select.app-select-wrapper .app-select-trigger{height:30px!important;font-size:11.5px!important;padding:0 6px!important}#manage-providers-btn{width:100%!important;height:30px!important;font-size:11px!important;padding:2px 6px!important;border-radius:6px!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;margin:0!important}.filter-bar{gap:6px!important;padding-top:2px!important;padding-bottom:10px!important;margin-bottom:16px!important}.filter-chip{padding:5px 12px!important;font-size:11.5px!important;border-radius:14px!important}.provisions-list-container{width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}.provisions-table tr.table-row-item td:nth-child(10) .badge,.provisions-table tr.quick-add-row td:nth-child(10) .badge{max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:inline-block!important}.bulk-actions-bar{position:fixed!important;bottom:max(16px,env(safe-area-inset-bottom,16px))!important;left:50%!important;right:auto!important;top:auto!important;width:calc(100% - 24px)!important;max-width:520px!important;flex-direction:column!important;gap:8px!important;align-items:stretch!important;border-radius:12px!important;border:1px solid var(--line-2)!important;box-sizing:border-box!important;transform:translate(-50%)!important;animation:slide-up-bulk-mobile .25s cubic-bezier(.4,0,.2,1) forwards!important;padding:10px 12px 30px!important;box-shadow:0 8px 24px #15303a2e!important;z-index:1000!important}@keyframes slide-up-bulk-mobile{0%{transform:translate(-50%,30px);opacity:0}to{transform:translate(-50%);opacity:1}}.bulk-header-row{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important}.bulk-selected-count{border-right:none!important;padding-right:0!important;font-size:12.5px!important}.bulk-actions-group{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:6px!important;width:100%!important;box-sizing:border-box!important}.bulk-dropdown-container{width:100%!important;min-width:0!important}.bulk-action-trigger-btn,.bulk-delete-btn{width:100%!important;padding:0 4px!important;font-size:11.5px!important;height:34px!important;min-height:34px!important;box-sizing:border-box!important}}@media (max-width: 480px){.input-row{grid-template-columns:1fr!important;gap:10px!important}}.comment-thread-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;border-radius:9999px;font-size:11px;font-family:var(--font-mono);font-weight:600;line-height:1;border:1px solid transparent;cursor:pointer;transition:all var(--transition-speed);background:none;vertical-align:middle;flex-shrink:0;margin-left:4px}.comment-thread-badge:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.comment-thread-badge.badge-unresolved{background-color:var(--amber-bg);color:var(--amber);border-color:var(--amber-line)}.comment-thread-badge.badge-unresolved:hover{background-color:var(--amber);color:var(--white)}.comment-thread-badge.badge-resolved{background-color:var(--green-bg);color:var(--green);border-color:var(--green-line);opacity:.85}.comment-thread-badge.badge-resolved:hover{background-color:var(--green);color:var(--white);opacity:1}.comment-thread-badge.badge-empty{color:var(--muted);border-color:transparent;padding:1px 4px;opacity:.25}.table-row-item:hover .comment-thread-badge.badge-empty,.comment-thread-badge.badge-empty:focus-visible{opacity:.85;border-color:var(--line-2);background-color:var(--surface-2)}.comment-thread-badge.badge-empty:hover{opacity:1;color:var(--ink);border-color:var(--line-2);background-color:var(--surface-2)}.discussion-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0a0f1e73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2100;display:flex;justify-content:flex-end;opacity:0;pointer-events:none;transition:opacity .25s ease}.discussion-overlay.open{opacity:1;pointer-events:auto}.discussion-drawer{width:100%;max-width:440px;height:100%;background-color:var(--surface);border-left:1px solid var(--line-2);box-shadow:-8px 0 32px #00000026;display:flex;flex-direction:column;transform:translate(100%);transition:transform .28s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.discussion-overlay.open .discussion-drawer{transform:translate(0)}.discussion-header{padding:16px 20px;border-bottom:1px solid var(--line);background-color:var(--surface-2);display:flex;flex-direction:column;gap:12px;flex-shrink:0}.discussion-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.discussion-item-title{font-size:16px;font-weight:700;color:var(--ink);margin:0;display:flex;align-items:center;gap:8px}.discussion-item-category{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-2)}.discussion-close-btn{background:none;border:none;color:var(--muted);cursor:pointer;padding:4px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition-speed)}.discussion-close-btn:hover{background-color:var(--line);color:var(--ink)}.discussion-resolution-bar{display:flex;align-items:center;justify-content:space-between;background-color:var(--surface);border:1px solid var(--line-2);border-radius:8px;padding:8px 12px}.resolution-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600}.resolution-status-pill.unresolved{color:var(--amber)}.resolution-status-pill.resolved{color:var(--green)}.resolution-toggle-btn{font-size:12px;padding:4px 10px;height:28px;display:inline-flex;align-items:center;gap:5px;border-radius:6px;font-weight:600;cursor:pointer;transition:all var(--transition-speed)}.discussion-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.discussion-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 16px;color:var(--muted);gap:8px}.discussion-empty-icon{width:36px;height:36px;opacity:.4;stroke-width:1.5}.comment-item{display:flex;gap:10px;position:relative}.comment-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:#fff;flex-shrink:0;text-transform:uppercase}.comment-content-box{flex:1;background-color:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:9px 12px;min-width:0}.comment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.comment-author{font-size:12.5px;font-weight:600;color:var(--ink)}.comment-time{font-size:11px;color:var(--muted);font-family:var(--font-mono)}.comment-delete-btn{background:none;border:none;color:var(--muted);cursor:pointer;padding:2px 4px;border-radius:4px;opacity:0;transition:opacity var(--transition-speed),color var(--transition-speed)}.comment-item:hover .comment-delete-btn{opacity:1}.comment-delete-btn:hover{color:var(--brick);background-color:var(--brick-bg)}.comment-text{font-size:13px;line-height:1.45;color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0}.discussion-footer{padding:14px 18px 44px;border-top:1px solid var(--line);background-color:var(--surface-2);flex-shrink:0}.discussion-form{display:flex;flex-direction:column;gap:8px}.discussion-input{width:100%;min-height:58px;max-height:140px;padding:8px 12px;font-size:13px;font-family:var(--font-body);color:var(--ink);background-color:var(--white);border:1px solid var(--line-2);border-radius:8px;box-sizing:border-box;resize:vertical;line-height:1.4}.discussion-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.discussion-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px}.discussion-hint{font-size:11px;color:var(--muted);margin-right:auto}.list-overview-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:12px;padding:4px 0 2px}.list-overview-title-group{display:flex;align-items:baseline;gap:8px}.list-overview-title{margin:0;font-size:1.15rem;font-family:var(--font-title);font-weight:700;color:var(--ink);letter-spacing:-.01em}.list-overview-count-badge{font-size:11.5px;font-weight:600;color:var(--muted);background-color:var(--surface-2);border:1px solid var(--line-2);border-radius:12px;padding:1px 8px}.list-discussion-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.discussion-summary-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-family:var(--font-body);border:1px solid var(--line-2);background-color:var(--surface);color:var(--ink-2);cursor:pointer;transition:all .18s ease;-webkit-user-select:none;user-select:none}.discussion-summary-pill:hover{border-color:var(--border-hover, var(--line-1));transform:translateY(-1px)}.discussion-summary-pill.pill-unresolved{color:var(--amber);border-color:var(--amber-line);background-color:var(--amber-bg)}.discussion-summary-pill.pill-unresolved:hover{background-color:var(--amber-bg);box-shadow:0 2px 6px #d9770626}.discussion-summary-pill.pill-unresolved.active{background-color:var(--amber);color:var(--white);border-color:var(--amber);box-shadow:0 2px 8px #d9770640}.discussion-summary-pill.pill-unresolved.active .pill-context{color:#ffffffd9}.discussion-summary-pill.pill-resolved{color:var(--green);border-color:var(--green-line);background-color:var(--green-bg)}.discussion-summary-pill.pill-resolved:hover{background-color:var(--green-bg);box-shadow:0 2px 6px #16a34a26}.discussion-summary-pill.pill-resolved.active{background-color:var(--green);color:var(--white);border-color:var(--green);box-shadow:0 2px 8px #16a34a40}.discussion-summary-pill.pill-resolved.active .pill-context{color:#ffffffd9}.discussion-summary-pill .pill-number{font-family:var(--font-mono);font-weight:700;font-size:12.5px}.discussion-summary-pill .pill-text{font-weight:600}.discussion-summary-pill .pill-context{font-size:11px;opacity:.8;margin-left:1px}.discussion-summary-pill.pill-empty{opacity:.55;border-color:var(--line-2);background-color:var(--surface-2);color:var(--muted)}.discussion-summary-pill.pill-empty:hover{opacity:.85;box-shadow:none}
