#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}:root{--brand:#76ac4e;--brand-2:#007b5f;--bg:#f6faf7;--card:#ffffff;--text:#0d1b16;--muted:#5b6b62;--line:#e6efe9;--line-strong:#d7e6dc;--shadow: 0 8px 24px rgba(0,0,0,.06)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;background:var(--bg);color:var(--text)}.container{max-width:1200px;margin:28px auto 80px;padding:0 20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:44px;height:44px;border-radius:12px}.brand h1{margin:0;font-size:24px;letter-spacing:.2px}.tagline{margin:2px 0 0;color:var(--muted);font-size:14px}.grid{display:grid;gap:18px}@media (min-width:980px){.grid{grid-template-columns:1fr 360px}}.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}input[type=text],input[type=email],input[type=password],.input{width:100%;padding:12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text);outline:none;transition:border .2s,box-shadow .2s}input:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px #007b5f22}.uploader{border:1px dashed var(--line-strong);border-radius:14px;background:#fff;padding:14px}.uploader input[type=file]{display:none}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid transparent;background-color:#1c8b56;color:#fff;font-weight:700;cursor:pointer;letter-spacing:.2px;transition:transform .06s ease,filter .2s ease}.btn:hover{filter:brightness(1.04)}.btn:active{transform:translateY(1px)}.btn[disabled]{opacity:.6;cursor:not-allowed}.btn.secondary{background:#fff;color:var(--brand-2);border-color:var(--brand-2)}.btn.ghost{background:#fff;color:var(--text);border:1px solid var(--line)}.tableWrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:14px;background:#fff}table.rwd{width:100%;border-collapse:collapse;min-width:720px}table.rwd th,table.rwd td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top;white-space:nowrap}table.rwd thead th{position:sticky;top:0;background:#f8fbf9;text-align:left;color:#1b3a31;font-size:13px;border-bottom:1px solid var(--line-strong)}.right{text-align:right}.muted{color:var(--muted);font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-break:break-all}.qrCard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px;align-items:center;box-shadow:var(--shadow)}.qrWrap{background:#fff;padding:12px;border-radius:12px;border:1px solid var(--line)}.alert-error{border:1px solid #f2c1c1;background:#fff5f5;color:#7a1f1f;border-radius:12px;padding:12px}.alert-ok{border:1px solid #b9f3cf;background:#f0fff6;color:#0f5132;border-radius:12px;padding:10px 12px}.btn-link{background:none;border:none;color:var(--brand-2);padding:0;cursor:pointer;text-decoration:underline;font:inherit}.topbar .row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.topbar .btn.ghost svg{margin-right:0!important;margin-left:6px!important}.searchBox{position:relative}.searchInput{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;outline:none;transition:border .2s,box-shadow .2s;padding:12px 40px 12px 14px;font-size:15px}.searchInput:focus{border-color:var(--brand-2);box-shadow:0 0 0 3px #007b5f22}.searchIcon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#475569;pointer-events:none}.auth-wrapper{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:32px;background:var(--bg)}.auth-card{width:100%;max-width:420px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px 22px 20px;position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;inset:0 0 auto 0;height:6px;background:linear-gradient(90deg,var(--brand),var(--brand-2))}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}.auth-logo{width:40px;height:40px;border-radius:10px}.auth-title{margin:0;font-size:24px;letter-spacing:.2px}.field{position:relative;margin-bottom:12px}.field-input{padding-left:40px!important}.field-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--brand-2)}.pw-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);cursor:pointer;padding:4px}.pw-toggle:hover{color:var(--brand-2)}.auth-submit{width:100%;justify-content:center;height:44px}.auth-help{display:flex;justify-content:flex-end;margin-top:10px}.publicHeader{margin-bottom:10px}@media (max-width:760px){.container{padding:12px 10px;margin:16px auto 48px}.panel{padding:12px;border-radius:12px}.publicHeader{margin-bottom:10px}.searchInput{padding:10px 12px 10px 38px;font-size:16px}.searchIcon{left:12px;right:auto}table.rwd{min-width:0}table.rwd thead{display:none}table.rwd,table.rwd tbody,table.rwd tr,table.rwd td{display:block;width:100%}table.rwd tr{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 8px;margin-bottom:10px;box-shadow:0 1px 2px #00000005}table.rwd td{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border:0;padding:6px 4px;white-space:normal;word-break:break-word;line-height:1.3}table.rwd td:before{content:attr(data-label);flex:0 0 42%;font-weight:600;color:#64748b}table.rwd td.right{text-align:right}}.actions-col{width:1%;white-space:nowrap}.btn.tertiary{background:#fff;color:#1b3a31;border:1px solid var(--line)}.btn.tiny{padding:6px 10px;border-radius:10px;font-weight:600}.detailsRow .detailsCell{background:#f9fdfb;border-top:1px dashed var(--line);padding:12px 14px}.detailsGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.detailsGrid .label{color:#64748b;font-weight:600;margin-right:6px}@media (max-width: 760px){.detailsGrid{grid-template-columns:1fr}}
