:root{--ink: #0D1526;--ink-2: #131E36;--ink-3: #1C2A4A;--paper: #F7F8FB;--card: #FFFFFF;--line: #E3E7F0;--line-dark: rgba(255, 255, 255, .08);--text: #1A2438;--text-soft: #5A6478;--muted: #8B94A8;--muted-dark: #7C87A3;--cobalt: #3D6BFF;--cobalt-deep: #2A50D8;--amber: #E8A13C;--red: #D64545;--green: #2E9E6B;--mono: "Spline Sans Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:Manrope,system-ui,sans-serif;font-size:15px;color:var(--text);background:var(--ink)}button{font-family:inherit;cursor:pointer}a{color:var(--cobalt);text-decoration:none}a:hover{text-decoration:underline}.boot{height:100%;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted-dark);letter-spacing:.04em}.vaultspin{width:22px;height:22px;border:2.5px solid rgba(61,107,255,.25);border-top-color:var(--cobalt);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.mark{width:30px;height:30px;flex:none}.auth{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(700px 500px at 80% -10%,rgba(61,107,255,.14),transparent 60%),radial-gradient(600px 500px at -10% 110%,rgba(61,107,255,.08),transparent 60%),var(--ink)}.auth__panel{width:min(410px,100%);background:var(--card);border-radius:14px;padding:36px 36px 28px;box-shadow:0 30px 80px #040a1a8c}.auth__brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:21px;letter-spacing:.045em;color:var(--ink)}.auth__brand .mark{color:var(--cobalt)}.brand__name{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase}.brand__name em{font-style:normal;font-family:var(--mono);font-weight:500;font-size:.5em;letter-spacing:.14em;color:var(--cobalt);border:1px solid currentColor;border-radius:5px;padding:2px 6px;transform:translateY(1px)}.auth__tag{margin:6px 0 22px;color:var(--muted);font-size:13px;letter-spacing:.02em}.auth__tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:4px;margin-bottom:20px}.auth__tabs button{border:0;background:transparent;padding:9px 0;border-radius:6px;font-weight:600;font-size:13.5px;color:var(--muted)}.auth__tabs button.is-active{background:var(--card);color:var(--ink);box-shadow:0 1px 4px #0d15261f}.auth form{display:grid;gap:14px}.auth label{display:grid;gap:6px;font-size:12.5px;font-weight:700;color:var(--text);letter-spacing:.02em}.auth input{font:inherit;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);outline:none;transition:border-color .2s,box-shadow .2s}.auth input:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff26;background:#fff}.btn-primary{border:0;border-radius:8px;padding:12px;background:var(--cobalt);color:#fff;font-weight:700;font-size:14.5px;letter-spacing:.02em;transition:background .2s}.btn-primary:hover{background:var(--cobalt-deep)}.btn-primary:disabled{opacity:.6;cursor:wait}.btn-ghost{border:1px solid var(--line);background:transparent;border-radius:8px;padding:10px 18px;font-weight:600;color:var(--text);margin-top:18px}.auth__error{min-height:1em;margin:0;color:var(--red);font-size:13px}.auth__note{color:var(--text);font-size:14px;line-height:1.6;margin:0 0 10px}.auth__foot{margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px;line-height:1.7}.auth__panel--picker{width:min(460px,100%)}.picker{display:grid;gap:10px;margin:6px 0 18px}.picker__room{display:grid;gap:3px;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:14px 16px;transition:border-color .15s,box-shadow .15s}.picker__room:hover{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1f}.picker__name{font-weight:700;font-size:15px;color:var(--ink)}.picker__meta{font-size:12px;color:var(--muted)}.invite--room{max-width:100%}.invite--room input[type=text]{flex:1;min-width:180px;font:inherit;font-size:14px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);outline:none}.invite--room input[type=text]:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1f}.pending__badge{display:inline-block;margin:14px 0;padding:6px 12px;border-radius:999px;background:#e8a13c24;color:#a96f1d;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.room{height:100%;display:grid;grid-template-columns:264px 1fr}.side{background:linear-gradient(180deg,var(--ink-2),var(--ink));color:#e8ecf6;display:flex;flex-direction:column;padding:22px 14px 16px;border-right:1px solid var(--line-dark)}.side__brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:14.5px;letter-spacing:.05em;padding:0 10px}.side__brand .mark{color:var(--cobalt);width:26px;height:26px}.side__brand .brand__name em{color:#8fa8ff}.side__sub{margin:4px 0 22px;padding:0 10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-dark)}.side__room{margin:0 10px 18px;font:inherit;font-size:13px;font-weight:600;color:#e8ecf6;background:#ffffff0f;border:1px solid var(--line-dark);border-radius:8px;padding:8px 10px;outline:none;cursor:pointer}.side__room:focus{border-color:var(--cobalt)}.side__room option{color:var(--ink);background:#fff}.side__roomname{margin:0 10px 18px;font-size:13px;font-weight:700;color:#e8ecf6;line-height:1.4}.side__nav{display:grid;gap:2px}.side__nav button{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;border:0;background:transparent;color:#c6cddf;padding:10px;border-radius:8px;font-size:13.5px;font-weight:600;text-align:left;transition:background .15s,color .15s}.side__nav button:hover{background:#ffffff0d;color:#fff}.side__nav button.is-active{background:#3d6bff2e;color:#fff}.side__nav em{font-style:normal;font-family:var(--mono);font-size:11.5px;color:var(--muted-dark);background:#ffffff0f;padding:2px 7px;border-radius:999px}.side__nav button.is-active em{color:#b9c8ff;background:#3d6bff40}.side__user{margin-top:auto;padding:14px 10px 0;border-top:1px solid var(--line-dark);display:grid;gap:8px}.side__email{font-family:var(--mono);font-size:11.5px;color:var(--muted-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side__out{justify-self:start;border:1px solid var(--line-dark);background:transparent;color:#c6cddf;border-radius:7px;padding:6px 14px;font-size:12.5px;font-weight:600}.side__out:hover{background:#ffffff0f}.main{background:var(--paper);display:flex;flex-direction:column;min-width:0}.main__bar{display:flex;align-items:center;gap:16px;padding:16px 26px;background:var(--card);border-bottom:1px solid var(--line)}.main__bar input{flex:1;max-width:420px;font:inherit;font-size:14px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);outline:none}.main__bar input:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1f;background:#fff}.main__meta{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.main__scroll{flex:1;overflow:auto;padding:20px 26px}.docs{width:100%;border-collapse:separate;border-spacing:0;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.docs th{text-align:left;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:#fbfcfe;padding:12px 16px;border-bottom:1px solid var(--line)}.docs td{padding:13px 16px;border-bottom:1px solid var(--line);vertical-align:middle}.docs tr:last-child td{border-bottom:0}.docs tbody tr{transition:background .12s}.docs tbody tr:hover{background:#f4f7ff}.docs__title{font-weight:600;color:var(--ink)}.docs__cat{color:var(--muted);font-size:13px;white-space:nowrap}.docs__size{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.docs__actions{text-align:right;white-space:nowrap}.chip{display:inline-block;font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.06em;padding:4px 8px;border-radius:6px;background:#eef1f7;color:var(--muted)}.chip--pdf{background:#d645451a;color:#b33636}.chip--doc{background:#3d6bff1a;color:var(--cobalt-deep)}.chip--xls{background:#2e9e6b1f;color:#1f7a50}.act{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px 14px;font-size:12.5px;font-weight:600;color:var(--text);margin-left:6px;transition:all .15s}.act:hover{border-color:var(--cobalt);color:var(--cobalt)}.act--dl{background:var(--ink);border-color:var(--ink);color:#fff}.act--dl:hover{background:var(--ink-3);color:#fff;border-color:var(--ink-3)}.act:disabled{opacity:.55;cursor:wait}.docs__empty{color:var(--muted);text-align:center;padding:40px 0}.main__foot{padding:12px 26px;border-top:1px solid var(--line);background:var(--card);color:var(--muted);font-size:12px;letter-spacing:.02em}.num{font-family:var(--mono);font-weight:500;font-style:normal;color:var(--cobalt)}.side__nav .num{margin-right:2px}.th-num{width:52px}.docs__num{font-family:var(--mono);font-size:12px;color:var(--muted);white-space:nowrap}.side__sub--admin{margin-top:22px}.main__bar--admin{gap:18px}.admin__title{margin:0;font-size:17px;font-weight:800;color:var(--ink)}.act--danger:hover{border-color:var(--red);color:var(--red)}.act:disabled{opacity:.45;cursor:not-allowed}.main__foot.is-error{color:var(--red)}.btn-primary--sm{padding:9px 18px;font-size:13px}.fchips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.fchip{display:flex;align-items:center;gap:7px;padding:8px 12px;background:var(--card);border:1px solid var(--line);border-radius:9px;font-size:13px;font-weight:600;color:var(--text);cursor:grab;-webkit-user-select:none;user-select:none;transition:border-color .15s,box-shadow .15s,opacity .15s}.fchip:hover{border-color:#c9d4ee}.fchip.is-active{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1f}.fchip.is-dragging{opacity:.4}.fchip.is-over{border-color:var(--cobalt);background:#eef3ff}.fchip em{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--muted);background:var(--paper);padding:2px 7px;border-radius:999px}.fchip--new{padding:0;border-style:dashed;background:transparent}.fchip--new input{font:inherit;font-size:13px;border:0;background:transparent;padding:8px 12px;width:130px;outline:none;color:var(--text)}.fops{display:flex;align-items:center;gap:8px;margin:4px 0 12px}.fops__label{font-size:13px;color:var(--muted);margin-right:auto}.dropzone{border:1.5px dashed #C4CDE2;border-radius:12px;background:#3d6bff08;padding:22px;text-align:center;margin-bottom:16px;transition:border-color .15s,background .15s}.dropzone.is-over{border-color:var(--cobalt);background:#3d6bff14}.dropzone p{margin:0 0 4px;color:var(--text);font-size:14px}.dropzone__hint{color:var(--muted)!important;font-size:12px!important}.docs--admin tbody tr{cursor:grab}.docs--admin tbody tr.is-dragging{opacity:.4}.docs--admin tbody tr.is-over td{border-top:2px solid var(--cobalt)}.docs__grip{width:26px;color:#b7c0d4;font-size:15px;cursor:grab}.invite{display:flex;gap:8px;margin-bottom:6px;flex-wrap:wrap}.invite input[type=email]{flex:1;min-width:220px;max-width:380px;font:inherit;font-size:14px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card);outline:none}.invite input:focus{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1f}.invite select,.roleSel{font:inherit;font-size:13px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text)}.invite__hint{color:var(--muted);font-size:12.5px;margin:0 0 16px}.you{font-family:var(--mono);font-size:10px;color:var(--cobalt-deep);background:#3d6bff1a;border-radius:999px;padding:2px 8px;vertical-align:middle}.stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-bottom:16px}.stat{text-align:left;display:grid;gap:3px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.stat:hover{border-color:var(--cobalt);box-shadow:0 0 0 3px #3d6bff1a}.stat__email{font-weight:700;font-size:13px;color:var(--ink);overflow:hidden;text-overflow:ellipsis}.stat__nums{font-family:var(--mono);font-size:11.5px;color:var(--cobalt-deep)}.stat__last{font-size:11.5px;color:var(--muted)}#actFilter{font:inherit;font-size:13.5px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);outline:none;width:260px}@media (max-width: 900px){.room{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:auto;min-height:100%}.side{flex-direction:column;padding-bottom:10px}.side__nav{display:flex;overflow-x:auto;gap:6px;padding-bottom:6px}.side__nav button{white-space:nowrap}.side__user{flex-direction:row;display:flex;align-items:center;justify-content:space-between;padding-top:10px}.docs__cat,.docs th:nth-child(3){display:none}.main__scroll{padding:14px}.main__bar{padding:12px 14px}}
