@font-face{font-family:Inter;src:url('./fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{color-scheme:light;--brand:#4338ca;--brand-hover:#312aa0;--brand-soft:#eceafd;--paper:#f5f6fb;--surface:#fff;--ink:#141a33;--muted:#58607f;--line:#e2e5f1;--success:#176847;--success-bg:#e4f5eb;--amber:#805000;--amber-bg:#fff3d7;--danger:#ac283e;--danger-bg:#ffe9ed;--shadow:0 8px 30px #1f225b0a;--radius:14px;--focus:#6557e8;font:16px/1.55 Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--brand:#a298ff;--brand-hover:#bbb3ff;--brand-soft:#28234e;--paper:#0d1021;--surface:#171b31;--ink:#f1f2ff;--muted:#b1b9d4;--line:#30364f;--success:#89ddae;--success-bg:#183e32;--amber:#ffd389;--amber-bg:#49351b;--danger:#ffabbb;--danger-bg:#4a2332;--shadow:0 8px 30px #0002;--focus:#c1baff}}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button:disabled{cursor:not-allowed;opacity:.55}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:720}h2{font-size:1.25rem}h3{font-size:1.05rem}small,.help{font-size:.875rem}svg{vertical-align:middle;flex-shrink:0}button svg,a svg{pointer-events:none}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:16px}.app-layout{min-height:100vh}.sidebar{width:266px;background:var(--surface);border-right:1px solid var(--line);padding:30px 20px 20px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:40;overflow:auto}.brand{display:flex;align-items:center;gap:12px}.brand-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--brand);color:var(--surface);flex-shrink:0}.brand-name{font-size:1.1rem;font-weight:750;line-height:1.1}.brand-name small{display:block;margin-top:8px;font-weight:450;color:var(--muted)}.workspace-label,.nav-group-label{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:30px 12px 10px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{border:0;background:none;color:var(--muted);display:flex;align-items:center;gap:11px;text-align:left;padding:12px;border-radius:10px;font-size:.875rem;min-height:44px}.nav button:hover,.nav button.active{background:var(--brand-soft);color:var(--brand)}.nav button.active{font-weight:700}.nav-badge{margin-left:auto;background:var(--amber-bg);color:var(--amber);padding:0 7px;border-radius:20px}.sidebar-bottom{margin-top:auto;padding-top:30px}.side-note{background:var(--paper);border-radius:12px;padding:16px;margin-top:15px;font-size:.875rem}.side-note p{margin:6px 0 0;color:var(--muted)}.side-foot{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-top:24px}.main{margin-left:266px;min-width:0}.topbar{height:84px;padding:0 36px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--surface)}.breadcrumb,.top-actions{display:flex;align-items:center;gap:12px;font-size:.875rem}.crumb-parent,.subtext,.muted{color:var(--muted)}.secure{display:flex;align-items:center;gap:6px;color:var(--muted)}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:650}.mobile-menu{display:none;border:0;background:none;color:var(--ink);min-width:44px;min-height:44px}.content{max-width:1480px;margin:auto;padding:36px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:26px}.page-head h1{margin:0 0 10px}.page-head p{margin:0;max-width:700px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--brand);color:var(--surface);border:1px solid transparent;padding:11px 18px;min-height:44px;border-radius:10px;font-weight:650;font-size:.875rem;white-space:normal;transition:background .15s,transform .15s;text-align:center}.btn:hover{background:var(--brand-hover);transform:translateY(-1px);text-decoration:none}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn.secondary:hover{background:var(--brand-soft);color:var(--brand)}.btn.ghost{background:transparent;color:var(--brand)}.btn.danger{background:var(--danger-bg);color:var(--danger)}.btn.small{padding:8px 12px;font-size:.8125rem;min-height:40px}.btn.full{width:100%}.text-link,.card-link{background:none;border:0;color:var(--brand);font-weight:650;padding:8px 0;font-size:.875rem}.card-link{display:flex;align-items:center;gap:10px}.icon-btn,.modal-close{width:44px;height:44px;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:10px;display:inline-grid;place-items:center}.icon-btn:hover,.modal-close:hover{background:var(--brand-soft);color:var(--brand)}.panel,.form-card,.access-card,.steps-panel,.privacy-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:24px}.panel{margin-bottom:24px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.panel-title h2,.panel-title h3{margin:0}.card-icon{width:46px;height:46px;display:grid;place-items:center;color:var(--brand);background:var(--brand-soft);border-radius:12px;margin-bottom:18px}.empty{text-align:center;padding:40px 16px}.empty .card-icon{margin:0 auto 18px}.empty p{max-width:480px;margin:0 auto 20px;color:var(--muted)}.footer{border-top:1px solid var(--line);margin-top:36px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:.8125rem;color:var(--muted)}.footer a{color:var(--brand)}.form-card{max-width:460px;margin:25px auto 50px;padding:32px}.form-card.wide{max-width:700px}.form-card h1{font-size:1.8rem}.form-group{margin-bottom:20px;min-width:0}.form-group label{display:block;font-size:.875rem;font-weight:650;margin-bottom:8px}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);padding:11px 13px;min-height:46px}input::placeholder{color:var(--muted);opacity:1}input[type=checkbox]{accent-color:var(--brand);width:19px;height:19px;flex-shrink:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-error{display:none;color:var(--danger);background:var(--danger-bg);padding:12px;border-radius:10px;margin-bottom:16px;font-size:.875rem}.form-error.visible{display:block}.form-foot{text-align:center;font-size:.875rem;color:var(--muted);margin:20px 0 0}.help{color:var(--muted);line-height:1.7}.check{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-size:.875rem}.divider{border:0;border-top:1px solid var(--line);margin:24px 0}.password-field{position:relative}.password-field input{padding-right:56px}.password-toggle{position:absolute;right:3px;top:3px;width:40px;height:40px;background:none;border:0;border-radius:8px;color:var(--muted);display:grid;place-items:center}.password-toggle:hover,.password-toggle.revealed{color:var(--brand);background:var(--brand-soft)}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:30px;font-size:.75rem;font-weight:650;background:var(--brand-soft);color:var(--brand);white-space:nowrap}.badge.active,.badge.approved,.badge.processed{color:var(--success);background:var(--success-bg)}.badge.pending,.badge.suspended{color:var(--amber);background:var(--amber-bg)}.badge.rejected,.badge.revoked,.badge.dismissed{color:var(--danger);background:var(--danger-bg)}.badge.neutral{color:var(--muted);background:var(--paper)}.notice{display:flex;align-items:flex-start;gap:14px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--brand-soft);margin-bottom:22px;font-size:.875rem}.notice>svg{color:var(--brand);margin-top:3px}.notice p{margin:0}.notice strong{display:block;margin-bottom:5px}.notice.warning{background:var(--amber-bg);color:var(--amber)}.notice.warning>svg{color:var(--amber)}.notice .btn{margin-left:auto;flex-shrink:0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.stat-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:.875rem}.stat-number{font-size:2.2rem;font-weight:750;letter-spacing:-.04em;margin:8px 0}.stat small{color:var(--muted)}.table-wrap{overflow:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}th{padding:12px;color:var(--muted);background:var(--paper);font-size:.75rem;font-weight:650;white-space:nowrap}td{padding:16px 12px;border-bottom:1px solid var(--line);white-space:nowrap}tbody tr:last-child td{border-bottom:0}.cell-title{display:block;font-weight:600}.cell-sub{display:block;font-size:.8125rem;color:var(--muted);margin-top:4px}.doc-cell,.actions{display:flex;align-items:center;gap:10px}.file-icon{display:grid;place-items:center;min-width:40px;height:46px;border-radius:9px;background:var(--brand-soft);color:var(--brand);font-size:.75rem;font-weight:700}.file-icon.xml{background:var(--amber-bg);color:var(--amber)}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:24px;flex-wrap:wrap}.search{position:relative;flex:1;min-width:180px}.search svg{position:absolute;left:14px;top:15px;color:var(--muted)}.search input{padding-left:43px}.toolbar select{width:auto;min-width:170px}.modal-overlay{position:fixed;inset:0;z-index:100;background:#080d2599;display:flex;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(4px)}.modal{background:var(--surface);border:1px solid var(--line);border-radius:16px;width:620px;max-width:100%;max-height:92dvh;overflow:auto;box-shadow:0 25px 100px #0003}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:24px 24px 0}.modal-header h2{margin:0}.modal-body{padding:24px}.secret,.code{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:18px;font:.8125rem/1.8 Consolas,monospace;margin:18px 0}.qr-result{text-align:center}.qr-result img{width:220px;height:220px;background:#fff;padding:12px;border-radius:12px}.qr-choice{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:12px 0}.qr-choice label{font-size:.875rem}.qr-docs{margin-bottom:24px}.message-card{border:1px solid var(--line);border-radius:12px;padding:20px;margin-top:16px}.message-card .meta{font-size:.8125rem;color:var(--muted);margin-bottom:12px}.message-file{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid var(--line);font-size:.875rem}.message-file>span{overflow-wrap:anywhere;min-width:0}.event-detail{white-space:normal;max-width:280px;overflow-wrap:anywhere;font-size:.8125rem;color:var(--muted)}.link-box{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--brand-soft)}.link-box strong{display:block;margin-bottom:6px}.link-box p{margin:0;color:var(--muted);font-size:.875rem}.docs-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px}.docs-aside{padding:24px;background:var(--brand-soft);border-radius:14px;align-self:start;font-size:.875rem;color:var(--muted)}.doc-heading{margin-top:30px;display:flex;align-items:center;gap:10px}.api-tag{font-size:.75rem;color:var(--success);background:var(--success-bg);padding:5px 8px;border-radius:5px}.support-grid,.info-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.support-intro{padding:40px;background:var(--brand-soft);border-radius:var(--radius);margin-bottom:24px}.support-intro p{max-width:620px;color:var(--muted)}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--brand);margin-bottom:18px}.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;padding:40px;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:40px;overflow:hidden}.hero h1{font-size:clamp(2.3rem,4vw,3.5rem)}.hero h1 em{font-style:normal;color:var(--brand)}.hero-copy>p{color:var(--muted);max-width:520px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 16px}.hero-note{font-size:.8125rem;color:var(--muted)}.hero-art{display:flex;align-items:center;justify-content:center;position:relative}.document-art{width:270px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:var(--shadow);transform:rotate(4deg)}.art-title{display:flex;justify-content:space-between;font-size:.75rem;font-weight:650;color:var(--brand)}.art-line{height:7px;background:var(--line);margin:20px 0;width:90%}.art-line.short{width:55%}.art-divider{border-top:1px solid var(--line)}.art-doc-row{padding:15px 0;border-bottom:1px solid var(--line);font-size:.8125rem;display:flex;gap:10px}.art-label{background:var(--brand-soft);color:var(--brand);padding:8px;border-radius:6px;margin-top:20px;font-size:.75rem}.art-stamp{position:absolute;bottom:0;right:0;background:var(--surface);border:1px solid var(--line);padding:12px;border-radius:12px;font-size:.75rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.section-heading h2{margin:0}.section-heading small{color:var(--muted)}.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:36px}.access-card p{font-size:.875rem;color:var(--muted)}.steps{display:flex;gap:18px}.step{flex:1;font-size:.875rem;color:var(--muted)}.step b{display:block;color:var(--brand);font-size:1.3rem}.step strong{display:block;color:var(--ink);margin:12px 0 8px}.privacy-panel{display:flex;align-items:center;gap:20px}.privacy-panel>svg{color:var(--brand)}.privacy-panel p{color:var(--muted);font-size:.875rem;margin:0}.list-info{color:var(--muted);line-height:2}.mb0{margin-bottom:0}.mt20{margin-top:20px}.wrap{white-space:normal}.align-right{text-align:right}.mobile-only{display:none}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,100px);background:var(--ink);color:var(--paper);border-radius:12px;padding:15px 22px;font-size:.875rem;box-shadow:var(--shadow);z-index:200;opacity:0;transition:.2s;max-width:90vw;text-align:center;pointer-events:none}#toast.show{transform:translate(-50%,0);opacity:1}.skip-link{position:fixed;top:-100px;left:16px;padding:12px;background:var(--surface);z-index:300}.skip-link:focus{top:12px}
@media(max-width:1150px){.sidebar{width:230px;padding:24px 14px}.main{margin-left:230px}.content{padding:28px}.topbar{padding:0 28px}.secure{display:none}.docs-grid{grid-template-columns:1fr}.docs-aside{display:none}.hero{padding:28px}.hero-art{transform:scale(.9)}.support-grid,.info-row{grid-template-columns:1fr}.stats{gap:12px}.stat{padding:18px}}
@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:270px;box-shadow:var(--shadow)}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.mobile-menu{display:grid;place-items:center}.topbar{height:72px;padding:0 16px}.content{padding:24px 16px}.crumb-parent,.hide-mobile{display:none}.breadcrumb{gap:4px}.top-actions{gap:8px}.hero{grid-template-columns:1fr;padding:28px}.hero-art{display:none}.page-head{flex-wrap:wrap}.stats{grid-template-columns:1fr 1fr}.access-grid{grid-template-columns:1fr}.footer{flex-direction:column;font-size:.75rem}.form-row{grid-template-columns:1fr;gap:0}.form-card{padding:24px;margin:0 auto 32px}.panel{padding:20px}.modal-overlay{padding:12px}.modal-header{padding:20px 20px 0}.modal-body{padding:20px}.support-intro{padding:26px}.link-box{flex-wrap:wrap}.notice{flex-wrap:wrap}.notice .btn{margin-left:0}.steps{flex-direction:column}.privacy-panel{align-items:flex-start}.top-actions .avatar{display:none}.stat-label{font-size:.8125rem}.stat small{font-size:.75rem}.message-file{align-items:flex-start;flex-wrap:wrap}.toolbar select{min-width:140px}.code{padding:14px}.mobile-only{display:block}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
