*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f7f7f8;margin:0;font-family:Manrope,Noto Sans TC,sans-serif}#root{width:100%;min-height:100dvh}button{-webkit-tap-highlight-color:transparent;font-family:inherit}@keyframes pusionSpin{to{transform:rotate(360deg)}}::selection{color:#111;background:#f4a7c447}.app-screen button:not([disabled]){transition:transform .1s,box-shadow .1s}.app-screen button:not([disabled]):active{transform:scale(.96)}.app-shell{background:#f7f7f8;width:100%;min-height:100dvh}.member-refresh-shell{min-height:100dvh}.pull-refresh-indicator{top:max(8px, env(safe-area-inset-top));z-index:1200;color:#111;opacity:0;pointer-events:none;background:#fffffff0;border:1px solid #11111114;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:0 14px;font:800 12px Manrope,Noto Sans TC,sans-serif;transition:opacity .12s,transform .12s;display:inline-flex;position:fixed;left:50%;box-shadow:0 10px 28px #11111124}.pull-refresh-indicator.is-visible{opacity:1}.pull-refresh-spinner{border:2px solid #f3c0d4;border-top-color:#111;border-radius:50%;width:16px;height:16px}.pull-refresh-indicator.is-refreshing .pull-refresh-spinner{animation:.78s linear infinite pusionSpin}.app-screen{width:min(100%,720px);min-height:100dvh;margin:0 auto;position:relative}.screen-scroll{overflow:hidden auto}.bottom-safe-content{padding-bottom:calc(108px + env(safe-area-inset-bottom))}.client-notification-button{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff38;border-radius:14px;place-items:center;width:42px;height:42px;display:grid;position:relative}.client-notification-button span{color:#111;background:#fff;border:2px solid #f4a7c4;border-radius:999px;place-items:center;min-width:20px;height:20px;font:900 10px Manrope,sans-serif;display:grid;position:absolute;top:-5px;right:-5px}.client-notification-backdrop{z-index:85;padding:calc(44px + env(safe-area-inset-top)) 18px 18px;background:#11111152;place-items:start center;display:grid;position:fixed;inset:0}.client-notification-sheet{color:#111;background:#fff;border:1px solid #ffffff94;border-radius:24px;grid-template-rows:auto minmax(0,1fr);gap:14px;width:100%;max-width:390px;max-height:min(72dvh,620px);padding:18px;display:grid;overflow:hidden;box-shadow:0 18px 45px #1111113d}.client-notification-head{align-items:center;gap:12px;display:flex}.client-notification-head>div{flex:1}.client-notification-head span{color:#f4a7c4;letter-spacing:.08em;text-transform:uppercase;font:900 10px Manrope,Noto Sans TC,sans-serif}.client-notification-head h2{color:#111;margin:2px 0 0;font:900 20px Manrope,Noto Sans TC,sans-serif}.client-notification-head button{color:#111;background:#f8f8fa;border:1px solid #ececf0;border-radius:999px;place-items:center;width:36px;height:36px;display:grid}.client-notification-list{align-content:start;gap:10px;display:grid;overflow:auto}.client-notification-empty{color:#8a8a8e;text-align:center;border:1px dashed #e2e3e8;border-radius:16px;padding:18px 14px;font:800 12px Manrope,Noto Sans TC,sans-serif}.client-notification-item{color:#111;text-align:left;cursor:pointer;background:#fafafb;border:1px solid #ececf0;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;display:grid}.client-notification-item strong{color:#111;font:900 13px Manrope,Noto Sans TC,sans-serif;display:block}.client-notification-item p{-webkit-line-clamp:2;color:#595b63;-webkit-box-orient:vertical;margin:5px 0 0;font:750 12px/1.35 Manrope,Noto Sans TC,sans-serif;display:-webkit-box;overflow:hidden}.client-notification-item small{color:#9a9aa1;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font:800 10px Manrope,Noto Sans TC,sans-serif;display:block;overflow:hidden}.client-notification-item>span{color:#111;background:#f4a7c4;border-radius:999px;place-items:center;min-width:24px;height:24px;font:900 11px Manrope,sans-serif;display:grid}.login-input:focus{box-shadow:0 0 0 3px #f4a7c426;background:#fff!important;border-color:#f4a7c4!important}.form-frame{background:#fff;border:0;width:100%;min-height:calc(100dvh - 188px)}@media (width>=760px){body,.app-shell{background:#ececef}.app-screen{box-shadow:0 18px 50px #11111114}}.ops-shell{color:#111;background:#f4f5f7;grid-template-columns:280px minmax(0,1fr);min-height:100dvh;transition:grid-template-columns .18s;display:grid}.ops-shell.sidebar-collapsed{grid-template-columns:88px minmax(0,1fr)}.ops-sidebar{color:#fff;background:#111;flex-direction:column;gap:12px;padding:22px 18px;display:flex;position:relative}.ops-sidebar-brand{grid-template-columns:76px minmax(0,1fr) 38px;align-items:center;gap:12px;min-width:0;display:grid}.ops-sidebar img{object-fit:contain;width:76px;height:76px}.ops-sidebar h1,.ops-header h2,.ops-panel h3,.coach-hero h1{letter-spacing:0;margin:0}.ops-sidebar h1{font:600 24px Manrope,Noto Sans TC,sans-serif}.ops-sidebar p{color:#ffffff94;margin:6px 0 12px;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-sidebar-toggle{color:#fffc;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;place-items:center;width:38px;min-height:38px;padding:0;display:grid}.ops-sidebar-toggle:hover{color:#fff;background:#ffffff24}.ops-sidebar button,.ops-header button,.ops-form button,.coach-bottom button{cursor:pointer;border:0;font:600 13px Manrope,Noto Sans TC,sans-serif}.ops-sidebar-nav{gap:18px;margin-top:8px;display:grid}.ops-nav-group{gap:8px;display:grid}.ops-nav-group-label{color:#ffffff5c;letter-spacing:.08em;text-transform:uppercase;padding:0 14px;font:800 10px Manrope,Noto Sans TC,sans-serif}.ops-sidebar-nav button{text-align:left;color:#ffffffad;background:#ffffff0f;border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:0 14px;display:flex}.ops-sidebar-nav button svg{flex:none}.ops-sidebar-nav button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ops-sidebar-nav button.active{color:#fff;background:#f4a7c4}.sidebar-collapsed .ops-sidebar{align-items:center;padding-inline:14px}.sidebar-collapsed .ops-sidebar-brand{grid-template-columns:1fr;justify-items:center}.sidebar-collapsed .ops-sidebar-brand img{width:54px;height:54px}.sidebar-collapsed .ops-sidebar-brand div,.sidebar-collapsed .ops-sidebar-nav button span,.sidebar-collapsed .ops-nav-group-label{display:none}.sidebar-collapsed .ops-sidebar-toggle{width:52px}.sidebar-collapsed .ops-sidebar-nav button{justify-content:center;width:52px;padding:0}.sidebar-collapsed .ops-sidebar-nav{gap:10px}.ops-main{min-width:0;padding:26px}.ops-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.ops-header-actions{align-items:center;gap:10px;display:flex}.ops-notification-center{position:relative}.ops-header .ops-notification-button{color:#111;background:#fff2f7;border:1px solid #f0dce6;place-items:center;width:40px;padding:0;display:grid;position:relative}.ops-notification-button>span{color:#111;background:#f4a7c4;border:2px solid #fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font:900 10px Manrope,sans-serif;display:grid;position:absolute;top:-7px;right:-7px}.ops-notification-popover{z-index:45;background:#fff;border:1px solid #ececf0;border-radius:16px;grid-template-rows:auto auto minmax(0,1fr);gap:12px;width:min(360px,100vw - 36px);max-height:min(70dvh,560px);padding:14px;display:grid;position:absolute;top:48px;right:0;overflow:hidden;box-shadow:0 18px 45px #1111112e}.ops-notification-filters{gap:8px;display:grid}.ops-header .ops-notification-filters>select{border-radius:10px;width:100%;height:36px;font-weight:700}.ops-notification-custom-range{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ops-notification-custom-range label{color:#77777d;gap:4px;font:800 10px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-notification-custom-range input{color:#111;background:#fff;border:1px solid #dfe0e5;border-radius:9px;min-width:0;height:34px;padding:0 7px;font:600 11px Manrope,sans-serif}.ops-notification-popover-head{align-items:center;gap:12px;display:flex}.ops-notification-popover-head strong{color:#111;flex:1;font:900 14px Manrope,Noto Sans TC,sans-serif}.ops-header .ops-notification-popover-head button{color:#111;background:#f7f7f8;border-radius:999px;place-items:center;width:32px;height:32px;padding:0;display:grid}.ops-notification-list{align-content:start;gap:8px;display:grid;overflow:auto}.ops-notification-empty{color:#8a8a8e;text-align:center;border:1px dashed #e2e3e8;border-radius:12px;padding:16px 12px;font:800 12px Manrope,Noto Sans TC,sans-serif}.ops-header .ops-notification-item{color:#111;text-align:left;background:#fafafb;border:1px solid #ececf0;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;height:auto;padding:11px;display:grid}.ops-notification-item strong{color:#111;font:900 12px Manrope,Noto Sans TC,sans-serif}.ops-notification-item p{-webkit-line-clamp:3;color:#68686d;-webkit-box-orient:vertical;margin:4px 0 0;font:700 11px/1.35 Manrope,Noto Sans TC,sans-serif;display:-webkit-box;overflow:hidden}.ops-notification-item time{color:#96969c;margin-top:6px;font:700 10px/1.3 Manrope,Noto Sans TC,sans-serif;display:block}.ops-notification-item>span{color:#111;background:#f4a7c4;border-radius:999px;place-items:center;min-width:23px;height:23px;font:900 11px Manrope,sans-serif;display:grid}.ops-header-actions select{color:#111;background:#fff;border:1px solid #dfe0e5;border-radius:8px;height:40px;padding:0 10px;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-header span,.coach-hero span{color:#f4a7c4;letter-spacing:1.2px;text-transform:uppercase;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-header h2{margin-top:4px;font:600 30px Manrope,Noto Sans TC,sans-serif}.ops-header button{color:#fff;background:#111;border-radius:8px;height:40px;padding:0 16px}.ops-message,.ops-empty{color:#8f4a63;background:#fff5f9;border-radius:8px;margin-top:16px;padding:12px 14px;font:500 13px Manrope,Noto Sans TC,sans-serif}.ops-stats,.ops-coach-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.ops-coach-metric{background:#fff;border:1px solid #e8e8ec;border-radius:12px;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;min-width:0;padding:17px;display:grid;box-shadow:0 6px 18px #1111110a}.ops-coach-metric-icon{border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.ops-coach-metric-pink .ops-coach-metric-icon{color:#a81f57;background:#fff0f6}.ops-coach-metric-green .ops-coach-metric-icon{color:#187a40;background:#eaf8ef}.ops-coach-metric-blue .ops-coach-metric-icon{color:#2468a7;background:#edf5ff}.ops-coach-metric-amber .ops-coach-metric-icon{color:#9a6500;background:#fff5dc}.ops-coach-metric span,.ops-coach-metric small{color:#777981;font:600 11px/1.35 Manrope,Noto Sans TC,sans-serif;display:block}.ops-coach-metric strong{color:#111;margin:2px 0;font:700 26px/1.15 Manrope,Noto Sans TC,sans-serif;display:block}.ops-coach-metric small{color:#9a9ba2;font-size:10px}.ops-panel.ops-coach-directory{margin-top:16px;padding:0;overflow:hidden}.ops-coach-directory-head{justify-content:space-between;align-items:center;gap:24px;padding:22px 24px 18px;display:flex}.ops-coach-directory-head>div>span{color:#a85a77;letter-spacing:1.1px;text-transform:uppercase;font:700 10px Manrope,Noto Sans TC,sans-serif}.ops-coach-directory-head h3{color:#111;margin:4px 0 0;font:700 21px Manrope,Noto Sans TC,sans-serif}.ops-coach-directory-head p,.ops-coach-modal-intro{color:#777981;margin:5px 0 0;font:500 12px/1.5 Manrope,Noto Sans TC,sans-serif}.ops-coach-create-button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:9px;flex:none;align-items:center;gap:8px;min-height:42px;padding:0 16px;font:700 12px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-coach-toolbar{background:#fafafb;border-top:1px solid #f0f0f3;border-bottom:1px solid #e8e8ec;grid-template-columns:minmax(260px,1fr) 190px auto;align-items:end;gap:12px;padding:14px 24px;display:grid}.ops-coach-toolbar label{color:#777981;gap:6px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-coach-toolbar input,.ops-coach-toolbar select{color:#111;background:#fff;border:1px solid #dedfe5;border-radius:8px;height:40px;padding:0 12px;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-coach-result-count{color:#8a8a90;white-space:nowrap;place-self:center end;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-coach-table tbody tr{cursor:default}.ops-coach-table th:first-child,.ops-coach-table td:first-child{padding-left:24px}.ops-coach-table th:last-child,.ops-coach-table td:last-child{padding-right:24px}.ops-coach-identity{align-items:center;gap:11px;min-width:220px;display:flex}.ops-coach-identity>span{color:#9f2856;background:#fff0f6;border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;font:800 15px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-coach-identity div{gap:3px;display:grid}.ops-coach-identity small{color:#92939a;font:500 10px Manrope,Noto Sans TC,sans-serif}.ops-coach-table code{color:#37383c;background:#f5f5f7;border-radius:6px;padding:5px 8px;font:600 11px Manrope,monospace}.ops-coach-course-count{color:#315e8b;background:#f1f5fb;border-radius:8px;place-items:center;min-width:28px;height:28px;font-size:11px;display:inline-grid}.ops-account-status{border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-account-status:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.ops-account-status.active{color:#187a40;background:#eaf8ef}.ops-account-status.inactive{color:#777981;background:#f1f1f3}.ops-never-logged-in{color:#9a9ba1;font-style:italic}.ops-coach-empty{color:#888990;text-align:center;padding:40px 24px;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-coach-account-modal .ops-coach-modal-intro{color:#745967;background:#faf5f7;border-radius:8px;margin:-4px 0 18px;padding:11px 12px}.ops-coach-account-modal .ops-modal-form>label:first-child{grid-column:auto}.ops-stat,.ops-panel,.coach-controls,.coach-course-card,.coach-student{background:#fff;border:1px solid #e8e8ec;border-radius:8px;box-shadow:0 6px 18px #1111110a}.ops-stat{padding:16px}.ops-stat span,.ops-muted,.coach-course-card span,.coach-student-info span{color:#777981;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-stat strong{margin-top:8px;font:600 28px Manrope,Noto Sans TC,sans-serif;display:block}.ops-grid{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:16px;margin-top:16px;display:grid}.ops-content-layout{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px;display:grid}.span-2{grid-column:span 1}.span-3{grid-column:1/-1}.ops-panel{min-width:0;padding:18px}.ops-group-box{background:#fff;border:1px solid #e6e7eb;border-radius:8px;margin-top:16px;padding:22px 20px 20px;position:relative;box-shadow:0 6px 18px #11111109}.ops-group-label{color:#777981;letter-spacing:.8px;text-transform:uppercase;background:#fff;padding:0 8px;font:600 11px Manrope,Noto Sans TC,sans-serif;position:absolute;top:-10px;left:16px}.ops-panel h3{font:600 18px Manrope,Noto Sans TC,sans-serif}.ops-panel-head{justify-content:flex-end;align-items:center;gap:16px;margin-bottom:14px;display:flex}.ops-panel-head-compact{margin-bottom:12px}.ops-head-actions{justify-content:flex-end;align-items:center;gap:10px;width:100%;display:flex}.ops-list-picker{flex:1;min-width:280px;max-width:720px;position:relative}.ops-list-picker-button{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:52px;padding:8px 12px;display:flex;box-shadow:0 2px 8px #1111110a}.ops-list-picker-button span,.ops-list-picker-menu button span{text-align:left;gap:2px;min-width:0;display:grid}.ops-list-picker-button strong,.ops-list-picker-menu strong{text-overflow:ellipsis;white-space:nowrap;font:600 14px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-list-picker-button small,.ops-list-picker-menu small{text-overflow:ellipsis;white-space:nowrap;color:#777981;font:500 11px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-list-picker-menu{z-index:60;background:#fff;border:1px solid #dfe0e5;border-radius:8px;width:100%;min-width:360px;max-height:340px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;overflow:auto;box-shadow:0 18px 48px #11111124}.ops-list-picker-menu button{color:#111;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:58px;padding:9px 10px;display:flex}.ops-list-picker-menu button:hover,.ops-list-picker-menu button.active{background:#fff5f9}.ops-list-picker-menu b{color:#f4a7c4;flex-shrink:0;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-course-list-grid{grid-template-columns:1fr;gap:10px;margin-bottom:14px;display:grid}.ops-course-list-grid>button{color:#111;cursor:pointer;text-align:left;background:#fff;border:1px solid #e4e5ea;border-radius:8px;grid-template-columns:minmax(0,1.2fr) minmax(170px,.45fr) auto minmax(132px,auto);align-items:center;gap:12px;min-width:0;min-height:72px;padding:12px;display:grid}.ops-course-list-grid>button.selected{background:#fff5f9;border-color:#f4a7c4;box-shadow:inset 3px 0 #f4a7c4}.ops-course-list-grid>button>span{gap:4px;min-width:0;display:grid}.ops-course-list-date{justify-self:start}.ops-course-list-date small{text-transform:uppercase}.ops-course-list-date strong{font-size:12px}.ops-course-list-grid strong{text-overflow:ellipsis;white-space:nowrap;font:500 14px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-course-list-grid small{text-overflow:ellipsis;white-space:nowrap;color:#777981;font:400 12px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-course-list-grid em{color:#595b63;background:#f0f0f2;border-radius:999px;justify-self:start;padding:4px 8px;font:500 11px Manrope,Noto Sans TC,sans-serif}@media (width<=760px){.ops-course-list-grid>button{grid-template-columns:minmax(0,1fr) auto}.ops-course-list-date{grid-column:1/-1}}.ops-icon-action{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;flex-shrink:0;place-items:center;width:52px;height:52px;display:inline-grid}.ops-icon-action-compact{border-radius:10px;width:40px;height:40px}.ops-icon-action svg.is-spinning{animation:.76s linear infinite ops-spin}@keyframes ops-spin{to{transform:rotate(360deg)}}.ops-icon-action-primary{color:#fff;background:#f4a7c4;border-color:#f4a7c4}.ops-icon-action-danger{color:#b42318}.ops-icon-action:disabled{cursor:not-allowed;opacity:.42}.ops-panel-head>span{color:#777981;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-table-wrap{overflow-x:auto}.ops-table{border-collapse:collapse;width:100%;min-width:1120px}.ops-setup-table-wrap .ops-table{min-width:0}.ops-table th{text-align:left;color:#777981;text-transform:uppercase;border-bottom:1px solid #ececf0;padding:10px 8px;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-table td{vertical-align:top;border-bottom:1px solid #f0f0f2;padding:12px 8px;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-table td strong{font-weight:500}.ops-order-chat-trigger{color:#111;cursor:pointer;text-align:left;background:#fff;border:1px solid #ececf0;border-radius:10px;justify-items:start;gap:3px;min-width:136px;padding:9px 10px;display:grid;position:relative}.ops-order-chat-trigger span{color:#8a8a8e;font:800 10px Manrope,Noto Sans TC,sans-serif}.ops-order-chat-trigger strong{color:#111;font:900 12px Manrope,Noto Sans TC,sans-serif}.ops-order-chat-trigger em{color:#111;background:#f4a7c4;border:2px solid #fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font:900 10px Manrope,sans-serif;display:grid;position:absolute;top:-7px;right:-7px}.ops-order-note{color:#68686d;background:#fafafb;border-radius:8px;padding:7px 8px;font:700 11px/1.35 Manrope,Noto Sans TC,sans-serif}.ops-order-message-list{gap:6px;display:grid}.ops-order-message-list-modal{align-content:start;min-height:180px;max-height:min(46dvh,390px);padding-right:2px;overflow:auto}.ops-order-message-list>span{color:#a0a1a8;font:800 11px Manrope,Noto Sans TC,sans-serif}.ops-order-message{background:#f6f6f8;border-radius:9px;gap:3px;padding:7px 8px;display:grid}.ops-order-message.staff{background:#fff2f7}.ops-order-message small{color:#8a8a8e;font:800 9px Manrope,Noto Sans TC,sans-serif}.ops-order-message p{color:#111;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font:750 11px/1.35 Manrope,Noto Sans TC,sans-serif}.ops-order-message-compose{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.ops-order-message-compose input{color:#111;background:#fff;border:1px solid #ececf0;border-radius:10px;min-width:0;height:34px;padding:0 10px;font:750 11px Manrope,Noto Sans TC,sans-serif}.ops-order-message-compose button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:10px;height:34px;padding:0 11px;font:900 11px Manrope,Noto Sans TC,sans-serif}.ops-order-chat-modal{max-width:620px}.ops-order-chat-summary{background:#fafafb;border:1px solid #ececf0;border-radius:12px;gap:4px;padding:11px 12px;display:grid}.ops-order-chat-summary strong{color:#111;font:900 13px/1.35 Manrope,Noto Sans TC,sans-serif}.ops-order-chat-summary span{color:#777981;font:800 11px Manrope,Noto Sans TC,sans-serif}.ops-table tbody tr{cursor:pointer}.ops-table tbody tr.ops-order-row-pending{background:#fffaf0;box-shadow:inset 4px 0 #f4a7c4}.ops-table tbody tr.ops-order-row-unread{background:#fff5f9;box-shadow:inset 4px 0 #f4a7c4}.ops-order-customer-cell{gap:4px;display:grid}.ops-order-customer-cell strong{color:#111;font:700 13px Manrope,Noto Sans TC,sans-serif}.ops-order-customer-cell small{color:#8a8a8e;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-order-customer-cell em{color:#7a4a00;background:#fff0c2;border-radius:999px;justify-self:start;padding:4px 8px;font:900 10px Manrope,Noto Sans TC,sans-serif}.ops-order-customer-cell em.message{color:#9a4b68;background:#fff2f7}.ops-table tbody tr.selected{background:#fff5f9}.ops-row-actions{align-items:center;gap:8px;display:flex}.ops-row-icon-button{color:#111;cursor:pointer;background:#fff;border:1px solid #e4e5ea;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.ops-row-icon-button.danger{color:#b42318}.ops-market-thumb{color:#9a4b68;background:#fff2f7;border:1px solid #f0dce6;border-radius:10px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid;overflow:hidden}.ops-market-thumb img{object-fit:cover;width:100%;height:100%}.market-page{background:#f7f7f8;min-height:100dvh}.market-tab-row{grid-template-columns:minmax(0,1fr) 48px;align-items:center;gap:12px;margin:14px 22px 0;display:grid}.market-tab-bar{background:#f0f0f3;border-radius:16px;gap:2px;padding:4px;display:flex}.market-tab-bar button{position:relative}.market-tab-notification{color:#111;background:#f4a7c4;border:2px solid #fff;border-radius:999px;place-items:center;min-width:18px;height:18px;font:900 9px Manrope,sans-serif;display:grid;position:absolute;top:5px;right:12px}.market-cart-button{cursor:pointer;background:#fff;border:1px solid #e8e8ec;border-radius:16px;place-items:center;width:48px;height:48px;display:grid;position:relative;box-shadow:0 2px 8px #11111112}.market-cart-badge{color:#111;background:#f4a7c4;border:2px solid #fff;border-radius:999px;place-items:center;min-width:22px;height:22px;padding:0 6px;font:900 11px Manrope,sans-serif;display:grid;position:absolute;top:-7px;right:-7px}.market-content{gap:14px;padding:18px 22px 110px;display:grid}.market-toast,.market-empty{color:#8a4a62;background:#fff;border-radius:16px;padding:13px 14px;font:800 12px Manrope,Noto Sans TC,sans-serif;box-shadow:0 8px 22px #1111110a}.market-toast{background:#fff2f7}.market-empty{color:#8a8a8e}.market-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.market-product-card{cursor:pointer;background:#fff;border:1px solid #1111110f;border-radius:18px;grid-template-rows:auto 1fr;min-width:0;transition:transform .12s,box-shadow .12s;display:grid;overflow:hidden;box-shadow:0 10px 24px #1111110d}.market-product-card:active{transform:scale(.97);box-shadow:0 4px 12px #11111112}.market-product-card.sold-out .market-product-media img{filter:grayscale(.45)opacity(.75)}.market-product-media{aspect-ratio:4/5;background:#efeff1;place-items:center;display:grid;position:relative;overflow:hidden}.market-product-media img{object-fit:cover;width:100%;height:100%}.market-product-placeholder{color:#9a4b68;background:#fff2f7;border-radius:20px;place-items:center;width:58px;height:58px;font:900 24px Manrope,sans-serif;display:grid}.market-category-pill,.market-price-pill{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 18px);position:absolute;overflow:hidden;box-shadow:0 8px 18px #1111111f}.market-category-pill{color:#111;background:#ffffffeb;border-radius:999px;padding:7px 10px;font:900 10px Manrope,Noto Sans TC,sans-serif;top:10px;left:10px}.market-price-pill{color:#fff;background:#111;border-radius:12px;padding:7px 10px;font:900 13px Manrope,sans-serif;bottom:9px;right:9px}.market-product-body{gap:9px;padding:12px 12px 14px;display:grid}.market-product-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;min-width:0;display:grid}.market-product-title-row h2{color:#111;text-overflow:ellipsis;white-space:nowrap;margin:0;font:900 15px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.market-product-title-row strong{color:#111;font:900 15px Manrope,sans-serif}.market-product-title-row span{color:#a6a7ad;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font:800 10px Manrope,Noto Sans TC,sans-serif;display:block;overflow:hidden}.market-product-description{-webkit-line-clamp:2;color:#777981;-webkit-box-orient:vertical;margin:0;font:650 11px/1.38 Manrope,Noto Sans TC,sans-serif;display:-webkit-box;overflow:hidden}.market-option-group{gap:6px;min-width:0;display:grid}.market-option-label{color:#777981;font:900 10px Manrope,Noto Sans TC,sans-serif}.market-chip-row{overscroll-behavior-x:contain;scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.market-chip-row::-webkit-scrollbar{display:none}.market-choice-chip,.market-color-chip{color:#111;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#f8f8fa;border:1px solid #ececf0;border-radius:999px;flex:none;align-items:center;gap:6px;max-width:132px;min-height:28px;padding:0 9px;font:900 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex;overflow:hidden}.market-choice-chip.selected,.market-color-chip.selected{color:#fff;background:#111;border-color:#111}.market-color-chip span{border:1px solid #0000;border-radius:999px;flex:none;width:12px;height:12px}.market-card-footer{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding-top:4px;display:grid}.market-card-footer>span{color:#8a8a8e;text-overflow:ellipsis;white-space:nowrap;min-width:0;font:900 10px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.market-card-footer>span.sold-out{color:#9a4b68}.market-card-footer button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:999px;justify-content:center;align-items:center;gap:4px;min-height:36px;padding:0 14px;font:900 12px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.market-card-footer button:disabled{cursor:not-allowed;background:#d9d9de}.market-orders{gap:12px;display:grid}.market-order-card{background:#fff;border:1px solid #ececf0;border-radius:18px;gap:12px;padding:16px;display:grid;box-shadow:0 8px 22px #1111110a}.market-order-card span{color:#a0a1a8;font:900 10px Manrope,Noto Sans TC,sans-serif;display:block}.market-order-card h3{color:#111;margin:5px 0 0;font:900 14px/1.25 Manrope,Noto Sans TC,sans-serif}.market-order-card p{color:#777981;margin:6px 0 0;font:700 11px/1.35 Manrope,Noto Sans TC,sans-serif}.market-order-card h3,.market-order-card p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.market-order-card strong{color:#111;text-align:right;flex:none;font:900 15px Manrope,sans-serif}.market-order-card small{color:#8a4a62;text-transform:capitalize;margin-top:5px;font:900 10px Manrope,Noto Sans TC,sans-serif;display:block}.market-order-chat-button{color:#111;cursor:pointer;background:#fafafb;border:1px solid #ececf0;border-radius:14px;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 12px;display:flex;position:relative}.market-order-chat-button span{color:#777981;font:900 12px Manrope,Noto Sans TC,sans-serif}.market-order-chat-button strong{color:#fff;background:#111;border-radius:999px;place-items:center;min-width:24px;height:24px;font:900 11px Manrope,sans-serif;display:grid}.market-order-chat-button em{color:#111;background:#f4a7c4;border:2px solid #fff;border-radius:999px;place-items:center;min-width:20px;height:20px;font:900 10px Manrope,sans-serif;display:grid;position:absolute;top:-7px;right:-7px}.market-order-note{color:#777981;background:#fafafb;border-radius:12px;padding:9px 10px;font:700 11px/1.35 Manrope,Noto Sans TC,sans-serif}.market-message-list{gap:8px;display:grid}.market-message-list-modal{align-content:start;min-height:220px;max-height:min(50dvh,440px);padding-right:2px;overflow:auto}.market-message-empty{color:#a0a1a8;font:800 11px Manrope,Noto Sans TC,sans-serif}.market-message-bubble{background:#f6f6f8;border-radius:14px;gap:3px;padding:9px 10px;display:grid}.market-message-bubble.staff{background:#fff2f7}.market-message-bubble small{color:#8a8a8e;text-transform:none;text-align:left;margin:0;font:800 9px Manrope,Noto Sans TC,sans-serif}.market-message-bubble p{color:#111;white-space:normal;overflow-wrap:anywhere;margin:0;font:750 12px/1.35 Manrope,Noto Sans TC,sans-serif}.market-message-composer{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.market-message-composer input{color:#111;background:#fafafb;border:1px solid #ececf0;border-radius:999px;min-width:0;height:38px;padding:0 13px;font:800 12px Manrope,Noto Sans TC,sans-serif}.market-message-composer button{color:#fff;cursor:pointer;background:#111;border:0;border-radius:999px;height:38px;padding:0 14px;font:900 12px Manrope,Noto Sans TC,sans-serif}.market-chat-backdrop{z-index:82;padding:18px 18px calc(18px + env(safe-area-inset-bottom));background:#1111116b;place-items:end center;display:grid;position:fixed;inset:0}.market-chat-sheet{color:#111;background:#fff;border:1px solid #ececf0;border-radius:24px;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:12px;width:100%;max-width:390px;max-height:min(84dvh,700px);padding:18px;display:grid;overflow:hidden;box-shadow:0 18px 45px #11111147}.market-chat-head{align-items:center;gap:12px;display:flex}.market-chat-head>div{flex:1}.market-chat-head span{color:#8a8a8e;font:900 10px Manrope,Noto Sans TC,sans-serif}.market-chat-head h2{color:#111;margin:2px 0 0;font:900 20px Manrope,Noto Sans TC,sans-serif}.market-chat-head button{color:#111;background:#f8f8fa;border:1px solid #ececf0;border-radius:999px;place-items:center;width:36px;height:36px;display:grid}.market-chat-summary{background:#fafafb;border:1px solid #ececf0;border-radius:14px;gap:4px;padding:11px 12px;display:grid}.market-chat-summary strong{color:#111;font:900 13px/1.35 Manrope,Noto Sans TC,sans-serif}.market-chat-summary span{color:#777981;font:800 11px Manrope,Noto Sans TC,sans-serif}.market-cart-backdrop{z-index:80;padding:18px 18px calc(18px + env(safe-area-inset-bottom));background:#1111116b;place-items:end center;display:grid;position:fixed;inset:0}.market-cart-sheet{color:#111;background:#fff;border:1px solid #ececf0;border-radius:24px;gap:14px;width:100%;max-width:390px;max-height:min(76dvh,620px);padding:18px;display:grid;overflow:auto;box-shadow:0 18px 45px #11111147}.market-cart-head{align-items:center;gap:12px;display:flex}.market-cart-head>div{flex:1}.market-cart-head span{color:#8a8a8e;letter-spacing:.8px;text-transform:uppercase;font:900 10px Manrope,Noto Sans TC,sans-serif}.market-cart-head h2{color:#111;margin:2px 0 0;font:900 20px Manrope,Noto Sans TC,sans-serif}.market-cart-head button{color:#111;background:#f8f8fa;border:1px solid #ececf0;border-radius:999px;place-items:center;width:36px;height:36px;display:grid}.market-cart-empty{color:#777981;padding:18px 0;font:800 13px Manrope,Noto Sans TC,sans-serif}.market-cart-items{gap:10px;display:grid}.market-cart-item{background:#fafafb;border:1px solid #ececf0;border-radius:16px;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.market-cart-thumb{object-fit:cover;background:#efeff1;border:1px solid #f0f0f2;border-radius:10px;flex-shrink:0;width:50px;height:50px}.market-cart-thumb-placeholder{color:#9a4b68;background:#fff2f7;border-color:#f0dce6;place-items:center;font:900 18px Manrope,sans-serif;display:grid}.market-cart-item-info{min-width:0}.market-cart-item-info h3{color:#111;text-overflow:ellipsis;white-space:nowrap;margin:0;font:900 13px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.market-cart-item-info span{color:#777981;margin-top:3px;font:800 11px Manrope,Noto Sans TC,sans-serif;display:block}.market-qty-stepper{align-items:center;gap:6px;display:inline-flex}.market-qty-stepper button{color:#111;background:#fff;border:1px solid #e2e3e8;border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.market-qty-stepper span{text-align:center;color:#111;min-width:18px;margin:0;font:900 12px Manrope,sans-serif}.market-line-total{color:#777981;grid-column:1/-1;justify-content:space-between;gap:12px;font:800 11px Manrope,Noto Sans TC,sans-serif;display:flex}.market-line-total strong{color:#111}.market-cart-notes{color:#111;resize:vertical;background:#fafafb;border:1px solid #ececf0;border-radius:16px;width:100%;min-height:78px;padding:13px;font:800 13px Manrope,Noto Sans TC,sans-serif}.market-submit-order{color:#fff;background:#111;border:0;border-radius:16px;min-height:52px;font:900 15px Manrope,Noto Sans TC,sans-serif}.ops-count-pill{border-radius:999px;justify-content:center;align-items:center;min-width:30px;height:28px;padding:0 10px;font:700 12px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-count-pill.pending{color:#9a5b00;background:#fff4d7}.ops-count-pill.registered{color:#0f6b3f;background:#e6f8ee}.ops-table td small{color:#777981;margin-top:3px;line-height:1.35;display:block}.ops-nowrap{white-space:nowrap}.ops-member-list{gap:12px;display:grid}.ops-member-card{background:#fff;border:1px solid #ececf0;border-radius:8px;gap:14px;padding:16px;display:grid}.ops-member-card-main{grid-template-columns:minmax(260px,1fr) minmax(280px,auto);align-items:start;gap:16px;display:grid}.ops-member-identity{align-items:flex-start;gap:12px;min-width:0;display:flex}.ops-member-avatar{color:#fff;background:#111;border-radius:8px;flex:none;place-items:center;width:42px;height:42px;font:700 16px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-primary{align-items:center;gap:8px;min-width:0;display:flex}.ops-member-primary strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ops-member-primary>span{color:#8f4a63;text-transform:uppercase;background:#fff5f9;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-member-meta{color:#111;grid-template-columns:repeat(3,minmax(92px,max-content)) auto;justify-content:end;align-items:center;gap:10px;font:500 12px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-meta>span{text-overflow:ellipsis;white-space:nowrap;color:#33343a;min-width:0;max-width:180px;overflow:hidden}.ops-family-relations{gap:8px;display:grid}.ops-relation-group{gap:6px;display:grid}.ops-relation-label{color:#777981;letter-spacing:.8px;text-transform:uppercase;font:700 10px Manrope,Noto Sans TC,sans-serif}.ops-relation-chips{flex-wrap:wrap;gap:6px;display:flex}.ops-relation-chip,.ops-relation-empty{color:#111;background:#f8f8fa;border:1px solid #e6e7eb;border-radius:8px;flex-direction:column;justify-content:center;max-width:220px;min-height:44px;padding:7px 10px;display:inline-flex}.ops-relation-chip.player{background:#fff9fb;border-color:#ffd2e4}.ops-relation-chip strong{text-overflow:ellipsis;white-space:nowrap;font:700 12px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-relation-chip small,.ops-relation-empty{color:#777981;margin-top:2px;font:600 10px Manrope,Noto Sans TC,sans-serif}@media (width<=1180px){.ops-member-card-main{grid-template-columns:1fr}.ops-member-meta{justify-content:start}}.ops-panel.ops-member-directory{margin-top:16px;padding:0;overflow:hidden}.ops-member-directory-head{justify-content:space-between;align-items:center;gap:24px;padding:22px 24px 18px;display:flex}.ops-member-directory-head>div>span{color:#a85a77;letter-spacing:1.1px;text-transform:uppercase;font:700 10px Manrope,Noto Sans TC,sans-serif}.ops-member-directory-head h3{color:#111;margin:4px 0 0;font:700 21px Manrope,Noto Sans TC,sans-serif}.ops-member-directory-head p{color:#777981;margin:5px 0 0;font:500 12px/1.5 Manrope,Noto Sans TC,sans-serif}.ops-member-toolbar{background:#fafafb;border-top:1px solid #f0f0f3;border-bottom:1px solid #e8e8ec;grid-template-columns:minmax(280px,1fr) 190px auto;align-items:end;gap:12px;padding:14px 24px;display:grid}.ops-member-toolbar label{color:#777981;gap:6px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-toolbar input,.ops-member-toolbar select{color:#111;background:#fff;border:1px solid #dedfe5;border-radius:8px;height:40px;padding:0 12px;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-member-list-redesigned{background:#fafafb;gap:10px;padding:16px}.ops-member-card-redesigned{border-radius:12px;gap:0;padding:0;overflow:hidden;box-shadow:0 3px 10px #11111106}.ops-member-summary-row{grid-template-columns:minmax(260px,1.2fr) minmax(300px,1fr) auto;align-items:center;gap:20px;padding:16px 18px;display:grid}.ops-member-avatar.has-image,.ops-member-avatar-preview.has-image,.ops-player-chip-avatar.has-image{background:#f1f1f3;overflow:hidden}.ops-member-avatar img,.ops-member-avatar-preview img,.ops-player-chip-avatar img{object-fit:cover;width:100%;height:100%;display:block}.ops-member-card-redesigned .ops-member-avatar{color:#9f2856;background:#fff0f6;border-radius:14px;width:48px;height:48px}.ops-member-card-redesigned .ops-member-identity{align-items:center}.ops-member-card-redesigned .ops-member-identity>div>small{color:#92939a;text-overflow:ellipsis;white-space:nowrap;max-width:280px;margin-top:4px;font:500 10px Manrope,Noto Sans TC,sans-serif;display:block;overflow:hidden}.ops-member-contact{grid-template-columns:minmax(100px,.7fr) minmax(160px,1.3fr);gap:16px;display:grid}.ops-member-contact span{color:#999aa0;letter-spacing:.5px;text-transform:uppercase;gap:3px;min-width:0;font:700 9px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-contact strong{color:#36373b;text-overflow:ellipsis;text-transform:none;white-space:nowrap;font:600 11px Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-member-account-meta{justify-content:flex-end;align-items:center;gap:8px;display:flex}.ops-member-tier{color:#5f6066;letter-spacing:.5px;text-transform:uppercase;background:#f2f2f4;border-radius:999px;padding:6px 9px;font:700 9px Manrope,sans-serif}.ops-member-family-row{background:#fcfcfd;border-top:1px solid #eeeef1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;min-height:62px;padding:10px 18px;display:grid}.ops-member-family-summary{color:#8b8c92;grid-template-columns:auto auto;gap:1px 6px;min-width:82px;font:600 9px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-family-summary strong{color:#222327;font-size:12px}.ops-player-chip{flex-direction:row;align-items:center;gap:8px;min-height:40px;padding:5px 9px 5px 6px;display:inline-flex}.ops-player-chip-avatar{color:#a52a58;background:#ffeaf2;border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font:800 11px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-player-chip>span:last-child{min-width:0;display:grid}.ops-member-no-player,.ops-member-helper-count{color:#8a8b91;border:1px dashed #dadbe0;border-radius:8px;align-items:center;min-height:34px;padding:0 10px;font:600 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-member-helper-count{background:#f4f4f6;border-style:solid}.ops-member-avatar-editor{background:#faf5f7;border-radius:10px;align-items:center;gap:14px;padding:14px;display:flex}.ops-member-avatar-preview{color:#a52a58;background:#fff;border:1px solid #f0dbe4;border-radius:18px;flex:0 0 64px;place-items:center;width:64px;height:64px;font:800 22px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-member-avatar-editor>div:nth-child(2){gap:3px;display:grid}.ops-member-avatar-editor strong,.ops-member-avatar-editor small{color:#33343a;font:700 11px Manrope,Noto Sans TC,sans-serif;display:block}.ops-member-avatar-editor small{color:#85868c;font-size:10px}.ops-member-avatar-editor>div:nth-child(2)>div{gap:8px;margin-top:6px;display:flex}.ops-avatar-upload-button,.ops-avatar-remove-button{color:#33343a;cursor:pointer;background:#fff;border:1px solid #dedfe4;border-radius:8px;align-items:center;min-height:32px;padding:0 10px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-avatar-remove-button{color:#9f2856}.ops-location-tabs{margin-top:16px}.ops-panel.ops-location-directory{margin-top:16px;padding:0;overflow:hidden}.ops-location-directory-head{justify-content:space-between;align-items:center;gap:24px;padding:22px 24px 18px;display:flex}.ops-location-directory-head>div>span{color:#a85a77;letter-spacing:1.1px;text-transform:uppercase;font:700 10px Manrope,Noto Sans TC,sans-serif}.ops-location-directory-head h3{color:#111;margin:4px 0 0;font:700 21px Manrope,Noto Sans TC,sans-serif}.ops-location-directory-head p{color:#777981;margin:5px 0 0;font:500 12px/1.5 Manrope,Noto Sans TC,sans-serif}.ops-location-toolbar{background:#fafafb;border-top:1px solid #f0f0f3;border-bottom:1px solid #e8e8ec;grid-template-columns:minmax(280px,1fr) auto;align-items:end;gap:12px;padding:14px 24px;display:grid}.ops-location-toolbar label{color:#777981;gap:6px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-location-toolbar input{color:#111;background:#fff;border:1px solid #dedfe5;border-radius:8px;height:40px;padding:0 12px;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-location-table tbody tr{cursor:default}.ops-location-table th:first-child,.ops-location-table td:first-child{padding-left:24px}.ops-location-table th:last-child,.ops-location-table td:last-child{padding-right:24px}.ops-location-identity{align-items:center;gap:11px;min-width:230px;display:flex}.ops-location-identity>span{color:#9f2856;background:#fff0f6;border-radius:12px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.ops-location-identity>div{gap:3px;display:grid}.ops-location-identity small{color:#92939a;font:500 10px Manrope,Noto Sans TC,sans-serif}.ops-map-link,.ops-map-preview-link{color:#187a40;align-items:center;gap:6px;font:700 11px Manrope,Noto Sans TC,sans-serif;text-decoration:none;display:inline-flex}.ops-map-link:hover,.ops-map-preview-link:hover{text-decoration:underline}.ops-map-missing{color:#999aa0;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-map-preview-link{background:#eaf8ef;border-radius:8px;justify-self:start;padding:9px 11px}@media (width<=1180px){.ops-member-summary-row{grid-template-columns:minmax(220px,1fr) auto}.ops-member-contact{grid-area:2/1/auto/-1}.ops-member-account-meta{grid-area:1/2}}.ops-course-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.ops-course-tags span{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font:600 11px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-course-tags .category{color:#8f4a63;background:#fff5f9;border-color:#f7d5e3}.ops-course-tags .level{color:#155a99;background:#eef7ff;border-color:#c8e2ff}.ops-badge{color:#595b63;white-space:nowrap;background:#f0f0f2;border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font:600 11px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-badge-new,.ops-badge-featured{color:#f4a7c4;background:#fff5f9}.ops-badge-u9{color:#8b6b00;background:#fff8d8}.ops-badge-nearly_full{color:#b65c00;background:#fff1df}.ops-badge-full{color:#b42318;background:#ffe8e8}.ops-badge-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ops-visual-badge{color:#111;white-space:nowrap;background:#f3f3f5;border-radius:999px;align-items:center;gap:5px;width:fit-content;padding:4px 8px;font:500 11px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-badge-picker{background:#fafafb;border:1px solid #e5e6eb;border-radius:8px;flex-wrap:wrap;gap:8px;max-height:180px;padding:10px;display:flex;overflow-y:auto}.ops-form .ops-badge-picker label{color:#111;cursor:pointer;background:#fff;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;min-width:0;padding:4px 8px 4px 6px;font:400 12px Manrope,Noto Sans TC,sans-serif;transition:border-color .15s,background .15s,box-shadow .15s;display:inline-flex}.ops-form .ops-badge-picker label:hover{background:#fdfdfe;border-color:#dfe0e5}.ops-form .ops-badge-picker label.selected{background:#fff5f9;border-color:#ff2e8852;box-shadow:0 0 0 2px #ff2e8814}.ops-form .ops-badge-picker input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:1.5px solid #b9bbc4;border-radius:5px;flex:0 0 16px;place-items:center;width:16px;height:16px;min-height:16px;margin:0;padding:0;display:grid}.ops-form .ops-badge-picker input[type=checkbox]:before{content:"";opacity:0;border-bottom:2px solid #fff;border-left:2px solid #fff;width:8px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.ops-form .ops-badge-picker input[type=checkbox]:checked{background:#f4a7c4;border-color:#f4a7c4}.ops-form .ops-badge-picker input[type=checkbox]:checked:before{opacity:1}.ops-form .ops-badge-picker input[type=checkbox]:focus-visible{outline-offset:2px;outline:2px solid #ff2e8861}.ops-badge-picker .ops-visual-badge{background:0 0;padding:0;font-size:12px}.ops-form-field{color:#595b63;gap:6px;font:600 12px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-weekday-picker,.ops-date-chip-list{flex-wrap:wrap;gap:8px;display:flex}.ops-session-location-editor{background:#fff;border:1px solid #ececf0;border-radius:10px;gap:8px;width:min(100%,620px);margin-top:12px;padding:12px;display:grid}.ops-session-location-head{color:#8a8a8e;justify-content:space-between;gap:12px;font:700 12px Manrope,Noto Sans TC,sans-serif;display:flex}.ops-session-location-head strong{color:#111}.ops-session-location-editor label{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:10px;margin:0;display:grid}.ops-session-location-editor label span{color:#68686d;font:800 12px Manrope,Noto Sans TC,sans-serif}.ops-session-location-editor select{height:38px}.ops-session-location-view{border-top:1px solid #ececf0;margin-top:16px;padding-top:16px}.ops-session-location-view h4{color:#111;margin:0 0 10px;font:800 15px Manrope,Noto Sans TC,sans-serif}.ops-session-location-view>div{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;display:grid}.ops-session-location-view span{background:#fafafb;border:1px solid #ececf0;border-radius:10px;gap:3px;padding:10px 12px;display:grid}.ops-session-location-view strong{color:#8a8a8e;font:800 12px Manrope,Noto Sans TC,sans-serif}.ops-session-location-view em{color:#111;font:800 13px Manrope,Noto Sans TC,sans-serif}.ops-calendar-picker{background:#fafafb;border:1px solid #e5e6eb;border-radius:8px;width:min(100%,420px);padding:12px}.ops-calendar-head{grid-template-columns:34px 1fr 34px;align-items:center;gap:8px;margin-bottom:10px;display:grid}.ops-calendar-head strong{text-align:center;color:#111;font:600 14px Manrope,Noto Sans TC,sans-serif}.ops-calendar-head button{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;place-items:center;width:34px;height:34px;padding:0;display:grid}.ops-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.ops-calendar-grid span{color:#777981;place-items:center;min-height:24px;font:600 11px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-calendar-grid i{min-height:36px}.ops-calendar-grid button{color:#111;appearance:none;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;place-items:center;min-height:42px;padding:4px 3px;font:600 12px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-calendar-grid button:not(.selected){color:#111;background:#fff}.ops-calendar-grid button>span{min-height:16px;color:inherit;font:700 12px Manrope,Noto Sans TC,sans-serif}.ops-calendar-grid button small{color:#8f4a63;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;font:700 8px/1.1 Manrope,Noto Sans TC,sans-serif;overflow:hidden}.ops-calendar-grid button.holiday,.ops-calendar-grid button:not(.selected):hover{background:#fff9fb;border-color:#f7d5e3}.ops-calendar-grid button.selected{color:#fff;background:#f4a7c4;border-color:#f4a7c4}.ops-calendar-grid button.selected:hover{background:#f4a7c4;border-color:#f4a7c4}.ops-calendar-grid button.selected small{color:#ffffffd1}.ops-calendar-grid button:disabled{cursor:default;opacity:1}.ops-form .ops-date-chip-list button{color:#155a99;background:#eef7ff;border:1px solid #c8e2ff;border-radius:999px;align-items:center;gap:8px;width:auto;height:30px;padding:0 9px;font:600 12px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-date-chip-list button span{color:#155a99;font-size:16px;line-height:1}.ops-form .ops-weekday-picker label{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:56px;min-height:40px;padding:0 10px;display:inline-flex}.ops-form .ops-weekday-picker label.selected{color:#8f4a63;background:#fff5f9;border-color:#ff2e885c}.ops-form .ops-weekday-picker input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:1.5px solid #b9bbc4;border-radius:5px;flex:0 0 16px;place-items:center;width:16px;height:16px;min-height:16px;margin:0;padding:0;display:grid}.ops-form .ops-weekday-picker input[type=checkbox]:before{content:"";opacity:0;border-bottom:2px solid #fff;border-left:2px solid #fff;width:8px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.ops-form .ops-weekday-picker input[type=checkbox]:checked{background:#f4a7c4;border-color:#f4a7c4}.ops-form .ops-weekday-picker input[type=checkbox]:checked:before{opacity:1}.ops-tall-select{max-height:220px}.ops-form{gap:11px;margin-top:14px;display:grid}.ops-form label,.coach-controls label{color:#595b63;gap:6px;font:600 12px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-form input,.ops-form select,.ops-form textarea,.ops-panel-head select,.coach-controls input,.coach-controls select{color:#111;background:#fff;border:1px solid #dfe0e5;border-radius:8px;width:100%;min-height:40px;padding:0 10px;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-form textarea{min-height:86px;padding-top:10px}.ops-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ops-form-section-title{color:#777981;text-transform:uppercase;border-top:1px solid #ececf0;margin-top:2px;padding-top:12px;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-file-upload-zone{cursor:pointer;background:#fafafa;border:2px dashed #dfe0e5;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:90px;padding:18px 16px;transition:border-color .15s,background .15s;display:flex;position:relative}.ops-file-upload-zone.is-busy{pointer-events:none}.ops-file-upload-zone:hover{background:#fff7fa;border-color:#f4a7c4}.ops-file-upload-zone-icon{background:#fff;border:1px solid #eee;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex;box-shadow:0 1px 5px #0000000f}.ops-file-upload-zone-change{color:#fff;opacity:0;background:#00000061;border-radius:8px;justify-content:center;align-items:center;gap:6px;font:600 12px Manrope,Noto Sans TC,sans-serif;transition:opacity .15s;display:flex;position:absolute;inset:0}.ops-file-upload-zone:hover .ops-file-upload-zone-change{opacity:1}.ops-upload-busy{z-index:2;border-radius:inherit;color:#111;background:#ffffffdb;justify-content:center;align-items:center;gap:8px;font:800 12px Manrope,Noto Sans TC,sans-serif;display:flex;position:absolute;inset:0}.ops-spinner{border:2px solid #f4a7c459;border-top-color:#f4a7c4;border-radius:999px;flex:none;width:18px;height:18px;animation:.75s linear infinite ops-spin}.ops-spinner.small{border-width:2px;width:14px;height:14px}.ops-form button{color:#fff;background:#f4a7c4;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:44px;display:inline-flex}.ops-form button:disabled,.ops-form-actions button:disabled{cursor:not-allowed;opacity:.42}.ops-form-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ops-form-actions button[type=button]{background:#111}.ops-website-awards-editor{padding:0;overflow:hidden}.ops-website-awards-head{background:linear-gradient(115deg,#fff 0%,#fff7fa 100%);border-bottom:1px solid #ececf0;justify-content:space-between;align-items:center;gap:20px;padding:24px 26px 20px;display:flex}.ops-website-awards-heading{min-width:0}.ops-website-awards-kicker{color:#d9719c;letter-spacing:1.15px;margin-bottom:7px;font:700 10px Manrope,Noto Sans TC,sans-serif;display:block}.ops-website-awards-heading h3{color:#1d1d20;margin:0;font:700 21px Manrope,Noto Sans TC,sans-serif}.ops-website-awards-heading p{color:#777981;margin:7px 0 0;font:500 13px Manrope,Noto Sans TC,sans-serif}.ops-website-awards-add,.ops-website-awards-add-secondary,.ops-website-awards-save{color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 15px;font:700 13px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-website-awards-add,.ops-website-awards-save{background:#ed8cb6;box-shadow:0 7px 16px #ed8cb63d}.ops-website-awards-add:hover,.ops-website-awards-save:hover{background:#df7ca8}.ops-website-awards-form{margin:0}.ops-website-awards-table-wrap{padding:4px 26px 0}.ops-website-awards-table{min-width:760px}.ops-website-awards-table th{color:#94959c;letter-spacing:.3px;padding:14px 12px 10px;font-size:11px}.ops-website-awards-table th:first-child{width:18%}.ops-website-awards-table th:nth-child(2){width:35%}.ops-website-awards-table th:nth-child(3){width:29%}.ops-website-awards-table th:nth-child(4){width:12%}.ops-website-awards-table th:last-child{width:48px}.ops-website-awards-table td{vertical-align:middle;padding:10px 12px}.ops-website-awards-table tbody tr:last-child td{border-bottom:0}.ops-website-awards-table input{color:#202025;background:#fafafb;border:1px solid #e1e2e7;border-radius:8px;outline:none;width:100%;min-height:42px;padding:0 11px;font:500 13px Manrope,Noto Sans TC,sans-serif;transition:border-color .15s,background .15s,box-shadow .15s}.ops-website-awards-table input:hover{background:#fff;border-color:#cfd0d7}.ops-website-awards-table input:focus{background:#fff;border-color:#ed8cb6;box-shadow:0 0 0 3px #ed8cb624}.ops-website-awards-table input[type=number]{text-align:center;max-width:92px}.ops-website-awards-table .ops-row-icon-button{background:#fff8fa;border:1px solid #f0d9e2;border-radius:8px;width:38px;height:38px}.ops-website-awards-table .ops-row-icon-button:hover{background:#fff0f5;border-color:#e27a9f}.ops-website-awards-actions{background:#fcfcfd;border-top:1px solid #ececf0;justify-content:flex-end;align-items:center;gap:10px;padding:18px 26px 22px;display:flex}.ops-website-awards-actions>span{color:#898a91;margin-right:auto;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-website-awards-add-secondary{color:#4e4f56;background:#fff;border:1px solid #dedfe4}.ops-website-awards-add-secondary:hover{color:#d9719c;background:#fff7fa;border-color:#ed8cb6}@media (width<=760px){.ops-website-awards-head{align-items:flex-start;padding:20px}.ops-website-awards-add{width:42px;padding:0}.ops-website-awards-add span{display:none}.ops-website-awards-table-wrap{padding:0 16px}.ops-website-awards-table{min-width:0}.ops-website-awards-table thead{display:none}.ops-website-awards-table,.ops-website-awards-table tbody,.ops-website-awards-table tr,.ops-website-awards-table td{width:100%;display:block}.ops-website-awards-table tbody tr{border-bottom:1px solid #ececf0;padding:12px 46px 12px 0;position:relative}.ops-website-awards-table td{border:0;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:8px;padding:5px 0;display:grid}.ops-website-awards-table td[data-label]:before{content:attr(data-label);color:#898a91;font:700 11px Manrope,Noto Sans TC,sans-serif}.ops-website-awards-table td:last-child{width:auto;padding:0;display:block;position:absolute;top:12px;right:0}.ops-website-awards-actions{flex-wrap:wrap;padding:16px 20px 20px}.ops-website-awards-actions>span{width:100%}.ops-website-awards-add-secondary,.ops-website-awards-save{flex:1}}.ops-banner-list{gap:14px;display:grid}.ops-banner-card{background:#fff;border:1px solid #ececf0;border-radius:12px;grid-template-columns:minmax(180px,280px) 1fr auto;align-items:center;gap:16px;padding:14px;display:grid}.ops-banner-preview,.ops-banner-form-preview{background:#f4f4f6;border:1px solid #ececf0;border-radius:12px;overflow:hidden}.ops-banner-preview{aspect-ratio:16/7}.ops-banner-form-preview{aspect-ratio:16/8}.ops-banner-preview img,.ops-banner-form-preview img{object-fit:contain;width:100%;height:100%;display:block}.ops-banner-info{gap:6px;min-width:0;display:grid}.ops-banner-info strong,.ops-banner-info span,.ops-banner-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ops-banner-info strong{color:#111;font:800 16px Manrope,Noto Sans TC,sans-serif;display:block}.ops-banner-info span{color:#68686d;margin-top:3px;font:600 13px Manrope,Noto Sans TC,sans-serif;display:block}.ops-banner-info small{color:#8a8a8e;font:700 12px Manrope,Noto Sans TC,sans-serif}.ops-content-card-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.ops-subtab-bar{background:#f7f7f8;border:1px solid #ececf0;border-radius:10px;gap:4px;margin:0 0 16px;padding:4px;display:inline-flex}.ops-subtab-bar button{color:#68686d;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:0 14px;font:800 13px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-subtab-bar button.active{color:#111;background:#fff;box-shadow:0 1px 6px #11111114}.ops-subtab-bar span{color:#777981;background:#ececf0;border-radius:999px;place-items:center;min-width:22px;height:22px;font:800 11px Manrope,sans-serif;display:inline-grid}.ops-subtab-bar button.active span{color:#fff;background:#f4a7c4}.ops-content-card{background:#fff;border:1px solid #ececf0;border-radius:12px;gap:12px;min-width:0;padding:16px;display:grid;position:relative}.ops-content-card-image,.ops-content-form-preview{color:#8a8a8e;background:#f4f5f7;border:1px solid #ececf0;border-radius:10px;place-items:center;display:grid;overflow:hidden}.ops-content-card-image,.ops-content-card-image.portrait{width:100%}.ops-content-form-preview{aspect-ratio:4/3;position:relative}.ops-content-form-preview.portrait{aspect-ratio:1}.ops-content-form-gallery{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.ops-content-card-image img,.ops-content-form-preview img{object-fit:contain;width:100%;height:auto;max-height:520px;display:block}.ops-content-form-preview img{height:100%}.ops-image-delete-badge{color:#2c2c31;cursor:pointer;background:#fffffff0;border:1px solid #0000001f;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:background .15s,color .15s,transform .15s;display:inline-flex;position:absolute;top:6px;right:6px;box-shadow:0 2px 8px #00000029}.ops-image-delete-badge:hover{color:#b4234a;background:#fff0f4;transform:translateY(-1px)}.ops-image-delete-badge:disabled{cursor:not-allowed;opacity:.55;transform:none}.ops-content-card-body{gap:8px;min-width:0;display:grid}.ops-content-card>.ops-row-actions{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #dfe0e5d1;border-radius:12px;padding:6px;position:absolute;top:26px;right:26px;box-shadow:0 8px 20px #11111114}.ops-content-card-body span,.ops-content-card-body small{color:#8a8a8e;font:700 12px/1.35 Manrope,Noto Sans TC,sans-serif}.ops-content-card-body strong{color:#111;margin-top:4px;font:800 19px/1.2 Manrope,Noto Sans TC,sans-serif;display:block}.ops-content-card-body p{color:#68686d;-webkit-line-clamp:4;-webkit-box-orient:vertical;margin:0;font:600 13px/1.55 Manrope,Noto Sans TC,sans-serif;display:-webkit-box;overflow:hidden}.ops-subhead{margin:0 0 16px}.ops-course-table-head{justify-content:space-between}.ops-course-table-head h3{margin:0}.ops-filter-bar{grid-template-columns:repeat(4,minmax(160px,240px));gap:10px;margin:0 0 14px;display:grid}.ops-filter-bar label{color:#777981;gap:6px;font:500 12px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-filter-bar input,.ops-filter-bar select{color:#111;background:#fff;border:1px solid #dfe0e5;border-radius:8px;min-height:40px;padding:0 10px;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-request-filter-bar{background:#fafafb;border:1px solid #ececf0;border-radius:12px;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:12px;width:min(100%,1240px);margin:2px 0 18px;padding:14px}.ops-request-filter-bar>label,.ops-request-filter-bar>.ops-filter-reset{grid-column:span 2}.ops-request-filter-bar label{color:#68686d;gap:7px;font-weight:700}.ops-request-filter-bar input{border-radius:9px;min-height:42px}.ops-request-filter-bar .ops-filter-reset{color:#111;background:#f7f7f8;border:1px solid #dfe0e5;border-radius:8px;min-height:42px;padding:0 16px;font:700 12px Manrope,Noto Sans TC,sans-serif}.ops-request-filter-bar .ops-filter-reset:disabled{cursor:not-allowed;opacity:.45}.ops-course-head-actions{align-items:center;gap:12px;display:flex}.ops-course-head-actions span{color:#777981;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-list-summary{background:#fafafb;border:1px solid #ececf0;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px;display:grid}.ops-list-summary div{gap:4px;display:grid}.ops-list-summary span{color:#777981;text-transform:uppercase;font:600 11px Manrope,Noto Sans TC,sans-serif}.ops-list-summary strong{color:#111;font:600 14px Manrope,Noto Sans TC,sans-serif}.ops-list-summary p{color:#595b63;grid-column:1/-1;margin:0;font:500 13px Manrope,Noto Sans TC,sans-serif}.ops-pagination{border-top:1px solid #ececf0;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding-top:12px;display:flex}.ops-pagination span{color:#777981;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-pagination div{align-items:center;gap:8px;display:flex}.ops-page-size{color:#777981;align-items:center;gap:8px;font:500 12px Manrope,Noto Sans TC,sans-serif;display:flex}.ops-page-size span{color:#777981;font:inherit}.ops-page-size select{color:#111;background:#fff;border:1px solid #dfe0e5;border-radius:8px;height:34px;padding:0 28px 0 10px;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-pagination button{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;height:34px;padding:0 12px;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-pagination button:disabled{cursor:not-allowed;opacity:.45}.ops-detail-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.ops-detail-head h3{margin:0;font:500 18px Manrope,Noto Sans TC,sans-serif}.ops-course-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.ops-course-detail-grid div{background:#fafafb;border:1px solid #ececf0;border-radius:8px;gap:4px;min-width:0;padding:12px;display:grid}.ops-course-detail-grid span{color:#777981;text-transform:uppercase;font:500 11px Manrope,Noto Sans TC,sans-serif}.ops-course-detail-grid strong{overflow-wrap:anywhere;color:#111;font:400 13px Manrope,Noto Sans TC,sans-serif}.ops-participant-panel{border-top:1px solid #ececf0;margin-top:18px;padding-top:16px}.ops-participant-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.ops-participant-head h4{color:#111;margin:0;font:600 15px Manrope,Noto Sans TC,sans-serif}.ops-participant-head span{color:#777981;font:500 12px Manrope,Noto Sans TC,sans-serif}.ops-participant-list{gap:8px;display:grid}.ops-participant-row{background:#fff;border:1px solid #ececf0;border-radius:8px;grid-template-columns:minmax(150px,1.1fr) minmax(180px,1.4fr) auto;align-items:center;gap:14px;padding:12px;display:grid}.ops-participant-row div{gap:2px;min-width:0;display:grid}.ops-participant-row strong{overflow-wrap:anywhere;color:#111;font:600 13px Manrope,Noto Sans TC,sans-serif}.ops-participant-row span,.ops-participant-row small{overflow-wrap:anywhere;color:#777981;font:500 11px Manrope,Noto Sans TC,sans-serif}.ops-registration-status{white-space:nowrap;border-radius:999px;justify-self:end;padding:7px 10px;font:700 11px Manrope,Noto Sans TC,sans-serif}.ops-registration-status.pending{color:#9a5b00;background:#fff4d7}.ops-registration-status.waiting-payment{color:#0f5a78;background:#e4f6ff}.ops-registration-status.paid{color:#7a4a00;background:#fff0c2}.ops-registration-status.approved{color:#0f6b3f;background:#e7f8ee}.ops-registration-status.cancelled{color:#595b63;background:#ececf0}.ops-registration-select{color:#9a5b00;cursor:pointer;background:#fff4d7;border:0;border-radius:999px;justify-self:end;min-width:130px;height:34px;padding:0 28px 0 12px;font:700 12px Manrope,Noto Sans TC,sans-serif}.ops-registration-select.waiting-payment{color:#0f5a78;background:#e4f6ff}.ops-registration-select.paid{color:#7a4a00;background:#fff0c2}.ops-registration-select.approved{color:#0f6b3f;background:#e7f8ee}.ops-registration-select.cancelled{color:#595b63;background:#ececf0}.ops-empty-detail{color:#777981;border:1px dashed #dfe0e5;border-radius:8px;place-items:center;min-height:112px;font:400 13px Manrope,Noto Sans TC,sans-serif;display:grid}.ops-modal-backdrop{z-index:100;overscroll-behavior:contain;background:#11111175;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.ops-modal{overscroll-behavior:contain;background:#fff;border:1px solid #e8e8ec;border-radius:8px;width:min(100%,760px);max-height:calc(100dvh - 48px);padding:20px;overflow:auto;box-shadow:0 24px 70px #1111113d}.ops-small-modal{width:min(100%,560px)}.ops-detail-modal{width:min(100%,1320px)}.ops-detail-modal-head{align-items:center}.ops-confirm-modal{background:#fff;border:1px solid #e8e8ec;border-radius:8px;width:min(100%,420px);padding:22px;box-shadow:0 24px 70px #1111113d}.ops-confirm-icon{color:#b42318;background:#ffe8e8;border-radius:8px;place-items:center;width:46px;height:46px;display:grid}.ops-confirm-modal h3{margin:16px 0 0;font:600 22px Manrope,Noto Sans TC,sans-serif}.ops-confirm-modal p{color:#595b63;margin:8px 0 0;font:500 13px/1.5 Manrope,Noto Sans TC,sans-serif}.ops-confirm-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;display:grid}.ops-confirm-actions button{color:#111;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;height:44px;font:600 13px Manrope,Noto Sans TC,sans-serif}.ops-confirm-actions button.danger{color:#fff;background:#b42318;border-color:#b42318}.ops-modal-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.ops-modal-head span{color:#f4a7c4;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-modal-head h3{margin:4px 0 0;font:600 22px Manrope,Noto Sans TC,sans-serif}.ops-modal-head-actions{flex:none;align-items:center;gap:8px;display:flex}.ops-unsaved-tag{color:#8f4a63;white-space:nowrap;background:#fff9fb;border:1px solid #f7d5e3;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font:700 11px Manrope,Noto Sans TC,sans-serif;display:inline-flex}.ops-modal-head-actions button{color:#111;cursor:pointer;background:#fff;border:1px solid #e8e8ec;border-radius:8px;width:36px;height:36px;font:600 22px Manrope,sans-serif}.ops-modal-head-actions .ops-modal-save-button{color:#fff;background:#f4a7c4;border-color:#f4a7c4;width:36px;min-width:0;padding:0}.ops-modal-form{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-modal-form>label:first-child,.ops-modal-form>.ops-form-section-title,.ops-modal-form>.ops-badge-picker,.ops-modal-form>.ops-form-field-full,.ops-modal-actions{grid-column:1/-1}.ops-modal-actions{grid-template-columns:1fr 1fr}.ops-link-button{color:#f4a7c4;cursor:pointer;background:0 0;border:0;font:600 12px Manrope,Noto Sans TC,sans-serif}.ops-roster{gap:10px;margin-top:12px;display:grid}.ops-roster-row{border:1px solid #ececf0;border-radius:8px;grid-template-columns:1fr 2fr auto;align-items:center;gap:12px;padding:12px;display:grid}.ops-roster-row span,.ops-roster-row small{color:#777981;font:500 12px Manrope,Noto Sans TC,sans-serif}.coach-shell{background:#f4f5f7;max-width:760px;min-height:100dvh;margin:0 auto;padding:18px 16px 28px}.coach-login-shell{background:#f4f5f7;place-items:center;min-height:100dvh;padding:20px;display:grid}.coach-login-card{background:#fff;border:1px solid #e8e8ec;border-radius:8px;gap:14px;width:min(100%,420px);padding:26px;display:grid;box-shadow:0 18px 50px #11111114}.coach-login-card img{object-fit:contain;width:82px;height:82px}.coach-login-card span{color:#f4a7c4;letter-spacing:1.2px;text-transform:uppercase;font:600 12px Manrope,Noto Sans TC,sans-serif}.coach-login-card h1{margin:-4px 0 4px;font:600 32px Manrope,Noto Sans TC,sans-serif}.coach-login-card label{color:#595b63;gap:7px;font:600 12px Manrope,Noto Sans TC,sans-serif;display:grid}.coach-login-card input{border:1px solid #dfe0e5;border-radius:8px;height:46px;padding:0 12px;font:500 14px Manrope,Noto Sans TC,sans-serif}.coach-login-card button,.coach-logout{color:#fff;cursor:pointer;background:#111;border:0;border-radius:8px;height:46px;font:600 14px Manrope,Noto Sans TC,sans-serif}.coach-login-card p{color:#777981;margin:0;font:500 12px Manrope,Noto Sans TC,sans-serif}.coach-hero{color:#fff;background:#111;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.coach-hero h1{margin-top:6px;font:600 34px Manrope,Noto Sans TC,sans-serif}.coach-hero p{color:#ffffffa6;margin:6px 0 0;font:500 13px Manrope,Noto Sans TC,sans-serif}.coach-hero img{object-fit:contain;width:68px;height:68px}.coach-logout{background:#ffffff21;border:1px solid #ffffff2e;width:96px}.coach-controls{grid-template-columns:1fr 150px;gap:12px;margin-top:14px;padding:14px;display:grid}.coach-course-card{justify-content:space-between;gap:14px;margin-top:12px;padding:14px;display:flex}.coach-course-card div{gap:4px;display:grid}.coach-roster{gap:10px;margin-top:14px;display:grid}.coach-student{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.coach-avatar{color:#111;background:#ffd23f;border-radius:8px;place-items:center;width:46px;height:46px;font:600 18px Manrope,sans-serif;display:grid}.coach-student-info{gap:3px;display:grid}.coach-student-info strong,.coach-course-card strong{font:600 15px Manrope,Noto Sans TC,sans-serif}.coach-actions{gap:7px;display:flex}.coach-actions button{color:#777981;cursor:pointer;background:#fff;border:1px solid #dfe0e5;border-radius:8px;width:42px;height:42px;font:600 13px Manrope,sans-serif}.coach-actions button.active{color:#fff;background:#f4a7c4;border-color:#f4a7c4}.coach-bottom{width:min(100%,760px);padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#f4f5f7f0;border-top:1px solid #e8e8ec;grid-template-columns:1fr 1fr;gap:10px;display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.coach-bottom button{color:#fff;background:#111;border-radius:8px;height:44px}.coach-shell,.coach-login-shell{color:#f7f5f1;background:#0b0b0c}.coach-shell{max-width:920px;padding:max(18px, env(safe-area-inset-top)) 24px 56px}.coach-shell:before,.coach-login-shell:before{content:"";pointer-events:none;background:radial-gradient(circle at 85% -5%,#f4a7c424,#0000 27%),linear-gradient(#ffffff06 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#ffffff06 1px,#0000 1px) 0 0/28px 28px;position:fixed;inset:0}.coach-login-shell{padding:24px}.coach-login-card{background:#18181ae6;border:1px solid #ffffff1f;border-radius:22px;gap:18px;width:min(100%,430px);padding:32px;position:relative;box-shadow:0 30px 90px #0000008c}.coach-login-brand{align-items:center;gap:12px;display:flex}.coach-login-brand img{width:44px;height:44px;margin:0}.coach-login-brand strong{color:#fff;font:800 16px Manrope,sans-serif;display:block}.coach-login-brand span,.coach-login-copy>span{color:#f4a7c4;letter-spacing:.14em;text-transform:uppercase;font:800 10px Manrope,sans-serif}.coach-login-copy{margin:12px 0 2px}.coach-login-card h1{color:#fff;letter-spacing:-.05em;margin:6px 0 7px;font:800 31px/1.1 Manrope,sans-serif}.coach-login-copy p,.coach-login-foot{color:#ffffff75;font:600 12px/1.55 Manrope,sans-serif}.coach-login-card label{color:#ffffff8c;letter-spacing:.1em;text-transform:uppercase;font:800 10px Manrope,sans-serif}.coach-login-card input{color:#fff;background:#111113;border-color:#ffffff21;border-radius:11px}.coach-login-card input:focus{border-color:#f4a7c4;outline:2px solid #f4a7c480}.coach-login-card button{color:#151216;background:#f4a7c4;border-radius:11px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}.coach-login-foot{text-align:center;border-top:1px solid #ffffff14;padding-top:3px}.coach-hero{background:0 0;border-bottom:1px solid #ffffff1f;border-radius:0;justify-content:space-between;align-items:center;padding:0 0 18px;display:flex;position:relative}.coach-hero-brand,.coach-hero-user{align-items:center;gap:10px;display:flex}.coach-hero-brand img{object-fit:contain;width:36px;height:36px}.coach-hero-brand span{color:#ffffff9e;letter-spacing:.11em;text-transform:uppercase;font:800 11px Manrope,sans-serif}.coach-user-initial{color:#181217;background:#f4a7c4;border-radius:50%;place-items:center;width:34px;height:34px;font:900 13px Manrope,sans-serif;display:grid}.coach-hero-user strong,.coach-hero-user small{display:block}.coach-hero-user strong{color:#fff;font:800 12px Manrope,sans-serif}.coach-hero-user small{color:#ffffff73;margin-top:2px;font:700 10px Manrope,sans-serif}.coach-logout{color:#ffffffbf;background:#ffffff14;border-radius:10px;place-items:center;width:34px;height:34px;padding:0;display:grid}.coach-page-title{padding:34px 0 23px}.coach-page-title>span,.coach-roster-head span{color:#f4a7c4;letter-spacing:.12em;text-transform:uppercase;font:800 10px Manrope,sans-serif}.coach-page-title h1{color:#fff;letter-spacing:-.06em;margin:5px 0;font:800 40px/1 Manrope,sans-serif}.coach-page-title p{color:#ffffff80;margin:0;font:600 13px Manrope,sans-serif}.coach-controls{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:10px;margin:0;padding:0}.coach-controls label{color:#ffffff8a;letter-spacing:.1em;text-transform:uppercase;background:#171719;border:1px solid #ffffff1f;border-radius:13px;gap:6px;padding:11px 13px;font:800 9px Manrope,sans-serif;display:grid;position:relative}.coach-controls select{appearance:none;color:#fff;background:0 0;border:0;outline:none;width:100%;height:23px;padding:0 22px 0 0;font:800 13px Manrope,sans-serif}.coach-controls label>svg{color:#f4a7c4;pointer-events:none;position:absolute;bottom:14px;right:12px}.coach-course-card{background:linear-gradient(125deg,#242126,#18181a);border:1px solid #ffffff1f;border-radius:16px;align-items:stretch;margin-top:13px;padding:18px}.coach-course-main{gap:7px!important}.coach-course-code{color:#f4a7c4;letter-spacing:.08em;background:#f4a7c429;border-radius:5px;width:max-content;padding:4px 7px;font:900 9px Manrope,sans-serif}.coach-course-card strong{color:#fff;font:800 16px Manrope,sans-serif}.coach-course-card span:not(.coach-course-code){color:#ffffff87;align-items:center;gap:5px;font:700 11px Manrope,sans-serif;display:flex}.coach-enrollment{color:#f4a7c4;border-left:1px solid #ffffff1a;align-content:center;justify-items:end;min-width:105px;padding-left:16px}.coach-enrollment strong{font-size:24px}.coach-enrollment span{font-size:10px!important}.coach-toast{color:#9be2b5;background:#53b0761f;border:1px solid #85e1a740;border-radius:10px;align-items:center;gap:7px;margin-top:13px;padding:10px 12px;font:800 11px Manrope,sans-serif;display:flex}.coach-toast button{color:inherit;cursor:pointer;background:0 0;border:0;margin-left:auto}.coach-roster{gap:8px;margin-top:25px}.coach-roster-head{justify-content:space-between;align-items:end;padding:0 3px 4px;display:flex}.coach-roster-head strong{color:#fff;margin-top:3px;font:800 15px Manrope,sans-serif;display:block}.coach-status-key{color:#ffffff7a;font:700 10px Manrope,sans-serif}.coach-status-key i{background:#8fe1a9;border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.coach-student{background:#171719;border:1px solid #ffffff17;border-radius:14px;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;padding:12px}.coach-avatar{color:#f4a7c4;background:#29262c;border-radius:12px;width:42px;height:42px;font-size:16px}.coach-student-info strong{color:#fff;font-weight:800}.coach-student-info span{color:#ffffff73;font-weight:600}.coach-actions{gap:5px}.coach-actions button{color:#ffffff94;background:#202023;border-color:#ffffff1f;border-radius:9px;justify-content:center;align-items:center;gap:4px;width:auto;min-width:62px;height:34px;padding:0 9px;font:800 10px Manrope,sans-serif;display:flex}.coach-actions button.active.present{color:#102218;background:#a0ebba;border-color:#a0ebba}.coach-actions button.active.late{color:#2e2307;background:#ffd574;border-color:#ffd574}.coach-actions button.active.absent{color:#321010;background:#fa8d8d;border-color:#fa8d8d}.coach-actions button:disabled{opacity:.5;cursor:wait}@media (width<=560px){.coach-shell{padding:max(14px, env(safe-area-inset-top)) 14px 36px}.coach-hero-user>div:not(.coach-user-initial){display:none}.coach-page-title{padding-top:28px}.coach-page-title h1{font-size:35px}.coach-controls{grid-template-columns:1fr}.coach-course-card{padding:15px}.coach-enrollment{min-width:76px}.coach-student{grid-template-columns:40px minmax(0,1fr)}.coach-actions{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.coach-actions button{width:100%}.coach-login-card{padding:26px}}@media (width<=900px){.ops-shell,.ops-shell.sidebar-collapsed{grid-template-columns:1fr}.ops-sidebar{z-index:50;align-items:stretch;padding:14px;display:flex;position:sticky;top:0}.ops-sidebar-brand{grid-template-columns:54px minmax(0,1fr) 38px}.ops-sidebar img{width:54px;height:54px}.ops-sidebar-nav{gap:12px}.ops-nav-group{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.ops-nav-group-label{grid-column:1/-1;padding:0 2px}.ops-sidebar-nav button{text-align:center;justify-content:center}.sidebar-collapsed .ops-sidebar{align-items:stretch}.sidebar-collapsed .ops-sidebar-brand div,.sidebar-collapsed .ops-sidebar-nav button span{display:block}.sidebar-collapsed .ops-sidebar-brand{justify-content:start}.sidebar-collapsed .ops-sidebar-nav button{width:auto;padding:0 10px}.ops-main{padding:16px}.ops-stats,.ops-grid{grid-template-columns:1fr}.ops-coach-metrics{grid-template-columns:1fr 1fr}.ops-coach-toolbar,.ops-member-toolbar{grid-template-columns:minmax(0,1fr) 180px}.ops-coach-result-count{grid-column:1/-1;justify-self:start}.ops-roster-row,.ops-participant-row{grid-template-columns:1fr}.ops-registration-status{justify-self:start}.ops-request-filter-bar{grid-template-columns:1fr 1fr}.ops-request-filter-bar>label,.ops-request-filter-bar>.ops-filter-reset{grid-column:auto}}@media (width<=560px){.ops-header,.ops-panel-head,.coach-course-card,.ops-head-actions{flex-direction:column;align-items:stretch}.ops-request-filter-bar{grid-template-columns:1fr}.ops-list-picker{width:100%}.ops-list-picker-menu{min-width:0;left:0;right:0}.ops-stats{grid-template-columns:1fr 1fr}.ops-coach-metrics,.ops-coach-toolbar,.ops-member-toolbar,.ops-location-toolbar{grid-template-columns:1fr}.ops-coach-directory-head,.ops-member-directory-head,.ops-location-directory-head{flex-direction:column;align-items:stretch;padding:18px}.ops-coach-create-button{justify-content:center}.ops-coach-toolbar,.ops-member-toolbar,.ops-location-toolbar{padding:14px 18px}.ops-member-summary-row{grid-template-columns:1fr;gap:14px}.ops-member-contact,.ops-member-account-meta{grid-area:auto/1}.ops-member-account-meta{justify-content:flex-start}.ops-member-family-row,.coach-controls,.coach-student,.ops-list-summary,.ops-course-detail-grid,.ops-modal-form,.ops-modal-actions{grid-template-columns:1fr}.ops-list-summary p,.ops-modal-form>label:first-child,.ops-modal-form>.ops-form-section-title,.ops-modal-form>.ops-badge-picker,.ops-modal-form>.ops-form-field-full,.ops-modal-actions{grid-column:span 1}.ops-modal-backdrop{padding:10px}.coach-actions{grid-template-columns:repeat(3,1fr);display:grid}.coach-actions button{width:100%}}@keyframes market-toast-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.market-toast-in{animation:.22s market-toast-slide-in}.market-loading{color:#8a8a8e;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:52px 0;font:800 13px Manrope,Noto Sans TC,sans-serif;display:flex}.market-spinner{border:3px solid #f4a7c447;border-top-color:#f4a7c4;border-radius:999px;width:28px;height:28px;animation:.72s linear infinite pusionSpin}.market-card-info{padding:9px 12px 12px}.market-card-name{color:#111;text-overflow:ellipsis;white-space:nowrap;font:800 13px Manrope,Noto Sans TC,sans-serif;display:block;overflow:hidden}.market-sold-out-badge{-webkit-backdrop-filter:blur(4px);color:#ffffffd1;background:#111111ad;border-radius:10px;padding:5px 10px;font:900 10px Manrope,Noto Sans TC,sans-serif;position:absolute;bottom:9px;right:9px;box-shadow:0 2px 8px #11111124}.market-card-img-count{-webkit-backdrop-filter:blur(4px);background:#11111185;border-radius:999px;align-items:center;gap:3px;padding:3px 8px;display:inline-flex;position:absolute;bottom:9px;left:9px}.market-card-img-count span{color:#ffffffe0;font:900 10px Manrope,sans-serif}.market-order-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.market-order-info{flex:1;min-width:0}.market-order-date{color:#a0a1a8;font:900 10px Manrope,Noto Sans TC,sans-serif;display:block}.market-order-info h3{color:#111;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font:900 14px/1.25 Manrope,Noto Sans TC,sans-serif;overflow:hidden}.market-order-info p{color:#777981;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font:700 11px/1.35 Manrope,Noto Sans TC,sans-serif;overflow:hidden}.market-order-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.market-order-meta strong{color:#111;font:900 15px Manrope,sans-serif}.market-order-status{text-transform:capitalize;border-radius:999px;align-items:center;height:22px;padding:0 9px;font:900 10px Manrope,Noto Sans TC,sans-serif;display:inline-flex}@keyframes market-detail-up{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes market-detail-fade{0%{opacity:0}to{opacity:1}}.market-detail-backdrop{z-index:88;background:#11111180;place-items:end center;animation:.22s market-detail-fade;display:grid;position:fixed;inset:0}.market-detail-sheet{background:#fff;border-radius:24px 24px 0 0;flex-direction:column;width:100%;max-width:460px;max-height:92dvh;animation:.28s cubic-bezier(.32,.72,0,1) market-detail-up;display:flex;overflow:hidden;box-shadow:0 -8px 48px #11111138}.market-detail-handle{background:#d9d9de;border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:10px auto 4px}.market-gallery{-webkit-user-select:none;user-select:none;touch-action:pan-y;background:#efeff1;flex-shrink:0;width:100%;height:clamp(210px,56vw,340px);position:relative;overflow:hidden}.market-gallery-img{object-fit:contain;width:100%;height:100%;display:block}.market-gallery-placeholder{color:#c9c9cf;place-items:center;width:100%;height:100%;font:900 52px Manrope,sans-serif;display:grid}.market-gallery-top{z-index:3;background:linear-gradient(#0000003d 0%,#0000 100%);justify-content:space-between;align-items:flex-start;padding:12px 12px 24px;display:flex;position:absolute;top:0;left:0;right:0}.market-detail-category-pill{text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(6px);color:#111;background:#ffffffe0;border-radius:999px;max-width:calc(100% - 52px);padding:6px 10px;font:900 10px Manrope,Noto Sans TC,sans-serif;overflow:hidden;box-shadow:0 2px 8px #1111111f}.market-detail-close{-webkit-backdrop-filter:blur(6px);color:#111;cursor:pointer;background:#ffffffe0;border:none;border-radius:999px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid;box-shadow:0 2px 8px #11111129}.market-gallery-nav{z-index:3;-webkit-backdrop-filter:blur(6px);color:#111;cursor:pointer;background:#ffffffd1;border:none;border-radius:999px;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #1111112e}.market-gallery-nav-prev{left:12px}.market-gallery-nav-next{right:12px}.market-gallery-dots{z-index:3;pointer-events:none;justify-content:center;gap:5px;display:flex;position:absolute;bottom:10px;left:0;right:0}.market-gallery-dot{cursor:pointer;pointer-events:all;background:#ffffff80;border:none;border-radius:999px;width:6px;height:6px;padding:0;transition:width .22s,background .22s}.market-gallery-dot.active{background:#fff;width:18px}.market-gallery-thumbs{overscroll-behavior-x:contain;scrollbar-width:none;background:#fff;border-bottom:1px solid #f0f0f3;flex-shrink:0;gap:8px;padding:10px 14px;display:flex;overflow-x:auto}.market-gallery-thumbs::-webkit-scrollbar{display:none}.market-gallery-thumb{cursor:pointer;background:#efeff1;border:2px solid #ececf0;border-radius:10px;flex:0 0 54px;width:54px;height:54px;padding:0;transition:border-color .15s;overflow:hidden}.market-gallery-thumb.active{border-color:#111}.market-gallery-thumb img{object-fit:cover;width:100%;height:100%;display:block}.market-detail-scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.market-detail-body{gap:16px;padding:16px 18px 12px;display:grid}.market-detail-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.market-detail-title-row h2{color:#111;margin:0;font:900 20px/1.2 Manrope,Noto Sans TC,sans-serif}.market-detail-sku{color:#a6a7ad;margin-top:3px;font:800 11px Manrope,Noto Sans TC,sans-serif;display:block}.market-detail-price{color:#111;font:900 22px Manrope,sans-serif}.market-detail-description{color:#68686d;margin:0;font:600 13px/1.55 Manrope,Noto Sans TC,sans-serif}.market-detail-footer{padding:12px 18px calc(14px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #f0f0f3;flex-shrink:0;gap:10px;display:grid}.market-stock-label{color:#8a8a8e;font:800 12px Manrope,Noto Sans TC,sans-serif}.market-stock-label.sold-out{color:#b42318}.market-add-to-cart-cta{color:#fff;cursor:pointer;background:#111;border:0;border-radius:16px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:52px;font:900 15px Manrope,Noto Sans TC,sans-serif;transition:background .15s;display:inline-flex}.market-add-to-cart-cta:disabled{cursor:not-allowed;background:#d9d9de}@keyframes market-fly-to-cart{0%{transform:translate(var(--fly-x0), var(--fly-y0)) translate(-50%, -50%) scale(1);opacity:1}75%{opacity:1}to{transform:translate(var(--fly-x1), var(--fly-y1)) translate(-50%, -50%) scale(.28);opacity:0}}.market-fly-dot{z-index:300;pointer-events:none;background:#111;border-radius:12px;width:48px;height:48px;animation:.52s cubic-bezier(.4,0,.2,1) forwards market-fly-to-cart;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 6px 22px #11111161}.market-fly-dot img{object-fit:cover;width:100%;height:100%;display:block}@keyframes market-cart-bounce{0%{transform:scale(1)}28%{transform:scale(1.35)}55%{transform:scale(.88)}78%{transform:scale(1.1)}to{transform:scale(1)}}.market-cart-button.is-bouncing{animation:.46s cubic-bezier(.36,.07,.19,.97) market-cart-bounce}.ops-coach-assignment{gap:10px;display:grid}.ops-coach-assignment>span{color:#595b63;letter-spacing:.04em;font:800 11px Manrope,Noto Sans TC,sans-serif}.ops-coach-assignment-all,.ops-coach-assignment-list label{cursor:pointer;align-items:center;gap:8px;display:flex}.ops-coach-assignment-all{color:#8c254d;background:#fff6fa;border:1px solid #f0c7d8;border-radius:10px;padding:11px 12px;font:800 12px Manrope,Noto Sans TC,sans-serif}.ops-coach-assignment-list{flex-wrap:wrap;gap:8px;display:flex}.ops-coach-assignment-list label{color:#595b63;background:#fff;border:1px solid #e2e3e8;border-radius:9px;padding:8px 10px;font:700 12px Manrope,Noto Sans TC,sans-serif}.ops-coach-assignment-list label.selected{color:#8c254d;background:#fff0f6;border-color:#f4a7c4}.ops-coach-assignment input{accent-color:#e890b6}.coach-toast{top:calc(14px + env(safe-area-inset-top));z-index:200;color:#14532d;background:#effbf3;border:1px solid #8ed9a7;border-radius:13px;width:min(100% - 32px,440px);margin:0;padding:13px 14px;font:800 14px/1.35 Manrope,Noto Sans TC,sans-serif;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #18522d2e}.coach-toast button{color:#14532d}.coach-shell{color:#171317;background:#f7f5f3}.coach-shell:before{background:radial-gradient(circle at 85% -5%,#f4a7c442,#0000 30%),linear-gradient(#11111109 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#11111109 1px,#0000 1px) 0 0/28px 28px}.coach-hero{border-bottom-color:#1111111f}.coach-hero-brand span{color:#1111118c}.coach-hero-user strong{color:#171317}.coach-hero-user small{color:#11111173}.coach-logout{color:#111111b3;background:#fff;border-color:#1111111a}.coach-page-title h1{color:#171317}.coach-page-title p{color:#11111180}.coach-controls label{color:#1111118a;background:#fff;border-color:#1111111a}.coach-controls select{color:#171317}.coach-course-card{background:#fff;border-color:#1111111a;box-shadow:0 12px 30px #1912160d}.coach-course-code{color:#a72e59;background:#f4a7c438}.coach-course-card strong{color:#171317}.coach-course-card span:not(.coach-course-code){color:#11111187}.coach-enrollment{color:#a72e59;border-left-color:#1111111a}.coach-roster-head strong{color:#171317}.coach-status-key{color:#1111117a}.coach-status-key i{background:#4ebd77}.coach-student{background:#fff;border-color:#11111114;box-shadow:0 5px 18px #19121609}.coach-avatar{color:#a72e59;background:#fff0f6}.coach-student-info strong{color:#171317}.coach-student-info span{color:#11111173}.coach-actions button{color:#11111194;background:#f7f6f6;border-color:#1111111a}
