*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f5f5f5;overflow:hidden}.layout{display:flex;height:100vh;min-height:0}.sidebar{width:220px;height:100vh;flex-shrink:0;background:#fff;border-right:1px solid #eee;display:flex;flex-direction:column}.logo{padding:24px;font-size:20px;font-weight:600;color:#e8a0bf;border-bottom:1px solid #f0f0f0}.sidebar nav{flex:1;min-height:0;padding:12px 0;overflow-y:auto}.sidebar nav a{display:block;padding:12px 24px;color:#666;text-decoration:none;font-size:14px}.sidebar nav a:hover,.sidebar nav a.router-link-active{background:#fdeef4;color:#e8a0bf}.logout{padding:16px 24px;color:#999;font-size:14px;cursor:pointer;border-top:1px solid #f0f0f0}.logout:hover{color:#e8a0bf}.main{flex:1;height:100vh;min-width:0;min-height:0;display:flex;flex-direction:column}.topbar{height:56px;flex-shrink:0;background:#fff;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.user-menu{position:relative;display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 12px;border-radius:6px}.user-menu:hover{background:#f5f5f5}.user-name{font-size:14px;color:#333}.user-arrow{font-size:10px;color:#999}.dropdown{position:absolute;top:100%;right:0;margin-top:6px;background:#fff;border:1px solid #eee;border-radius:8px;box-shadow:0 4px 12px #00000014;min-width:120px;z-index:100}.dropdown-item{padding:10px 16px;font-size:14px;color:#666;cursor:pointer}.dropdown-item:hover{background:#fdeef4;color:#e8a0bf}.content{flex:1;min-height:0;padding:24px;overflow-y:auto}.card{background:#fff;border-radius:12px;padding:24px;margin-bottom:16px;box-shadow:0 2px 8px #0000000a}.card h2{font-size:18px;margin-bottom:16px;color:#333}.btn{background:#E8A0BF;color:#fff;border:none;padding:8px 20px;border-radius:6px;cursor:pointer;font-size:14px}.btn:hover{opacity:.9}.btn-danger{background:#ff5252}.btn-secondary{background:#fff;color:#e8a0bf;border:1px solid #E8A0BF}table{width:100%;border-collapse:collapse;margin-top:12px}th,td{text-align:left;padding:12px;border-bottom:1px solid #eee;font-size:14px}th{color:#999;font-weight:500}tr:hover{background:#fafafa}.empty{text-align:center;padding:60px;color:#999}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;color:#666}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px}.form-group textarea{min-height:80px;resize:vertical}.actions{display:flex;gap:8px}.search-box{display:flex;gap:12px;margin-bottom:16px}.search-box input{flex:1;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px}.tag{display:inline-block;padding:2px 10px;border-radius:4px;font-size:12px;background:#fdeef4;color:#e8a0bf}.tag-success{background:#e8f5e9;color:#4caf50}.tag-warning{background:#fff3e0;color:#ff9800}.login-page[data-v-3cba513d]{height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f5f5}.login-card[data-v-3cba513d]{background:#fff;border-radius:16px;padding:40px;width:360px;text-align:center;box-shadow:0 4px 20px #0000000f}.login-card h2[data-v-3cba513d]{margin-bottom:8px;color:#333}.login-card p[data-v-3cba513d]{color:#999;margin-bottom:24px}.login-card .form-group[data-v-3cba513d]{margin-bottom:16px;text-align:left}.login-card input[data-v-3cba513d]{width:100%;padding:10px;border:1px solid #ddd;border-radius:8px;font-size:14px;box-sizing:border-box}.login-card .btn[data-v-3cba513d]{width:100%;padding:12px;font-size:16px}.modal[data-v-44d52809]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-44d52809]{background:#fff;padding:24px;border-radius:12px;width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 24px #00000026}.modal[data-v-a99a3634]{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;z-index:100}.modal-content[data-v-a99a3634]{background:#fff;padding:24px;border-radius:12px;width:360px;box-shadow:0 8px 24px #00000026}
