html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}*{box-sizing:border-box}:root{--c-primary:#0e9f6e;--c-primary-deep:#0a7d57;--c-teal:#14b8a6;--c-blue:#2f6bed;--c-indigo:#4f46e5;--c-violet:#7a5af8;--c-violet-deep:#5b3fd6;--c-amber:#f59e0b;--c-orange:#f97316;--c-rose:#f43f5e;--g-primary:linear-gradient(120deg, #0e9f6e, #14b8a6);--g-blue:linear-gradient(120deg, #2f6bed, #4f46e5);--g-violet:linear-gradient(120deg, #7a5af8, #5b3fd6);--g-amber:linear-gradient(120deg, #f59e0b, #f97316);--g-brand-dark:linear-gradient(160deg, #0c1a2a 0%, #0a1622 55%, #0b1e1a 100%);--g-auth-dark:linear-gradient(150deg, #06231b 0%, #0a2233 52%, #122046 100%);--radius-xs:8px;--radius-sm:10px;--radius:14px;--radius-lg:18px;--radius-xl:24px;--pill:999px;--font:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--bg:#eef1f6;--bg-mesh:radial-gradient(900px 380px at 6% -6%, #0e9f6e1a, transparent 55%), radial-gradient(820px 420px at 100% -8%, #2f6bed17, transparent 52%), radial-gradient(700px 500px at 75% 110%, #7a5af80f, transparent 60%);--surface:#fff;--surface-2:#f8fafc;--surface-3:#f1f5f9;--surface-glass:#ffffffb8;--border:#e6ebf1;--border-strong:#d5dde7;--text:#0f172a;--text-2:#475569;--text-3:#64748b;--text-mut:#94a3b8;--primary-soft:#0e9f6e1a;--primary-soft-2:#0e9f6e24;--shadow-sm:0 1px 2px #0f172a0d, 0 1px 1px #0f172a0a;--shadow-md:0 10px 26px #0f172a12, 0 3px 8px #0f172a0d;--shadow-lg:0 26px 60px #0f172a21, 0 8px 18px #0f172a0f;--shadow-color:0 12px 26px #0e9f6e47;--sider-bg:linear-gradient(180deg, #0c1a2a 0%, #0a1622 58%, #0b1e1a 100%);--sider-text:#ffffffa3;--sider-text-strong:#fff;--sider-muted:#ffffff57;--sider-hover:#ffffff0f;--sider-border:#ffffff14;--st-success-bg:#0e9f6e1f;--st-success-fg:#0a7d57;--st-success-dot:#0e9f6e;--st-warning-bg:#f59e0b29;--st-warning-fg:#955c04;--st-warning-dot:#f59e0b;--st-danger-bg:#f43f5e1f;--st-danger-fg:#be1238;--st-danger-dot:#f43f5e;--st-info-bg:#2f6bed1f;--st-info-fg:#1e4fbf;--st-info-dot:#2f6bed;--st-violet-bg:#7a5af821;--st-violet-fg:#432ea3;--st-violet-dot:#7a5af8;--st-neutral-bg:#f1f5f9;--st-neutral-fg:#475569;--st-neutral-dot:#94a3b8;--wa-green:var(--c-primary);--wa-green-deep:var(--c-primary-deep);--wa-teal:#0c1a2a;--wa-ink:var(--text);--wa-muted:var(--text-3);--wa-surface:var(--surface)}[data-theme=dark]{--bg:#0a1018;--bg-mesh:radial-gradient(900px 400px at 6% -6%, #0e9f6e29, transparent 55%), radial-gradient(820px 420px at 100% -8%, #2f6bed26, transparent 52%), radial-gradient(700px 520px at 78% 112%, #7a5af81f, transparent 60%);--surface:#121a28;--surface-2:#0e1622;--surface-3:#172131;--surface-glass:#121a28b8;--border:#ffffff14;--border-strong:#ffffff24;--text:#e8eef7;--text-2:#aebbd0;--text-3:#8595ae;--text-mut:#5e6e88;--primary-soft:#14b8a624;--primary-soft-2:#14b8a633;--shadow-sm:0 1px 2px #0006;--shadow-md:0 12px 30px #00000073, 0 3px 8px #0006;--shadow-lg:0 30px 64px #0009, 0 8px 18px #00000073;--shadow-color:0 12px 26px #0e9f6e66;--sider-bg:linear-gradient(180deg, #0b1320 0%, #0a1019 60%, #0a1714 100%);--sider-text:#fff9;--sider-text-strong:#fff;--sider-muted:#ffffff4d;--sider-hover:#ffffff0d;--sider-border:#ffffff12;--st-success-bg:#10b9812e;--st-success-fg:#5ce0ae;--st-success-dot:#16c088;--st-warning-bg:#f59e0b2e;--st-warning-fg:#fbc661;--st-warning-dot:#f59e0b;--st-danger-bg:#f43f5e33;--st-danger-fg:#ff8fa3;--st-danger-dot:#f43f5e;--st-info-bg:#2f6bed38;--st-info-fg:#9dbbfa;--st-info-dot:#3b82f6;--st-violet-bg:#7a5af838;--st-violet-fg:#c3b2fb;--st-violet-dot:#8b6cf9;--st-neutral-bg:#ffffff12;--st-neutral-fg:#b7c2d4;--st-neutral-dot:#7c8ba5}.sider-light{--sider-bg:linear-gradient(180deg, #fbfcfe, #f1f5fa);--sider-text:var(--text-3);--sider-text-strong:var(--text);--sider-muted:var(--text-mut);--sider-hover:#0f172a0a;--sider-border:var(--border)}[data-theme=dark] .sider-light{--sider-bg:linear-gradient(180deg, #141d2c, #0f1825);--sider-text:var(--text-3);--sider-text-strong:var(--text);--sider-muted:var(--text-mut);--sider-hover:#ffffff0d;--sider-border:var(--border)}html,body,#root{min-height:100%;margin:0;padding:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body:before{content:"";background:var(--bg-mesh);pointer-events:none;z-index:-1;position:fixed;inset:0}a{color:var(--c-primary-deep);text-decoration:none}a:hover{color:var(--c-primary)}::selection{background:#0e9f6e38}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.page-fade{opacity:1}@media (prefers-reduced-motion:no-preference){.page-fade{animation:.34s cubic-bezier(.22,.61,.36,1) pageIn}}.ant-tag.jo-tag{border-radius:var(--pill);border:none;align-items:center;gap:6px;margin-inline-end:0;padding:1px 10px;font-size:12px;font-weight:600;line-height:1.6;display:inline-flex}.jo-tag--success{background:var(--st-success-bg);color:var(--st-success-fg)}.jo-tag--warning{background:var(--st-warning-bg);color:var(--st-warning-fg)}.jo-tag--danger{background:var(--st-danger-bg);color:var(--st-danger-fg)}.jo-tag--info{background:var(--st-info-bg);color:var(--st-info-fg)}.jo-tag--violet{background:var(--st-violet-bg);color:var(--st-violet-fg)}.jo-tag--neutral{background:var(--st-neutral-bg);color:var(--st-neutral-fg)}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous){background:var(--g-primary);border-color:#0000}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous):hover{filter:brightness(1.05);background:var(--g-primary)!important}@media (prefers-reduced-motion:no-preference){.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous){transition:filter .2s,transform .14s,box-shadow .22s}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous):hover{transform:translateY(-1px)}.ant-btn-primary:not(:disabled):not(.ant-btn-dangerous):active{transform:translateY(0)}}.ant-btn-primary.btn-blue,.ant-btn-primary.btn-blue:hover{box-shadow:0 10px 22px #2f6bed4d;background:var(--g-blue)!important}.ant-btn-primary.btn-violet,.ant-btn-primary.btn-violet:hover{box-shadow:0 10px 22px #7a5af84d;background:var(--g-violet)!important}.ant-card{border-color:var(--border)}@media (prefers-reduced-motion:no-preference){.ant-card{transition:box-shadow .25s,border-color .2s}.ant-card:hover{box-shadow:var(--shadow-md)}}.jo-brand{align-items:center;gap:10px;display:inline-flex}.jo-brand-mark{color:#fff;background:var(--g-primary);border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:800;display:inline-flex;box-shadow:0 6px 16px #0e9f6e66}.jo-brand-text{letter-spacing:-.02em;font-size:18px;font-weight:800}.jo-brand-text-a{color:var(--text)}.jo-brand-text-b{color:#0e9f6e}.jo-brand--ondark .jo-brand-text-a{color:#fff}.jo-brand--ondark .jo-brand-text-b{color:#5ce0ae}.jo-brand--sm .jo-brand-mark{border-radius:9px;width:30px;height:30px;font-size:15px}.jo-brand--sm .jo-brand-text{font-size:16px}.jo-brand--lg .jo-brand-mark{border-radius:13px;width:48px;height:48px;font-size:24px}.jo-brand--lg .jo-brand-text{font-size:24px}.jo-confirm-modal .ant-modal-content{box-shadow:var(--shadow-lg);border-radius:16px}.jo-confirm-modal .ant-modal-confirm-title{color:var(--text);font-size:18px;font-weight:700}.jo-confirm-modal .ant-modal-confirm-content{color:var(--text-2);margin-top:10px;line-height:1.6}.jo-confirm-modal .ant-modal-confirm-btns{gap:12px;width:100%;margin-top:20px;display:flex}.jo-confirm-modal .ant-modal-confirm-btns .ant-btn{border-radius:10px;flex:1;height:42px;font-weight:600}.jo-confirm-modal .ant-modal-confirm-btns .ant-btn-default{order:1}.jo-confirm-modal .ant-modal-confirm-btns .ant-btn-primary{order:2}#root{background:0 0;min-height:100vh;position:relative}
