html{scroll-behavior:smooth}body{font-family:'Aqi Source Han Sans',sans-serif;background:#eee9e4;min-width:320px;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b86574;outline-offset:3px}input,select,textarea{font-family:inherit;max-width:100%;width:100%}input[type=checkbox],input[type=radio]{width:16px;min-height:16px;accent-color:#aa4e5d;flex-shrink:0}textarea{resize:vertical}select{appearance:auto}input::placeholder,textarea::placeholder{color:#a5979f}input[type=file]{font-size:12px;padding:10px 0}.label-checkbox{display:flex;align-items:flex-start;gap:9px;line-height:1.8;font-size:13px;color:#74646e}.label-checkbox input{margin-top:4px}.boot{font-family:'Aqi WenKai',serif;font-size:26px;padding:25vh 24px;text-align:center;color:#954c59}.boot span{display:block;font-family:'Aqi Source Han Sans',sans-serif;font-size:13px;margin-top:15px;color:#94818b}
.demo-bar{background:#f0e7e3;color:#8b747a;font-size:10px;line-height:22px;text-align:center;letter-spacing:.2px;min-height:22px}.mobile{width:100%;max-width:480px;min-height:100dvh;margin:0 auto;position:relative}.mobile-header{position:sticky;top:0;z-index:8;gap:10px;flex-shrink:0}.mobile-header .back,.more-action{border:0;background:transparent;padding:7px 0;color:#7b6873;display:flex;align-items:center;justify-content:center;min-width:27px}.mobile-header .head-title{pointer-events:none}.mobile-header.home .head-title{text-align:left}.mobile-body{padding-bottom:100px;flex:1}.mobile-nav,.mobile-footer{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;z-index:8;padding-bottom:calc(13px + env(safe-area-inset-bottom));min-height:71px}.mobile-nav .nav-item{border:0;background:transparent;font-family:inherit;line-height:1.6;cursor:pointer}.mobile-footer>.btn{flex:1}.mobile .row>.input{min-width:0}.mobile .person-photo{display:block;position:relative}.mobile .photo-count{position:absolute;bottom:10px;right:10px;display:flex;align-items:center;justify-content:center;border-radius:50%;width:25px;height:25px;background:#fff8}.person-info{position:relative}.favorite-mini{border:0;background:none;color:#b46274;position:absolute;right:9px;bottom:11px;padding:4px;line-height:1;cursor:pointer}.person-info>small{padding-right:23px;display:block}.favorite-mini.saved svg{fill:#aa4e5d;color:#aa4e5d}.event-image{display:block}.mobile .art-title{max-width:100%}.mobile .hero{cursor:pointer}.mobile .person-grid .no-photo{background:#eee5e0;display:flex;align-items:center;justify-content:center;color:#ba9ca5}.mobile .person-grid .no-photo svg{height:44px;width:44px}.filter-range{display:grid;grid-template-columns:1fr 18px 1fr;gap:7px;align-items:center}.mobile .tabs{overflow-x:auto;scrollbar-width:none}.mobile .tab{border:0;background:none;cursor:pointer}.mobile .input,.mobile .select{display:block;width:100%}.mobile .btn{cursor:pointer}.mobile .field-grid{min-width:0}.mobile .progress{margin:10px 0 24px}.mobile .event-status{display:flex;align-items:center;justify-content:space-between}.mobile .registration-item{padding:16px 0;border-bottom:1px solid var(--line)}.mobile .registration-item:last-child{border:0}.mobile .registration-item p{font-size:12px;color:var(--muted);margin:7px 0}.mobile .kv strong{overflow-wrap:anywhere}.mobile .profile-content p{margin:8px 0}.mobile .profile-photo{width:100%;height:270px;object-fit:cover;border-radius:9px;object-position:center 30%}.mobile .full-photo{width:100%;max-height:65vh;object-fit:contain;border-radius:8px}.mobile .action-row{display:flex;gap:10px;flex-wrap:wrap}.mobile .action-row>.btn{flex:1}.mobile .checkline label{cursor:pointer}.mobile .empty-visual{padding-top:45px}.mobile .steps{overflow:auto}.mobile .badge{white-space:normal}.mobile .data-table td,.mobile .data-table th{white-space:normal}
.desktop{width:100%;min-width:960px;height:auto;min-height:100vh;overflow:visible}.desktop-main{width:calc(100% - 210px)}.desktop .sidebar{position:sticky;top:0;height:100vh;min-height:850px}.desktop .side-nav .item{border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.desktop .side-nav .item.active{background:#60424e;color:#ffe7ed}.desktop-header{position:sticky;top:0;z-index:8}.desktop-content{max-width:1550px}.desktop .page-heading{min-height:70px;gap:14px}.desktop .data-table{width:100%}.desktop .data-table td{max-width:290px}.desktop .table-wrap{overflow:auto;max-width:100%}.desktop .toolbar{flex-wrap:wrap}.desktop .searchbox{min-width:0;flex:1}.desktop .searchbox input{border:0;background:none;outline:none;min-height:24px;font:inherit}.desktop .field .input{display:block}.desktop .input,.desktop .select,.desktop .textarea{width:100%}.desktop .modal-stage{min-height:500px}.desktop .panel+.panel{margin-top:20px}.desktop .doc-paper{font-family:'Aqi Source Han Sans',sans-serif}.desktop .doc-paper .art-title{font-family:'Aqi WenKai',serif}.desktop .kv strong{overflow-wrap:anywhere}.desktop .sidebar .brand{cursor:pointer}.desktop .stat strong{font-family:inherit}.desktop .row .btn{flex-shrink:0}.desktop .permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.text-button{border:0;background:none;color:var(--red);font:inherit;padding:3px;cursor:pointer}.table-actions{display:flex;gap:9px;flex-wrap:wrap}.system-note{font-size:11px;color:#95818d;margin-top:20px}.role-control{border:1px solid var(--line);background:var(--paper);color:#947b87;border-radius:6px;padding:6px 9px;font:inherit;font-size:12px;cursor:pointer}.page-directory{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:55vh;overflow:auto}.page-directory button{text-align:left;font-size:12px;padding:10px;border:1px solid #e7dde1;background:white;border-radius:6px;font-family:inherit;color:#7c6571}.role-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.role-option{border:1px solid #e4d8dd;background:#fff;border-radius:9px;padding:18px 12px;text-align:left;font:inherit;cursor:pointer}.role-option b{font-size:16px;font-weight:500;display:block;margin-bottom:5px}.role-option span{font-size:11px;color:#97818c;display:block}.modal-note{font-size:12px;color:#95818a;line-height:1.85;margin-top:18px}
#toast{position:fixed;bottom:110px;left:50%;transform:translateX(-50%) translateY(12px);background:#3f303bed;color:#fff;font:13px/1.7 'Aqi Source Han Sans',sans-serif;border-radius:8px;padding:11px 17px;max-width:min(88vw,470px);z-index:110;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}#overlay[hidden]{display:none}#overlay{position:fixed;inset:0;background:#30222d80;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.runtime-modal{background:#fffdfb;border-radius:13px;width:100%;max-width:540px;max-height:88dvh;display:flex;flex-direction:column;overflow:hidden}.runtime-modal .modal-head{flex-shrink:0;font-size:18px;font-weight:500}.runtime-modal .modal-body{overflow:auto;min-height:0}.runtime-modal .modal-foot{flex-shrink:0}.runtime-modal .modal-head button{background:none;border:0;cursor:pointer;color:#9c8593;padding:4px}.runtime-modal input{display:block}.runtime-modal .field{margin-bottom:15px}.runtime-modal .role-options button:focus-visible{outline-offset:2px}.form-error{color:#aa4357;font-size:12px;line-height:1.7;margin-bottom:12px}.loading-mark{padding:30px;color:#9a8190;text-align:center;font-size:13px}
@media(min-width:600px){body:has(.mobile){padding:25px 0}.mobile{min-height:calc(100dvh - 50px);border:1px solid #e5dcd7;border-radius:10px;overflow:clip}.mobile-nav,.mobile-footer{border:1px solid #e5dcd7;border-bottom:0;border-radius:0;bottom:0}.mobile .mobile-header{border-radius:10px 10px 0 0}.mobile-body{min-height:calc(100dvh - 200px)}}
@media(max-width:900px){body:has(.desktop){background:#f7f4f3}.desktop{min-width:0}.desktop>.sidebar{display:none}.desktop-main{width:100%}.desktop-header{height:60px;padding:0 18px}.desktop-content{padding:22px 16px}.desktop .page-heading h1{font-size:23px}.desktop .page-heading{align-items:flex-start;flex-wrap:wrap}.desktop .stats{grid-template-columns:repeat(2,1fr);gap:12px}.desktop .split,.desktop .two-col{grid-template-columns:1fr;gap:16px}.desktop .form-grid{grid-template-columns:1fr 1fr}.desktop .data-table{min-width:700px}.desktop .panel{overflow:auto;padding:16px}.desktop .modal-stage{padding:20px 0}.desktop .steps{overflow:auto;justify-content:flex-start;gap:15px;white-space:nowrap}.desktop .desktop-header .crumb{font-size:11px}.desktop .desktop-header .row>.small{display:none}.desktop .stat{padding:15px}.desktop .stat strong{font-size:26px}.desktop .page-heading .eyebrow{font-size:9px}.desktop .permission-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
#member-sort{width:auto;max-width:140px;flex:0 0 auto}#result-count{white-space:nowrap}.table-scroll{overflow:auto;max-width:100%}
