:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7fafb;--panel:#fff;--ink:#142235;--muted:#657386;--line:#d9e2ea;--navy:#12345f;--blue:#147aa5;--red:#a32735;--amber:#8a5b00;--green:#176845;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-size:15px;line-height:1.5}a{color:inherit}.topbar{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;justify-content:space-between;align-items:center;min-height:64px;padding:0 24px;display:flex;position:sticky;top:0}.brand{color:var(--navy);align-items:center;gap:10px;font-size:1rem;font-weight:850;text-decoration:none;display:inline-flex}.brand img{border-radius:7px;width:34px;height:34px}.nav{align-items:center;gap:6px;display:flex}.topbar-actions{align-items:center;gap:12px;display:flex}.nav a,.button,button,input,select{font:inherit;border-radius:7px}.nav a,.button,button{border:1px solid var(--line);min-height:36px;color:var(--ink);cursor:pointer;background:#fff;justify-content:center;align-items:center;padding:0 12px;font-weight:750;text-decoration:none;display:inline-flex}.nav a.active,.button.primary,button.primary{border-color:var(--navy);background:var(--navy);color:#fff}.button.danger,button.danger{color:var(--red);border-color:#e8c8cf}.account-menu{position:relative}.account-menu summary{cursor:pointer;list-style:none;display:inline-flex}.account-menu summary::-webkit-details-marker{display:none}.profile-avatar{border:1px solid var(--line);width:38px;height:38px;color:var(--navy);object-fit:cover;background:#e8f4f8;border-radius:999px;justify-content:center;align-items:center;font-size:.8rem;font-weight:850;display:inline-flex}.account-popover{z-index:30;border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;min-width:240px;padding:14px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 50px #14223529}.shell{width:min(1180px,100% - 36px);margin:28px auto 60px}.pagehead{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;display:flex}h1,h2,h3,p{margin-top:0}h1{color:var(--navy);letter-spacing:0;margin-bottom:6px;font-size:2.2rem;line-height:1.05}h2{color:var(--navy);letter-spacing:0;margin-bottom:12px;font-size:1.25rem;line-height:1.15}h3{letter-spacing:0;margin-bottom:8px;font-size:1rem}.muted{color:var(--muted)}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.panel{border:1px solid var(--line);background:var(--panel);border-radius:8px}.panel-head,.panel-body{padding:18px}.panel-head{border-bottom:1px solid var(--line)}.panel-head h2,.panel-head p{margin-bottom:0}.stack{gap:14px;display:grid}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}label{color:#32445a;gap:5px;font-size:.86rem;font-weight:750;display:grid}input,select{border:1px solid var(--line);width:100%;min-height:38px;color:var(--ink);background:#fff;padding:0 10px}.field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:12px 10px}th{color:#40536a;text-transform:uppercase;font-size:.78rem}.boats-table th:first-child,.boats-table td:first-child{text-align:center;width:6%}.boats-table th:nth-child(2),.boats-table td:nth-child(2){width:35%}.boats-table th:nth-child(3),.boats-table td:nth-child(3){width:10%}.boats-table th:nth-child(4),.boats-table td:nth-child(4){width:37%}.boats-table th:nth-child(5),.boats-table td:nth-child(5),.boats-table th:nth-child(6),.boats-table td:nth-child(6){text-align:center;width:6%}.status-cell{min-width:54px}.users-table th:first-child,.users-table td:first-child{width:24%}.users-table th:nth-child(2),.users-table td:nth-child(2){width:34%}.users-table th:nth-child(3),.users-table td:nth-child(3){width:24%}.users-table th:nth-child(4),.users-table td:nth-child(4){text-align:center;width:12%}.boat-cell>.muted,.slug-cell>.muted{overflow-wrap:anywhere;margin-top:2px;display:block}.action-cell form{margin:0;display:inline-flex}.compact-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stacked-form{gap:8px;display:grid}.compact-form input,.compact-form select{flex:130px;min-width:0}.compact-form button,.boats-table button{white-space:nowrap}.role-form{grid-template-columns:minmax(112px,1fr) 36px;align-items:center;gap:8px;width:min(220px,100%);margin:0;display:inline-grid}.role-form select{min-width:0}.editable-display{justify-content:space-between;align-items:center;gap:8px;min-height:38px;display:flex}.editable-display strong{overflow-wrap:anywhere;min-width:0}.viewer-launch-form{margin:0}.viewer-slug{appearance:none;color:var(--ink);cursor:pointer;font:inherit;overflow-wrap:anywhere;background:0 0;border:0;min-width:0;padding:0;text-decoration:none}.viewer-slug:hover,.viewer-slug:focus-visible{text-underline-offset:3px;text-decoration:underline}.slug-suffix{color:var(--muted);font-weight:500}.slug-hint{margin-top:4px}.edit-form{margin-bottom:2px}.edit-form input{flex:150px}.icon-button{width:36px;min-width:36px;min-height:36px;padding:0}.icon-button svg{fill:currentColor;width:18px;height:18px}.status-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:18px;height:18px}.icon-button.ghost{color:var(--muted);background:0 0;border-color:#0000}.icon-button.danger{color:var(--red);background:#fff8f9;border-color:#efcbd2}.icon-button.ghost:hover{border-color:var(--line);color:var(--ink);background:#f8fbfc}.icon-button:disabled{cursor:not-allowed;opacity:.42}.icon-button:disabled:hover{color:var(--muted);background:0 0;border-color:#0000}.status-icon{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.status-icon.connected{color:var(--green);background:#eef9f2;border-color:#b8dfc9}.status-icon.disconnected{color:var(--red);background:#fff3f5;border-color:#f0c8cf}.status-icon.never{color:var(--muted)}.is-hidden{display:none}.add-row-cell{text-align:center}.add-row-button{border-radius:999px;width:36px;min-height:36px;padding:0;font-size:1.35rem;line-height:1}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.badge{min-height:24px;color:var(--blue);background:#e8f4f8;border-radius:999px;align-items:center;padding:0 8px;font-size:.78rem;font-weight:800;display:inline-flex}.badge.admin,.badge.owner{color:var(--green);background:#e9f4ee}.banner{color:#4d3300;background:#fff1cc;padding:12px 24px;font-weight:800}.banner.impersonation{color:#6d1020;background:#ffe0e6}.profile-panel{width:min(520px,100%)}.profile-form input[readonly],.profile-panel input[readonly]{color:var(--muted);background:#f7fafb}.form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.message{border:1px solid var(--line);border-left:4px solid var(--blue);background:#fff;border-radius:8px;margin-bottom:16px;padding:12px 14px}.message.error{border-left-color:var(--red)}.modal{border:1px solid var(--line);width:min(520px,100% - 32px);color:var(--ink);background:#fff;border-radius:8px;padding:0;box-shadow:0 22px 70px #1422353d}.modal::backdrop{background:#14223575}.modal-head,.modal-body,.modal-actions{padding:16px 18px}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;display:flex}.modal-head h2,.modal-body p{margin-bottom:0}.modal-body{gap:12px;display:grid}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;display:flex}.modal form{margin:0}.secret-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.secret{overflow-wrap:anywhere;background:#fff9eb;border:1px solid #f0d49a;border-radius:7px;max-width:100%;padding:7px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;display:inline-flex}.login{place-items:center;min-height:100svh;padding:24px;display:grid}.login .panel{width:min(440px,100%)}@media (width<=820px){.topbar,.pagehead{flex-direction:column;align-items:flex-start}.grid,.field-grid{grid-template-columns:1fr}.nav{flex-wrap:wrap}.secret-row{grid-template-columns:1fr}}
