:root{font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic UI,Yu Gothic,sans-serif;color:#403a41;background:#f1ebec;font-synthesis:none;--bg: #fbf8f7;--surface: #fffdfc;--ink: #403a41;--muted: #8d858d;--line: #eee6e7;--purple: #7d6886;--purple-soft: #f1ebf3;--rose: #a96f79;--rose-soft: #f8e9eb;--green: #6e887f;--green-soft: #eaf2ef;--amber: #9a7954;--amber-soft: #f7efe3;--blue: #73879f;--blue-soft: #eaf0f5;--shadow: 0 10px 28px rgba(91, 72, 86, .06)}*{box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}html{background:#f1ebec;touch-action:pan-y pinch-zoom}body{margin:0;min-width:320px;background:#f1ebec}#app{width:100%;height:100%;overflow-y:auto;overscroll-behavior:none;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch}html:has(.sheet-backdrop),body:has(.sheet-backdrop),#app:has(.sheet-backdrop){overflow:hidden}#app:has(.sheet-backdrop) .app-main{overflow:hidden}button,input,select,textarea{color:inherit;font:inherit}select option{color:var(--ink)}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}.app-shell{position:relative;width:100%;max-width:480px;height:100dvh;margin:0 auto;overflow:hidden;background:var(--bg);box-shadow:0 0 50px #59475512}.app-main{height:100%;padding-bottom:calc(88px + env(safe-area-inset-bottom));overflow-x:hidden;overflow-y:auto;overscroll-behavior:none;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch}.page{padding:0 20px 36px}.home-header,.page-header{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:env(safe-area-inset-top)}.brand{margin:0;font-size:24px;line-height:1;font-weight:700;letter-spacing:-.5px;color:var(--purple)}.brand span{color:var(--rose)}.icon-button{width:40px;height:40px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--surface);box-shadow:0 3px 14px #5b48560f;cursor:pointer;flex:0 0 auto}.page-heading{flex:1}.page-heading h1,.page-header h1{margin:2px 0 0;font-size:22px;letter-spacing:-.03em}.header-add-button{min-height:36px;padding:0 10px;display:inline-flex;align-items:center;gap:4px;border:0;border-radius:12px;color:var(--purple);background:var(--purple-soft);font-size:10px;font-weight:600;cursor:pointer}.renewal-focus{overflow:hidden;border:1px solid #ead3d8;border-radius:22px;background:linear-gradient(145deg,#faecee,#f5e2e6);box-shadow:0 14px 30px #9c65701a}.renewal-heading{padding:17px;display:flex;align-items:center;gap:11px}.renewal-heading>span{width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:14px;color:var(--rose);background:#ffffffa6}.renewal-heading>div{flex:1;min-width:0}.renewal-heading strong{display:block;font-size:15px}.renewal-heading b{min-width:34px;padding:5px 8px;border-radius:99px;color:#fff;background:var(--rose);text-align:center;font-size:10px}.renewal-row{min-height:65px;padding:12px 15px 12px 17px;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:9px;border-top:1px solid rgba(180,125,136,.14);background:#ffffff70}.renewal-row div{min-width:0}.renewal-row strong{display:block;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.renewal-row p{margin:3px 0 0;color:var(--muted);font-size:9px}.renewal-row>span{color:#80666c;font-size:9px;white-space:nowrap}.renewal-row>svg{color:var(--rose)}.section-block{padding-top:34px}.home-section{padding-top:28px}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-title h2{margin:4px 0 0;font-size:19px}.section-title>a{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:11px}.next-performance-card{min-height:142px;padding:17px;display:grid;grid-template-columns:minmax(0,1fr) 19px;align-items:center;gap:14px;border:1px solid var(--line);border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.next-performance-card.is-compact{min-height:117px}.next-performance-copy{min-width:0}.next-performance-copy>strong{display:block;overflow:hidden;font-size:13px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.next-performance-copy>p{margin:3px 0 10px;color:var(--muted);font-size:10px}.next-performance-copy>span{margin-top:5px;display:flex;align-items:center;gap:5px;color:#706970;font-size:10px}.next-performance-card>svg{color:#b9afb7}.todo-list{overflow:hidden;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.todo-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 15px;border-bottom:1px solid var(--line)}.todo-row:last-child{border:0}.todo-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:13px}.todo-icon.purple{color:var(--purple);background:var(--purple-soft)}.todo-icon.amber{color:var(--amber);background:var(--amber-soft)}.todo-icon.rose{color:var(--rose);background:var(--rose-soft)}.todo-row div{min-width:0}.todo-row strong{display:block;font-size:12px}.todo-row p{margin:4px 0 0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.todo-row time{color:var(--muted);font-size:10px}.bottom-nav{position:fixed;z-index:40;left:50%;bottom:0;transform:translate(-50%);width:min(100%,480px);height:calc(70px + env(safe-area-inset-bottom));padding:8px 15px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:#fffdfcf0;border-top:1px solid rgba(231,220,224,.86);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#aaa1a9;font-size:9px;transition:color .2s}.bottom-nav a.active{color:var(--purple);font-weight:600}.fab{position:fixed;z-index:45;left:calc(50% + min(240px,50vw) - 66px);bottom:calc(82px + env(safe-area-inset-bottom));width:50px;height:50px;display:grid;place-items:center;color:#fff;border:0;border-radius:17px;background:var(--purple);box-shadow:0 10px 24px #69526f38;cursor:pointer}.sheet-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:flex;align-items:end;justify-content:center;overscroll-behavior:none;background:#362c3457}.bottom-sheet{width:min(100%,480px);max-height:86dvh;padding:10px 20px calc(25px + env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;transform:none;border-radius:28px 28px 0 0;background:var(--bg);animation:sheet-up .18s ease-out;-webkit-overflow-scrolling:touch}@keyframes sheet-up{0%{opacity:0}}.sheet-handle{width:38px;height:4px;margin:0 auto 16px;border-radius:10px;background:#ddd3d8}.sheet-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.sheet-title-row h2{margin:4px 0 0;font-size:20px}.add-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px}.add-grid button{padding:16px 4px 14px;border:1px solid var(--line);border-radius:18px;background:var(--surface);font-size:11px;cursor:pointer}.add-icon{width:42px;height:42px;margin:0 auto 9px;display:grid;place-items:center;border-radius:14px;color:var(--purple);background:var(--purple-soft)}.form-stack{width:100%;min-width:0;display:grid;gap:18px;margin-top:24px}.form-stack label,.form-field{min-width:0}.form-stack label>span,.form-field>span{display:block;margin:0 0 8px 3px;font-size:12px;font-weight:600}.form-stack label b,.form-field b{margin-left:5px;color:var(--rose);font-size:9px}.form-stack input,.form-stack select,.form-stack textarea{width:100%;min-height:51px;padding:0 15px;border:1px solid #e2d8dd;border-radius:15px;outline:0;background:var(--surface)}.form-stack input[type=date],.form-stack input[type=datetime-local]{display:block;width:100%;min-width:0;max-width:100%;inline-size:100%;max-inline-size:100%;height:51px;overflow:hidden;color:var(--ink);line-height:normal;-moz-appearance:none;appearance:none;-webkit-appearance:none;-webkit-text-fill-color:var(--ink)}.form-stack input[type=date]::-webkit-date-and-time-value,.form-stack input[type=datetime-local]::-webkit-date-and-time-value{width:100%;min-width:0;height:100%;min-height:100%;margin:0;display:flex;align-items:center;overflow:hidden;color:var(--ink);text-align:left;-webkit-text-fill-color:var(--ink)}.form-stack input[type=date]::-webkit-datetime-edit,.form-stack input[type=datetime-local]::-webkit-datetime-edit{min-width:0;height:100%;padding:0;display:inline-flex;align-items:center}.form-stack select,.result-select,.ticket-review-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#948a92 50%),linear-gradient(135deg,#948a92 50%,transparent 50%);background-position:calc(100% - 21px) calc(50% - 2px),calc(100% - 16px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.form-stack select{padding-right:46px;color:var(--ink);-webkit-text-fill-color:var(--ink)}.form-stack textarea{padding-top:14px;padding-bottom:14px;resize:vertical}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-soft)}.application-preference-field{position:relative}.application-preference-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.form-stack .application-preference-control input{min-width:0}.application-preference-trigger{min-height:51px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #d8cbd3;border-radius:15px;color:var(--purple);background:var(--purple-soft);font-size:9px;font-weight:600;white-space:nowrap;cursor:pointer}.application-preference-trigger>svg:last-child{transition:transform .15s ease}.application-preference-trigger>svg.open:last-child{transform:rotate(180deg)}.application-preference-options{position:absolute;z-index:20;top:calc(100% + 6px);right:0;left:0;max-height:190px;padding:6px;overflow-y:auto;border:1px solid #e2d8dd;border-radius:15px;background:var(--surface);box-shadow:0 12px 28px #3c2b3624}.application-preference-options button{width:100%;min-height:43px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:11px;color:var(--ink);background:transparent;text-align:left;font-size:10px;cursor:pointer}.application-preference-options button:hover{background:var(--purple-soft)}.application-preference-options button.selected{color:var(--purple);font-weight:600}.searchable-select{position:relative}.searchable-select-trigger{width:100%;min-height:50px;padding:13px 42px 13px 14px;display:flex;align-items:center;border:1px solid #e2d8dd;border-radius:14px;color:var(--ink);background:var(--surface);text-align:left;font:inherit;cursor:pointer}.searchable-select-trigger.placeholder{color:var(--muted)}.searchable-select-trigger:focus-visible{outline:2px solid var(--purple);outline-offset:1px}.searchable-select-chevron{position:absolute;top:17px;right:15px;color:var(--muted);transition:transform .15s ease;pointer-events:none}.searchable-select-chevron.open{transform:rotate(180deg)}.searchable-select-validation{position:absolute;width:1px;height:1px;padding:0;opacity:0;pointer-events:none}.searchable-select-menu{position:absolute;z-index:20;top:calc(100% + 6px);right:0;left:0;padding:6px;border:1px solid #e2d8dd;border-radius:15px;background:var(--surface);box-shadow:0 12px 28px #3c2b3624}.searchable-select-search-field{position:relative;margin-bottom:4px}.searchable-select-search-field svg{position:absolute;top:50%;left:12px;color:var(--muted);transform:translateY(-50%);pointer-events:none}.form-stack .searchable-select-search-field input{min-height:42px;padding:9px 11px 9px 36px}.searchable-select-options{max-height:168px;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.searchable-select-option{width:100%;min-height:43px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:11px;color:var(--ink);background:transparent;text-align:left;font-size:11px;cursor:pointer}.searchable-select-option.active{background:var(--purple-soft)}.searchable-select-option.selected{color:var(--purple);font-weight:600}.searchable-select-option svg{flex:none}.searchable-select-empty{margin:0;padding:14px 10px;color:var(--muted);text-align:center;font-size:10px}.form-pair{width:100%;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.date-form-pair{grid-template-columns:minmax(0,1fr)}.payment-section{margin:0;padding:15px;display:grid;gap:12px;border:1px solid #e2d8dd;border-radius:17px;background:var(--surface)}.payment-section legend{padding:0 5px;font-size:12px;font-weight:600}.payment-section legend b{margin-left:5px;color:var(--rose);font-size:9px}.payment-entry{padding:13px;display:grid;gap:10px;border-radius:14px;background:var(--bg)}.payment-entry-head{display:flex;align-items:center;justify-content:space-between}.payment-entry-head strong{color:var(--muted);font-size:9px}.payment-remove{padding:4px 2px;display:inline-flex;align-items:center;gap:4px;border:0;color:var(--rose);background:transparent;font-size:9px;cursor:pointer}.payment-entry-fields{display:grid;grid-template-columns:1.25fr 1fr;gap:9px}.payment-entry-fields label>span{margin-bottom:6px;color:var(--muted);font-size:9px}.payment-entry-fields input,.payment-entry-fields select{min-height:45px;background-color:var(--surface)}.payment-add{min-height:42px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px dashed #d8cbd3;border-radius:13px;color:var(--purple);background:var(--purple-soft);font-size:10px;font-weight:600;cursor:pointer}.payment-total{margin:0;color:var(--muted);text-align:right;font-size:10px}.payment-total span{margin-left:3px;font-size:9px}.payment-total.matched{color:var(--green);font-weight:600}.station-section{margin:0;padding:0;display:grid;gap:9px;border:0}.station-section legend{margin:0 0 1px 3px;padding:0;font-size:12px;font-weight:600}.station-entry{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px}.station-remove{min-height:42px;display:grid;place-items:center;border:1px solid #eadce2;border-radius:13px;color:var(--rose);background:var(--surface);cursor:pointer}.station-add{min-height:42px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px dashed #d8cbd3;border-radius:13px;color:var(--purple);background:var(--purple-soft);font-size:10px;font-weight:600;cursor:pointer}.nested-registration{margin-top:-8px;padding:16px;display:grid;gap:15px;border-radius:17px;background:var(--purple-soft)}.nested-registration input{background-color:#fffdfcdb}.seat-map-field{display:grid;gap:8px}.seat-map-heading{min-height:18px;margin:0 3px;display:flex;align-items:center}.seat-map-heading>span{font-size:12px;font-weight:600}.form-stack .seat-map-input{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;border:0;opacity:0;pointer-events:none}.seat-map-trigger{width:100%;min-height:76px;padding:11px 12px;display:flex;align-items:center;gap:12px;border:1.5px dashed #cfc1ca;border-radius:17px;color:var(--ink);background:var(--surface);text-align:left;cursor:pointer}.seat-map-trigger:active{transform:scale(.99);background:#f8f3f6}.seat-map-trigger:focus-visible{outline:0;border-color:var(--purple);box-shadow:0 0 0 3px #7d688624}.seat-map-trigger.selected{border-style:solid;border-color:#b9cec6;background:#f6faf8}.seat-map-trigger>svg{flex:none;color:#aaa0a8}.seat-map-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:15px;color:var(--purple);background:var(--purple-soft)}.seat-map-trigger.selected .seat-map-icon{color:var(--green);background:var(--green-soft)}.seat-map-copy{min-width:0;flex:1}.seat-map-copy strong,.seat-map-copy small{display:block}.seat-map-copy strong{overflow:hidden;font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.seat-map-copy small{margin-top:4px;color:var(--muted);font-size:9px;line-height:1.45}.seat-map-selected{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px}.seat-map-selected>span{display:inline-flex;align-items:center;gap:5px;color:var(--green);font-size:10px;font-weight:600}.seat-map-selected button{min-width:88px;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:4px;border:0;border-radius:12px;color:var(--rose);background:transparent;font-size:10px;font-weight:600;cursor:pointer}.seat-map-error{margin:0 3px;color:var(--rose);font-size:10px}.choice-field{margin:0;padding:14px;display:grid;gap:8px;border:1px solid #e2d8dd;border-radius:15px;background:var(--surface)}.choice-field legend{padding:0 5px;font-size:12px;font-weight:600}.choice-field legend b{color:var(--rose);font-size:9px}.performer-group+.performer-group{padding-top:8px;border-top:1px solid var(--line)}.performer-group>.check-row span{display:flex;align-items:center;gap:7px;font-weight:600}.performer-group>.check-row small{padding:3px 6px;border-radius:7px;color:var(--muted);background:var(--bg);font-size:8px;font-weight:500}.member-choices{padding:3px 0 3px 26px;display:grid;grid-template-columns:1fr 1fr;gap:2px 8px}.member-choices .check-row{color:var(--muted)}.check-row{min-height:34px;display:flex;align-items:center;gap:9px;font-size:11px}.check-row input{width:17px;min-height:17px;height:17px;margin:0;flex:0 0 17px;align-self:center;accent-color:var(--purple)}.form-stack .check-row>span{min-height:17px;margin:0;display:inline-flex;align-items:center;line-height:1.35}.standalone-check{min-height:48px;padding:0 13px;border-radius:14px;background:var(--surface)}.calculated-field{padding:14px 15px;border-radius:15px;background:var(--green-soft)}.calculated-field span,.calculated-field small{display:block;color:var(--muted);font-size:9px}.calculated-field strong{display:block;margin:5px 0;color:var(--green);font-size:13px}.form-error{margin:-4px 2px 0;color:var(--rose);font-size:10px}.primary-button{min-height:52px;border:0;border-radius:16px;color:#fff;background:var(--purple);font-weight:600;cursor:pointer}.danger-button{min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ead7de;border-radius:16px;color:var(--rose);background:var(--surface);font-weight:600;cursor:pointer}.danger-button:disabled{opacity:.55;cursor:wait}.saved-state{padding:46px 20px 36px;text-align:center}.saved-state span{width:58px;height:58px;margin:0 auto 14px;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--green);font-size:25px}.saved-state strong{display:block;font-size:18px}.saved-state p{color:var(--muted);font-size:11px}.saved-state .form-error{margin-top:14px;color:var(--rose);line-height:1.6}.saved-state .primary-button{width:100%;margin-top:18px}.import-sheet{max-height:94dvh}.import-help{margin:-4px 2px 0;display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:10px;line-height:1.6}.import-help svg{margin-top:1px;flex:none}.import-review{padding-bottom:8px}.import-target-note{margin:7px 3px 0;display:block;color:var(--muted);font-size:9px;line-height:1.55}.import-merge-note{margin:7px 3px 0;display:block;color:var(--amber);font-size:9px;line-height:1.55}.import-mapping-row{padding:10px 0;display:grid;gap:8px;border-bottom:1px solid var(--line)}.import-mapping-row:last-child{border-bottom:0}.import-mapping-row>label>span{margin:0;display:flex;align-items:center;gap:7px}.import-mapping-row small{color:var(--muted);font-size:9px;font-weight:400}.import-mapping-row .import-member-note{color:var(--green);line-height:1.55}.import-mapping-row select{min-height:44px}.import-mapping-heading{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px}.import-mapping-heading strong{min-width:0;font-size:11px;line-height:1.45}.import-mapping-heading small{flex:none;padding:3px 7px;border-radius:7px;background:var(--bg)}.import-venue-mapping>label{gap:5px}.import-venue-mapping.is-inactive{opacity:.55}.import-schedule{gap:4px}.import-performance-row{padding:6px 0;display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:8px}.import-performance-row+.import-performance-row{border-top:1px solid var(--line)}.import-performance-row input[type=datetime-local]{min-height:44px}.import-warning{margin:-4px 2px 0;padding:10px 12px;border-radius:12px;color:#8d6428;background:var(--amber-soft);font-size:10px;line-height:1.6}.primary-button:disabled{opacity:.55;cursor:wait}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:5px 0 21px;padding:4px;border-radius:15px;background:#f0e9eb}.segmented button{min-height:39px;border:0;border-radius:12px;color:var(--muted);background:transparent;font-size:12px;cursor:pointer}.segmented button.active{color:var(--ink);background:var(--surface);box-shadow:0 3px 12px #322d3212;font-weight:600}.card-list{display:grid;gap:13px}.surface-list{overflow:hidden;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.event-schedule-list{display:grid;gap:13px}.schedule-venue-group{overflow:hidden;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.schedule-venue-heading{width:100%;min-height:66px;padding:12px 15px;display:flex;align-items:center;gap:11px;border:0;color:inherit;background:var(--green-soft);text-align:left;cursor:pointer}.schedule-venue-name{min-width:0;flex:1;font-size:13px;line-height:1.5;overflow-wrap:anywhere;font-weight:700}.schedule-venue-count{flex:none;color:var(--green);font-size:9px;font-weight:600}.schedule-venue-chevron{flex:none;color:var(--green);transition:transform .2s ease}.schedule-venue-chevron.is-collapsed{transform:rotate(-90deg)}.schedule-performance-row{min-height:68px;padding:12px 15px;display:grid;grid-template-columns:minmax(0,1fr) 17px;align-items:center;column-gap:10px;border-top:1px solid var(--line)}.schedule-performance-row strong{min-width:0;grid-column:1;display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;font-size:12px;line-height:1.5}.schedule-performance-row strong span:last-child{white-space:nowrap}.schedule-performance-row>svg:last-child{grid-column:2;color:#b9afb7}.list-row{min-height:72px;padding:13px 15px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.list-row:last-child{border-bottom:0}.list-icon{width:40px;height:40px;flex:0 0 auto;display:grid;place-items:center;border-radius:13px}.list-icon.is-purple{color:var(--purple);background:var(--purple-soft)}.list-icon.is-rose{color:var(--rose);background:var(--rose-soft)}.list-icon.is-green{color:var(--green);background:var(--green-soft)}.list-icon.is-amber{color:var(--amber);background:var(--amber-soft)}.list-copy,.info-row>div,.agenda-row>div,.application-row>div:not(.application-result-field),.application-main>div,.owned-ticket-row>div{flex:1;min-width:0}.list-copy strong{display:block;font-size:13px}.list-copy p{margin:4px 0 0;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-meta{margin-left:auto;color:var(--muted);font-size:10px;text-align:right}.list-chevron{color:#b9afb7}.status-chip{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 9px;border-radius:99px;white-space:nowrap;font-size:9px;font-weight:600}.status-chip.is-purple{color:var(--purple);background:var(--purple-soft)}.status-chip.is-rose{color:var(--rose);background:var(--rose-soft)}.status-chip.is-green{color:var(--green);background:var(--green-soft)}.status-chip.is-amber{color:var(--amber);background:var(--amber-soft)}.status-chip.is-gray{color:#857e84;background:#f0ecec}.compact-section{padding-top:28px}.section-count{color:var(--muted);font-size:10px}.empty-mini,.empty-state{padding:28px 18px;border-radius:18px;color:var(--muted);background:var(--surface);text-align:center;font-size:11px}.empty-state strong{display:block;margin:9px 0 4px;color:var(--ink)}.empty-state p{margin:0}.empty-add-button{min-height:42px;margin:16px auto 0;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;border-radius:13px;color:#fff;background:var(--purple);font-size:11px;font-weight:600;cursor:pointer}.calendar-card{padding:16px 13px 13px;border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.month-switcher{padding:0 2px 14px;display:flex;align-items:center;justify-content:space-between}.month-switcher strong{font-size:15px}.month-switcher button{width:34px;height:34px;border:0;display:grid;place-items:center;border-radius:11px;background:var(--bg)}.week-row,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.week-row span{padding-bottom:7px;color:var(--muted);text-align:center;font-size:9px}.week-row span:first-child{color:var(--rose)}.calendar-grid button{position:relative;height:43px;padding:5px 0 10px;border:0;border-radius:12px;background:transparent;font-size:11px;cursor:pointer}.calendar-grid button:disabled{cursor:default}.calendar-grid button.today>span:first-child{color:#ad5269;font-weight:700}.calendar-grid button.selected{color:#fff;background:#67526f;box-shadow:0 4px 10px #59416033;font-weight:700}.calendar-grid button.selected.today>span:first-child{color:#fff}.dots{position:absolute;bottom:6px;left:50%;display:flex;gap:2px;transform:translate(-50%)}.dots i,.calendar-legend i{width:5px;height:5px;border-radius:50%;background:currentColor}.performance{color:#7953a2!important}.result{color:#c34f6c!important}.payment{color:#c3842f!important}.renewal{color:#43866f!important}.meetup{color:#397da8!important}.calendar-grid .selected .dots i{box-shadow:0 0 0 1px #ffffffe6}.calendar-legend{margin-top:10px;padding-top:11px;display:flex;justify-content:center;gap:13px;border-top:1px solid var(--line)}.calendar-legend span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:8px}.calendar-legend i{width:7px;height:7px}.calendar-day-section{margin-top:20px}.calendar-day-section h3{margin:0 0 11px;font-size:14px}.agenda-row{min-height:69px;padding:12px 15px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.agenda-row:last-child{border:0}.agenda-row strong{display:block;font-size:12px}.agenda-row p{margin:4px 0 0;color:var(--muted);font-size:10px}.agenda-row .todo-icon.performance{background:var(--purple-soft)}.agenda-row .todo-icon.result{background:var(--rose-soft)}.agenda-row .todo-icon.payment{background:var(--amber-soft)}.agenda-row .todo-icon.renewal{background:var(--green-soft)}.agenda-row .todo-icon.meetup{background:var(--blue-soft)}.performance-card{position:relative;min-height:136px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;overflow:hidden;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.performance-copy{min-width:0}.performance-copy>p{margin:0 0 5px;display:-webkit-box;overflow:hidden;color:var(--purple);font-size:10px;line-height:1.55;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.performance-copy h2{margin:0 0 11px;display:-webkit-box;overflow:hidden;font-size:15px;line-height:1.55;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.performance-copy span{margin-top:6px;display:flex;align-items:center;gap:5px;color:var(--muted);font-size:11px}.performance-copy span svg{flex:none}.performance-card>.status-chip{justify-self:start}.past-check{position:absolute;right:16px;top:16px;color:var(--green)}.detail-page .page-header{min-height:75px}.detail-hero{padding:23px;border-radius:24px;color:#4b4050;background:linear-gradient(145deg,#eee5ef,#dfd2e5);box-shadow:0 14px 32px #6852671a}.detail-kicker{margin:0;font-size:10px;font-weight:600}.detail-date{display:flex;align-items:center;gap:8px}.detail-date strong{font-size:47px;line-height:.9;font-weight:500}.detail-date span{font-size:9px;line-height:1.4;font-weight:600;opacity:.7}.detail-hero h2{margin:19px 0 18px;font-size:17px;line-height:1.55}.detail-meta{display:grid;gap:9px;padding-top:16px;border-top:1px solid rgba(91,72,91,.14)}.detail-meta span,.detail-meta a{display:flex;align-items:center;gap:7px;font-size:10px;opacity:.85}.performer-summary{min-width:0;display:flex;align-items:flex-start;gap:8px;font-size:11px;opacity:.88}.performer-summary>svg{margin-top:2px;flex:none}.performer-summary-groups{min-width:0;flex:1;display:grid;gap:7px}.performer-summary-groups p{min-width:0;margin:0;line-height:1.5;overflow-wrap:anywhere}.performer-summary-groups strong,.performer-summary-groups small{display:block}.performer-summary-groups strong{font-size:12px}.performer-summary-groups small{margin-top:2px;font-size:11px;line-height:1.65;opacity:.8}.application-row,.owned-ticket-row{min-height:70px;padding:13px 15px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line)}.application-row:last-child,.owned-ticket-row:last-child{border:0}.application-main{flex:1;min-width:0;display:flex;align-items:center;gap:11px;color:inherit}.application-chevron{flex:none;color:#b9afb7}.person-dot{width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:50%;color:var(--purple);background:var(--purple-soft)}.application-row strong,.owned-ticket-row strong{display:block;font-size:12px}.application-row p,.owned-ticket-row p{margin:4px 0 0;color:var(--muted);font-size:10px}.application-result-field{width:88px;flex:none}.application-result-field.is-readonly{width:auto}.application-result-field .form-error{margin:5px 0 0;font-size:8px;line-height:1.35}.application-result-card{padding:16px;display:flex;align-items:center;gap:14px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.application-result-card>div:first-child{flex:1;min-width:0}.application-result-card strong{font-size:13px}.application-result-card p{margin:5px 0 0;color:var(--muted);font-size:10px}.result-select{width:88px;min-height:32px;padding:0 35px 0 9px;border:1px solid var(--line);border-radius:10px;font-size:9px;font-weight:600;cursor:pointer}.result-select.is-pending{color:var(--amber);background-color:var(--amber-soft)}.result-select.is-won{color:var(--green);background-color:var(--green-soft)}.result-select.is-lost{color:var(--muted);background-color:#f0edef}.result-select:disabled{cursor:default;opacity:.65}.ticket-review-form{margin-top:12px;padding:16px;display:grid;gap:12px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.ticket-review-form label>span{display:block;margin-bottom:7px;font-size:10px;font-weight:600}.ticket-review-form input,.ticket-review-form textarea,.ticket-review-form select{width:100%;min-height:43px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background-color:var(--bg);font-size:11px}.ticket-review-form select{padding-right:40px;color:var(--ink);-webkit-text-fill-color:var(--ink)}.ticket-review-form select option{color:var(--ink)}.ticket-review-form label>small{display:block;margin:5px 2px 0;color:var(--muted);font-size:9px}.ticket-review-form input:focus,.ticket-review-form textarea:focus,.ticket-review-form select:focus{outline:0;border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-soft)}.ticket-seat-status{margin:0;color:var(--ink);font-size:12px;font-weight:600;text-align:center}.ticket-seat-summary{margin-top:12px;padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.ticket-seat-summary span{display:block;margin-bottom:5px;color:var(--muted);font-size:9px;font-weight:600}.ticket-seat-summary strong{display:block;font-size:12px;line-height:1.6}.ticket-seat-summary .ticket-seat-memo{grid-column:1 / -1}.ticket-seat-summary p{margin:0;font-size:11px;line-height:1.75;white-space:pre-wrap}.section-edit-button{width:34px;height:34px;color:var(--purple);background:var(--purple-soft);box-shadow:none}.section-edit-button:disabled{opacity:.55;cursor:wait}.section-title .mini-add{flex:none;white-space:nowrap;cursor:pointer}.section-title .mini-add:disabled{opacity:.55;cursor:wait}.form-success{margin:0;color:var(--green);font-size:10px}.secondary-link{min-height:42px;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--purple);font-size:11px;font-weight:600}.memo-box{margin-top:26px;padding:18px;border:1px solid var(--line);border-radius:18px;color:var(--muted);background:#fffdfcb8}.memo-box>p:last-child{margin:9px 0 0;color:var(--ink);font-size:11px;line-height:1.75}.memo-box:has(>svg){display:flex;align-items:center;gap:10px}.memo-box:has(>svg) p{margin:0}.event-deadline-card{padding:18px;display:grid;gap:17px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.event-deadline-card>div{display:grid;gap:6px}.event-deadline-card span{flex:none;color:var(--muted);font-size:10px;font-weight:600}.event-deadline-card strong{min-width:0;font-size:12px;line-height:1.6}.full-ticket-card{display:block;padding:18px;overflow:hidden;border-radius:23px;background:var(--surface);box-shadow:var(--shadow)}.ticket-card-head{display:flex;align-items:center;justify-content:space-between}.ticket-card-head>span:first-child{display:flex;align-items:center;gap:6px;color:var(--purple);font-size:10px;font-weight:600}.full-ticket-card h2{margin:20px 0 3px;font-size:16px;line-height:1.5}.ticket-performance{margin:0;color:var(--muted);font-size:10px}.ticket-info{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin-top:19px;padding:15px 0;border-top:1px dashed #d9d4d1;border-bottom:1px dashed #d9d4d1}.ticket-info div,.seat-info{display:flex;flex-direction:column;gap:4px}.ticket-info span,.seat-info span,.big-seat span,.ticket-detail-grid span{color:var(--muted);font-size:9px;font-weight:600}.ticket-info strong{font-size:11px}.seat-info{padding-top:13px}.seat-info strong{font-size:12px}.venue-line{display:flex;align-items:center;gap:5px;margin:13px 0 0;color:var(--muted);font-size:10px}.ticket-detail-card{position:relative;overflow:hidden;padding:20px;border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.ticket-detail-card>h2{margin:24px 0 0;font-size:18px;line-height:1.5}.tear-line{position:relative;margin:22px -20px;height:1px;border-top:1px dashed #d5d0ce}.tear-line:before,.tear-line:after{content:"";position:absolute;top:-10px;width:20px;height:20px;border-radius:50%;background:var(--bg)}.tear-line:before{left:-10px}.tear-line:after{right:-10px}.big-seat{display:flex;flex-direction:column;gap:7px}.big-seat strong{font-size:17px}.ticket-detail-grid{margin-top:20px;display:grid;grid-template-columns:2fr 1fr;gap:16px}.ticket-detail-grid div:first-child{grid-row:span 2}.ticket-detail-grid strong{display:block;margin-top:5px;font-size:10px;line-height:1.7}.tear-line+.ticket-detail-grid{margin-top:0}.info-stack{margin-top:22px;overflow:hidden;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.info-row{min-height:78px;padding:14px 15px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.info-row:last-child{border:0}.info-row small{display:block;margin-bottom:3px;color:var(--muted);font-size:9px}.info-row strong{display:block;font-size:12px}.info-row p{margin:4px 0 0;color:var(--muted);font-size:10px}.menu-list{overflow:hidden;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.menu-list>a{min-height:70px;padding:13px 15px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.menu-list>a:last-child{border:0}.menu-list>a>div{flex:1}.menu-list strong{font-size:12px}.menu-list p{margin:3px 0 0;color:var(--muted);font-size:9px}.menu-list>a>svg{color:#b9afb7}.app-info{min-height:88px;margin:0 0 20px;padding:16px;display:flex;align-items:center;gap:14px;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.app-info img{width:56px;height:56px;flex:none;border-radius:16px;box-shadow:0 6px 14px #4e3f5a1f}.app-info strong{display:block;font-size:17px;letter-spacing:-.02em}.app-info p{margin:4px 0 0;color:var(--muted);font-size:10px}.detail-note{margin:-4px 2px 16px;color:var(--muted);font-size:11px;line-height:1.7}.metrics-card{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:8px;padding:18px 10px;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.metrics-card div{padding:0 8px;border-right:1px solid var(--line)}.metrics-card div:last-child{border:0}.metrics-card span{display:block;color:var(--muted);font-size:8px}.metrics-card strong{display:block;margin-top:6px;font-size:10px;line-height:1.55}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.person-card{padding:18px 5px 15px;text-align:center;border-radius:19px;background:var(--surface);box-shadow:var(--shadow)}.person-card>span{width:48px;height:48px;margin:0 auto 10px;display:grid;place-items:center;border-radius:50%;color:#fff}.person-card strong{font-size:12px}.person-card p{margin:3px 0 0;color:var(--muted);font-size:8px}.membership-cards{display:grid;gap:12px}.membership-cards>a{padding:18px;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.membership-cards>a>div{display:flex;justify-content:space-between;align-items:center}.membership-cards>a>p{margin:15px 0 3px;color:var(--muted);font-size:9px}.membership-cards h2{margin:0;font-size:15px}.membership-cards dl{margin:16px 0;padding:13px 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.membership-cards dt{color:var(--muted);font-size:8px}.membership-cards dd{margin:4px 0 0;font-size:10px}.membership-valid{display:flex;align-items:center;gap:5px;color:var(--green);font-size:9px}.membership-detail-card{padding:19px;border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.membership-detail-heading{display:flex;align-items:center;justify-content:space-between}.membership-detail-card>p{margin:17px 0 4px;color:var(--muted);font-size:9px}.membership-detail-card h2{margin:0;font-size:17px}.membership-detail-card dl{margin:17px 0 0;padding:13px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;border-top:1px solid var(--line)}.membership-detail-card dt{color:var(--muted);font-size:8px}.membership-detail-card dd{margin:4px 0 0;font-size:10px}.trade-card{padding:18px;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.trade-head{display:flex;align-items:center;justify-content:space-between}.trade-direction{display:flex;align-items:center;gap:5px;font-size:10px;font-weight:600}.trade-direction.give{color:var(--rose)}.trade-direction.receive{color:var(--green)}.trade-card>p{margin:21px 0 3px;color:var(--muted);font-size:8px}.trade-card h2{margin:0 0 11px;font-size:18px}.trade-event{font-size:11px}.trade-bottom{margin-top:15px;padding-top:13px;display:flex;flex-wrap:wrap;gap:10px 15px;border-top:1px solid var(--line)}.trade-bottom span{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:9px}.trade-bottom span:first-child{color:var(--ink);font-weight:600}.trade-progress{margin-bottom:22px;padding:20px 13px 16px;display:flex;align-items:flex-start;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.trade-progress>div{width:64px;text-align:center}.trade-progress>div>span{width:30px;height:30px;margin:auto;display:grid;place-items:center;border:2px solid #ded4d9;border-radius:50%;color:#fff}.trade-progress>div.done>span{border-color:var(--green);background:var(--green)}.trade-progress p{margin:7px 0 0;color:var(--muted);font-size:8px}.trade-progress i{flex:1;margin-top:14px;border-top:2px solid #e5dcdf}.meetup-card{margin-top:22px;padding:20px;border-radius:21px;color:#563f45;background:linear-gradient(145deg,#f7e5e8,#efd5da);box-shadow:0 13px 28px #97636d1a}.meetup-card>div{display:flex;align-items:center;gap:7px}.meetup-card>div span{font-size:10px;font-weight:600}.meetup-card h2{margin:17px 0 13px;font-size:18px;line-height:1.6}.meetup-card p{margin:0;display:flex;align-items:center;gap:6px;font-size:10px;opacity:.85}.venue-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.venue-card{overflow:hidden;border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.venue-visual{height:72px;padding:11px 13px;display:flex;align-items:flex-end;justify-content:space-between;color:#55485a;background:linear-gradient(145deg,#eee5ef,#dfd3e4)}.venue-capacity{display:flex;align-items:center;gap:4px;font-size:8px;opacity:.75}.venue-card h2{margin:12px 13px 5px;font-size:13px;line-height:1.45}.venue-stations{min-height:30px;margin:0 13px;display:flex;align-items:flex-start;gap:4px;color:var(--muted);font-size:8px;line-height:1.5}.venue-stations svg{flex:none}.review-count{margin:9px 13px 13px;display:flex;align-items:center;gap:4px;color:var(--purple);font-size:8px}.venue-hero{padding:20px;border-radius:20px;color:#41534e;background:#e0ece7;box-shadow:var(--shadow)}.venue-hero>p{margin:0 0 5px;font-size:10px;opacity:.75}.venue-hero h2{margin:0 0 14px;font-size:15px}.venue-hero>span{display:flex;align-items:center;gap:6px;font-size:9px;opacity:.85}.venue-hero>.venue-access-note{margin-top:8px;padding-top:8px;border-top:1px solid rgba(65,83,78,.14);line-height:1.6}.seat-map{margin-top:25px;padding:18px;border-radius:21px;background:var(--surface);box-shadow:var(--shadow)}.seat-map h2{margin:0 0 14px;font-size:16px}.seat-map-visual{height:155px;padding:14px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;position:relative;border-radius:16px;background:#f4eff1}.seat-map-visual>span{grid-column:1/-1;height:22px;padding-top:4px;text-align:center;border-radius:6px;color:#fff;background:var(--purple);font-size:9px;font-weight:600}.seat-map-visual i{border:1px solid #d8ccd7;border-radius:8px;background:var(--purple-soft)}.seat-map-visual p{position:absolute;inset:58px 0 auto;text-align:center;color:#766c76;font-size:9px;line-height:1.5}.mini-add{display:flex;align-items:center;gap:3px;padding:7px 10px;border:0;border-radius:11px;color:var(--purple);background:var(--purple-soft);font-size:9px}.review-list{display:grid;gap:11px}.review-list article{padding:16px;border-radius:19px;background:var(--surface);box-shadow:var(--shadow)}.review-head{display:flex;align-items:center;gap:10px}.review-head>div:nth-child(2){flex:1}.review-head strong{font-size:11px}.review-head p{margin:3px 0 0!important;color:var(--muted)!important;font-size:8px!important}.review-list article>p{margin:13px 0;color:#625c62;font-size:10px;line-height:1.75}@media(min-width:760px){.app-shell{height:calc(100dvh - 32px);margin:16px auto;border-radius:30px}.bottom-nav{bottom:16px;border-radius:0 0 30px 30px}.fab{left:calc(50% + 174px);bottom:98px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important}}.auth-page{min-height:100dvh;display:grid;place-items:center;padding:24px;background:var(--bg, #fbf8f7)}.auth-card{width:min(100%,420px);padding:30px 24px;border-radius:24px;background:#fff;box-shadow:0 12px 40px #4b37411a}.auth-card .brand{margin:0 0 28px;font-size:27px;font-weight:800;letter-spacing:-.04em}.auth-card .brand span{color:#9b87a5}.auth-card h1{margin:12px 0 8px;font-size:24px}.auth-card>p{color:#756d72;line-height:1.6}.auth-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;color:#806e8a;background:#f0eaf2}.config-card code{overflow-wrap:anywhere}.app-loading{min-height:100dvh;display:grid;place-items:center;color:#786f75;background:#fbf8f7}.primary-button:disabled{cursor:wait;opacity:.65}.account-card{margin-top:20px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:16px;background:#fff}.account-card strong{font-size:14px;overflow-wrap:anywhere}.account-card p{margin:3px 0 0;color:#8c8288;font-size:12px}.account-card button{padding:8px 11px;border:0;border-radius:10px;color:#715e78;background:#f0eaf2;font:inherit;font-size:12px;font-weight:700}.seat-map-open{width:100%;border:0;font:inherit;cursor:pointer}
