.sidebar[data-v-2f140c8d]{position:sticky;top:0;height:100vh;padding:28px 18px;display:flex;flex-direction:column;gap:18px;border-right:1px solid var(--line);background:#ffffff8c;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20}.brand[data-v-2f140c8d]{display:flex;align-items:center;gap:12px;padding:4px 8px}.brand-mark[data-v-2f140c8d]{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#0f766e,#115e59);color:#ecfdf5;font-family:var(--font-display);font-size:18px;box-shadow:0 10px 24px #0f766e47}.brand-name[data-v-2f140c8d]{font-size:18px;font-weight:700;letter-spacing:-.02em}.brand-sub[data-v-2f140c8d]{font-size:12px;color:var(--ink-muted);margin-top:2px}.privacy-banner[data-v-2f140c8d]{display:flex;gap:10px;padding:12px;border-radius:var(--radius-md);border:1px solid rgba(15,118,110,.22);background:linear-gradient(160deg,#ccfbf1d9,#ecfdf5f2);box-shadow:0 8px 20px #0f766e14}.privacy-icon[data-v-2f140c8d]{flex-shrink:0;font-size:16px;line-height:1.4}.privacy-banner strong[data-v-2f140c8d]{display:block;font-size:13px;color:var(--brand-deep);margin-bottom:4px}.privacy-banner p[data-v-2f140c8d]{margin:0;font-size:12px;line-height:1.55;color:var(--ink-soft)}.sidebar-body[data-v-2f140c8d]{flex:1;display:flex;flex-direction:column;gap:16px}.qr-card[data-v-2f140c8d]{padding:12px;border-radius:var(--radius-md);border:1px solid var(--line);background:#fffc}.qr-toggle[data-v-2f140c8d]{display:flex;align-items:center;gap:12px;width:100%;padding:0;border:none;background:transparent;text-align:left}.qr-thumb[data-v-2f140c8d]{width:56px;height:56px;border-radius:12px;object-fit:cover;background:#fff;box-shadow:var(--shadow-sm);flex-shrink:0}.qr-copy[data-v-2f140c8d]{display:flex;flex-direction:column;gap:2px;min-width:0}.qr-copy strong[data-v-2f140c8d]{font-size:14px;color:var(--ink)}.qr-copy span[data-v-2f140c8d]{font-size:12px;color:var(--ink-muted)}.qr-preview[data-v-2f140c8d]{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);text-align:center;animation:rise-in .28s var(--ease) both}.qr-preview img[data-v-2f140c8d]{width:100%;max-width:180px;margin:0 auto;border-radius:12px;background:#fff}.qr-preview p[data-v-2f140c8d]{margin:10px 0 0;font-size:12px;color:var(--ink-muted)}.sidebar-footer[data-v-2f140c8d]{padding:8px 4px 0;border-top:1px solid var(--line)}.beian[data-v-2f140c8d]{display:inline-flex;align-items:center;font-size:12px;color:#666;line-height:1.4;transition:color .2s}.beian[data-v-2f140c8d]:hover{color:#333}.mobile-toggle[data-v-2f140c8d],.backdrop[data-v-2f140c8d]{display:none}@media(max-width:960px){.mobile-toggle[data-v-2f140c8d]{display:inline-flex;position:fixed;top:14px;right:14px;z-index:40;height:38px;padding:0 14px;border:1px solid var(--line-strong);border-radius:999px;background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:13px;font-weight:600}.sidebar[data-v-2f140c8d]{position:fixed;left:0;top:0;width:min(288px,86vw);transform:translate(-105%);transition:transform .28s var(--ease);box-shadow:var(--shadow-lg)}.sidebar.open[data-v-2f140c8d]{transform:translate(0)}.backdrop[data-v-2f140c8d]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#14201c47;z-index:15}}:root{--bg-base: #f4f7f5;--bg-elevated: rgba(255, 255, 255, .78);--bg-solid: #ffffff;--ink: #14201c;--ink-soft: #4a5c55;--ink-muted: #7a8c84;--line: rgba(20, 32, 28, .08);--line-strong: rgba(20, 32, 28, .14);--brand: #0f766e;--brand-deep: #0b5f59;--brand-soft: #ccfbf1;--brand-glow: rgba(15, 118, 110, .18);--accent: #c2410c;--success: #047857;--warning: #b45309;--danger: #be123c;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--shadow-sm: 0 1px 2px rgba(20, 32, 28, .04);--shadow-md: 0 12px 40px rgba(20, 32, 28, .08);--shadow-lg: 0 24px 60px rgba(20, 32, 28, .12);--font-sans: "DM Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-display: "Instrument Serif", "Songti SC", Georgia, serif;--nav-width: 248px;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;color:var(--ink);font-family:var(--font-sans);background:radial-gradient(1200px 600px at 10% -10%,rgba(45,212,191,.22),transparent 55%),radial-gradient(900px 500px at 95% 5%,rgba(251,146,60,.16),transparent 50%),linear-gradient(180deg,#eef6f2 0%,var(--bg-base) 42%,#eef2f0 100%);background-attachment:fixed;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:#0f766e2e}.app-shell{display:grid;grid-template-columns:var(--nav-width) 1fr;min-height:100vh}.main-panel{min-width:0;padding:28px 32px 48px}.page-enter{animation:rise-in .45s var(--ease) both}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.65}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;padding:0 18px;border:1px solid transparent;border-radius:999px;background:var(--brand);color:#fff;font-weight:600;letter-spacing:.01em;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease),opacity .2s;box-shadow:0 8px 20px var(--brand-glow)}.btn:hover:not(:disabled){background:var(--brand-deep);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--bg-solid);color:var(--ink);border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:#f8faf9}.btn-ghost{background:transparent;color:var(--ink-soft);border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:#0f766e1a;color:var(--brand-deep);transform:none}.btn-danger{background:var(--danger);box-shadow:0 8px 20px #be123c33}.card{background:var(--bg-elevated);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:13px;font-weight:600;color:var(--ink-soft)}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg-solid);outline:none;transition:border-color .2s,box-shadow .2s}.field textarea{min-height:96px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #0f766e1f}.badge{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--brand-soft);color:var(--brand-deep)}.badge.success{background:#d1fae5;color:var(--success)}.badge.warning{background:#ffedd5;color:var(--warning)}.badge.danger{background:#ffe4e6;color:var(--danger)}.badge.muted{background:#eef2f0;color:var(--ink-muted)}.checks{display:flex;flex-wrap:wrap;gap:8px}.check-chip{position:relative;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px 0 10px;border-radius:999px;border:1px solid var(--line-strong);background:var(--bg-solid);font-size:13px;font-weight:500;line-height:1;color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;transition:border-color .2s,background .2s,color .2s}.check-chip.active{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-deep)}.check-chip input{position:absolute;opacity:0;width:0;height:0;margin:0;pointer-events:none}.check-chip:before{content:"";width:14px;height:14px;flex-shrink:0;border-radius:4px;border:1.5px solid #b0bbb6;background:#fff;box-sizing:border-box;transition:border-color .15s,background .15s,box-shadow .15s}.check-chip.active:before{border-color:var(--brand);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2.5 6.2 5 8.7 9.5 3.5'/%3E%3C/svg%3E") center / 10px 10px no-repeat,var(--brand)}.check-chip:hover{border-color:#0f766e59}@media(max-width:960px){.app-shell{grid-template-columns:1fr}.main-panel{padding:20px 16px 40px}}
