:root{--background: #ffffff;--text: #000000;--border: #aaa;--section-bg: #fafafa;--row-hover: #ebf8fa;--roleTag-bg: #5a5757;--tooltip-bg: #0891b2;--tooltip-color: #0891b2;--job-color: #ffffff;--header-bg: #ffffff;--accent-color: #0891b2;--badge-upgrade-bg: #388d7f;--badge-equip-bg: #5c9edf;--badge-text: #fff;--button-background: #5a5757;--button-text: #ffffff;--font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;--font-size-base: 16px;--line-height-base: 1.5;--header-height: 60px;--radius: 8px;--transition-fast: .2s;--transition-medium: .3s;--role-owner-bg: #fff4d4;--role-owner-border: #e8b200;--role-admin-bg: #e0f7ff;--role-admin-border: #0891b2;--role-member-bg: #e3ffe9;--role-member-border: #2ea76e}[data-theme=dark]{--background: #2c2c2c;--text: #ffffff;--border: #555;--section-bg: #3a3a3a;--row-hover: #164e63;--roleTag-bg: #444;--tooltip-bg: #164e63;--tooltip-color: #164e63;--job-color: #ffffff;--header-bg: #121212;--accent-color: #0891b2;--badge-upgrade-bg: #44aa99;--badge-equip-bg: #4477aa;--badge-text: #fff;--button-background: #ffffff;--button-text: #5a5757;--role-owner-bg: #4a3a00;--role-owner-border: #ffd85e;--role-admin-bg: #0a2a33;--role-admin-border: #4ec6e3;--role-member-bg: #062b1a;--role-member-border: #34d399}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--button-background);color:var(--button-text);cursor:pointer;transition:border-color .25s}button:hover{border-color:#a7a3a3}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.roster-button,.roster-button:link,.roster-button:visited{display:inline-flex;align-items:center;justify-content:center;padding:.45em 1em;border-radius:8px;border:1px solid transparent;font-size:.9rem;font-weight:500;font-family:inherit;text-decoration:none;cursor:pointer;background:transparent;color:var(--text);border-color:var(--border);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.roster-button:hover:not(:disabled),.roster-button:hover:link:not(:disabled),.roster-button:hover:visited:not(:disabled),.roster-button:focus-visible:not(:disabled){background-color:var(--row-hover);border-color:var(--border)}.roster-button-danger,.roster-button-danger:link,.roster-button-danger:visited{color:#ff4d4f;border-color:#ff4d4f}.roster-button-danger:hover:not(:disabled),.roster-button-danger:hover:link:not(:disabled),.roster-button-danger:hover:visited:not(:disabled),.roster-button-danger:focus-visible:not(:disabled){background-color:#ff4d4f1f;border-color:#ff4d4f}.roster-button:disabled{opacity:.6;cursor:default}a.roster-button:hover,a.roster-button:focus{filter:none}button.roster-button,a.roster-button{padding:.6em 1em!important;font-size:.9rem!important;line-height:1!important;border-radius:8px}.card{background:var(--section-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 2px 6px #0000000d;padding:1rem}.fade-in{animation:fadeIn var(--transition-medium) ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.number-input{width:64px;padding:4px 6px;background:var(--background);color:var(--text);border:1px solid var(--border);border-radius:6px;font-size:.85rem;text-align:center;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.number-input::placeholder{color:var(--text);opacity:.45}.number-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.number-input:disabled{opacity:.45;cursor:not-allowed}:root{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);color-scheme:light dark}body,#root{padding-top:0;margin:0;min-width:320px;min-height:100%;background-color:var(--background);color:var(--text);transition:background-color var(--transition-medium),color var(--transition-medium)}body.with-header,body.with-header #root{padding-top:var(--header-height)}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:var(--accent-color);text-decoration:none}a:hover{filter:brightness(1.1)}.app-header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);display:flex;justify-content:space-between;align-items:center;padding:0 24px;background:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.05);z-index:1000;transition:background var(--transition-medium),border var(--transition-medium)}.nav-left,.nav-right{display:flex;align-items:center;gap:12px}.nav-link{padding:6px 14px;border-radius:9999px;color:var(--text);transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.nav-link .icon{width:26px;height:26px;display:block;flex-shrink:0}.nav-link.active,.nav-link:hover{background:var(--accent-color);color:#fff;transform:translateY(-2px);transition:background var(--transition-fast),color var(--transition-fast)}button.nav-link{-webkit-appearance:none;appearance:none;background:none;border:none;outline:none;cursor:pointer;font:inherit;display:flex;align-items:center;justify-content:center}.floating-controls{position:fixed;top:12px;right:24px;z-index:2000;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:999px;background:var(--background);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-user{font-size:.9rem;color:var(--text);opacity:.8}.page{max-width:960px;margin:0 auto;padding:0;text-align:left}.page h1{margin-top:0;margin-bottom:16px}.page section{margin-bottom:24px;background:var(--section-bg);border-radius:var(--radius);border:1px solid var(--border);padding:16px 20px}.toast{position:fixed;bottom:20px;right:20px;background:var(--section-bg);color:var(--text);padding:10px 14px;border-radius:6px;font-size:14px;box-shadow:0 4px 12px #0003;z-index:1000}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.driver-active .driver-overlay,.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in .2s ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in .2s}.driver-popover{all:unset;box-sizing:border-box;color:#2d2d2d;margin:0;padding:15px;border-radius:5px;min-width:250px;max-width:300px;box-shadow:0 1px 10px #0006;z-index:1000000000;position:fixed;top:0;right:0;background-color:#fff}.driver-popover *{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.driver-popover-title{font:19px/normal sans-serif;font-weight:700;display:block;position:relative;line-height:1.5;zoom:1;margin:0}.driver-popover-close-btn{all:unset;position:absolute;top:0;right:0;width:32px;height:28px;cursor:pointer;font-size:18px;font-weight:500;color:#d2d2d2;z-index:1;text-align:center;transition:color;transition-duration:.2s}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{margin-bottom:0;font:14px/normal sans-serif;line-height:1.5;font-weight:400;zoom:1}.driver-popover-footer{margin-top:15px;text-align:right;zoom:1;display:flex;align-items:center;justify-content:space-between}.driver-popover-progress-text{font-size:13px;font-weight:400;color:#727272;zoom:1}.driver-popover-footer button{all:unset;display:inline-block;box-sizing:border-box;padding:3px 7px;text-decoration:none;text-shadow:1px 1px 0 #fff;background-color:#fff;color:#2d2d2d;font:12px/normal sans-serif;cursor:pointer;outline:0;zoom:1;line-height:1.3;border:1px solid #ccc;border-radius:3px}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}:not(body):has(>.driver-active-element){overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover-footer button:hover,.driver-popover-footer button:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{display:flex;flex-grow:1;justify-content:flex-end}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";position:absolute;border:5px solid #fff}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{left:100%;border-right-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-right{right:100%;border-left-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-top{top:100%;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.driver-popover-arrow-side-bottom{bottom:100%;border-left-color:transparent;border-top-color:transparent;border-right-color:transparent}.driver-popover-arrow-side-center{display:none}.driver-popover-arrow-side-left.driver-popover-arrow-align-start,.driver-popover-arrow-side-right.driver-popover-arrow-align-start{top:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-start,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-start{left:15px}.driver-popover-arrow-align-end.driver-popover-arrow-side-left,.driver-popover-arrow-align-end.driver-popover-arrow-side-right{bottom:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-end,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-end{right:15px}.driver-popover-arrow-side-left.driver-popover-arrow-align-center,.driver-popover-arrow-side-right.driver-popover-arrow-align-center{top:50%;margin-top:-5px}.driver-popover-arrow-side-top.driver-popover-arrow-align-center,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-center{left:50%;margin-left:-5px}.driver-popover-arrow-none{display:none}.driver-popover.app-tour-popover,.app-tour-popover .driver-popover,.driver-popover .app-tour-popover{background:var(--background)!important;color:var(--text)!important;border-radius:10px!important;box-shadow:0 10px 30px #0000004d!important;padding:1rem 1.25rem!important;width:min(420px,calc(100vw - 2rem))!important;scale:1!important}.driver-popover.app-tour-popover .driver-popover-title,.driver-popover.app-tour-popover .driver-popover-description{color:var(--text)!important}.driver-popover.app-tour-popover .driver-popover-title{font-size:1rem!important;font-weight:600!important;line-height:1.25!important;margin:0!important}.driver-popover.app-tour-popover .driver-popover-description{font-size:.9rem!important;line-height:1.4!important}.driver-popover.app-tour-popover .driver-popover-footer{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:.5rem!important;margin-top:.5rem!important}.driver-popover.app-tour-popover .driver-popover-btn,.driver-popover.app-tour-popover .driver-popover-next-btn,.driver-popover.app-tour-popover .driver-popover-done-btn{border-radius:8px!important;border:1px solid var(--border)!important;background:transparent!important;color:var(--text)!important;padding:6px 10px!important;font-size:.85rem!important;font-weight:600!important;line-height:1!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;-webkit-user-select:none!important;user-select:none!important;transform:none!important;filter:none!important;text-shadow:none!important}.app-tour-popover .driver-popover-prev-btn{display:none!important}.driver-popover.app-tour-popover .driver-popover-btn:hover{background:#ffffff0a!important}.driver-popover.app-tour-popover .driver-popover-next-btn,.driver-popover.app-tour-popover .driver-popover-done-btn{background:var(--primary)!important;border-color:var(--primary)!important;color:var(--text, #fff)!important}.driver-popover.app-tour-popover .driver-popover-next-btn:hover,.driver-popover.app-tour-popover .driver-popover-done-btn:hover{background:var(--primary-hover, var(--primary))!important}.driver-popover.app-tour-popover .driver-popover-btn[disabled],.driver-popover.app-tour-popover .driver-popover-next-btn[disabled],.driver-popover.app-tour-popover .driver-popover-done-btn[disabled]{opacity:.6!important;cursor:not-allowed!important}.driver-popover.app-tour-popover .driver-popover-close-btn{width:28px!important;height:28px!important;padding:0!important;border:none!important;background:none!important;color:var(--text)!important;opacity:1!important;visibility:visible!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important}.driver-popover.app-tour-popover .driver-popover-close-btn:before{content:none!important}.driver-popover.app-tour-popover .driver-popover-close-btn:empty:before{content:"×"!important;font-size:18px!important;font-weight:700!important;line-height:1!important;display:block!important;color:var(--text)!important}.driver-popover.app-tour-popover .driver-popover-close-btn:hover{background:#ffffff14!important}.driver-popover.app-tour-popover .driver-popover-close-btn:focus{outline:none!important}.driver-popover.app-tour-popover .driver-popover-close-btn:focus-visible{outline:2px solid var(--primary)!important;outline-offset:2px!important}.lang-switch{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;overflow:hidden;background:var(--background);color:var(--text)}.lang-switch button{all:unset;cursor:pointer;padding:4px 8px;font-size:12px;line-height:1;font-weight:700;letter-spacing:.2px;color:var(--text);background:transparent;transition:background var(--transition-fast),color var(--transition-fast)}.lang-switch button+button{border-left:1px solid var(--border)}.lang-switch button:hover{background:var(--row-hover)}.lang-switch button.is-active{background:var(--accent-color);color:#fff}.lang-switch button:focus-visible{outline:2px solid var(--accent-color);outline-offset:-2px}.app-footer{margin-top:24px;padding:14px 16px;border-top:1px solid var(--border);color:var(--text);opacity:.8;font-size:.8rem;line-height:1.35}.app-footer-links{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:8px;flex-wrap:wrap}.app-footer-link{color:var(--text);text-decoration:underline;text-underline-offset:2px}.app-footer-link:hover{opacity:1}.app-footer-sep{opacity:.7}.app-footer-link-disabled{opacity:.6;cursor:default;text-decoration:none;pointer-events:none}.app-footer-legal{text-align:center;opacity:.85}.app-footer-social{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;position:relative;top:2px;width:28px;height:28px;border-radius:999px;line-height:1;color:var(--text);opacity:.9}.app-footer-social:hover,.app-footer-social:focus-visible{opacity:1;transform:translateY(-1px);filter:brightness(1.1);background-color:var(--border);outline:none;transform:scale(1.05)}.app-footer-social svg{transform:scale(1.05);transform-origin:center}.app-footer-discord{display:inline-flex;align-items:center;gap:6px}.public-page{padding:0}.public-card{background:var(--section-bg);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-top:12px}.public-section{margin-top:14px}.public-h1{margin:0 0 12px}.public-h2{margin:0 0 6px;font-size:1rem}.public-p{margin:0 0 6px;opacity:.95;line-height:1.5}.public-content{text-align:left}.public-footer{margin-top:24px;padding-bottom:12px}.public-nav{margin-bottom:8px}.public-back-link{font-size:.85rem;color:var(--accent-color);text-decoration:none}.public-back-link:hover{text-decoration:underline}.card h2{margin-top:0;margin-bottom:12px}.guide-toc{background-color:var(--background-muted);margin-bottom:24px}.guide-toc-content{max-width:700px;margin:0 auto}.guide-toc ul{list-style:none;margin:0;padding:0;display:grid;gap:6px 32px}.guide-toc li{position:relative;padding-left:22px}.guide-toc li:before{content:"•";position:absolute;left:8px;color:var(--text-muted)}.guide-toc a{display:inline-block;padding:0;line-height:1.3;text-decoration:none}.guide-toc a:hover,.guide-toc a:focus-visible{text-decoration:underline}.stack{display:flex;flex-direction:column}.guide-figure{margin:16px 0 24px;text-align:center}.guide-figure img{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--border)}.guide-figure figcaption{margin-top:8px;font-size:.9rem;color:var(--text-muted)}.guide-figure--small img{max-width:420px}.guide-image-button{background:none;border:none;padding:0;cursor:zoom-in}.guide-image-button img{max-width:100%;border-radius:8px}.guide-lightbox{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:zoom-out}.guide-lightbox img{max-width:95vw;max-height:95vh;border-radius:8px}.guide-anchor{display:block;scroll-margin-top:96px}.guide-back-to-toc{display:inline-block;margin-top:24px;font-size:.95rem;color:var(--accent-color);text-decoration:none}.guide-back-to-toc:hover{text-decoration:underline}.guide-public-cta{margin-bottom:16px;padding:12px 14px;border:1px solid var(--border-color);border-radius:12px;background:var(--background-muted);display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.guide-public-cta-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 700px){.guide-toc ul{grid-template-columns:1fr}}.confirm-dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2500}.confirm-dialog{background:var(--background);border-radius:10px;padding:1.2rem 1.5rem;max-width:420px;width:90%;box-shadow:0 6px 16px #00000059;color:var(--text)}.confirm-dialog-title{margin:0 0 .5rem;font-size:1.2rem;font-weight:600}.confirm-dialog-message{margin:0 0 1rem;white-space:pre-line}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:.75rem}.confirm-dialog-title,.confirm-dialog-message{overflow-wrap:anywhere;word-break:break-word}.page-intro{margin-bottom:16px;opacity:.9}.account-layout{display:flex;flex-direction:column;gap:16px}.account-section h2{margin-top:0;margin-bottom:8px}.account-section h3{margin-top:12px;margin-bottom:6px;font-size:.95rem}.account-meta{font-size:.95rem;line-height:1.5}.account-label-with-pill{display:flex;align-items:center;justify-content:space-between;gap:12px}.account-email-row{display:flex;align-items:center;gap:10px}.account-email-row input{flex:1}.account-pill{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid var(--border);background:var(--section-bg);color:var(--text);white-space:nowrap}.account-pill-verified{background:var(--role-member-bg);border-color:var(--role-member-border)}.account-pill-unverified{background:var(--role-admin-bg);border-color:var(--role-admin-border)}.account-email-actions{margin-top:8px;display:flex;flex-direction:column;gap:8px}.account-form{display:flex;flex-direction:column;gap:10px;margin-top:4px}.account-field{display:flex;flex-direction:column;gap:4px;font-size:.9rem}.account-field label{font-weight:500}.account-field-optional{font-weight:400;font-size:.8rem;opacity:.7}.account-form input[type=text],.account-form input[type=email],.account-form input[type=password]{background-color:var(--background);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 8px;font:inherit}.account-form input[type=text]:focus,.account-form input[type=email]:focus,.account-form input[type=password]:focus{outline:2px solid var(--accent-color);outline-offset:1px}.account-save-button{margin-top:4px;align-self:flex-start}.account-error{color:#ff4d4f;font-size:.9rem;margin-bottom:8px}.account-success{color:#52c41a;font-size:.9rem;margin-bottom:8px}.account-section-separator{margin:12px 0;border:none;border-top:1px solid var(--border)}.account-warning{font-size:.85rem;opacity:.9;margin-bottom:8px}@media (min-width: 768px){.account-layout{flex-direction:row;align-items:stretch}.account-section{flex:1}}.public-auth-page{min-height:100vh;display:flex;flex-direction:column;padding:2rem;gap:1rem;box-sizing:border-box}.public-auth-main{flex:1;width:100%;max-width:960px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:2rem}.public-auth-content{flex:1 1 520px;min-width:280px;max-width:520px}.public-auth-card{flex:0 0 420px;display:flex;justify-content:center;align-items:center;width:100%;max-width:420px}.auth-app-name{margin:0 0 .75rem;font-size:2.1rem;font-weight:700;letter-spacing:-.02em;color:var(--accent-color)}.auth-intro-title{margin:0 0 10px;font-size:1.7rem;font-weight:600;line-height:1.2}.auth-intro-text{margin:0 0 10px;opacity:.9;line-height:1.6;max-width:420px}.public-auth-footer{display:flex;justify-content:center}.public-auth-footer .app-footer{width:100%;max-width:960px}@media (max-width: 900px){.public-auth-main{align-items:stretch}.public-auth-card{flex-basis:420px}}@media (max-width: 760px){.public-auth-main{flex-direction:column;gap:1rem}.public-auth-content{max-width:520px;width:100%}.public-auth-card{justify-content:center;flex:1 1 auto;width:100%}}.auth-benefits{margin:12px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.auth-benefit{display:flex;align-items:flex-start;gap:8px;font-size:.9rem;line-height:1.4;color:var(--text);opacity:.9}.auth-benefit-icon{width:20px;height:20px;flex-shrink:0;margin-top:1px;color:var(--accent-color);opacity:1}.login-card{width:100%;max-width:420px;background:var(--section-bg);border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 8px 24px #00000026;padding:2rem;text-align:left}.login-title{margin:0 0 1.5rem;font-size:1.5rem;color:var(--text)}.login-form{display:flex;flex-direction:column;gap:1rem}.login-label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem;color:var(--text);opacity:.9}.login-input{padding:.55rem .75rem;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text);outline:none;font:inherit}.login-input:focus{border-color:var(--accent-color)}.login-error{color:#f97373;font-size:.85rem}.login-success{color:#52c41a;font-size:.85rem}.login-button{width:100%;justify-content:center;margin-top:.5rem}.login-footer{margin-top:1rem;font-size:.9rem;color:var(--text);opacity:.9;text-align:center}.login-forgot-row{display:flex;justify-content:flex-end;margin-top:4px;margin-bottom:8px}.login-forgot-link{font-size:.85rem;opacity:.85}.login-forgot-link:hover{opacity:1;text-decoration:underline}.biStable-container{padding:12px 20px 80px}.biStable-container h2{margin-top:0}.biStable-table{border-collapse:collapse;width:100%;table-layout:fixed;background-color:var(--background);color:var(--text);margin-top:0}.biStable-table th,.biStable-table td{border:none;border-bottom:1px solid var(--border);padding:8px;text-align:center;color:var(--text)}.biStable-table th:first-child,.biStable-table td:first-child{z-index:10;text-align:left;white-space:nowrap;width:9%;padding-right:12px;font-weight:700;background-color:var(--background);color:var(--text);border-bottom:1px solid var(--border)}.biStable-table tr.section-title th:first-child,.biStable-table tr.section-title td:first-child{background-color:var(--background)!important}.biStable-table tbody tr:hover{background-color:transparent}.biStable-table tbody td{position:relative}.biStable-table tbody tr:hover td:after{content:"";position:absolute;inset:0;background:var(--row-hover);opacity:.3;pointer-events:none}.biStable-table tbody tr.job-row:hover td:after{content:none}.biStable-table tbody td :is(input,select,textarea,button,svg,.book-badge){position:relative;z-index:1}.biStable-table th input,.biStable-table td input{width:100%;box-sizing:border-box;text-align:center;height:28px;border:1px solid var(--border);border-radius:4px;padding:2px 4px;color:var(--text);background-color:var(--background)}.biStable-table thead th input{font-weight:700;font-size:18px;color:var(--text);background-color:var(--background);border:1px solid var(--border)}.biStable-table td input.food-input,.biStable-table td input.bislink-input{font-size:14px}.biStable-table td input[type=checkbox]{width:16px;height:16px;margin:0 auto;display:block;cursor:pointer}.biStable-sticky-names{margin-top:20px;position:sticky;top:59px;z-index:50;background:var(--background);box-shadow:0 1px 0 0 var(--border)}.biStable-sticky-names tbody tr:hover,.biStable-sticky-names thead tr:hover{background:transparent}.biStable-sticky-names th:first-child{border-top:none!important;border-left:none!important;background:transparent!important}.biStable-table-main-head th{border:none!important;padding:0!important;background:transparent!important}.biStable-table .section-title td,.biStable-table .section-title th{background-color:var(--section-bg);color:var(--text);font-weight:700;text-align:center;font-size:16px;padding:6px;border:none;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.biStable-link-container{display:flex;justify-content:center;align-items:center;gap:8px;position:relative}.biStable-link-container img{max-height:100%}.biStable-link-container button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;cursor:pointer;color:red}.roleTag-container{position:relative;margin-top:4px;display:flex;justify-content:center}.roleTag-tag{display:flex;align-items:center;justify-content:center;background-color:var(--roleTag-bg);color:#fff;padding:2px 6px;border-radius:8px;font-size:12px;min-width:40px;cursor:pointer}.roleTag-dropdown{position:absolute;top:110%;left:50%;transform:translate(-50%);background-color:var(--roleTag-bg);border-radius:6px;padding:4px;z-index:1000;box-shadow:0 2px 6px #0000004d}.roleTag-option{padding:2px 6px;cursor:pointer;color:#fff;font-size:12px;border-radius:4px;margin-bottom:2px}.roleTag-option.selected{background-color:var(--row-hover);color:var(--text)}.roleTag-option:hover{background-color:var(--border)}.equipment-cell{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;min-width:140px}.equipment-select{width:60%;min-width:70px;height:28px;font-size:14px;padding:0 4px;box-sizing:border-box;border-radius:4px;border:1px solid var(--border);background-color:var(--background);color:var(--text)}.equipment-checkboxes{display:flex;flex-direction:row;gap:10px;min-width:56px;justify-content:flex-start;align-items:center;padding-left:10px}.tooltip{position:relative;display:inline-block;cursor:help}.tooltip-icon{font-weight:700;font-size:13px;background:var(--tooltip-bg);color:#fff;border-radius:50%;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;line-height:1;margin-left:6px}.tooltip .tooltip-text{visibility:hidden;width:260px;background-color:#333;color:#fff;text-align:left;border-radius:6px;padding:6px 8px;position:absolute;z-index:5000;bottom:125%;left:0;opacity:0;transition:opacity .2s;font-size:12px;line-height:1.4;white-space:pre-line;word-wrap:break-word}.tooltip:hover .tooltip-text{visibility:visible;opacity:1}.biStable-divider td{padding:12px 0;border:none!important;background:transparent}.biStable-table tbody tr.biStable-divider:hover td:after{content:none}.secondary-bis-table thead{position:static!important;top:auto!important;z-index:auto!important;background:transparent!important;box-shadow:none!important}.secondary-bis-ghost-head th{border:none!important;padding:0!important;background:transparent!important}.secondary-bis-ghost-head tr{border:none!important}.secondary-bis-table .job-row td{color:var(--text)}.secondary-bis-table .job-row td *{color:var(--text)!important}.bis-input{width:100%;height:28px;padding:0 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--section-bg);color:var(--text);font:inherit;line-height:1;text-align:center;transition:border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.bis-cell{position:relative;min-height:28px;display:flex;align-items:center;justify-content:center;outline:none;border-radius:var(--radius)}.bis-cell:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-color) 40%,transparent)}.bis-link{color:var(--text);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:filter var(--transition-fast),color var(--transition-fast)}.bis-link:hover{filter:brightness(1.1);transform:scale(1.05)}.bis-actions{position:absolute;right:4px;display:flex;align-items:center;gap:8px;opacity:0;pointer-events:none;transition:opacity var(--transition-medium)}.bis-cell:hover .bis-actions,.bis-cell:focus-within .bis-actions{opacity:1;pointer-events:auto}.bis-icon{appearance:none;-webkit-appearance:none;border:none;background:transparent;padding:0;margin:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--text) 55%,transparent);cursor:pointer;transition:color var(--transition-fast),transform var(--transition-fast)}.bis-icon:hover{color:var(--text);transform:scale(1.05)}.bis-icon:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-color) 60%,transparent);border-radius:4px}.book-badge{display:inline-flex;align-items:center;gap:4px;min-width:24px;padding:2px 6px;border-radius:9999px;font-size:.8rem;font-weight:600;color:#fff;text-align:center;cursor:help;transition:transform .15s ease}.book-badge:hover{transform:scale(1.2)}.page-intro{margin:.5rem 0 1rem;font-size:.85rem;line-height:1.5;opacity:.85;max-width:800px;white-space:pre-line}.landing-card{width:100%;max-width:420px;background:var(--section-bg);border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 8px 24px #00000026;padding:2rem;text-align:left}.landing-title{margin:0 0 1rem;font-size:1.5rem;color:var(--text)}.landing-text{margin:0 0 1.5rem;color:var(--text);opacity:.9;line-height:1.5}.landing-actions{display:flex;flex-direction:column;gap:.75rem}.landing-button{width:100%;justify-content:center;text-decoration:none}.landing-secondary-links{margin-top:16px;text-align:center}.landing-secondary-link{color:var(--accent-color);text-decoration:none;font-weight:600}.landing-secondary-link:hover{text-decoration:underline}.app-modal-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2100}.app-modal{background-color:var(--background);color:var(--text);border-radius:10px;box-shadow:0 10px 30px #0000004d;padding:1rem 1.25rem;width:calc(100% - 2rem);display:flex;flex-direction:column;gap:.75rem}.app-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.app-modal-title{margin:0;font-size:1rem;font-weight:600}.app-modal-close{border:none;background:none;color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:2px;border-radius:999px;transition:background .15s ease,transform .15s ease}.app-modal-close:hover{background:#ffffff14;transform:scale(1.05)}.app-modal-body{font-size:.9rem}.app-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.5rem}.app-modal-footer-left{font-size:.8rem;opacity:.8}.app-modal-footer-right{display:flex;gap:.5rem}.roster-button.roster-button-secondary{background:transparent;border:1px solid var(--border);color:var(--text)}.roster-button.roster-button-secondary:hover{background:#ffffff0a}.roster-page{display:flex;flex-direction:column;gap:16px}.roster-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.roster-title{margin:0;font-size:1.5rem}.roster-subtitle{margin:4px 0 8px;opacity:.85}.roster-meta{display:flex;flex-direction:column;gap:8px;font-size:.9rem;opacity:.9;align-items:flex-start}.roster-role-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;border:1px solid var(--border);background-color:var(--section-bg)}.roster-id{font-family:monospace;opacity:.8}.roster-header-actions{display:flex;align-items:center;gap:8px}.roster-back-link{display:inline-flex;align-items:center;justify-content:center;padding:.4em .8em;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:.9rem}.roster-back-link:hover{background-color:var(--row-hover)}.roster-header-button{display:inline-flex;align-items:center;justify-content:center;padding:.4em .9em;border-radius:999px;border:1px solid var(--border);background:var(--section-bg);font-size:.9rem;cursor:pointer}.roster-header-button:hover:not(:disabled){background-color:var(--row-hover)}.roster-header-button:disabled{opacity:.6;cursor:default}.roster-tabs{display:inline-flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.roster-tab-button{padding:.35em .9em;border-radius:999px;border:1px solid transparent;background:transparent;font-size:.9rem;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.roster-tab-button-active{background-color:var(--accent-color);border-color:var(--accent-color);color:#fff}.roster-tab-button:not(.roster-tab-button-active){border-color:var(--border);color:var(--text)}.roster-content{margin-top:4px}.roster-card{padding:16px}.roster-section{display:flex;flex-direction:column;gap:8px}.roster-section-title{margin-top:0;margin-bottom:8px}.roster-error{color:#ff4d4f;margin:4px 0}.roster-table{width:100%;border-collapse:collapse;margin-top:4px;font-size:.9rem}.roster-table th,.roster-table td{padding:6px 8px;border-bottom:1px solid var(--border);text-align:left}.roster-table tbody tr:hover{background-color:var(--row-hover)}.roster-invite-form{margin-bottom:1rem}.roster-invite-row{margin-bottom:.5rem}.roster-invite-row input[type=number]{max-width:80px}.roster-table select,.roster-invite-form select,.roster-invite-form input[type=number]{background-color:var(--background);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font:inherit}.roster-table select:focus,.roster-invite-form select:focus,.roster-invite-form input[type=number]:focus{outline:2px solid var(--accent-color);outline-offset:1px}.roster-invite-form input[type=number]{max-width:100px}.roster-small-button{margin-left:.5rem;padding:.3em .7em;font-size:.85rem;border-radius:6px}.roster-small-button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.rosters-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}.rosters-intro{margin-bottom:16px;opacity:.9}.rosters-error{color:#ff4d4f}.rosters-list{list-style:none;padding:0;margin:16px 0;display:flex;flex-direction:column;gap:12px}.roster-item{display:flex;justify-content:space-between;align-items:center;gap:16px}.roster-name{margin:0 0 4px;font-size:1.1rem}.roster-meta{font-size:.9rem;opacity:.9}.roster-role{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border:1px solid transparent}.roster-role-owner{background-color:var(--role-owner-bg);border-color:var(--role-owner-border);font-weight:600}.roster-role-admin{background-color:var(--role-admin-bg);border-color:var(--role-admin-border)}.roster-role-member{background-color:var(--role-member-bg);border-color:var(--role-member-border)}.roster-actions{display:flex;align-items:center;gap:8px}.rosters-create-button{white-space:nowrap}.app-modal-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border);background-color:var(--background);color:var(--text);border-radius:6px;font-size:.9rem;height:auto;min-height:40px;overflow:hidden}.app-modal-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loot-container{padding:12px 20px 20px}.loot-container h2{margin-top:0}.loot-table{border-collapse:collapse;text-align:center;table-layout:fixed;background-color:var(--background);color:var(--text);width:100%}.loot-table th,.loot-table td{border:none;padding:6px 10px}.loot-table thead th{border-bottom:2px solid var(--border);background-color:var(--section-bg);font-weight:600}[data-theme=dark] .loot-table thead th{background-color:var(--section-bg)}.loot-table tbody td{border-bottom:1px solid var(--border);background-clip:padding-box;background-image:none;position:relative}.loot-cell{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:4px 0;min-width:0}.loot-cell-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loot-cell input[type=checkbox]{width:16px;height:16px;display:block;cursor:pointer;flex:0 0 auto}.loot-table tbody tr:hover td{background-image:linear-gradient(#00000009,#00000009)}[data-theme=dark] .loot-table tbody tr:hover td{background-image:linear-gradient(#ffffff0d,#ffffff0d)}.loot-table tbody td:hover{box-shadow:none}.loot-table tbody td:after{content:"";position:absolute;inset:0;pointer-events:none;background:transparent}.loot-table tbody td.col-hover:after{background-image:linear-gradient(#0891b214,#0891b214)}@supports (background: color-mix(in srgb,white,black)){.loot-table tbody td.col-hover:after{background-image:linear-gradient(color-mix(in srgb,var(--accent-color) 10%,transparent),color-mix(in srgb,var(--accent-color) 10%,transparent))}}[data-theme=dark] .loot-table tbody td.col-hover:after{background-image:linear-gradient(#ffffff0a,#ffffff0a)}.cell-checked{opacity:.4;transition:opacity .2s ease}.upgradable-checkbox-container{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}.upgradable-checkbox{width:16px;height:16px;cursor:pointer}.disabled-checkbox{opacity:.4;cursor:not-allowed}.loot-table input[type=checkbox]:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.loot-table input[type=checkbox]:disabled{cursor:not-allowed;opacity:.55}[data-theme=dark] .loot-table input[type=checkbox]:disabled{opacity:.45}.loot-table input[type=checkbox]:disabled+label{cursor:not-allowed}.loot-table thead th{position:relative}.loot-table thead th:after{content:"";position:absolute;inset:0;pointer-events:none;background:transparent}.loot-table[data-hover-col] thead th.col-hover:after{background-image:linear-gradient(#0000000f,#0000000f)}@supports (background: color-mix(in srgb,white,black)){.loot-table[data-hover-col] thead th.col-hover:after{background-image:linear-gradient(color-mix(in srgb,var(--accent-color) 8%,transparent),color-mix(in srgb,var(--accent-color) 8%,transparent))}}[data-theme=dark] .loot-table[data-hover-col] thead th.col-hover:after{background-image:linear-gradient(#ffffff0a,#ffffff0a)}.loot-table :is(thead th,tbody td):nth-child(2),.loot-table :is(thead th,tbody td):nth-child(7),.loot-table :is(thead th,tbody td):nth-child(12),.loot-table :is(thead th,tbody td):nth-child(13),.loot-table :is(thead th,tbody td):nth-child(15){box-shadow:inset 1px 0 #0000002e}[data-theme=dark] .loot-table :is(thead th,tbody td):nth-child(2),[data-theme=dark] .loot-table :is(thead th,tbody td):nth-child(7),[data-theme=dark] .loot-table :is(thead th,tbody td):nth-child(12),[data-theme=dark] .loot-table :is(thead th,tbody td):nth-child(13),[data-theme=dark] .loot-table :is(thead th,tbody td):nth-child(15){box-shadow:inset 1px 0 #ffffff1f}.loot-history-panel{position:fixed;top:0;right:-720px;width:700px;height:100%;background-color:var(--background);color:var(--text);box-shadow:-2px 0 12px #0000004d;transition:right .3s ease;z-index:2000;display:flex;flex-direction:column}.loot-history-panel.open{right:0}.loot-history-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border);background:var(--header-bg)}.loot-history-header-row{display:grid;grid-template-columns:1.2fr 1.6fr 1fr .8fr .4fr;align-items:center;font-weight:600;font-size:.85rem;padding:.4rem 1rem;border-bottom:2px solid var(--border);background-color:var(--header-bg);position:sticky;top:0;z-index:10}.loot-history-list{flex:1;overflow-y:auto;padding:.5rem 1rem;list-style:none;margin:0}.loot-history-item{display:grid;grid-template-columns:1.2fr 1.6fr 1fr .8fr .4fr;align-items:center;font-size:.9rem;padding:.4rem 0;border-bottom:1px solid var(--border);gap:.5rem;min-height:32px}.loot-history-player{font-weight:600}.loot-history-date{font-size:.8rem;opacity:.8}.loot-history-actions{display:flex;justify-content:flex-end;align-items:center;gap:4px}.close-btn{border:none;background:none;font-size:1.2rem;cursor:pointer;color:var(--text);transition:transform .2s}.close-btn:hover{transform:scale(1.1)}.loot-history-empty{padding:1rem;text-align:center;font-style:italic;opacity:.7}.loot-history-method{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;font-weight:500;border-radius:6px;padding:2px 6px;text-transform:capitalize;transition:background .2s ease,color .2s ease}.loot-history-method.loot,.loot-history-method.bis_purchase{color:#173}.loot-history-method.exchange{color:#4a9}.loot-history-method.remove,.loot-history-method.cancel{color:#c67}[data-theme=dark] .loot-history-method.loot,.loot-history-method.bis_purchase{color:#4a9}[data-theme=dark] .loot-history-method.exchange{color:#8ce}[data-theme=dark] .loot-history-method.remove,.loot-history-method.cancel{color:#d78}.loot-history-method svg{width:14px;height:14px;stroke-width:2}.loot-history-item.loot-history-event{border-left:3px solid var(--accent-color);background-color:var(--background)}.loot-history-event-text{grid-column:1 / span 3;font-style:italic;opacity:.95;padding-left:2px;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.loot-history-item.loot-history-event:hover{background-color:#0000000a}[data-theme=dark] .loot-history-item.loot-history-event:hover{background-color:#ffffff0d}.undo-btn{background:none;border:none;cursor:pointer;color:var(--accent-color);display:flex;align-items:center;justify-content:center;height:20px;width:20px;padding:0;transition:transform .2s,color .2s}.undo-btn:hover{color:#06667e;transform:scale(1.1)}.undo-btn[disabled]{opacity:.4;cursor:not-allowed;transform:none}.loot-history-event-textarea{width:100%;resize:vertical;min-height:70px;max-height:200px;font-size:.9rem;font-family:inherit;padding:.5rem .6rem;border-radius:6px;border:1px solid var(--border);background-color:var(--background);color:var(--text)}.loot-history-event-textarea:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.loot-history-scope-select{background-color:var(--background);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font:inherit;font-size:.85rem;max-width:220px}.loot-history-scope-select:focus{outline:2px solid var(--accent-color);outline-offset:1px}.loot-history-header-controls{display:flex;gap:.5rem;align-items:center}.lh-header-cell{display:flex;align-items:center;gap:6px;min-height:32px;position:relative}.lh-colhead-inline{display:inline-flex;align-items:center;gap:6px}.lh-col-title{display:inline-flex;align-items:center;gap:8px;min-width:0}.lh-col-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;width:34px;flex:0 0 34px}.lh-header-cell-actions{justify-content:flex-end}.lh-header-actions-spacer{width:34px;height:28px;display:inline-block}.loot-history-colhead.is-filtered .lh-col-title{color:var(--accent-color);font-weight:700}.loot-history-filter-btn{min-width:34px;height:28px;border-radius:6px;background:var(--background);color:var(--text);cursor:pointer;font-size:13px;line-height:1;padding:0 6px;transition:all .2s ease;border:none;display:inline-flex;align-items:center;justify-content:center}.loot-history-filter-btn svg{stroke:currentColor}.loot-history-filter-btn:hover:not([disabled]){background:var(--accent-color);color:#fff}.loot-history-filter-btn.active{outline:2px solid var(--accent-color);outline-offset:1px}.loot-history-filter-btn.is-filtered{background:var(--accent-color);color:#fff}.loot-history-filter-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:50;width:240px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--section-bg);color:var(--text);box-shadow:0 8px 18px #0003;display:flex;flex-direction:column;gap:8px}.lh-react-select{width:100%}.lh-react-select__menu{margin-top:6px}.loot-history-clear-filters{width:34px;height:28px;border-radius:6px;background:var(--background);color:var(--text);cursor:pointer;border:none;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:all .2s ease}.loot-history-clear-filters:hover{background:var(--accent-color);color:#fff}.lh-filter-list{max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:6px;padding:2px}.lh-filter-option{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.lh-filter-option input{width:14px;height:14px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background-color:var(--modal-bg, #f9f9f9);color:var(--modal-text, #111);border-radius:12px;padding:1.5rem;width:320px;max-width:90%;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;gap:1.2rem;font-family:system-ui,sans-serif}.modal h3{margin:0;font-size:1.2rem;text-align:center}.modal-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem;max-height:240px;overflow-y:auto;text-align:center}.modal-choice{background-color:var(--accent-color);color:#fff;border:none;border-radius:9999px;padding:.7rem 1rem;cursor:pointer;width:80%;margin:0 auto;text-align:center;font-size:.95rem;font-weight:500;transition:background .2s,transform .15s}.modal-choice:hover{background-color:#06667e}.modal-cancel{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .95rem;border-radius:10px;font-weight:600;cursor:pointer;line-height:1;background:#fff;color:#374151;border-color:var(--border, #e5e7eb);width:auto;align-self:center}.modal-cancel:hover{background:color-mix(in srgb,#fff 85%,var(--border, #e5e7eb) 15%)}.modal-list::-webkit-scrollbar{width:6px}.modal-list::-webkit-scrollbar-thumb{background-color:#0000004d;border-radius:3px}.modal-list::-webkit-scrollbar-track{background:transparent}.highlight{color:var(--accent-color)}.loot-legend{display:flex;align-items:center;justify-content:center;gap:8px;font-size:.85rem;color:var(--text-secondary);margin-top:8px}.legend-label{white-space:nowrap}.legend-bar{flex:1;max-width:200px;height:12px;border-radius:6px;background:linear-gradient(to right,#825,#a49,#c67,#dc7,#8ce,#4a9,#173,#993)}.obis-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.obis-modal{background-color:var(--modal-bg, #f9f9f9);color:var(--modal-text, #111);border-radius:12px;padding:1.5rem;width:500px;max-width:90%;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;gap:1.2rem;font-family:system-ui,sans-serif;max-height:85vh;overflow:auto}.obis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.obis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;max-height:340px;overflow-y:auto;padding:2px}.obis-card{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 10px;min-height:56px;border:none;border-radius:10px;background-color:var(--accent-color);color:#fff;cursor:pointer;transition:transform .06s ease,box-shadow .15s ease,background .15s ease}.obis-card:hover{background-color:#06667e}.obis-card:active{transform:translateY(0)}.obis-card-label{line-height:1.2;word-wrap:break-word;overflow-wrap:anywhere;font-weight:600;font-size:.95rem}.obis-selected-row{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap;margin-bottom:.2rem}.obis-selected-leading{font-size:.95rem;font-weight:#374151}.obis-selected-name{font-weight:700}.obis-player-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.obis-player-option{display:flex;justify-content:space-between;align-items:center;border:none;border-radius:10px;background-color:var(--accent-color);color:#fff;cursor:pointer;padding:8px 12px;transition:background .15s ease}.obis-player-option:hover{background-color:#06667e}.obis-player-option.selected{background-color:color-mix(in srgb,var(--accent-color, #0ea5b7) 8%,#ffffff 92%);color:var(--accent-color);border-color:#06667e}.player-name{font-weight:600}.player-count{opacity:.8;font-size:.9rem}.obis-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.8rem}.obis-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .95rem;border-radius:10px;font-weight:600;border:1px solid transparent;cursor:pointer;line-height:1}.obis-btn:disabled{opacity:.55;cursor:not-allowed}.obis-btn--primary{background:var(--accent-color, #0ea5b7);border:none;color:#fff}.obis-btn--primary:hover{background-color:#06667e}.obis-btn--secondary{background:#fff;color:#374151;border-color:var(--border, #e5e7eb)}.obis-btn--secondary:hover{background:color-mix(in srgb,#fff 85%,var(--border, #e5e7eb) 15%)}.shop-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.shop-modal{background-color:var(--modal-bg, #f9f9f9);color:var(--modal-text, #111);border-radius:12px;padding:1.5rem;width:340px;max-width:90%;box-shadow:0 8px 24px #0000004d;display:flex;flex-direction:column;gap:1.2rem;font-family:system-ui,sans-serif}.shop-modal h3{margin:0;font-size:1.2rem;text-align:center}.shop-modal select{width:100%;padding:.6rem;border-radius:8px;border:1px solid var(--border, #ccc);font-size:.95rem;background:var(--background, #fff);color:var(--text, #111);cursor:pointer;transition:border-color .2s}.shop-modal select:focus{border-color:var(--accent-color);outline:none}.shop-modal-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem;text-align:center}.shop-modal-buttons{display:flex;justify-content:center;gap:.8rem}.shop-modal-buttons button{border:none;border-radius:9999px;padding:.7rem 1rem;cursor:pointer;font-size:.95rem;font-weight:500;transition:background .2s,transform .15s}.shop-modal-buttons button:last-child{background-color:var(--accent-color);color:#fff}.shop-modal-buttons button:last-child:hover:not([disabled]){background-color:#06667e;transform:scale(1.03)}.shop-modal-buttons button:first-child{background-color:#ccc;color:#333}.shop-modal-buttons button:first-child:hover{background-color:var(--cancel-hover, #999);transform:scale(1.03)}.shop-modal-buttons button[disabled]{opacity:.5;cursor:not-allowed}.shop-highlight{color:var(--accent-color)}.shop-container{padding:12px 20px 20px}.shop-container h2{margin-top:0}.shop-table{border-collapse:collapse;text-align:center;table-layout:fixed;background-color:var(--background);color:var(--text);width:100%}.shop-table th,.shop-table td{border:none;border-bottom:1px solid var(--border);padding:4px 8px}.shop-table thead th{background-color:var(--section-bg);font-weight:600}.shop-table thead tr:last-child th,.shop-player-header{border-bottom:2px solid var(--border)}.shop-player-header{background:var(--background)}.shop-table thead th.shop-player-header{background-color:var(--background);border-top:none;border-left:none;border-right:none;border-bottom:2px solid var(--border)}.book-cell{width:40px;text-align:center;padding:2px 4px;font-variant-numeric:tabular-nums}.shop-cell{display:flex;justify-content:center;align-items:center;gap:6px}.shop-table tbody td{position:relative}.shop-table tbody tr:hover{background-color:transparent}.shop-table tbody tr:hover td:after{content:"";position:absolute;inset:0;background:var(--row-hover);opacity:.3;pointer-events:none}.shop-table tbody td :is(button,.shop-buy-button,.convert-btn,svg){position:relative;z-index:1}.shop-buy-button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid var(--border);background:var(--background);color:var(--text);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.shop-buy-button:hover:not(:disabled){background:var(--row-hover)}.shop-buy-button:disabled{opacity:.45;cursor:not-allowed}.shop-buy-button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.convert-btn{height:26px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border);background:var(--background);color:var(--text);font-size:.8rem;line-height:1;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.convert-btn:hover:not(:disabled){background:var(--row-hover)}.convert-btn:disabled{opacity:.45;cursor:not-allowed}.convert-btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.shop-buy-button svg{width:16px;height:16px;stroke:currentColor;fill:none}.shop-table tbody td:nth-child(2){box-shadow:inset 1px 0 #0000002e}.shop-table thead tr:nth-child(2) th:nth-child(5),.shop-table tbody td:nth-child(6){box-shadow:inset 1px 0 #0000002e}.shop-table thead tr:nth-child(2) th:nth-child(12),.shop-table tbody td:nth-child(13){box-shadow:inset 1px 0 #0000002e}[data-theme=dark] .shop-table tbody td:nth-child(2),[data-theme=dark] .shop-table thead tr:nth-child(2) th:nth-child(5),[data-theme=dark] .shop-table tbody td:nth-child(6),[data-theme=dark] .shop-table thead tr:nth-child(2) th:nth-child(12),[data-theme=dark] .shop-table tbody td:nth-child(13){box-shadow:inset 1px 0 #ffffff1f}.shop-buy-button{width:28px!important;min-width:28px!important;max-width:28px!important;height:28px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important}.shop-buy-button svg,.shop-buy-button .lucide{display:block!important;width:16px!important;height:16px!important;color:currentColor!important;stroke:currentColor!important;fill:none!important;opacity:1!important;visibility:visible!important}.shop-buy-button svg *{stroke:currentColor!important;fill:none!important}.rdp-root{--rdp-accent-color: blue;--rdp-accent-background-color: #f0f0ff;--rdp-day-height: 44px;--rdp-day-width: 44px;--rdp-day_button-border-radius: 100%;--rdp-day_button-border: 2px solid transparent;--rdp-day_button-height: 42px;--rdp-day_button-width: 42px;--rdp-selected-border: 2px solid var(--rdp-accent-color);--rdp-disabled-opacity: .5;--rdp-outside-opacity: .75;--rdp-today-color: var(--rdp-accent-color);--rdp-dropdown-gap: .5rem;--rdp-months-gap: 2rem;--rdp-nav_button-disabled-opacity: .5;--rdp-nav_button-height: 2.25rem;--rdp-nav_button-width: 2.25rem;--rdp-nav-height: 2.75rem;--rdp-range_middle-background-color: var(--rdp-accent-background-color);--rdp-range_middle-color: inherit;--rdp-range_start-color: white;--rdp-range_start-background: linear-gradient( var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50% );--rdp-range_start-date-background-color: var(--rdp-accent-color);--rdp-range_end-background: linear-gradient( var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50% );--rdp-range_end-color: white;--rdp-range_end-date-background-color: var(--rdp-accent-color);--rdp-week_number-border-radius: 100%;--rdp-week_number-border: 2px solid transparent;--rdp-week_number-height: var(--rdp-day-height);--rdp-week_number-opacity: .75;--rdp-week_number-width: var(--rdp-day-width);--rdp-weeknumber-text-align: center;--rdp-weekday-opacity: .75;--rdp-weekday-padding: .5rem 0rem;--rdp-weekday-text-align: center;--rdp-gradient-direction: 90deg;--rdp-animation_duration: .3s;--rdp-animation_timing: cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction: -90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity: unset}.rdp-root{position:relative;box-sizing:border-box}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;justify-content:center;align-items:center;display:flex;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius)}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;position:relative;display:inline-flex;align-items:center;white-space:nowrap;border:0}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto Highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{border:none;background:none;padding:0;margin:0;cursor:pointer;font:inherit;color:inherit;-moz-appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;position:relative;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height)}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{display:inline-block;fill:var(--rdp-accent-color)}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform:rotate(180deg);transform-origin:50%}.rdp-dropdowns{position:relative;display:inline-flex;align-items:center;gap:var(--rdp-dropdown-gap)}.rdp-dropdown{z-index:2;opacity:0;appearance:none;position:absolute;inset-block-start:0;inset-block-end:0;inset-inline-start:0;width:100%;margin:0;padding:0;cursor:inherit;border:none;line-height:inherit}.rdp-dropdown_root{position:relative;display:inline-flex;align-items:center}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{display:flex;align-content:center;height:var(--rdp-nav-height);font-weight:700;font-size:large}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{position:absolute;inset-inline-start:0;top:0;height:var(--rdp-nav-height);display:inline-flex}.rdp-root[data-nav-layout=around] .rdp-button_next{position:absolute;inset-inline-end:0;top:0;height:var(--rdp-nav-height);display:inline-flex;justify-content:center}.rdp-months{position:relative;display:flex;flex-wrap:wrap;gap:var(--rdp-months-gap);max-width:fit-content}.rdp-month_grid{border-collapse:collapse}.rdp-nav{position:absolute;inset-block-start:0;inset-inline-end:0;display:flex;align-items:center;height:var(--rdp-nav-height)}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);font-weight:500;font-size:smaller;text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform)}.rdp-week_number{opacity:var(--rdp-week_number-opacity);font-weight:400;font-size:small;height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align)}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-weight:700;font-size:large}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.presence-container{padding:12px 20px 20px}.presence-container h2{margin-top:0}.presence-table{border-collapse:collapse;width:100%;text-align:center;table-layout:fixed;background-color:var(--background);color:var(--text)}.presence-table td{vertical-align:middle}.presence-table input[type=checkbox]{display:block;margin:0 auto}.presence-table th,.presence-table td{border:none;border-bottom:1px solid var(--border);padding:4px 8px}.presence-table input[type=checkbox]{width:16px;height:16px}.presence-table th:first-child,.presence-table td:first-child{width:190px;min-width:190px;max-width:190px;position:sticky;left:0;background-color:var(--background);z-index:12}.presence-table th.turn,.presence-table td.turn{box-shadow:inset 1px 0 #00000038}[data-theme=dark] .presence-table th.turn,[data-theme=dark] .presence-table td.turn{box-shadow:inset 1px 0 #ffffff24}.presence-table tbody tr:hover{background-color:transparent}.presence-table tbody td{position:relative}.presence-table tbody td :is(input,button,.presence-date-button,.presence-icon-button){position:relative;z-index:1}.presence-table tbody tr:hover td:after{content:"";position:absolute;inset:0;background:var(--row-hover);opacity:.3;pointer-events:none}.presence-table thead th{position:sticky;top:60px;background-color:var(--section-bg);border-bottom:2px solid var(--border);z-index:10}.presence-table thead th:first-child{z-index:15}.presence-comment-textarea{width:100%;border-radius:10px;border:1px solid var(--border);background:var(--background);color:var(--text);padding:10px;resize:vertical;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.presence-comment-textarea:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px #0891b240}.presence-date-button{width:100%;text-align:left;height:28px;padding:4px 8px;font-size:.85rem;line-height:1;border-radius:8px;border:1px solid var(--border);background:var(--background);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background var(--transition-fast),border-color var(--transition-fast)}.presence-date-button:hover{background:var(--row-hover)}.presence-date-button:disabled{opacity:.6;cursor:not-allowed}.presence-rdp.rdp-root{--rdp-accent-color: var(--accent-color);--rdp-background-color: var(--background);color:var(--text);margin:0}.presence-rdp .rdp-months{justify-content:center}.presence-rdp .rdp-month_caption{margin-bottom:6px}.presence-rdp .rdp-caption_label{font-weight:600;font-size:1rem}.presence-rdp .rdp-nav{gap:8px}.presence-rdp .rdp-button_previous,.presence-rdp .rdp-button_next{border-radius:999px;border:1px solid var(--border);background:var(--background);color:var(--accent-color);transition:background var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast)}.presence-rdp .rdp-button_previous:hover,.presence-rdp .rdp-button_next:hover{background:var(--row-hover);transform:translateY(-1px)}.presence-rdp .rdp-weekdays{margin-bottom:4px}.presence-rdp .rdp-weekday{opacity:.75;font-weight:600;font-size:.75rem;text-transform:uppercase}.presence-rdp .rdp-month_grid{border-collapse:separate;border-spacing:6px}.presence-rdp .rdp-day{padding:0;background:transparent}.presence-rdp .rdp-day_button{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.presence-rdp .rdp-day_button:hover{background:var(--row-hover);border-color:var(--border);transform:none}.presence-rdp .rdp-selected .rdp-day_button,.presence-rdp .rdp-selected .rdp-day_button:hover{background:var(--accent-color);color:#fff;border-color:transparent}.presence-rdp .rdp-today:not(.rdp-selected) .rdp-day_button{border-color:var(--accent-color);box-shadow:0 0 0 2px #0891b233}.presence-rdp .rdp-outside .rdp-day_button{opacity:.25}.presence-rdp .rdp-disabled .rdp-day_button{opacity:.25;cursor:not-allowed}.presence-rdp .rdp-day_button:focus-visible,.presence-rdp .rdp-button_previous:focus-visible,.presence-rdp .rdp-button_next:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.presence-date-footer{margin-left:auto}.presence-row-controls{display:flex;align-items:center;gap:6px}.presence-icon-button{-webkit-appearance:none;appearance:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);border:1px solid var(--border);background:var(--section-bg);color:var(--text);cursor:pointer;padding:0;line-height:0;transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.presence-icon-button svg{display:block}.presence-icon-button:hover{background:var(--row-hover);border-color:var(--border);transform:translateY(-1px)}.presence-icon-button:active{transform:none}.presence-icon-button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}.presence-icon-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.presence-icon-button:disabled:hover{background:var(--section-bg);border-color:var(--border)}.presence-icon-button--danger{color:#ef4444}.presence-icon-button--danger:hover{border-color:#ef4444}.presence-icon-button--accent{color:var(--accent-color)}.presence-icon-button--accent:hover{border-color:var(--accent-color)}.presence-icon-button--has-comment{background:#0891b21f;border-color:var(--accent-color);color:var(--accent-color)}.presence-icon-button--has-comment:hover{background:#0891b233}
