:root{--color-bg: var(--tg-theme-bg-color, #ffffff);--color-text: var(--tg-theme-text-color, #000000);--color-hint: var(--tg-theme-hint-color, #707579);--color-secondary: var(--tg-theme-secondary-bg-color, #f4f4f5);--color-link: #8B6F3F;--color-primary: #5B1A18;--color-primary-text: #ffffff;--color-primary-soft: rgba(91, 26, 24, .1);--color-success: #34c759;--color-warning: #ff9500;--color-danger: #ff3b30;--color-divider: rgba(0, 0, 0, .08);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-lg: 17px;--font-size-xl: 20px;--tab-h: 56px;--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px);--brand-burgundy: #5B1A18;--brand-burgundy-light: #7A2D2A;--brand-burgundy-bg: #FAF8F6;--brand-gold: #9C7E4E;--brand-gold-light: #C9A876;--brand-gold-deep: #8B6F3F;--brand-gold-bg: #F5EFE3;--badge-captain-fill: var(--brand-gold-light);--badge-captain-text: var(--brand-burgundy);--badge-ops-fill: #64748B;--badge-ops-text: #FFFFFF}@media (prefers-color-scheme: dark){:root{--color-divider: rgba(255, 255, 255, .08)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{margin:0;padding:0;height:100%;font-family:var(--font-stack);background:var(--color-secondary);color:var(--color-text);font-size:var(--font-size-base);line-height:1.4;overscroll-behavior:none}button{font-family:inherit;font-size:inherit;cursor:pointer}.app-header{background:var(--color-bg);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);position:sticky;top:0;z-index:50}.app-header h1{margin:0;font-size:var(--font-size-xl);font-weight:600}.app-header .subtitle{font-size:var(--font-size-sm);color:var(--color-hint);margin-top:2px}.screen{padding-bottom:calc(var(--tab-h) + var(--safe-bottom) + var(--space-4))}.section-header{text-transform:uppercase;font-size:var(--font-size-xs);color:var(--color-hint);padding:var(--space-4) var(--space-4) var(--space-2);letter-spacing:.3px;font-weight:600}.hero{background:linear-gradient(135deg,var(--brand-burgundy) 0%,var(--brand-gold-deep) 100%);color:var(--color-primary-text);margin:var(--space-3);padding:18px 16px;border-radius:var(--radius-md)}.hero .greeting{font-size:14px;opacity:.85}.hero .name{font-size:22px;font-weight:600;margin-top:2px}.hero .role{font-size:13px;opacity:.85;margin-top:4px}.event{background:var(--color-bg);margin:0 var(--space-3) var(--space-3);border-radius:var(--radius-md);padding:14px;display:flex;gap:12px;border:1px solid var(--color-divider);cursor:pointer;transition:transform .15s}.event:active{transform:scale(.99)}.event.today-event{border:2px solid var(--color-primary);box-shadow:0 4px 14px #2481cc1f}.event.completed .date-block{background:var(--color-secondary)}.event .date-block{background:var(--color-secondary);border-radius:10px;padding:8px 10px;text-align:center;min-width:56px;flex-shrink:0}.event.today-event .date-block{background:var(--color-primary);color:var(--color-primary-text)}.event.today-event .date-block .mon{color:#ffffffd9}.event .date-block .day{font-size:22px;font-weight:700;line-height:1}.event .date-block .mon{font-size:11px;text-transform:uppercase;color:var(--color-hint);margin-top:2px;letter-spacing:.5px}.event .info{flex:1;min-width:0}.event .info .title{font-weight:600;font-size:16px;margin-bottom:4px}.event .info .meta{font-size:13px;color:var(--color-hint);margin:2px 0}.event .info .meta b{color:var(--color-text);font-weight:500}.event .info .badges{margin-top:6px;display:flex;gap:4px;flex-wrap:wrap}.badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge.confirmado{background:#34c75926;color:var(--color-success)}.badge.pendiente{background:#ff950026;color:var(--color-warning)}.badge.completado{background:#34c75926;color:var(--color-success)}.badge.capitan{background:var(--brand-gold-bg);color:var(--color-primary)}.live-pill{display:inline-flex;align-items:center;gap:4px;background:var(--color-primary);color:var(--color-primary-text);font-size:10px;font-weight:700;text-transform:uppercase;padding:2px 7px;border-radius:4px;letter-spacing:.4px}.live-pill:before{content:"";width:6px;height:6px;background:#fff;border-radius:50%;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.skeleton{background:var(--color-divider);animation:skeleton-pulse 1.4s ease-in-out infinite;display:block}@keyframes skeleton-pulse{0%,to{opacity:.7}50%{opacity:.35}}.btn{border:none;padding:11px 14px;border-radius:var(--radius-md);font-weight:600;font-size:14px;width:100%;margin-top:var(--space-3)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--color-primary);color:var(--color-primary-text)}.btn.ghost{background:var(--color-secondary);color:var(--color-text)}.btn.danger-soft{background:#ff3b301a;color:var(--color-danger)}.pill{display:flex;align-items:center;justify-content:center;gap:6px;padding:11px;margin-top:var(--space-3);border-radius:var(--radius-md);font-size:14px;font-weight:600}.pill.success{background:#34c7591f;color:var(--color-success)}.empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--color-hint)}.empty .ic{font-size:36px;margin-bottom:var(--space-2);opacity:.4}.error-screen{padding:var(--space-6);text-align:center}.error-screen h2{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.error-screen .hint{font-size:var(--font-size-sm);color:var(--color-hint);margin-top:var(--space-4)}.spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:var(--space-3);color:var(--color-hint)}.spinner .dots{display:flex;gap:6px}.spinner .dot{width:10px;height:10px;background:var(--color-primary);border-radius:50%;animation:bounce 1.2s infinite ease-in-out}.spinner .dot:nth-child(2){animation-delay:.15s}.spinner .dot:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,80%,to{transform:scale(.4);opacity:.4}40%{transform:scale(1);opacity:1}}.modal-bg{position:fixed;inset:0;background:#00000080;display:none;z-index:200;align-items:flex-end;justify-content:center}.modal-bg.show{display:flex}.modal{background:var(--color-bg);width:100%;max-width:480px;max-height:88vh;border-radius:16px 16px 0 0;overflow-y:auto;padding-bottom:calc(20px + var(--safe-bottom));animation:slideUp .25s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal-handle{width:36px;height:4px;background:var(--color-hint);opacity:.3;border-radius:2px;margin:8px auto 4px}.modal-body{padding:var(--space-3) var(--space-4)}.modal-body h2{margin:var(--space-2) 0 var(--space-1);font-size:var(--font-size-xl)}.detail-row{display:flex;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-divider)}.detail-row:last-of-type{border-bottom:none}.detail-row .ic{width:28px;height:28px;flex-shrink:0;border-radius:var(--radius-sm);background:var(--color-secondary);display:flex;align-items:center;justify-content:center;font-size:14px}.detail-row .lbl{font-size:var(--font-size-xs);color:var(--color-hint);text-transform:uppercase;letter-spacing:.3px}.detail-row .val{font-size:var(--font-size-base);font-weight:500;margin-top:2px}.modal-actions{margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.saldo-card{background:var(--color-bg);margin:var(--space-3);padding:22px var(--space-4);border-radius:var(--radius-md);text-align:center}.saldo-card .saldo-lbl{font-size:var(--font-size-sm);color:var(--color-hint)}.saldo-card .saldo-amt{font-size:34px;font-weight:700;margin:8px 0 6px;letter-spacing:-.5px}.saldo-card .saldo-sub{font-size:var(--font-size-xs);color:var(--color-hint)}.saldo-card .saldo-foot{font-size:var(--font-size-xs);color:var(--color-hint);margin-top:var(--space-3)}.saldo-pill{display:inline-block;font-size:var(--font-size-xs);font-weight:600;padding:6px 12px;border-radius:999px;margin-top:var(--space-3)}.saldo-pill.warning{background:#ff950026;color:var(--color-warning)}.card{background:var(--color-bg);margin:0 var(--space-3) var(--space-3);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-divider)}.ledger-row{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--color-divider);gap:12px}.ledger-row:last-child{border-bottom:none}.ledger-row .ledger-info{flex:1;min-width:0}.ledger-row .lt-title{font-weight:500;font-size:14px}.ledger-row .lt-sub{font-size:var(--font-size-xs);color:var(--color-hint);margin-top:2px}.ledger-amt{font-weight:600;font-size:14px;flex-shrink:0;white-space:nowrap}.amt-pos{color:var(--color-success)}.amt-neg{color:var(--color-danger)}.block-card{display:flex;align-items:center;gap:var(--space-3);background:var(--color-bg);margin:0 var(--space-3) var(--space-2);padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--color-divider)}.block-card .ic-tag{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.block-card.vacation .ic-tag{background:var(--brand-gold-bg);color:var(--color-primary)}.block-card.sick .ic-tag{background:#ff3b3026;color:var(--color-danger)}.block-card.personal .ic-tag{background:#ff950026;color:var(--color-warning)}.block-card .block-info{flex:1;min-width:0}.block-card .block-title{font-weight:600;font-size:14px}.block-card .block-dates{font-size:12px;color:var(--color-hint);margin-top:2px}.block-card .block-reason{font-size:12px;color:var(--color-hint);margin-top:2px;font-style:italic}.block-card .block-remove{border:none;background:var(--color-secondary);width:30px;height:30px;border-radius:50%;color:var(--color-hint);font-size:14px;cursor:pointer;flex-shrink:0}.block-card .block-remove:disabled{opacity:.5;cursor:not-allowed}.form-card{background:var(--color-bg);margin:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-divider)}.form-card .lbl-group{font-size:var(--font-size-xs);text-transform:uppercase;color:var(--color-hint);letter-spacing:.3px;margin:14px 0 6px;font-weight:600}.form-card .lbl-group:first-child{margin-top:0}.form-card .chips{display:flex;flex-wrap:wrap;gap:6px}.form-card .chip{background:var(--color-secondary);border:1.5px solid transparent;border-radius:18px;padding:8px 12px;font-size:13px;color:var(--color-text);font-family:inherit;cursor:pointer}.form-card .chip.selected{background:#2481cc1a;border-color:var(--color-primary);color:var(--color-primary)}.form-card .select,.form-card textarea,.form-card input[type=date]{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--color-divider);background:var(--color-secondary);font-family:inherit;font-size:14px;color:var(--color-text)}.form-card textarea{resize:vertical;min-height:60px}.form-card .select:focus,.form-card textarea:focus,.form-card input[type=date]:focus{outline:none;border-color:var(--color-primary)}.form-card .form-actions{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-2);margin-top:var(--space-4)}.form-card .form-actions .btn{margin-top:0}.tab-bar{position:fixed;bottom:0;left:0;right:0;height:calc(var(--tab-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);background:var(--color-bg);border-top:1px solid var(--color-divider);display:grid;z-index:100}.tab{border:none;background:transparent;color:var(--color-hint);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:10px;padding:6px 0}.tab .ic{font-size:20px;line-height:1}.tab.active{color:var(--color-primary)}.event-chat-screen{position:fixed;inset:0;background:var(--color-bg);display:flex;flex-direction:column;z-index:200;padding-top:var(--safe-top)}.event-chat-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);background:var(--brand-burgundy);color:#fff}.event-chat-back{background:transparent;border:none;color:#fff;font-size:22px;line-height:1;padding:4px 8px;cursor:pointer}.event-chat-titles{flex:1;min-width:0}.event-chat-title{font-size:var(--font-size-base);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-chat-sub{font-size:var(--font-size-xs);opacity:.8}.event-chat-briefing{border-bottom:1px solid var(--color-divider);background:var(--brand-gold-bg)}.event-chat-briefing-toggle{width:100%;background:transparent;border:none;text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);color:var(--brand-burgundy);cursor:pointer;font-weight:600}.event-chat-briefing-text{margin:0;padding:0 var(--space-4) var(--space-3);white-space:pre-wrap;font-family:var(--font-stack);font-size:var(--font-size-sm);color:var(--color-text);line-height:1.5}.event-chat-messages{flex:1;overflow-y:auto;padding:var(--space-3) var(--space-4) var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.event-chat-empty{margin:auto;text-align:center;color:var(--color-hint);font-size:var(--font-size-sm);max-width:80%}.msg{display:flex;flex-direction:column;gap:2px;max-width:80%}.msg-mine{align-self:flex-end;align-items:flex-end}.msg-theirs{align-self:flex-start;align-items:flex-start}.msg-author{display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--color-hint);padding:0 var(--space-2)}.msg-author-id{font-weight:500}.msg-bubble{padding:8px 12px;border-radius:var(--radius-md);background:var(--color-secondary);font-size:var(--font-size-sm);line-height:1.4;word-wrap:break-word;white-space:pre-wrap}.msg-mine .msg-bubble{background:var(--color-primary);color:var(--color-primary-text);border-bottom-right-radius:4px}.msg-theirs .msg-bubble{border-bottom-left-radius:4px}.msg-capitan.msg-theirs .msg-bubble{background:var(--brand-gold-bg);border:1px solid var(--brand-gold-light)}.msg-body{display:block}.msg-time{display:block;font-size:10px;opacity:.65;margin-top:2px}.badge-role{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:var(--radius-pill);font-size:10px;font-weight:600}.badge-captain{background:var(--badge-captain-fill);color:var(--badge-captain-text)}.badge-ops{background:var(--badge-ops-fill);color:var(--badge-ops-text)}.event-chat-error{padding:var(--space-2) var(--space-4);background:#ff3b301a;color:var(--color-danger);font-size:var(--font-size-xs);border-top:1px solid var(--color-divider)}.event-chat-composer{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);padding-bottom:calc(var(--space-2) + var(--safe-bottom));border-top:1px solid var(--color-divider);background:var(--color-bg)}.event-chat-composer textarea{flex:1;border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:8px 12px;font-family:var(--font-stack);font-size:var(--font-size-sm);resize:none;min-height:38px;max-height:120px;background:var(--color-secondary);color:var(--color-text)}.event-chat-composer textarea:focus{outline:1px solid var(--color-primary)}.event-chat-send{background:var(--brand-burgundy);color:#fff;border:none;border-radius:var(--radius-pill);width:40px;height:40px;font-size:16px;cursor:pointer;align-self:flex-end}.event-chat-send:disabled{opacity:.4;cursor:not-allowed}.mireporte-body{flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:calc(var(--space-4) + var(--safe-bottom))}.mireporte-body h3{margin:0;font-size:var(--font-size-lg)}.mireporte-meta{margin:0;color:var(--color-hint);font-size:var(--font-size-sm);line-height:1.45}.mireporte-warning{background:var(--brand-gold-bg);color:var(--brand-burgundy);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.mireporte-existing{background:var(--brand-gold-bg);border-left:3px solid var(--brand-gold-light);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.mireporte-error{background:#ff3b301a;color:var(--color-danger);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.mireporte-blocked,.mireporte-success,.mireporte-conflict{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.mireporte-blocked-icon,.mireporte-success-icon{font-size:40px;align-self:center}.mireporte-success-icon{background:var(--color-success);color:#fff;width:60px;height:60px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:30px}.mireporte-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.mireporte-field{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--space-3)}.mireporte-field span{font-size:var(--font-size-xs);color:var(--color-hint);text-transform:uppercase;letter-spacing:.4px;font-weight:600}.mireporte-field input{font-family:var(--font-stack);font-size:var(--font-size-lg);padding:12px 14px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-secondary);color:var(--color-text)}.mireporte-field input:focus{outline:2px solid var(--brand-burgundy)}.closure-progress-bar{height:8px;background:var(--color-secondary);border-radius:var(--radius-pill);overflow:hidden}.closure-progress-fill{height:100%;background:var(--brand-burgundy);transition:width .4s ease-out}.closure-progress-count{text-align:center;font-weight:500}.closure-team-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}.closure-team-row{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);display:flex;flex-direction:column;gap:2px}.closure-team-row:last-child{border-bottom:none}.closure-team-row-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.closure-proxy-btn{background:transparent;border:1px solid var(--brand-burgundy);color:var(--brand-burgundy);padding:4px 10px;border-radius:var(--radius-pill);font-size:10px;font-weight:600;cursor:pointer;font-family:var(--font-stack);white-space:nowrap}.closure-proxy-btn:hover{background:var(--brand-gold-bg)}.closure-proxy-form{margin-top:var(--space-2);padding:var(--space-2);background:var(--brand-gold-bg);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:var(--space-2)}.closure-proxy-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}.closure-proxy-fields input{font-family:var(--font-stack);font-size:var(--font-size-sm);padding:8px 10px;border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text)}.closure-proxy-fields input:focus{outline:1px solid var(--brand-burgundy)}.closure-proxy-actions{display:flex;gap:var(--space-2)}.closure-proxy-actions .btn{flex:1;padding:8px;font-size:var(--font-size-sm)}.briefing-body{flex:1;overflow-y:auto;padding:var(--space-4);padding-bottom:calc(var(--space-4) + var(--safe-bottom))}.briefing-content{background:var(--brand-gold-bg);border-left:4px solid var(--brand-gold-light);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.briefing-text{margin:0;font-family:var(--font-stack);font-size:var(--font-size-base);line-height:1.55;color:var(--color-text);white-space:pre-wrap;word-wrap:break-word}.briefing-empty{text-align:center;padding:var(--space-8) var(--space-4)}.briefing-empty-icon{font-size:48px;margin-bottom:var(--space-2)}.cancel-chooser-options{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.cancel-chooser-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-stack);text-align:left}.cancel-chooser-card:hover{border-color:var(--brand-burgundy);background:var(--brand-gold-bg)}.cancel-chooser-card-warn:hover{border-color:var(--color-danger);background:#ff3b300d}.cancel-chooser-icon{font-size:28px}.cancel-chooser-label{flex:1}.cancel-chooser-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.cancel-chooser-sub{font-size:var(--font-size-xs);color:var(--color-hint);margin-top:2px}.swap-search{width:100%;font-family:var(--font-stack);font-size:var(--font-size-sm);padding:10px 14px;border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-secondary);color:var(--color-text)}.swap-search:focus{outline:1px solid var(--brand-burgundy)}.swap-candidate-list{list-style:none;padding:0;margin:var(--space-2) 0 0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-divider);border-radius:var(--radius-md);overflow:hidden}.swap-candidate-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-bg)}.swap-candidate-row:last-child{border-bottom:none}.swap-candidate-info{flex:1;min-width:0}.swap-candidate-name{font-size:var(--font-size-sm);font-weight:500;display:flex;align-items:center}.swap-candidate-meta{font-size:var(--font-size-xs);color:var(--color-hint);margin-top:2px}.swap-pick-btn{padding:6px 14px;font-size:var(--font-size-xs)}.swap-pending{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4)}.swap-pending-icon{font-size:48px}.closure-team-row.reported{background:#34c7590f}.closure-team-row.pending{background:#ff95000f}.closure-team-name{font-weight:500;font-size:var(--font-size-sm)}.closure-team-meta{font-size:var(--font-size-xs);color:var(--color-hint);display:flex;align-items:center;gap:4px}.closure-source-badge{font-size:11px}.closure-pending-label{font-style:italic}.closure-finalizing{text-align:center;padding:var(--space-3);background:var(--brand-gold-bg);border-radius:var(--radius-md);color:var(--brand-burgundy);font-weight:500}.ops-event-card{background:var(--color-bg);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-3);margin:var(--space-2) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);border-left:4px solid transparent}.ops-event-card.ops-state-collecting{border-left-color:var(--brand-gold-light)}.ops-event-card.ops-state-pending{border-left-color:var(--color-hint)}.ops-event-card.ops-state-finalizing{border-left-color:var(--color-success)}.ops-event-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.ops-event-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.ops-event-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;padding:3px 8px;border-radius:var(--radius-pill);white-space:nowrap}.ops-event-badge.ops-state-pending{background:#7075791f;color:var(--color-hint)}.ops-event-badge.ops-state-collecting{background:var(--brand-gold-bg);color:var(--brand-burgundy)}.ops-event-badge.ops-state-finalizing{background:#34c7591f;color:var(--color-success)}.ops-event-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:var(--font-size-xs);color:var(--color-hint)}.ops-event-progress{display:flex;align-items:center;gap:var(--space-2)}.ops-event-progress-bar{flex:1;height:6px;background:var(--color-secondary);border-radius:var(--radius-pill);overflow:hidden}.ops-event-progress-fill{height:100%;background:var(--brand-burgundy);transition:width .4s ease-out}.ops-event-progress-count{font-size:var(--font-size-xs);color:var(--color-hint);white-space:nowrap}.ops-event-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.ops-event-actions .btn{flex:1}.ops-force-btn{border:1px dashed var(--badge-ops-fill);color:var(--badge-ops-fill)}.ops-force-form{margin-top:var(--space-3);padding:var(--space-3);background:var(--color-secondary);border-left:3px solid var(--badge-ops-fill);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:var(--space-2)}.ops-force-form h4{margin:0;font-size:var(--font-size-sm);color:var(--color-text)}.msg-ops .msg-bubble{background:var(--badge-ops-fill);color:var(--badge-ops-text)}.msg-ops.msg-mine .msg-bubble{background:var(--badge-ops-fill);color:var(--badge-ops-text);border-bottom-right-radius:4px}
