*{box-sizing:border-box}body{margin:0;background:#f4f5fb;color:#1a1a2e;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}main{max-width:1080px;margin:0 auto;padding:48px 24px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}h1{margin:0;font-size:30px}header p{margin:8px 0 0;color:#85869b}.primary{border:0;background:#5c57ec;color:#fff;box-shadow:0 8px 18px rgba(92,87,236,.22)}button{height:42px;padding:0 18px;border:1px solid #e0e1eb;border-radius:12px;background:#fff;color:#47485a;cursor:pointer;font-size:14px}.panel{overflow:hidden;border:1px solid #e7e8f1;border-radius:18px;background:#fff;box-shadow:0 14px 40px rgba(31,30,72,.06)}.table-head,.row{display:grid;grid-template-columns:110px 1.4fr 1fr 110px 260px;align-items:center;gap:18px;padding:16px 22px}.table-head{color:#8a8b9d;font-size:13px;background:#fafafe}.row{min-height:78px;border-top:1px solid #eff0f5}.order{display:flex;gap:6px}.order button{width:34px;height:34px;padding:0}.category{font-weight:600}.icon-box{width:52px;height:52px;display:flex;align-items:center;justify-content:center;border:1px solid #e8e9f0;border-radius:14px;background:#fff}.icon-box img{max-width:44px;max-height:44px}.status{color:#35a86b}.row-actions{display:flex;gap:8px;justify-content:flex-end}.danger{color:#e84650;border-color:#ffd3d6}.empty{display:none;padding:70px;text-align:center;color:#999bad}.modal-wrap{position:fixed;z-index:10;inset:0;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(13,12,32,.45)}.modal-wrap.show{display:flex}.modal{width:460px;padding:28px;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(17,15,55,.24)}.modal h2{margin:0 0 22px}.modal label{display:block;margin-top:18px;font-size:14px;color:#55566a}.modal input[type=text],.modal input[type=number],.modal label>input:not([type=file]){width:100%;height:44px;margin-top:8px;padding:0 14px;border:1px solid #dedfe9;border-radius:11px;font-size:15px;outline:none}.modal input:focus{border-color:#6965ed}.upload{display:flex;align-items:center;gap:16px;margin-top:10px}.upload img{width:76px;height:76px;object-fit:contain;border:1px solid #e3e4ed;border-radius:16px}.upload p{margin:7px 0 0;color:#999bad;font-size:12px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.toast{position:fixed;left:50%;bottom:40px;transform:translate(-50%,20px);padding:10px 18px;border-radius:10px;background:#1f2030;color:#fff;opacity:0;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:760px){main{padding:24px 12px}.table-head{display:none}.row{grid-template-columns:70px 1fr 64px;gap:10px}.row .status{display:none}.row-actions{grid-column:1/-1;justify-content:flex-start}.modal{width:100%}}
.admin-nav{display:flex;gap:6px;width:max-content;margin-bottom:34px;padding:5px;border:1px solid #e3e4ee;border-radius:14px;background:#fff}.admin-nav .nav-tab{height:38px;border:0;background:transparent}.admin-nav .nav-tab.active{color:#fff;background:#5c57ec}.admin-view{display:none}.admin-view.active{display:block}.trip-list{display:grid;gap:18px}.trip-card{overflow:hidden;border:1px solid #e7e8f1;border-radius:18px;background:#fff;box-shadow:0 14px 40px rgba(31,30,72,.06)}.trip-card-head{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;background:#fafafe}.trip-card-head h2{margin:0;font-size:19px}.trip-card-head p{margin:6px 0 0;color:#999bad;font-size:12px}.trip-card-head>span{padding:7px 11px;border-radius:20px;color:#5c57ec;background:#efefff;font-size:13px}.member-row{min-height:76px;padding:12px 24px;display:flex;align-items:center;gap:14px;border-top:1px solid #eff0f5}.member-avatar{width:48px;height:48px;flex:none;border:1px solid #e7e8f1;border-radius:50%;object-fit:cover;background:#f5f5fb}.member-info{min-width:0;display:flex;flex:1;flex-direction:column;gap:4px}.member-info strong{font-size:15px}.member-info span{overflow:hidden;color:#999bad;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.owner-badge{padding:6px 10px;border-radius:20px;color:#21885a;background:#eaf8f1;font-size:12px}.remove-member{height:36px}.member-empty{padding:34px;text-align:center;color:#999bad}.people-empty{display:none}.people-empty[style*="block"]{display:block!important}@media(max-width:760px){.trip-card-head{align-items:flex-start;gap:14px}.member-row{padding:12px 16px}.member-info span{max-width:160px}}
