:root{--paper:#e4ebf2;--bg-deep:var(--paper);--bg-mid:#f7fafc;--seal:#1d4e89;--accent:var(--seal);--accent-soft:#163e70;--accent-deep:#102e54;--ink:#1a2332;--muted:#5c6b7c;--surface:#f7fafc;--line:#c9d5e2;--border:var(--line);--shadow:none;--danger:#9c3b32;--success:#3d6b4f;--rose:var(--seal);--rose-soft:var(--seal);--gold:var(--muted);--purple:var(--ink);--lavender:var(--muted);--text:var(--ink);--text-muted:var(--muted);--card:var(--surface);--glow:none;--font-display:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body:"Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{min-height:100%}body{font-family:var(--font-body);background:var(--paper);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden}a{color:var(--ink);text-decoration:none}a:hover{color:var(--seal)}button,input,textarea,select{font-family:inherit}.museum-bg{isolation:isolate;min-height:100vh;position:relative}.glass{background:var(--surface);border:1px solid var(--line);box-shadow:none;border-radius:0}.btn{cursor:pointer;letter-spacing:.02em;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1.15rem;font-size:.9rem;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--seal);color:#f7fafc}.btn-primary:hover{background:var(--accent-soft);color:#f7fafc}.btn-ghost{border-color:var(--border);color:var(--ink);background:0 0}.btn-ghost:hover{border-color:var(--ink);color:var(--ink);background:0 0}.form-field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-field label{color:var(--text-muted);font-size:.85rem}.form-field input,.form-field textarea,.form-field select{border:1px solid var(--border);color:var(--text);background:#ffffffe6;border-radius:2px;outline:none;padding:.7rem .85rem}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1a1a1a14}.page-title{font-family:var(--font-display);color:var(--ink);letter-spacing:-.03em;margin-bottom:.6rem;font-size:clamp(2rem,4.2vw,3.2rem);font-weight:700;line-height:1.15}.page-sub{color:var(--text-muted);margin-bottom:2rem}.text-btn{color:var(--seal);cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.text-btn.danger{color:var(--danger)}.tool-row{flex-wrap:wrap;align-items:center;gap:.85rem;margin:.35rem 0 .85rem;display:flex}.inline-form{flex-direction:column;gap:.7rem;max-width:40rem;margin:.75rem 0 1.25rem;display:flex}.inline-form label{color:var(--muted);flex-direction:column;gap:.28rem;font-size:.85rem;display:flex}.inline-form input,.inline-form textarea,.inline-form select,.admin-shell input,.admin-shell textarea,.admin-shell select{font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:2px;padding:.6rem .75rem}.inline-form .err,.err{color:var(--danger);font-size:.9rem}.admin-shell{--bg:var(--paper);--text:var(--ink);--muted:#5c6b7c;--accent:#1d4e89;background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-body);display:flex}.admin-shell a{color:inherit}.admin-shell a:hover{color:var(--seal)}.admin-shell .btn{border-radius:2px}.admin-shell .btn-primary{background:var(--seal);box-shadow:none;color:#f7fafc}.admin-shell h1{letter-spacing:-.03em;margin-bottom:.35rem;font-size:clamp(1.7rem,3vw,2.2rem);font-weight:700}.page-enter-active,.page-leave-active{transition:opacity .2s}.page-enter-from,.page-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
