.admin-page{min-height:100svh;padding:32px;color:var(--color-text);background:radial-gradient(circle at 16% 0%,color-mix(in srgb,var(--color-primary) 18%,transparent),transparent 28rem),linear-gradient(180deg,var(--color-soft-background),var(--color-background));font-size:1rem}.admin-shell{display:grid;width:min(100%,1440px);grid-template-columns:240px minmax(0,1fr);gap:24px;margin:0 auto}.admin-page input[type=checkbox]{width:22px;height:22px;min-height:22px;padding:0;flex:0 0 22px;border-radius:6px}.admin-sidebar{position:sticky;top:32px;display:flex;height:calc(100svh - 64px);flex-direction:column;gap:22px;padding:22px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:28px;background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-sidebar nav{display:grid;gap:8px}.admin-sidebar nav a{display:flex;min-height:46px;align-items:center;padding:0 14px;border-radius:16px;color:var(--color-text-muted);font-weight:700}.admin-sidebar nav a.active{color:var(--color-primary);background:var(--color-brand-soft)}.admin-sidebar__brand{display:grid;gap:4px;padding-bottom:18px;border-bottom:1px solid var(--color-border)}.admin-sidebar__brand span{color:var(--color-primary);font-size:1.1rem;font-weight:700}.admin-sidebar__brand strong{color:var(--color-text-muted);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-sidebar__profile{display:grid;gap:4px;margin-top:auto;padding-top:18px;border-top:1px solid var(--color-border)}.admin-sidebar__profile span{color:var(--color-text);font-weight:700}.admin-sidebar__profile strong{color:var(--color-text-muted);font-size:.82rem;font-weight:600}.admin-sidebar__profile button{min-height:40px;margin-top:10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);font-weight:700}.admin-sidebar__profile button:disabled{opacity:.58}.admin-main{min-width:0}.admin-shell-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:0 0 24px}.admin-shell-header p{margin:0 0 8px;color:var(--color-primary);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-shell-header h1{margin:0;font-size:2.4rem;font-weight:700;line-height:1.08}.admin-shell-header span{display:block;margin-top:8px;color:var(--color-text-muted);font-weight:600}.admin-shell-header a{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 20px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700;white-space:nowrap}.admin-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:0 0 18px}.admin-metrics article{padding:22px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:24px;background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-metrics span{color:var(--color-text-muted);font-size:.88rem;font-weight:600}.admin-metrics strong{display:block;margin-top:8px;color:var(--color-primary);font-size:2rem;font-weight:700}.admin-heart-products-table{display:grid;gap:10px}.admin-product-field{min-width:0;display:grid;gap:8px}.admin-product-field>span,.admin-heart-products-table__check>span{display:none;color:var(--color-text-muted);font-size:.8125rem}.admin-heart-products-table__head,.admin-heart-products-table__row{display:grid;grid-template-columns:minmax(130px,1.4fr) .7fr 1fr .8fr .8fr .55fr;gap:10px;align-items:center}.admin-heart-products-table__head{color:var(--color-text-muted);font-size:.78rem;font-weight:700}.admin-heart-products-table__row{padding:12px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}.admin-heart-products-table__row input,.admin-heart-products-table__row select{width:100%;min-width:0;min-height:44px;padding:0 12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-surface);font:inherit;font-size:.88rem;font-weight:600;outline:none}.admin-heart-products-table__row input:focus,.admin-heart-products-table__row select:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-heart-products-table__check{display:grid;place-items:center}.admin-heart-products-table__check input{width:18px;height:18px;accent-color:var(--color-primary)}.admin-panel,.admin-state-panel,.admin-blocked-card{margin:0;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:28px;background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-panel{padding:24px}.admin-panel__header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.admin-panel__header p{margin:0 0 6px;color:var(--color-primary);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-panel__header h2{margin:0;font-size:1.35rem;font-weight:700}.admin-panel__header button{min-height:40px;padding:0 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-primary);background:var(--color-surface);font-weight:700}.admin-user-list{display:grid;gap:16px}.admin-user-card{display:grid;grid-template-columns:156px minmax(0,1fr) 148px;gap:18px;padding:18px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface)}.admin-user-card__photo{display:grid;overflow:hidden;aspect-ratio:1/1;place-items:center;border-radius:20px;color:var(--color-text-muted);background:var(--color-surface-muted);font-size:.88rem;font-weight:700}.admin-user-card__photo img{width:100%;height:100%;object-fit:cover}.admin-user-card__main{min-width:0}.admin-user-card__title{display:flex;justify-content:space-between;gap:16px}.admin-user-card__title span{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.admin-user-card__title h3{margin:4px 0 0;font-size:1.4rem;font-weight:700}.admin-user-card__title p{margin:6px 0 0;color:var(--color-text-muted);font-weight:600;line-height:1.45}.admin-user-card__title strong{align-self:flex-start;padding:7px 10px;border-radius:var(--radius-pill);color:var(--color-primary);background:var(--color-action-soft);font-size:.76rem;font-weight:700}.admin-user-card__details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.admin-user-card__details div{min-width:0;padding:10px;border-radius:14px;background:var(--color-soft-background)}.admin-user-card__details dt{color:var(--color-text-muted);font-size:.74rem;font-weight:600}.admin-user-card__details dd{margin:4px 0 0;font-size:.9rem;font-weight:700;overflow-wrap:anywhere}.admin-user-card blockquote{margin:14px 0 0;padding:14px 16px;border-radius:18px;color:var(--color-text);background:color-mix(in srgb,var(--color-background) 34%,var(--color-surface));font-weight:600;line-height:1.55}.admin-user-card__actions{display:flex;flex-direction:column;justify-content:flex-end;gap:12px}.admin-user-card__actions label{display:flex;flex-direction:column;gap:8px}.admin-user-card__actions label>span{color:var(--color-text-muted);font-size:.82rem;font-weight:600}.admin-user-card__actions button{min-height:46px;border-radius:var(--radius-pill);font-weight:700}.admin-user-card__actions .dropdown__trigger{min-height:46px;border-radius:14px;color:var(--color-text);background:var(--color-surface-muted);text-align:left}.admin-user-card__actions>button{border:0;color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button)}.admin-user-card__actions>button:disabled{opacity:.6}.admin-empty-state,.admin-inline-error,.admin-state-panel{padding:42px;color:var(--color-text-muted);text-align:center;font-weight:600}.admin-inline-error{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:16px;border-radius:18px;background:var(--color-soft-background)}.admin-inline-error button{min-height:36px;padding:0 14px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-weight:700}.admin-toast{margin:0 0 18px;padding:14px 18px;border-radius:18px;color:var(--color-primary);background:var(--color-surface);font-weight:700;box-shadow:var(--shadow-card)}.admin-search-panel{margin-bottom:18px}.admin-search-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:end}.admin-search-form label{display:grid;gap:8px;min-width:0}.admin-search-form label>span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.admin-search-form input{width:100%;min-height:52px;min-width:0;padding:0 16px;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-search-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-search-form>button{min-height:52px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700}.admin-table-list{display:grid;gap:10px}.admin-table-row{display:grid;grid-template-columns:1.1fr .6fr .8fr .5fr .8fr 1.4fr 52px;gap:1px;overflow:hidden;border:1px solid var(--color-border);border-radius:18px;background:var(--color-border)}.admin-table-row div{min-width:0;padding:14px;background:var(--color-surface)}.admin-table-row span{display:block;color:var(--color-text-muted);font-size:.74rem;font-weight:600}.admin-table-row strong{display:block;margin-top:5px;font-size:.9rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.admin-table-row__detail{display:grid;min-height:100%;place-items:center;border:0;color:var(--color-primary);background:var(--color-surface);font-size:1.4rem;font-weight:700}.admin-table-row__detail:hover{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface))}.admin-detail-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.admin-detail-summary span{padding:8px 12px;border-radius:var(--radius-pill);color:var(--color-primary);background:var(--color-action-soft);font-size:.82rem;font-weight:700}.admin-detail-actions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,.8fr) minmax(0,1fr) minmax(0,1.2fr);gap:12px;margin-top:20px}.admin-detail-actions button{min-height:54px;border:0;border-radius:var(--radius-pill);font-weight:700}.admin-detail-actions button:disabled{opacity:.58}.admin-detail-actions button:nth-child(1){color:var(--color-primary);background:var(--color-action-soft)}.admin-detail-actions button:nth-child(2){color:var(--color-danger);background:var(--color-surface)}.admin-detail-actions button:nth-child(3){color:var(--color-text);background:var(--color-surface-muted)}.admin-detail-actions button:nth-child(4){color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button)}.admin-inline-success{margin:0 0 18px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--color-primary) 44%,var(--color-border));border-radius:16px;color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));font-weight:700}.admin-danger-zone{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-top:18px;padding:18px;border:1px solid rgba(180,35,59,.28);border-radius:22px;background:#b4233b12}.admin-danger-zone p,.admin-danger-zone h3{margin:0}.admin-danger-zone p{color:var(--color-danger);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-danger-zone h3{margin-top:6px;font-size:1rem;font-weight:700}.admin-danger-zone span{display:block;margin-top:8px;color:var(--color-text-muted);font-size:.84rem;font-weight:600;line-height:1.5}.admin-danger-zone>button{min-height:48px;padding:0 18px;border:1px solid rgba(180,35,59,.32);border-radius:var(--radius-pill);color:var(--color-danger);background:var(--color-surface);font-weight:700}.admin-purge-confirm{display:grid;grid-column:1/-1;gap:12px;padding-top:2px}.admin-purge-confirm p{color:var(--color-text);font-size:.88rem;font-weight:600;letter-spacing:0;line-height:1.5;text-transform:none}.admin-purge-confirm strong{color:var(--color-danger)}.admin-purge-confirm input{width:100%;min-height:52px;padding:0 16px;border:1px solid rgba(180,35,59,.34);border-radius:18px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:700;outline:none}.admin-purge-confirm input:focus{border-color:var(--color-danger);box-shadow:0 0 0 4px #b4233b1f}.admin-purge-confirm div{display:flex;justify-content:flex-end;gap:10px}.admin-purge-confirm button{min-height:46px;padding:0 18px;border:0;border-radius:var(--radius-pill);font-weight:700}.admin-purge-confirm button:disabled{opacity:.56}.admin-purge-confirm button:first-child{color:var(--color-text);background:var(--color-surface-muted)}.admin-purge-confirm button:last-child{color:#fff;background:#b4233b}.admin-matching-panel{max-width:860px}.admin-matching-form{display:grid;gap:16px}.admin-matching-form label{display:grid;gap:8px}.admin-matching-form label span{color:var(--color-text-muted);font-size:13px;font-weight:700}.admin-matching-form select,.admin-matching-form input[type=time],.admin-matching-form input[type=text],.admin-matching-form input:not([type]){width:100%;min-height:48px;padding:0 14px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-matching-form select:focus,.admin-matching-form input[type=time]:focus,.admin-matching-form input[type=text]:focus,.admin-matching-form input:not([type]):focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-instant-config-form{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:end}.admin-instant-config-form label{display:grid;gap:8px;min-width:0}.admin-instant-config-form label span{color:var(--color-text-muted);font-size:13px;font-weight:700}.admin-instant-config-form input{width:100%;min-height:48px;min-width:0;padding:0 14px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-instant-config-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-instant-config-form .admin-schedule-preview{grid-column:1/-2}.admin-instant-config-form>button{min-height:48px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700}.admin-toggle-row{display:flex!important;min-height:52px;align-items:center;justify-content:space-between;gap:18px;padding:0 16px;border:1px solid var(--color-border);border-radius:16px;background:color-mix(in srgb,var(--color-primary) 6%,var(--color-surface))}.admin-toggle-row input{width:22px;height:22px;accent-color:var(--color-primary)}.admin-schedule-preview{display:grid;gap:8px;padding:16px;border-radius:16px;background:var(--color-surface-muted)}.admin-schedule-preview span{color:var(--color-text-muted);font-size:13px;font-weight:700}.admin-schedule-preview strong{color:var(--color-text);font-size:15px;font-weight:700}.admin-run-times{display:grid;gap:10px}.admin-run-times>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.admin-run-times button{min-height:44px;padding:0 14px;border:0;border-radius:14px;color:var(--color-on-brand);background:var(--color-primary);font-weight:700}.admin-run-times button:disabled{color:var(--color-text-subtle);background:var(--color-surface-muted)}.admin-match-run-list{display:grid;gap:12px}.admin-match-run-list article{display:grid;gap:7px;padding:16px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.admin-match-run-list span{color:var(--color-primary);font-size:13px;font-weight:700}.admin-match-run-list strong{color:var(--color-text);font-size:15px;font-weight:700}.admin-match-run-list p{color:var(--color-text-muted);font-size:13px;font-weight:600}.admin-date-actions{display:flex;gap:10px}.admin-date-actions input{min-height:42px;padding:0 12px;border:1px solid var(--color-border);border-radius:12px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600}.admin-metrics--compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.admin-ops-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px}.admin-ops-grid h3{margin:0 0 12px;color:var(--color-text);font-size:18px;font-weight:700}.admin-match-table,.admin-unmatched-list{display:grid;gap:10px;max-height:520px;overflow-y:auto;padding-right:4px}.admin-match-table article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:15px;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface)}.admin-match-table article span{color:var(--color-primary);font-size:12px;font-weight:700}.admin-match-table article strong{display:block;margin-top:5px;color:var(--color-text);font-size:15px;font-weight:700}.admin-match-table article p,.admin-match-table article small{color:var(--color-text-muted);font-size:12px;font-weight:600}.admin-match-table article p{margin-top:6px}.admin-unmatched-list button{display:grid;gap:6px;padding:14px;border:1px solid var(--color-border);border-radius:16px;color:var(--color-text);background:var(--color-surface);text-align:left}.admin-unmatched-list button.is-selected{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 9%,var(--color-surface))}.admin-unmatched-list button strong{font-size:14px;font-weight:700}.admin-unmatched-list button span,.admin-unmatched-list button small{color:var(--color-text-muted);font-size:12px;font-weight:600}.admin-manual-match{margin-top:22px;padding-top:20px;border-top:1px solid var(--color-border)}.admin-manual-match h3{margin:0 0 12px;color:var(--color-text);font-size:18px;font-weight:700}.admin-manual-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-manual-form select,.admin-manual-form input{min-height:46px;padding:0 12px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600}.admin-manual-form input{grid-column:1/-1}.admin-manual-form>button{grid-column:1/-1;min-height:50px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-weight:700}.admin-manual-form>button:disabled{cursor:not-allowed;opacity:.48}.admin-manual-score{display:grid;gap:16px;margin-top:14px;padding:18px;border:1px solid var(--color-border);border-radius:18px;background:color-mix(in srgb,var(--color-surface) 86%,var(--color-surface) 4%)}.admin-manual-score.is-eligible{border-color:color-mix(in srgb,var(--color-primary) 44%,var(--color-border))}.admin-manual-score.is-ineligible{border-color:color-mix(in srgb,#ef4444 42%,var(--color-border))}.admin-manual-score>p,.admin-manual-score>span{margin:0;color:var(--color-text-muted);font-size:13px;font-weight:600}.admin-manual-score>strong{color:var(--color-text);font-size:24px;font-weight:700}.admin-manual-score dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0}.admin-manual-score dl div{display:grid;gap:6px;padding:12px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-muted)}.admin-manual-score dl dt{color:var(--color-text-muted);font-size:11px;font-weight:700;text-transform:uppercase}.admin-manual-score dl dd{margin:0;color:var(--color-text);font-size:13px;font-weight:700}.admin-manual-score__summary{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.admin-manual-score__summary p{margin:0 0 4px;color:var(--color-text-muted);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.admin-manual-score__summary strong{color:var(--color-text);font-size:32px;font-weight:700}.admin-manual-score__summary span{color:var(--color-text-muted);font-size:13px;font-weight:600;text-align:right}@media (max-width: 860px){.admin-manual-score dl{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-manual-score__summary{align-items:flex-start;flex-direction:column}.admin-manual-score__summary span{text-align:left}}.admin-modal-backdrop{position:fixed;z-index:80;top:0;right:0;bottom:0;left:0;display:grid;overflow-y:auto;place-items:center;padding:28px;background:#000000b8}.admin-create-modal{width:min(980px,100%);max-height:calc(100svh - 56px);overflow-y:auto;padding:26px;border:1px solid color-mix(in srgb,var(--color-primary) 22%,var(--color-border));border-radius:28px;background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-create-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.admin-create-modal__header p{margin:0 0 6px;color:var(--color-primary);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-create-modal__header h2{margin:0;font-size:1.5rem;font-weight:700}.admin-create-modal__header>button{display:grid;width:38px;height:38px;place-items:center;border:0;border-radius:50%;color:var(--color-primary);background:var(--color-action-soft);font-weight:700}.admin-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-create-form label{display:grid;gap:8px;min-width:0}.admin-create-form label>span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.admin-create-form input,.admin-create-form textarea{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-create-form input:focus,.admin-create-form textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-create-form input{min-height:52px;padding:0 16px}.admin-create-form textarea{min-height:132px;resize:vertical;padding:16px;line-height:1.5}.admin-create-hobbies .profile-option-group{gap:10px}.admin-create-hobbies .profile-option-group__header{color:var(--color-text-muted)}.admin-create-hobbies .profile-option-grid--hobby{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-heart-panel{display:grid;gap:14px;margin-top:18px;padding:18px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface-muted)}.admin-heart-panel>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-heart-panel>div:first-child span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.admin-heart-panel>div:first-child strong{color:var(--color-primary);font-size:1.6rem;font-weight:700}.admin-heart-form{display:grid;grid-template-columns:150px 120px minmax(0,1fr) 150px;gap:10px}.admin-heart-form input{width:100%;min-height:52px;min-width:0;padding:0 16px;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-heart-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-heart-form>button{min-height:52px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700}.admin-heart-transactions{display:grid;gap:8px}.admin-heart-transactions p{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;margin:0;color:var(--color-text-muted);font-size:.84rem;font-weight:600}.admin-heart-transactions strong{color:var(--color-text)}.admin-create-form__wide,.admin-create-form__photo{grid-column:span 2}.admin-create-form__photo input{display:none}.admin-create-form__photo small{color:var(--color-text-muted);font-size:.78rem;font-weight:600}.admin-create-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-height:180px;overflow:hidden;padding:10px;border:1px solid var(--color-border);border-radius:22px;color:var(--color-text-muted);background:var(--color-soft-background);font-weight:700;cursor:pointer}.admin-create-photo-grid>span:not(.admin-create-photo-grid__item){display:grid;place-items:center;grid-column:1/-1}.admin-create-photo-grid__item{position:relative;display:block;overflow:hidden;aspect-ratio:1;border-radius:14px;background:var(--color-surface)}.admin-create-photo-grid__item img{width:100%;height:100%;object-fit:cover}.admin-create-photo-grid__item strong{position:absolute;top:8px;left:8px;padding:5px 8px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-size:.7rem;font-weight:700}.admin-create-error{margin-top:14px;color:var(--color-primary);font-weight:700}.admin-create-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;margin-top:20px}.admin-create-actions button{min-height:54px;border:0;border-radius:var(--radius-pill);font-weight:700}.admin-create-actions button:first-child{color:var(--color-text);background:var(--color-surface-muted)}.admin-create-actions button:last-child{color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button)}.admin-create-actions button:disabled{opacity:.6}.admin-meeting-create-panel{margin-bottom:22px}.admin-meeting-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.admin-meeting-create-form label{display:grid;gap:8px;min-width:0}.admin-meeting-create-form label>span{color:var(--color-text-muted);font-size:.82rem;font-weight:700}.admin-meeting-create-form input,.admin-meeting-create-form textarea{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-meeting-create-form input:focus,.admin-meeting-create-form textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-meeting-create-form input{min-height:52px;padding:0 16px}.admin-meeting-create-form textarea{min-height:164px;resize:vertical;padding:16px;line-height:1.5}.admin-meeting-create-form__image,.admin-meeting-create-form__description{grid-column:span 2}.admin-meeting-create-form__image input{display:none}.admin-meeting-create-form__image div{display:grid;min-height:164px;overflow:hidden;place-items:center;border:1px solid var(--color-border);border-radius:22px;color:var(--color-text-muted);background:var(--color-soft-background);font-weight:700;cursor:pointer}.admin-meeting-create-form__image img{width:100%;height:100%;max-height:260px;object-fit:cover}.admin-meeting-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:flex-start}.admin-meeting-list,.admin-meeting-applications{display:grid;gap:12px}.admin-meeting-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;width:100%;border:1px solid var(--color-border);border-radius:20px;color:inherit;background:var(--color-surface);padding:10px;text-align:left}.admin-meeting-row.is-active{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 14%,transparent)}.admin-meeting-row img{width:92px;aspect-ratio:1;border-radius:16px;object-fit:cover;background:var(--color-soft-background)}.admin-meeting-row span{display:grid;min-width:0;gap:5px}.admin-meeting-row strong,.admin-meeting-row em,.admin-meeting-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-meeting-row strong{color:var(--color-text);font-size:.98rem;font-weight:700}.admin-meeting-row em,.admin-meeting-row small{color:var(--color-text-muted);font-size:.78rem;font-style:normal;font-weight:600}.admin-meeting-application{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;padding:14px;border:1px solid var(--color-border);border-radius:20px;background:var(--color-surface)}.admin-meeting-application img,.admin-meeting-application .admin-meeting-application__avatar{width:64px;aspect-ratio:1;border-radius:50%;background:var(--color-soft-background)}.admin-meeting-application img{object-fit:cover}.admin-meeting-application>div:not(.admin-meeting-application__actions){display:grid;min-width:0;gap:5px}.admin-meeting-application strong{color:var(--color-text);font-size:.94rem;font-weight:700}.admin-meeting-application>div:not(.admin-meeting-application__actions) span,.admin-meeting-application>div:not(.admin-meeting-application__actions) small{overflow:hidden;color:var(--color-text-muted);font-size:.78rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.admin-meeting-application__avatar{display:grid;place-items:center;color:var(--color-primary);font-size:1.1rem;font-weight:700}.admin-meeting-application__actions{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.admin-meeting-application__actions button{min-height:40px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface-muted);font-weight:700}.admin-meeting-application__actions button:nth-child(1),.admin-meeting-application__actions button:nth-child(3){color:var(--color-on-brand);border-color:var(--color-primary);background:var(--color-primary)}.admin-meeting-application__actions button:disabled{opacity:.58}@media (max-width: 980px){.admin-meeting-grid{grid-template-columns:1fr}.admin-meeting-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-page--blocked{display:grid;place-items:center}.admin-blocked-card{max-width:620px;padding:44px;text-align:center}.admin-blocked-card p{color:var(--color-primary);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-blocked-card h1{margin:12px 0;font-size:2rem;font-weight:700;line-height:1.18}.admin-blocked-card a{display:inline-flex;min-height:50px;align-items:center;justify-content:center;margin-top:28px;padding:0 24px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700}.admin-login-page{display:grid;place-items:center}.admin-login-panel{width:min(100%,520px);padding:42px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:30px;background:var(--color-surface);box-shadow:var(--shadow-card)}.admin-login-panel__header{margin-bottom:28px}.admin-login-panel__header p{margin:0 0 10px;color:var(--color-primary);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.admin-login-panel__header h1{margin:0;font-size:2.2rem;font-weight:700;line-height:1.08}.admin-login-panel__header span{display:block;margin-top:10px;color:var(--color-text-muted);font-weight:600}.admin-login-form{display:grid;gap:16px}.admin-login-form label{display:grid;gap:8px}.admin-login-form label span{color:var(--color-text-muted);font-size:.86rem;font-weight:700}.admin-login-form input{min-height:54px;padding:0 16px;border:1px solid var(--color-border);border-radius:16px;color:var(--color-text);background:var(--color-surface);font:inherit;font-weight:600;outline:none}.admin-login-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.admin-login-form>button{min-height:54px;margin-top:6px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-size:1rem;font-weight:700}.admin-login-form>button:disabled{opacity:.64}.admin-login-error{padding:14px 16px;border-radius:16px;color:var(--color-danger, #d94f6a);background:color-mix(in srgb,var(--color-danger, #d94f6a) 12%,transparent);font-weight:700}.admin-login-panel__home{display:inline-flex;margin-top:24px;color:var(--color-text-muted);font-weight:700;text-decoration:underline;text-underline-offset:4px}@media (max-width: 900px){.admin-page{padding:20px}.admin-shell{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:18px}.admin-sidebar>.theme-toggle{align-self:center}.admin-sidebar nav{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.admin-sidebar nav a{min-height:40px;padding:8px 12px;font-size:.875rem}.admin-sidebar__brand{padding-bottom:0;border:0}.admin-sidebar__profile{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding-top:12px}.admin-sidebar__profile button{grid-column:2;grid-row:1/3;padding:0 16px;margin:0}.admin-shell-header,.admin-panel__header{align-items:flex-start;flex-direction:column}.admin-metrics{grid-template-columns:1fr}.admin-user-card{grid-template-columns:116px minmax(0,1fr)}.admin-user-card__actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.admin-user-card__details,.admin-search-form,.admin-table-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-heart-products-table__head{display:none}.admin-product-field>span,.admin-heart-products-table__check>span{display:block}.admin-heart-products-table__check{display:flex;gap:10px;align-self:end;min-height:44px}.admin-heart-products-table__row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-table-row__detail{min-height:52px}.admin-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.admin-page{padding:14px}.admin-shell-header h1{font-size:1.9rem}.admin-panel{padding:16px}.admin-instant-config-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-instant-config-form .admin-schedule-preview,.admin-instant-config-form .admin-toggle-row,.admin-instant-config-form>button{grid-column:1/-1}.admin-date-actions input{min-width:0}.admin-user-card{grid-template-columns:1fr}.admin-user-card__photo{max-width:220px}.admin-user-card__title{flex-direction:column}.admin-user-card__details,.admin-user-card__actions,.admin-search-form,.admin-table-row,.admin-heart-products-table__row,.admin-create-form,.admin-detail-actions,.admin-danger-zone{grid-template-columns:1fr}.admin-danger-zone>button{width:100%}.admin-modal-backdrop{padding:14px}.admin-create-form__wide,.admin-create-form__photo{grid-column:span 1}.admin-blocked-card{padding:32px 22px}}.app-page{min-height:100svh;display:flex;width:100%;max-width:100vw;justify-content:center;overflow-x:hidden;background:var(--color-device-backdrop)}.app-page--light{background:var(--color-device-backdrop)}.home-frame{position:relative;display:flex;height:100svh;width:min(100vw,var(--mobile-frame-width));max-width:100vw;flex-direction:column;overflow:hidden;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-frame) var(--radius-frame) 0 0;background:linear-gradient(180deg,var(--color-surface-raised) 0 34%,var(--color-background) 34%,var(--color-brand-wash) 100%),var(--color-surface-raised);box-shadow:var(--shadow-frame)}.home-header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;font-weight:700;font-size:18px;letter-spacing:-.02em;padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 1px 10px #ffffff0f}.home-header .brand-lockup__name{color:var(--color-header-text);line-height:1;letter-spacing:0;font-weight:600;letter-spacing:4px;font-size:.7rem}.brand-lockup{display:flex;min-width:0;align-items:center;gap:16px}.brand-lockup--page{pointer-events:none}.brand-lockup--page .brand-lockup__name{font-size:1rem;font-weight:700;letter-spacing:0}.brand-mark{position:relative;display:grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border-radius:12px;color:var(--color-on-brand);background:var(--color-header-mark)}.brand-mark svg{display:block;width:60%;height:60%;fill:currentColor}.notice-button{position:relative;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;padding:.5rem;border:1px solid var(--color-border-light);border-radius:50%;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-header-icon);background:var(--color-surface);box-shadow:0 12px 24px #392d2614;line-height:0}.notice-button svg{display:block;width:20px;height:20px;flex:0 0 auto}.notice-button--unread{color:var(--color-primary);animation:notice-button-shake 1s ease-in-out infinite}.notice-button__badge{position:absolute;top:3px;right:3px;display:inline-flex;min-width:15px;height:15px;align-items:center;justify-content:center;padding:0 4px;border:1px solid var(--color-background);border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-size:.55rem;font-weight:700;line-height:1}@keyframes notice-button-shake{0%,to{transform:rotate(0)}15%{transform:rotate(-10deg)}30%{transform:rotate(8deg)}45%{transform:rotate(-6deg)}60%{transform:rotate(4deg)}75%{transform:rotate(0)}}.notification-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;flex-direction:column;overflow:hidden;background:var(--color-background);color:var(--color-text);transform:translate(100%);transition:transform .24s ease;pointer-events:none}.notification-panel--open{transform:translate(0);pointer-events:auto}.notification-panel__header{display:grid;flex:0 0 auto;grid-template-columns:44px 1fr 44px;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 1px 10px #ffffff0f}.notification-panel__header h2{color:var(--color-text);font-size:1rem;font-weight:700;line-height:1;text-align:center}.notification-panel__body{min-height:0;flex:1 1 auto;overflow-y:auto;background:var(--color-background);-webkit-overflow-scrolling:touch;scrollbar-width:none}.notification-panel__body::-webkit-scrollbar{display:none}.notification-list{display:flex;flex-direction:column}.notification-item{position:relative;display:grid;width:100%;grid-template-columns:58px 1fr;gap:18px;align-items:flex-start;border:0;border-bottom:1px solid var(--color-border);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;color:inherit;padding:1.5rem;text-align:left}.notification-item--unread:after{content:"";position:absolute;top:1.35rem;right:1.5rem;width:7px;height:7px;border-radius:50%;background:var(--color-primary)}.notification-item__icon{display:inline-flex;width:58px;height:58px;align-items:center;justify-content:center;border-radius:50%;color:var(--color-on-brand);background:var(--color-primary)}.notification-item__icon svg{width:26px;height:26px}.notification-item__content{display:flex;min-width:0;flex-direction:column;gap:5px;padding-right:16px}.notification-item__content strong{color:var(--color-text);font-size:.95rem;font-weight:600;line-height:1.3}.notification-item__content span{color:var(--color-text);font-size:.84rem;font-weight:500;line-height:1.45}.notification-item__content time{margin-top:8px;color:var(--color-text-muted);font-size:.78rem;font-weight:700;line-height:1}.notification-panel__state{margin:1.5rem;padding:1.5rem;border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-text-muted);background:var(--color-surface);font-size:.9rem;font-weight:600;line-height:1.45;text-align:center}.notification-panel__state--error{color:var(--color-primary)}.notification-panel__footnote{display:flex;align-items:center;justify-content:center;gap:8px;padding:1.5rem;color:var(--color-text-muted);font-size:.82rem;font-weight:700;line-height:1.3}.notification-panel__footnote:before{content:"!";display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:.72rem;font-weight:700}.home-content{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:.625rem;overflow-y:auto;padding:22px 22px calc(var(--bottom-nav-height) + var(--app-bottom-safe-offset));scroll-padding-bottom:calc(var(--bottom-nav-height) + var(--app-bottom-safe-offset));-webkit-overflow-scrolling:touch;scrollbar-width:none}.home-content::-webkit-scrollbar{display:none}.home-content--lovecatcher{gap:1.5rem}.home-content--interest{gap:1.25rem}.home-content--detail{gap:0;overflow-y:auto;padding:0 0 calc(130px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(130px + env(safe-area-inset-bottom))}.premium-intro{position:relative;z-index:1;display:flex;flex-direction:column;gap:1rem}.premium-intro h2{margin:0;color:var(--color-text);font-size:2rem;font-weight:700;line-height:1.18;letter-spacing:0}.premium-intro>p:not(.premium-intro__eyebrow){margin:0;color:var(--color-text-muted);font-size:.8rem;font-weight:650;line-height:1.44}.premium-intro__eyebrow,.section-heading p{margin:0;color:var(--color-action);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.match-status{display:flex;align-items:center;gap:12px}.match-status__pill{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);box-shadow:inset 0 0 0 1px #ffffff08;font-size:15px;font-weight:700;line-height:1}.match-status__pill--active{padding:0 20px;border-color:var(--color-action);color:var(--color-action)}.match-status__pill:not(.match-status__pill--active){flex:1 1 auto;padding:0 18px}.match-status__dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:currentColor}.match-card{position:relative;display:block;z-index:1;overflow:hidden;border-radius:var(--radius-card) var(--radius-card);color:inherit;background:var(--color-surface);box-shadow:var(--shadow-card);text-decoration:none;width:100%}.match-card-list{display:flex;width:calc(100% + 22px);gap:14px;align-items:stretch;overflow-x:auto;overflow-y:hidden;margin-right:-22px;padding:2px 22px 8px 0;scroll-padding-left:0;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.match-card-list::-webkit-scrollbar{display:none}.match-card-list .match-card{flex:0 0 calc(100% - 38px);scroll-snap-align:start}.match-empty-section{display:flex;justify-content:center;width:100%}.onboarding-cta{display:grid;gap:14px;padding:20px;border:1px solid color-mix(in srgb,var(--color-primary) 20%,var(--color-border));border-radius:22px;background:color-mix(in srgb,var(--color-primary) 9%,var(--color-surface));box-shadow:0 16px 38px #482d3517}.onboarding-cta h3{margin:0;color:var(--color-text);font-size:1rem;font-weight:700;line-height:1.42;word-break:keep-all}.onboarding-cta a{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:0 18px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-weight:700}.match-card__visual{position:relative;height:clamp(360px,58svh,470px);overflow:hidden;border-radius:var(--radius-card);background:radial-gradient(circle at 50% 34%,var(--color-card-spot) 0 60px,transparent 61px),linear-gradient(180deg,color-mix(in srgb,var(--color-card) 98%,transparent) 0%,color-mix(in srgb,var(--color-card) 82%,var(--color-card-deep)) 58%,var(--color-card-deep) 100%)}.match-card__visual img{width:100%;height:100%;object-fit:cover;object-position:center}.match-card__visual--photo{background:var(--color-surface-muted)}.profile-glow{position:absolute;inset:auto 0 0;height:50%;background:radial-gradient(ellipse at 50% 100%,rgba(0,0,0,.62) 0 38%,transparent 39%)}.profile-silhouette{position:absolute;right:16%;bottom:-72px;left:16%;height:170px;border-radius:50% 50% 0 0;background:#00000080}.match-card__details{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:8px;padding:74px 22px 22px;color:var(--color-on-dark);background:linear-gradient(180deg,transparent,rgba(0,0,0,.78) 52%,rgba(0,0,0,.92))}.match-card__details h3{color:var(--color-on-dark);font-size:1.6rem;font-weight:700;line-height:1.08;letter-spacing:0}.match-card__deadline{color:#ffffffb8;font-size:.8rem;font-weight:600;line-height:1.3}.match-card__meta{color:#c5c5c5d1;font-size:.8rem;font-weight:650;line-height:1.4}.match-card__intro{display:none;margin-top:6px;padding:16px;border-radius:18px;color:var(--color-text);background:var(--color-surface-muted);font-size:15px;font-weight:700;line-height:1.55}.section-heading{padding-top:4px}.section-heading h2{margin:8px 0 0;font-size:30px;font-weight:700;line-height:1.18}.detail-back-link{color:#fff;box-shadow:none}.match-detail{position:relative;min-height:100%;background:transparent}.match-detail__visual{position:relative;width:100%;aspect-ratio:1/1;max-height:45svh;min-height:0;overflow:hidden;background:radial-gradient(circle at 50% 34%,var(--color-card-spot) 0 78px,transparent 79px),linear-gradient(180deg,color-mix(in srgb,var(--color-card) 98%,transparent) 0%,color-mix(in srgb,var(--color-card) 82%,var(--color-card-deep)) 58%,var(--color-card-deep) 100%)}.match-detail__visual img{width:100%;height:100%;object-fit:cover;object-position:center}.match-detail__photo-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}.match-detail__photo-track::-webkit-scrollbar{display:none}.match-detail__photo-item{position:relative;flex:0 0 100%;min-width:100%;height:100%;scroll-snap-align:start;overflow:hidden}.match-detail__photo-item.is-locked img{filter:blur(16px);transform:scale(1.04)}.match-detail__photo-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:#00000075;text-align:center}.match-detail__photo-lock p{margin:0;color:#fff;font-size:.95rem;font-weight:600;line-height:1.35}.match-detail__photo-lock a,.match-detail__photo-lock button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:0 18px;border:1px solid var(--color-primary);border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-card);font-size:.82rem;font-weight:700;text-decoration:none}.match-detail__photo-progress{position:absolute;right:18px;bottom:14px;left:18px;z-index:2;height:4px;overflow:hidden;border-radius:var(--radius-pill);background:#a0a0a094;pointer-events:none}.match-detail__photo-progress span{display:block;height:100%;border-radius:inherit;background:#fffffff5;transition:transform .18s ease}.match-detail__back{position:sticky;z-index:5;top:16px;left:16px;width:fit-content;height:0}.match-detail__visual--photo{background:var(--color-surface-muted)}.match-detail__body{display:flex;flex-direction:column;gap:16px;padding:22px 22px calc(8rem + env(safe-area-inset-bottom))}.match-detail__body h2{color:var(--color-text);font-size:1.2rem;font-weight:700;line-height:1.12;padding-bottom:.5rem}.match-detail__intro{display:block;width:100%;min-width:0;margin:0;padding:1rem .5rem;border:1px solid var(--color-border);border-radius:.8rem;color:var(--color-text);background:transparent;font-size:.9rem;font-weight:600;line-height:1.55;white-space:pre-line;word-break:break-word;overflow-wrap:anywhere}.match-detail__received-message{display:grid;gap:8px;padding:14px 16px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface)}.match-detail__received-message span,.match-detail__received-message p{margin:0}.match-detail__received-message span{color:var(--color-primary);font-size:.75rem;font-weight:700;line-height:1}.match-detail__received-message p{color:var(--color-text);font-size:.88rem;font-weight:600;line-height:1.5;white-space:pre-line;word-break:break-word;overflow-wrap:anywhere}.match-list-state{width:80%;padding:24px 20px;border-radius:var(--radius-card);color:var(--color-text-muted);background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center}.match-list-state h3{margin:0 0 8px;color:var(--color-text);font-size:1rem;font-weight:700}.match-list-state p{margin:0;font-weight:600;line-height:1.45}.match-list-state--error{color:var(--color-primary)}.match-approval-state{display:grid;gap:12px;width:100%;padding:26px 22px;border:1px solid color-mix(in srgb,var(--color-primary) 28%,var(--color-border));border-radius:28px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--color-primary) 18%,transparent),transparent 45%),var(--color-surface);box-shadow:var(--shadow-card)}.match-approval-state p{margin:0;color:var(--color-primary);font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.match-approval-state h3{margin:0;color:var(--color-text);font-size:1.25rem;font-weight:700;line-height:1.25}.match-approval-state span{color:var(--color-text-muted);font-size:.92rem;font-weight:600;line-height:1.5}.match-approval-state--rejected{border-color:color-mix(in srgb,#df6767 48%,var(--color-border))}.match-approval-state--rejected p{color:var(--color-danger)}.match-more-button{display:inline-flex;width:100%;min-height:52px;align-items:center;justify-content:center;border:1px solid var(--color-primary);border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button);font-size:15px;font-weight:700}.instant-match-modal{position:fixed;z-index:40;top:0;right:0;bottom:0;left:0;display:grid;align-items:end;justify-items:center;padding:0 0 var(--app-bottom-safe-offset)}.instant-match-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a8}.instant-match-modal__sheet{position:relative;z-index:1;display:grid;width:min(100vw,var(--mobile-frame-width));max-height:calc(100dvh - var(--app-bottom-safe-offset));gap:16px;overflow-y:auto;padding:28px 22px 22px;border:1px solid var(--color-border);border-radius:28px 28px 0 0;background:var(--color-surface);box-shadow:var(--shadow-card)}.instant-match-modal__sheet h3{margin:0;color:var(--color-text);font-size:1.35rem;font-weight:700;line-height:1.25;text-align:center}.instant-match-modal__sheet p{margin:0;color:var(--color-text-muted);font-size:.95rem;font-weight:600;line-height:1.5;text-align:center}.instant-match-modal__sheet strong{color:var(--color-primary);font-size:.9rem;font-weight:600;text-align:center}.instant-match-modal__sheet>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px}.instant-match-modal__sheet button{min-height:50px;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:.95rem;font-weight:700}.instant-match-modal__sheet button:disabled{cursor:not-allowed;opacity:.58}.instant-match-modal__cancel{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted)}.instant-match-modal__confirm{border:1px solid var(--color-primary);color:var(--color-on-brand);background:var(--color-primary);box-shadow:var(--shadow-button)}.instant-match-modal__charge{border:1px solid var(--color-primary);color:var(--color-primary);background:transparent;box-shadow:none}.interest-confirm-modal{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;align-items:end;justify-items:center}.interest-confirm-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a8}.interest-confirm-modal__sheet{position:relative;z-index:1;display:grid;width:min(100vw,var(--mobile-frame-width));max-height:calc(100dvh - 24px);overflow-y:auto;gap:1rem;padding:1.75rem 1.375rem calc(1.375rem + env(safe-area-inset-bottom));border:1px solid var(--color-border);border-radius:1.75rem 1.75rem 0 0;background:var(--color-surface);box-shadow:var(--shadow-card)}.interest-confirm-modal__sheet h3{margin:0;color:var(--color-text);font-size:1.35rem;font-weight:700;line-height:1.25;text-align:center}.interest-confirm-modal__sheet p{margin:0;color:var(--color-text-muted);font-size:.95rem;font-weight:600;line-height:1.5;text-align:center}.interest-confirm-modal__sheet>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px}.interest-confirm-modal__sheet button{min-height:50px;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:.95rem;font-weight:700}.interest-confirm-modal__sheet button:disabled{cursor:not-allowed;opacity:.58}.interest-confirm-modal__message{display:grid;gap:8px;text-align:left}.interest-confirm-modal__message span,.interest-confirm-modal__message small{color:var(--color-text-muted);font-size:.75rem;font-weight:600}.interest-confirm-modal__message textarea{width:100%;min-height:104px;resize:none;border:1px solid var(--color-border);border-radius:18px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text);background:var(--color-background);padding:14px;font:inherit;font-size:.9rem;font-weight:600;line-height:1.45;outline:0}.interest-confirm-modal__message textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 14%,transparent)}.interest-confirm-modal__message textarea::placeholder{color:var(--color-text-subtle)}.interest-confirm-modal__message small{justify-self:end}.interest-confirm-modal__cancel{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted)}.interest-confirm-modal__confirm{border:1px solid var(--color-primary);color:var(--color-on-brand);background:var(--color-primary);box-shadow:none}.heart-insufficient-modal{position:fixed;z-index:70;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:22px}.heart-insufficient-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000ad}.heart-insufficient-modal__sheet{position:relative;z-index:1;display:grid;width:min(100vw - 44px,340px);gap:14px;padding:26px 20px 18px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center}.heart-insufficient-modal__sheet h3{margin:0;color:var(--color-text);font-size:1.2rem;font-weight:700;line-height:1.25}.heart-insufficient-modal__sheet p{margin:0;color:var(--color-text-muted);font-size:.88rem;font-weight:600;line-height:1.45}.heart-insufficient-modal__sheet>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px;margin-top:6px}.heart-insufficient-modal__sheet button{min-height:48px;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:.9rem;font-weight:700}.heart-insufficient-modal__cancel{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted)}.heart-insufficient-modal__charge{border:0;color:var(--color-on-brand);background:var(--color-onboarding-action);box-shadow:var(--shadow-button)}.heart-charge-frame{position:relative;display:flex;width:min(100vw,var(--mobile-frame-width));height:100svh;flex-direction:column;overflow:hidden;color:var(--color-text);background:var(--color-surface)}.heart-charge-header{display:grid;flex:0 0 auto;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;padding:calc(18px + env(safe-area-inset-top)) 22px 16px;border-bottom:1px solid var(--color-border)}.heart-charge-header h1{margin:0;font-size:1rem;font-weight:700;line-height:1;text-align:center}.heart-charge-header .back-button{color:var(--color-text)}.heart-charge-content{display:grid;flex:1 1 auto;align-content:start;gap:22px;overflow-y:auto;padding:24px 22px 118px}.heart-charge-hero{display:grid;gap:10px;padding:26px 22px;border-radius:28px;background:var(--color-surface);color:var(--color-text);box-shadow:0 20px 46px #00000024}.heart-charge-hero p{margin:0;color:var(--color-text-muted);font-size:.85rem;font-weight:600}.heart-charge-hero strong{font-size:2.4rem;font-weight:700;line-height:1}.heart-charge-products{display:grid;gap:16px}.heart-charge-products__heading{display:grid;gap:7px}.heart-charge-products__heading p{margin:0;color:var(--color-text-muted);font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.heart-charge-products__heading h2{margin:0;color:var(--color-text);font-size:1.45rem;font-weight:700;line-height:1.2}.heart-charge-state,.heart-charge-error{padding:18px;border-radius:18px;background:var(--color-surface);color:var(--color-text-muted);font-size:.88rem;font-weight:600;line-height:1.45}.heart-charge-error{color:var(--color-danger);background:var(--color-surface)}.heart-charge-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.heart-charge-product{position:relative;display:grid;min-height:128px;gap:8px;align-content:center;padding:18px 14px;border:1px solid var(--color-border);border-radius:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text);background:var(--color-surface);text-align:left;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}.heart-charge-product span{font-size:.9rem;font-weight:700}.heart-charge-product strong{font-size:1.25rem;font-weight:700;line-height:1}.heart-charge-product small{color:var(--color-text-muted);font-size:.74rem;font-weight:600;line-height:1.35}.heart-charge-product em{position:absolute;top:10px;right:10px;padding:4px 8px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-onboarding-action);font-size:.68rem;font-style:normal;font-weight:700}.heart-charge-product--selected{border-color:var(--color-primary);background:var(--color-brand-soft);box-shadow:inset 0 0 0 1px var(--color-primary)}.heart-charge-result{display:grid;gap:12px;padding:18px;border-radius:20px;background:var(--color-brand-soft)}.heart-charge-result p{margin:0;color:var(--color-text);font-size:.92rem;font-weight:700}.heart-charge-result button{min-height:44px;border:0;border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);font-weight:700}.heart-charge-footer{position:absolute;right:0;bottom:0;left:0;display:grid;padding:16px 22px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(255,255,255,0),var(--color-surface) 26%)}.heart-charge-footer button{min-height:58px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-onboarding-action);box-shadow:var(--shadow-button);font-size:1rem;font-weight:700}.heart-charge-footer button:disabled{color:var(--color-text);background:var(--color-surface-muted);box-shadow:none}.match-detail__section{display:grid;gap:12px}.match-detail__section h3{margin:0;color:var(--color-text);font-size:1rem;font-weight:700}.match-detail__section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.match-detail__section-heading h3{margin:0}.match-detail__section-heading span{display:inline-flex;align-items:center;gap:6px;color:var(--color-primary);font-size:.78rem;font-weight:600}.match-detail__section-heading i{display:block;width:6px;height:6px;border-radius:50%;background:var(--color-primary)}.match-detail__info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1.75rem;overflow:hidden;margin:0;padding:1.375rem;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:18px;background:var(--color-surface)}.match-detail__info-list div{display:flex;min-width:0;flex-direction:column;gap:8px}.match-detail__info-list dt{color:var(--color-text-subtle);font-size:11px;font-weight:500;letter-spacing:0;line-height:1;text-transform:uppercase}.match-detail__info-list dd{min-width:0;margin:0;color:var(--color-text);font-size:.875rem;font-weight:550;line-height:1.35;text-align:left;overflow-wrap:anywhere}.match-detail__hobbies{display:flex;flex-wrap:wrap;gap:8px;padding:18px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:18px;background:var(--color-surface)}.match-detail__hobbies span,.match-detail__hobbies p{margin:0;font-size:.84rem;font-weight:700}.match-detail__hobbies span{padding:6px 10px;border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-muted);background:transparent}.match-detail__hobbies span.is-common{border-color:var(--color-primary);color:var(--color-on-brand);background:var(--color-primary)}.match-detail__hobbies p{color:var(--color-text-muted)}.match-detail__actions{position:fixed;z-index:4;right:max(22px,(100vw - var(--mobile-frame-width)) / 2 + 22px);bottom:calc(18px + env(safe-area-inset-bottom));left:max(22px,(100vw - var(--mobile-frame-width)) / 2 + 22px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;background:var(--color-surface);box-shadow:0 0 0 12px var(--color-surface),0 -12px 20px var(--color-surface);border-radius:14px}.match-detail__actions button,.match-detail__actions p{min-height:54px;border-radius:var(--radius-pill);font-weight:700}.match-detail__actions button:disabled{cursor:not-allowed;border-color:var(--color-border);color:var(--color-text-muted);background:var(--color-surface);box-shadow:none;opacity:.72}.match-detail__actions p{grid-column:1/-1;display:flex;align-items:center;justify-content:center;padding:0 18px;color:var(--color-text-muted);background:var(--color-surface-muted);text-align:center}.match-detail__reject{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted);box-shadow:none}.match-detail__accept{border:0;color:var(--color-primary);background:var(--color-brand-soft);box-shadow:none}.match-detail__message{border:0;color:var(--color-on-brand);background:var(--color-primary);box-shadow:none}.match-detail__deadline{color:var(--color-primary);font-size:.8125rem}.match-detail__meta{color:var(--color-text-muted);font-size:.875rem}.match-detail__moderation .workflow-actions{justify-content:flex-end;border-top:1px solid var(--color-border);margin-top:8px;padding-top:12px}.match-detail__moderation .workflow-button{min-height:36px;padding:6px 12px;color:var(--color-text-muted);background:transparent;font-size:.8125rem}.match-detail__back .back-button{border-radius:50%;color:var(--color-on-dark);background:#0000008c}.match-detail__body>.match-detail__section{padding-top:20px;font-size:.9375rem;line-height:1.7}.match-detail__section>.workflow-actions{margin-top:0}.match-detail__decision-message{color:var(--color-primary);font-weight:600;text-align:center}.empty-state{padding:28px 22px;border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.empty-state h2{color:var(--color-text);font-size:24px;font-weight:700}.empty-state p{margin-top:10px;color:var(--color-text-muted);font-size:15px;font-weight:700;line-height:1.5}.feed-item{padding:22px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.feed-item h3{margin:12px 0 0;font-size:20px;font-weight:700}.feed-item p{margin:8px 0 0;color:var(--color-text-muted);font-size:14px;font-weight:600;line-height:1.52}.feed-item__badge{display:inline-flex;padding:6px 10px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-action);font-size:11px;font-weight:700}.feed-item__badge--soft{color:var(--color-action);background:var(--color-action-soft)}.profile-summary{display:flex;align-items:center;gap:16px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.profile-summary__body{min-width:0;flex:1 1 auto}.profile-summary h3{margin:0;color:var(--color-text);font-size:1rem;font-weight:600;line-height:1.2;word-break:keep-all}.profile-summary h3 span,.profile-summary h3 small{color:inherit;font:inherit}.profile-summary h3 small{margin-left:6px}.profile-summary p{margin:6px 0 0;color:var(--color-text-muted);font-size:14px;font-weight:600;line-height:1.52;word-break:keep-all}.profile-summary button{display:inline-flex;min-height:34px;flex:0 0 auto;align-items:center;justify-content:center;padding:0 16px;border:0;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);box-shadow:0 12px 24px color-mix(in srgb,var(--color-primary) 22%,transparent);font-size:13px;font-weight:700;line-height:1;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.profile-summary button:hover{background:color-mix(in srgb,var(--color-primary) 92%,var(--color-text));box-shadow:0 14px 28px color-mix(in srgb,var(--color-primary) 28%,transparent)}.profile-summary button:active{transform:translateY(1px);box-shadow:0 8px 18px color-mix(in srgb,var(--color-primary) 18%,transparent)}.mypage-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.mypage-heading h2{margin:6px 0 0}.mypage-heading button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:0 20px;border:0;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);box-shadow:0 12px 24px color-mix(in srgb,var(--color-primary) 24%,transparent);font-size:14px;font-weight:700;line-height:1;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.mypage-heading button:hover{background:color-mix(in srgb,var(--color-primary) 92%,var(--color-text));box-shadow:0 14px 28px color-mix(in srgb,var(--color-primary) 30%,transparent)}.mypage-heading button:active{transform:translateY(1px);box-shadow:0 8px 18px color-mix(in srgb,var(--color-primary) 20%,transparent)}.profile-avatar{width:64px;height:64px;flex:0 0 auto;overflow:hidden;border-radius:50%;background:radial-gradient(circle at 50% 34%,var(--color-surface) 0 11px,transparent 11.5px),radial-gradient(ellipse at 50% 78%,var(--color-surface) 0 21px,transparent 21.5px),linear-gradient(145deg,var(--color-brand),var(--color-card))}.profile-avatar--photo{background:none;background-position:center;background-repeat:no-repeat;background-size:cover;border:2px solid var(--color-border)}.mypage-photo-gallery{display:grid;gap:14px;padding:1.125rem;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.mypage-photo-gallery>button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--color-primary);border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);font-size:.9rem;font-weight:700}.mypage-photo-gallery--in-edit{box-shadow:none}.mypage-photo-gallery__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.mypage-photo-gallery__header span{color:var(--color-text);font-size:.9rem;font-weight:700}.mypage-photo-gallery__header strong{color:var(--color-text-muted);font-size:.78rem;font-weight:700}.mypage-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mypage-photo-slot{position:relative;min-width:0;aspect-ratio:1/1}.mypage-photo-slot input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.mypage-photo-slot label,.mypage-photo-slot>div{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center;overflow:hidden;border:1px solid transparent;border-radius:14px;background:var(--color-surface-muted);transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.mypage-photo-slot label{cursor:pointer}.mypage-photo-slot label:hover{border-color:var(--color-primary)}.mypage-photo-slot img{width:100%;height:100%;object-fit:cover}.mypage-photo-slot.has-photo label,.mypage-photo-slot.has-photo>div{border-color:var(--color-border);background:var(--color-surface)}.mypage-photo-slot--primary{grid-column:span 2;grid-row:span 2}.mypage-photo-slot--primary label,.mypage-photo-slot--primary>div{border-color:var(--color-text);border-radius:16px}.mypage-photo-slot__plus{position:relative;width:34px;height:34px}.mypage-photo-slot__plus:before,.mypage-photo-slot__plus:after{position:absolute;top:50%;left:50%;width:100%;height:2px;border-radius:999px;background:color-mix(in srgb,var(--color-text-subtle) 56%,transparent);content:"";transform:translate(-50%,-50%)}.mypage-photo-slot__plus:after{transform:translate(-50%,-50%) rotate(90deg)}.mypage-photo-slot__badge{position:absolute;top:10px;left:10px;padding:5px 9px;border:2px solid var(--color-primary);border-radius:var(--radius-pill);color:var(--color-primary);background:var(--color-surface);font-size:.68rem;font-weight:700;line-height:1}.mypage-photo-slot__remove{position:absolute;top:8px;right:8px;display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:50%;color:var(--color-on-dark);background:#000000a6;font-size:1rem;line-height:1}.mypage-error{margin-top:12px;color:var(--color-text-muted);font-size:14px;font-weight:700;text-align:center}.status-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--color-border);border-radius:22px;background:var(--color-border)}.status-list div{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:0 18px;background:var(--color-surface)}.status-list div span{color:var(--color-text-muted);font-size:14px;font-weight:600}.status-list div strong{font-size:14px;font-weight:700}.mypage-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 1.75rem;padding:1.375rem;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.mypage-detail-list div{display:flex;min-width:0;flex-direction:column;gap:8px;background:transparent}.mypage-detail-list div span{color:var(--color-text-subtle);font-size:11px;font-weight:500;letter-spacing:0;line-height:1;text-transform:uppercase}.mypage-detail-list div strong{min-width:0;color:var(--color-text);font-size:.875rem;font-weight:550;line-height:1.35;text-align:left;overflow-wrap:anywhere}.mypage-intro{padding:18px;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:22px;background:var(--color-surface);box-shadow:var(--shadow-card)}.mypage-intro span{display:block;color:var(--color-primary);font-size:13px;font-weight:700}.mypage-intro p{margin:10px 0 0;color:var(--color-text);font-size:15px;font-weight:600;line-height:1.55;white-space:pre-line;word-break:keep-all;overflow-wrap:anywhere}.mypage-hobbies{padding:1rem 1.375rem;border:1px solid color-mix(in srgb,var(--color-border) 82%,transparent);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.mypage-hobbies>span{display:block;color:var(--color-text-subtle);font-size:11px;font-weight:600;letter-spacing:0;line-height:1;text-transform:uppercase}.mypage-hobbies>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.mypage-hobbies strong,.mypage-hobbies p{margin:0;font-size:13px;font-weight:700}.mypage-hobbies strong{padding:5px 10px;border:1px solid var(--color-primary);border-radius:4px;color:var(--color-primary);background:transparent}.mypage-hobbies p{color:var(--color-text-muted)}.mypage-edit-form{display:flex;flex-direction:column;gap:16px;font-size:1rem}.mypage-edit-overlay{position:absolute;z-index:30;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-background);animation:mypage-edit-enter .22s ease-out}.mypage-photo-edit-overlay{position:absolute;z-index:32;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-background);animation:mypage-photo-edit-enter .24s ease-out}.mypage-edit-overlay__header,.mypage-photo-edit-overlay__header{position:relative;display:grid;flex:0 0 auto;min-height:64px;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;padding:calc(.75rem + env(safe-area-inset-top)) 1rem .75rem;border-bottom:1px solid rgba(255,255,255,.08);background:var(--color-surface-raised)}.mypage-edit-overlay__header h2,.mypage-photo-edit-overlay__header h2{grid-column:2;margin:0;color:var(--color-text);font-size:1rem;font-weight:700;line-height:1;text-align:center}.mypage-edit-overlay__header .back-button,.mypage-photo-edit-overlay__header .back-button{grid-column:3;min-width:44px;height:40px;justify-self:end;padding:0;color:var(--color-text)}.mypage-edit-overlay__header .back-button:disabled,.mypage-photo-edit-overlay__header .back-button:disabled{opacity:.45}.mypage-photo-edit-overlay__header{grid-template-columns:44px minmax(0,1fr) 44px}.mypage-photo-edit-overlay__header .back-button{grid-column:1;justify-self:start}.mypage-photo-edit-overlay__header h2{grid-column:2}.mypage-photo-edit-overlay__header>span{grid-column:3}.mypage-edit-overlay__content,.mypage-photo-edit-overlay__content{flex:1 1 auto;min-height:0;overflow-y:auto;padding:22px 22px calc(32px + env(safe-area-inset-bottom))}.mypage-photo-edit-overlay__content{padding-bottom:calc(104px + env(safe-area-inset-bottom))}.mypage-photo-edit-guide{display:grid;gap:6px;margin-bottom:18px}.mypage-photo-edit-guide p,.mypage-photo-edit-guide span{margin:0}.mypage-photo-edit-guide p{color:var(--color-text);font-size:.95rem;font-weight:700}.mypage-photo-edit-guide span{color:var(--color-text-muted);font-size:.8rem;font-weight:650;line-height:1.35}.mypage-photo-edit-overlay__actions{position:absolute;right:0;bottom:0;left:0;padding:16px 22px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--color-background) 24%)}.mypage-photo-edit-overlay__actions button{display:inline-flex;width:100%;min-height:54px;align-items:center;justify-content:center;border:1px solid var(--color-primary);border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-on-brand);background:var(--color-primary);font-size:1rem;font-weight:700}.mypage-photo-edit-overlay__actions button:disabled{cursor:not-allowed;opacity:.58}@keyframes mypage-edit-enter{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes mypage-photo-edit-enter{0%{transform:translate(100%)}to{transform:translate(0)}}.mypage-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mypage-hobby-editor .profile-option-group{gap:8px}.mypage-hobby-editor .profile-option-grid--hobby{grid-template-columns:repeat(3,minmax(0,1fr))}.mypage-edit-field,.mypage-photo-editor{display:flex;min-width:0;flex-direction:column;gap:8px}.mypage-edit-field>span,.mypage-photo-editor>span{color:var(--color-text-muted);font-size:.88rem;font-weight:700}.mypage-edit-field input,.mypage-edit-field textarea{width:100%;min-width:0;border:1px solid var(--color-border);border-radius:18px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text);background:var(--color-surface);box-shadow:inset 0 0 0 1px #ffffff08;font:inherit;font-weight:600;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.mypage-edit-field input:focus,.mypage-edit-field textarea:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.mypage-edit-field input::placeholder,.mypage-edit-field textarea::placeholder{color:var(--color-text-subtle)}.mypage-edit-field input{min-height:52px;padding:0 16px}.mypage-edit-field textarea{min-height:128px;resize:vertical;padding:16px;line-height:1.5}.mypage-photo-editor input{display:none}.mypage-photo-editor{align-items:flex-start}@media (hover: none) and (pointer: coarse){.mypage-edit-field,.mypage-photo-editor{font-size:1rem}}@supports (-webkit-touch-callout: none){.mypage-edit-field,.mypage-photo-editor{font-size:1rem}}.profile-photo-preview--compact{display:grid;align-self:center;width:min(100%,240px);aspect-ratio:1/1;overflow:hidden;place-items:center;border:1px solid var(--color-border);border-radius:28px;color:var(--color-text-muted);background:var(--color-surface);font-size:14px;font-weight:700;cursor:pointer}.profile-photo-preview--compact img{width:100%;height:100%;object-fit:cover}.mypage-save-status{margin:0;color:var(--color-text-muted);font-size:.8rem;font-weight:650;text-align:center}.interest-panel{display:flex;flex-direction:column;gap:1rem}.interest-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface)}.interest-tabs button{min-height:42px;border:0;border-radius:var(--radius-pill);color:var(--color-text-muted);background:transparent;font-size:clamp(.76rem,3vw,.9rem);font-weight:600}.interest-tabs button.is-active{color:var(--color-primary);background:var(--color-brand-soft)}.interest-list{display:grid;gap:12px;min-width:0;max-width:100%}.interest-profile-item{display:flex;width:100%;min-width:0;max-width:100%;flex-direction:column;align-items:stretch;gap:12px;overflow:hidden;padding:14px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface);box-shadow:var(--shadow-card);transition:border-color .16s ease,transform .16s ease}.interest-profile-item:hover{border-color:var(--color-primary)}.interest-profile-item:active{transform:translateY(1px)}.interest-profile-item--matched{gap:8px;padding:10px 12px;border-radius:16px;background:var(--color-background);box-shadow:none}.interest-profile-item--matched .interest-profile-item__link{gap:12px;width:100%;min-width:0;max-width:100%;overflow:hidden}.interest-profile-item--matched .profile-avatar{width:50px;height:50px;border-width:1px}.interest-profile-item--matched .interest-profile-item__body{min-width:0;max-width:100%;overflow:hidden}.interest-profile-item--matched .interest-profile-item__body h3{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600}.interest-profile-item--matched .interest-profile-item__body p{display:block;width:100%;min-width:0;margin-top:4px;color:var(--color-text-muted);font-size:.76rem;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.interest-profile-item__link{display:flex;align-items:center;gap:16px;min-width:0;max-width:100%;color:inherit;text-decoration:none}.interest-type-badge{flex:0 0 auto;padding:7px 10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);font-size:.7rem;font-weight:700;white-space:nowrap}.interest-type-badge--express{border-color:var(--color-primary);color:var(--color-primary)}.interest-type-badge--matched{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.interest-profile-item__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.interest-profile-item__actions button{min-height:42px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);font-weight:600}.interest-profile-item__actions button:last-child{border-color:var(--color-primary);color:var(--color-on-brand);background:var(--color-primary)}.interest-profile-item__actions button:disabled{opacity:.58}.interest-profile-item__decision,.interest-action-message{color:var(--color-primary);font-size:.82rem;font-weight:600}.interest-action-message{padding:0 4px}.interest-profile-item__body{min-width:0;flex:1 1 auto}.interest-profile-item__body h3{margin:0;color:var(--color-text);font-size:1.05rem;font-weight:600;line-height:1.2;word-break:keep-all}.interest-profile-item__body h3 span,.interest-profile-item__body h3 small{color:inherit;font:inherit}.interest-profile-item__body h3 small{margin-left:6px}.interest-profile-item__body p{margin:7px 0 0;color:var(--color-text-muted);font-size:.82rem;font-weight:700;line-height:1.4;overflow-wrap:anywhere}@media (max-width: 420px){.interest-profile-item:not(.interest-profile-item--matched) .interest-profile-item__link{display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px 12px}.interest-profile-item:not(.interest-profile-item--matched) .profile-avatar{width:56px;height:56px;grid-row:1/3}.interest-profile-item:not(.interest-profile-item--matched) .interest-type-badge{grid-column:2;justify-self:start;padding:4px 8px}}.interest-empty{padding:24px 18px;border:1px solid var(--color-border);border-radius:22px;color:var(--color-text-muted);background:var(--color-surface);font-size:.9rem;font-weight:600;text-align:center}.interest-empty--error{color:var(--color-primary)}.chat-room-list{display:grid;gap:12px}.chat-room-item{display:flex;align-items:center;gap:16px;min-width:0;padding:14px;border:1px solid var(--color-border);border-radius:22px;color:inherit;background:var(--color-surface);text-decoration:none;box-shadow:var(--shadow-card);transition:border-color .16s ease,transform .16s ease}.chat-room-item:hover{border-color:var(--color-primary)}.chat-room-item:active{transform:translateY(1px)}.chat-room-item__body{min-width:0;flex:1 1 auto}.chat-room-item__title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.chat-room-item__title h3{margin:0;color:var(--color-text);font-size:1.05rem;font-weight:600;line-height:1.2}.chat-room-item__title h3 span,.chat-room-item__title h3 small{color:inherit;font:inherit}.chat-room-item__title h3 small{margin-left:6px}.chat-room-item__title time{flex:0 0 auto;color:var(--color-text-subtle);font-size:.68rem;font-weight:600;line-height:1.4;white-space:nowrap}.chat-room-item__body p{margin:7px 0 0;color:var(--color-text-muted);font-size:.82rem;font-weight:700;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-empty,.chat-inline-error{padding:24px 18px;border:1px solid var(--color-border);border-radius:22px;color:var(--color-text-muted);background:var(--color-surface);font-size:.9rem;font-weight:600;text-align:center}.chat-empty--compact{margin-top:18px}.chat-empty--error,.chat-inline-error{color:var(--color-primary)}.chat-room-page{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden;background:var(--color-background)}.home-frame--chat{background:var(--color-background)}.home-frame--chat .chat-room-page{animation:chat-room-slide-in .26s ease both}.chat-room-page__header{display:flex;flex:0 0 auto;align-items:center;gap:14px;padding:1.25rem 1.25rem 1.05rem;border-bottom:1px solid var(--color-border)}.chat-room-page__header>.back-button{width:34px;height:44px;color:var(--color-text);font-size:1.4rem}.chat-room-page__leave-button{display:grid;flex:0 0 auto;width:42px;height:42px;place-items:center;border:1px solid var(--color-border);border-radius:50%;color:var(--color-text);background:transparent}.chat-room-page__leave-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.chat-counterpart{display:flex;min-width:0;flex:1 1 auto;align-items:center;gap:12px;color:inherit;text-decoration:none}.chat-counterpart .profile-avatar{width:56px;height:56px}.chat-counterpart h1{margin:0;color:var(--color-text);font-size:1.05rem;font-weight:700;line-height:1.2}.chat-counterpart p{margin:4px 0 0;color:var(--color-text-muted);font-size:.72rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-message-list{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:10px;overflow-y:auto;padding:18px 20px 22px;scrollbar-width:none}.chat-message-list::-webkit-scrollbar{display:none}.chat-date-divider{display:flex;justify-content:center;margin:6px 0 8px}.chat-date-divider time{display:inline-flex;align-items:center;min-height:28px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);background:#ffffff0a;font-size:.7rem;font-weight:600;line-height:1}.chat-message{max-width:min(78%,320px);align-self:flex-start;padding:12px 14px;border:1px solid var(--color-border);border-radius:18px 18px 18px 4px;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-card)}.chat-message p{margin:0;font-size:.9rem;font-weight:600;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}.chat-message time{display:block;margin-top:6px;color:var(--color-text-subtle);font-size:.66rem;font-weight:700;text-align:right}.chat-message--mine{align-self:flex-end;border-color:var(--color-primary);border-radius:18px 18px 4px;color:var(--color-on-brand);background:var(--color-primary)}.chat-message--mine time{color:var(--color-on-brand)}.chat-compose{display:grid;flex:0 0 auto;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface)}.chat-compose input{width:100%;min-height:48px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);padding:0 16px;font-size:.9rem;font-weight:600;outline:0}.chat-compose input:focus{border-color:var(--color-primary)}.chat-compose input::placeholder{color:var(--color-text-subtle)}.chat-compose button{min-width:72px;min-height:48px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-size:.9rem;font-weight:700}.chat-compose button:disabled{color:var(--color-text-subtle);background:var(--color-surface-muted)}.chat-leave-modal{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px}.chat-leave-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000ad}.chat-leave-modal__sheet{position:relative;z-index:1;display:grid;width:min(100vw - 44px,340px);gap:14px;padding:24px 20px 18px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);box-shadow:var(--shadow-card);text-align:center}.chat-leave-modal__sheet h2,.chat-leave-modal__sheet p{margin:0}.chat-leave-modal__sheet h2{color:var(--color-text);font-size:1.05rem;font-weight:700;line-height:1.3}.chat-leave-modal__sheet p{color:var(--color-text-muted);font-size:.86rem;font-weight:600;line-height:1.45}.chat-leave-modal__sheet>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}.chat-leave-modal__sheet button{min-height:46px;border-radius:var(--radius-pill);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-size:.9rem;font-weight:700}.chat-leave-modal__sheet button:first-child{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface-muted)}.chat-leave-modal__sheet button:last-child{border:1px solid var(--color-border);color:var(--color-text);background:var(--color-surface)}.chat-leave-modal__sheet button:disabled{cursor:not-allowed;opacity:.58}@keyframes chat-room-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.bottom-nav{position:fixed;right:50%;bottom:var(--app-bottom-safe-offset);z-index:10;display:grid;width:min(100vw,var(--mobile-frame-width));height:var(--bottom-nav-height);grid-template-columns:repeat(4,1fr);padding:9px 10px 10px;border-top:1px solid var(--color-border);border-radius:0;background:var(--color-surface);box-shadow:var(--shadow-nav);transform:translate(50%)}.bottom-nav__item{display:flex;min-width:0;min-height:1rem;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:0;border-radius:18px;color:var(--color-nav-muted);background:transparent;font-size:.8rem;font-weight:500}.bottom-nav__item.is-active{color:var(--color-action)}.tab-icon{display:block;width:20px;height:20px;color:currentColor}.meeting-panel{display:flex;min-height:0;flex-direction:column;gap:1rem}.meeting-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface)}.meeting-tabs button{min-height:46px;border:0;border-radius:var(--radius-pill);color:var(--color-text-muted);background:transparent;font:inherit;font-size:.85rem;font-weight:700}.meeting-tabs button.is-active{color:var(--color-text);background:var(--color-brand-soft)}.meeting-card-list{display:grid;gap:14px}.meeting-card{display:grid;overflow:hidden;border:1px solid var(--color-border);border-radius:24px;color:inherit;background:var(--color-surface);text-decoration:none}.meeting-card__image{position:relative;overflow:hidden;aspect-ratio:16/10;background:var(--color-surface)}.meeting-card__image img{width:100%;height:100%;object-fit:cover}.meeting-card__image span{position:absolute;top:14px;right:14px;padding:7px 10px;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-size:.72rem;font-weight:700}.meeting-card__body{display:grid;gap:8px;padding:1rem}.meeting-card__body time{color:var(--color-primary);font-size:.76rem;font-weight:700}.meeting-card__body h3,.meeting-card__body p{margin:0}.meeting-card__body h3{color:var(--color-text);font-size:1.15rem;font-weight:700;line-height:1.25}.meeting-card__body p{display:-webkit-box;overflow:hidden;color:var(--color-text-muted);font-size:.84rem;font-weight:650;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.meeting-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.meeting-card__meta span{padding:7px 10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text);font-size:.75rem;font-weight:600}.meeting-empty{padding:1.5rem;border:1px solid var(--color-border);border-radius:22px;color:var(--color-text-muted);background:var(--color-surface);font-weight:600;line-height:1.4;text-align:center}.meeting-empty--error{color:var(--color-primary)}.meeting-detail-page{min-height:0;flex:1 1 auto;overflow-y:auto;padding-bottom:28px;scrollbar-width:thin}.meeting-detail-page .meeting-detail-back{margin:12px 20px;border-radius:50%;background:var(--color-surface-muted);color:var(--color-text)}.meeting-detail-hero{overflow:hidden;margin:0 20px;border-radius:24px;background:var(--color-surface-muted);aspect-ratio:4/3}.meeting-detail-hero img{width:100%;height:100%;object-fit:cover;display:block}.meeting-detail-body{display:grid;gap:16px;padding:24px 20px;font-size:.9375rem}.meeting-detail-body time{color:var(--color-primary);font-size:.8125rem;font-weight:600}.meeting-detail-body h1{color:var(--color-text);font-size:1.625rem;font-weight:700;line-height:1.35}.meeting-detail-body p{white-space:pre-wrap;color:var(--color-text-muted);line-height:1.8}.meeting-detail-meta{display:flex;flex-wrap:wrap;gap:8px}.meeting-detail-meta span{padding:6px 10px;border-radius:8px;color:var(--color-text-muted);background:var(--color-surface-muted);font-size:.75rem;font-weight:500}.meeting-detail-footer{flex:0 0 auto;display:grid;gap:12px;padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:var(--color-surface);font-size:.9375rem}.meeting-detail-footer>p{color:var(--color-primary);font-size:.8125rem;line-height:1.55}.meeting-detail-footer>.meeting-action-error{color:var(--color-danger)}.meeting-detail-actions{display:flex;align-items:stretch;gap:10px}.meeting-detail-actions>*{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:52px;flex:1;padding:12px;border:0;border-radius:14px;font:inherit;font-weight:600;text-align:center}.meeting-detail-actions>.meeting-cancel-button{flex:.8;color:var(--color-text-muted);background:var(--color-surface-muted)}.meeting-detail-actions>.meeting-primary-button{color:var(--color-on-brand);background:var(--color-primary)}.meeting-detail-actions>.meeting-application-status{color:var(--color-primary);background:var(--color-brand-soft)}.meeting-detail-actions>button:disabled{color:var(--color-text-muted);background:var(--color-surface-muted);opacity:1}@media (max-width: 430px){.home-frame{border-radius:0;box-shadow:none}}@media (max-width: 360px){.match-card-list{width:calc(100% + 16px);margin-right:-16px;padding-right:16px}.home-header,.home-content{padding-right:16px;padding-left:16px}.brand-lockup{gap:12px}.brand-lockup__name{font-size:25px}.brand-mark{width:44px;height:44px}.premium-intro h2{font-size:37px}.premium-intro>p:not(.premium-intro__eyebrow){font-size:16px}.match-status{gap:8px}.match-status__pill{font-size:13px}.match-status__pill--active{padding:0 14px}.match-status__pill:not(.match-status__pill--active){padding:0 12px}.match-card__details{padding:18px}.match-card__details h3{font-size:27px}.mypage-detail-list{gap:20px 18px;padding:1rem}.mypage-detail-list div strong{font-size:14px}.bottom-nav__item{font-size:11px}}.dev-tools-page{min-height:100svh;display:flex;justify-content:center;background:var(--color-device-backdrop)}.dev-tools-frame{width:min(100vw,var(--mobile-frame-width));min-height:100svh;display:flex;flex-direction:column;gap:1rem;padding:2rem 1.25rem;border-right:1px solid var(--color-border);border-left:1px solid var(--color-border);background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 22rem),var(--color-background)}.dev-tools-hero{display:grid;gap:.75rem;padding:1.25rem 0 .75rem}.dev-tools-hero p{color:var(--color-primary);font-size:.78rem;font-weight:700;letter-spacing:.22em}.dev-tools-hero h1{color:var(--color-text);font-size:2.2rem;font-weight:700;line-height:1.05}.dev-tools-hero span{color:var(--color-text-muted);font-size:.95rem;font-weight:700;line-height:1.5}.dev-tools-card{display:grid;gap:1rem;padding:1.25rem;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface);box-shadow:var(--shadow-card)}.dev-tools-action-card h2{color:var(--color-text);font-size:1.08rem;font-weight:700;line-height:1.35}.dev-tools-action-card p{margin-top:.45rem;color:var(--color-text-muted);font-size:.9rem;font-weight:650;line-height:1.5}.dev-tools-field{display:grid;gap:.55rem}.dev-tools-field span{color:var(--color-text-muted);font-size:.86rem;font-weight:600}.dev-tools-field input{width:100%;min-height:3.25rem;padding:0 1rem;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-background);outline:none;transition:border-color .16s ease,box-shadow .16s ease}.dev-tools-field input::placeholder{color:var(--color-text-subtle)}.dev-tools-field input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.dev-tools-note{color:var(--color-text-subtle);font-size:.82rem;font-weight:700;line-height:1.45}.dev-tools-primary-button,.dev-tools-danger-button{width:100%;min-height:3.25rem;border:1px solid transparent;border-radius:var(--radius-pill);font-weight:700;transition:opacity .16s ease,transform .16s ease,border-color .16s ease,background .16s ease}.dev-tools-primary-button:not(:disabled):hover,.dev-tools-danger-button:not(:disabled):hover{transform:translateY(-1px)}.dev-tools-primary-button:disabled,.dev-tools-danger-button:disabled{opacity:.42}.dev-tools-primary-button{color:var(--color-on-brand);background:var(--color-primary)}.dev-tools-danger-button{color:var(--color-text);background:var(--color-surface-muted)}.dev-tools-danger-button:not(:disabled):hover{border-color:color-mix(in srgb,#ef4444 54%,var(--color-border));background:color-mix(in srgb,#ef4444 12%,var(--color-surface-muted))}.dev-tools-button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.dev-test-user-list{display:grid;gap:.75rem}.dev-test-user-card{display:grid;gap:.85rem;padding:1rem;border:1px solid var(--color-border);border-radius:18px;background:var(--color-background)}.dev-test-user-card strong{display:block;color:var(--color-text);font-size:.98rem;font-weight:700;line-height:1.35}.dev-test-user-card span{display:block;margin-top:.28rem;color:var(--color-primary);font-size:.8rem;font-weight:600;line-height:1.35}.dev-test-user-card p{margin-top:.35rem;color:var(--color-text-muted);font-size:.86rem;font-weight:700;line-height:1.45}.dev-test-user-card .dev-tools-primary-button{min-height:2.75rem}.dev-tools-status{display:grid;gap:.45rem;padding:1rem 1.1rem;border-radius:20px;border:1px solid var(--color-border);background:var(--color-surface)}.dev-tools-status strong{font-size:.96rem;font-weight:700}.dev-tools-status p{color:var(--color-text-muted);font-size:.88rem;font-weight:700;line-height:1.45}@media (max-width: 420px){.dev-tools-button-row{grid-template-columns:1fr}}.dev-tools-status--success{border-color:color-mix(in srgb,var(--color-primary) 50%,var(--color-border))}.dev-tools-status--success strong{color:var(--color-primary)}.dev-tools-status--error{border-color:color-mix(in srgb,#ef4444 56%,var(--color-border))}.dev-tools-status--error strong{color:var(--color-danger)}.login-page{min-height:100svh;display:flex;justify-content:center;align-items:center;padding:18px;background:var(--color-surface)}.mobile-frame{width:min(100vw,var(--mobile-frame-width));min-height:calc(100svh - 36px);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5rem;border:1px solid var(--color-border);border-radius:28px;background:var(--color-surface);box-shadow:var(--shadow-frame)}.login-header{display:flex;flex-direction:column;align-items:center;gap:28px;padding-top:0;text-align:center}.eyebrow{margin:0;max-width:280px;color:var(--color-text-muted);font-size:.8rem;font-weight:650;line-height:1.35}.wordmark{display:block;width:100%;color:var(--color-text);font-size:34px;font-weight:700;line-height:1.08;letter-spacing:4px;text-transform:uppercase;text-shadow:none}.wordmark span:nth-child(2){color:inherit}.hero-card{display:none}.hero-card__copy strong{display:block;font-size:24px;font-weight:700;line-height:1.24}.hero-card__copy p{margin:12px 0 0;color:#ffffffdb;font-size:15px;font-weight:700;line-height:1.52}.hero-card__stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:24px}.hero-card__stats div{padding:14px;border-radius:18px;background:#fff3}.hero-card__stats b,.hero-card__stats span{display:block}.hero-card__stats b{font-size:22px;font-weight:700}.hero-card__stats span{margin-top:4px;color:#ffffffc7;font-size:13px;font-weight:600}.signup-sheet{border-radius:0;background:transparent;box-shadow:none;text-align:center}.brand-fade{display:none;font-size:42px;font-weight:700;line-height:1;color:transparent;background:linear-gradient(90deg,color-mix(in srgb,var(--color-brand) 28%,transparent),color-mix(in srgb,var(--color-card) 48%,transparent));-webkit-background-clip:text;background-clip:text;white-space:nowrap}.welcome-illustration{display:none;position:relative;width:min(280px,100% - 24px);height:166px;margin:16px auto 20px}.person{position:absolute;bottom:8px;width:98px;height:104px}.person .head,.person .body,.person .arm{position:absolute;display:block}.person .head{top:0;width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,var(--color-brand-soft),var(--color-brand))}.person .body{bottom:0;width:90px;height:76px;border-radius:34px 34px 12px 12px;background:var(--color-action)}.person .arm{top:42px;width:110px;height:28px;border-radius:999px;background:currentColor}.person--left{left:8px;color:var(--color-card)}.person--left .head{left:12px}.person--left .body{left:0;background:var(--color-card)}.person--left .arm{left:42px;transform:rotate(33deg)}.person--right{right:8px;color:var(--color-action)}.person--right .head{right:12px}.person--right .body{right:0}.person--right .arm{right:42px;transform:rotate(-33deg)}.high-five{position:absolute;top:38px;left:50%;width:70px;height:58px;transform:translate(-50%)}.high-five span{position:absolute;bottom:0;width:16px;height:52px;border-radius:999px;background:linear-gradient(180deg,var(--color-brand-soft),var(--color-brand));transform-origin:bottom center}.high-five span:nth-child(1){left:3px;transform:rotate(-22deg)}.high-five span:nth-child(2){left:20px;transform:rotate(-7deg)}.high-five span:nth-child(3){right:20px;transform:rotate(7deg)}.high-five span:nth-child(4){right:3px;transform:rotate(22deg)}.sheet-copy{display:none}.sheet-copy h1{margin:0;font-size:24px;font-weight:700;line-height:1.24}.sheet-copy p{margin:10px 0 0;color:var(--color-text-muted);font-size:14px;font-weight:600;line-height:1.48}.kakao-button{display:flex;width:100%;min-height:48px;align-items:center;justify-content:center;gap:16px;margin-top:0;border-radius:8px;color:#191919;background:var(--color-kakao);box-shadow:none;text-decoration:none;font-size:17px;font-weight:700}.kakao-button span{position:relative;display:block;width:24px;height:18px;border-radius:50%;background:var(--color-surface)}.kakao-button span:after{content:"";position:absolute;bottom:-4px;left:3px;width:8px;height:8px;background:var(--color-surface);transform:rotate(32deg);clip-path:polygon(0 0,100% 0,0 100%)}.terms-copy{margin:18px auto 0;max-width:310px;color:var(--color-text-subtle);font-size:12px;font-weight:650;line-height:1.58}.terms-copy a{color:var(--color-text-muted);font-weight:600}.support-link{display:none;margin-top:18px;color:var(--color-text-muted);font-size:14px;font-weight:600}@media (max-width: 360px){.login-hero,.signup-sheet{padding-right:20px;padding-left:20px}.wordmark,.brand-fade{font-size:30px}.signup-sheet{right:22px;left:22px}}.phone-verification-page{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;width:100%;height:var(--phone-viewport-height, 100dvh);overflow:hidden;justify-content:center;background:var(--color-surface);overscroll-behavior:none}.phone-verification-frame{position:relative;width:min(100vw,var(--mobile-frame-width));height:100%;overflow-y:auto;overscroll-behavior:contain;background:var(--color-surface);color:var(--color-text);font-size:1rem}.phone-verification-back{position:absolute;top:max(38px,env(safe-area-inset-top));left:26px;z-index:1;color:var(--color-text)}.phone-verification-content{display:flex;min-height:100%;flex-direction:column;padding:max(130px,96px + env(safe-area-inset-top)) 26px calc(40px + env(safe-area-inset-bottom))}.phone-verification-heading{display:flex;flex-direction:column;gap:22px}.phone-verification-heading h1{color:var(--color-text);font-size:1.4rem;font-weight:700;line-height:1.18;word-break:keep-all}.phone-verification-heading p{color:var(--color-text);font-size:1rem;font-weight:500;line-height:1.45;word-break:keep-all}.phone-number-field{position:relative;display:flex;align-items:center;margin-top:70px;border-bottom:2px solid var(--color-border)}.phone-number-field input{width:100%;min-width:0;border:0;outline:0;color:var(--color-text);background:transparent;font-size:2.4rem;font-weight:700;line-height:1.2;padding:.8rem 0}.phone-number-field input::placeholder{color:var(--color-text-subtle)}.phone-number-field button{display:flex;width:24px;height:24px;flex:0 0 auto;align-items:center;justify-content:center;margin-left:12px;border:0;border-radius:50%;color:var(--color-text);background:var(--color-surface-muted)}.phone-number-field button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:3}.phone-verification-cta{min-height:58px;margin-top:28px;flex:0 0 auto;border:0;border-radius:999px;color:var(--color-on-brand);background:var(--color-onboarding-action);font-size:1.2rem;font-weight:700}.phone-verification-cta:disabled{opacity:1;color:var(--color-text-muted);background:var(--color-surface-muted)}.phone-verification-page.is-keyboard-open .phone-verification-back,.phone-verification-page:focus-within .phone-verification-back{display:none}.phone-verification-page.is-keyboard-open .phone-verification-content,.phone-verification-page:focus-within .phone-verification-content{min-height:100%;padding-top:max(44px,env(safe-area-inset-top));padding-bottom:18px}.phone-verification-page.is-keyboard-open .phone-verification-heading,.phone-verification-page:focus-within .phone-verification-heading{gap:14px}.phone-verification-page.is-keyboard-open .phone-verification-heading h1,.phone-verification-page:focus-within .phone-verification-heading h1{font-size:1.25rem}.phone-verification-page.is-keyboard-open .phone-verification-heading p,.phone-verification-page:focus-within .phone-verification-heading p{font-size:.95rem;line-height:1.38}.phone-verification-page.is-keyboard-open .phone-number-field,.phone-verification-page:focus-within .phone-number-field{margin-top:34px}.phone-verification-page.is-keyboard-open .phone-verification-cta,.phone-verification-page:focus-within .phone-verification-cta{margin-top:22px}.phone-verification-page.is-keyboard-open .verification-code-field,.phone-verification-page:focus-within .verification-code-field{margin-top:28px}.verification-code-field{position:relative;display:block;margin-top:42px}.verification-code-field input{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;border:0;color:transparent;background:transparent;caret-color:transparent;opacity:.02}.verification-code-field>div{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.verification-code-field span{display:flex;aspect-ratio:1/1;align-items:center;justify-content:center;border:1.5px solid var(--color-border);border-radius:8px;color:var(--color-text);background:var(--color-surface);font-size:1.7rem;font-weight:600}.verification-code-field span.is-filled{border-color:var(--color-border)}.verification-code-field span.is-current{border-color:var(--color-onboarding-action);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-onboarding-action) 34%,transparent)}.verification-code-field.is-focused span.is-filled{border-color:var(--color-onboarding-action)}.phone-verification-meta{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:26px;color:var(--color-text)}.phone-verification-meta button{border:0;color:var(--color-text);background:transparent;font-size:1rem;font-weight:600}.phone-verification-meta button:disabled{color:var(--color-text-muted)}.phone-verification-meta span{font-size:1rem;font-weight:600}.phone-verification-help{width:fit-content;margin-top:28px;border:0;border-bottom:1px solid var(--color-border);color:var(--color-text-muted);background:transparent;font-size:.95rem;font-weight:700}.phone-verification-message{margin-top:18px;color:var(--color-danger);font-size:.92rem;font-weight:600;line-height:1.4}@media (max-width: 420px){.phone-verification-heading h1{font-size:1.4rem}.phone-number-field input{font-size:1.8rem}}.profile-onboarding-page{display:flex;min-height:100svh;justify-content:center;background:var(--color-device-backdrop)}.profile-onboarding-frame{position:relative;display:flex;width:min(100vw,var(--mobile-frame-width));height:100svh;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,var(--color-surface) 0 42%,var(--color-soft-background) 100%),var(--color-soft-background);font-size:.95rem}.profile-onboarding-header{flex:0 0 auto;padding:max(14px,env(safe-area-inset-top)) 20px 18px;background:color-mix(in srgb,var(--color-surface) 92%,transparent)}.profile-stepper{display:flex;flex-direction:column;gap:14px}.profile-stepper p{color:var(--color-text-muted);font-size:.75rem;font-weight:600;line-height:1}.profile-stepper__top{display:flex;align-items:center;gap:10px}.profile-stepper__top>p{margin-right:auto;color:var(--color-text);font-size:.875rem;line-height:1.5}.profile-stepper__top>p span{margin-left:6px;color:var(--color-text-muted)}.profile-stepper__back:disabled{opacity:.22}.profile-stepper__back.is-hidden{visibility:hidden}.profile-stepper__track{position:relative;height:10px;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-surface-muted)}.profile-stepper__fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--color-primary);transition:width .34s cubic-bezier(.2,.86,.2,1)}.profile-onboarding-content{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;overflow-y:auto;padding:24px 22px calc(28px + env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.profile-onboarding-state{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:14px 16px;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text-muted);background:var(--color-surface);font-weight:600;line-height:1.35}.profile-onboarding-state button{min-height:36px;flex:0 0 auto;padding:0 14px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-weight:700}.profile-onboarding-state--error{color:var(--color-text);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}.profile-step-panel{display:flex;min-height:100%;flex-direction:column;gap:28px}.profile-step-panel__heading{display:flex;flex-direction:column;gap:8px}.profile-step-panel__heading p{color:var(--color-primary);font-size:.78rem;font-weight:700;letter-spacing:.06em}.profile-step-panel__heading h1{color:var(--color-text);font-size:1.2rem;font-weight:700;line-height:1.12}.profile-step-panel__heading>span strong{color:var(--color-primary);font-weight:700}.profile-field-stack{display:flex;flex-direction:column;gap:16px}.profile-field-hint{margin-top:-8px;color:var(--color-primary);font-size:.78rem;font-weight:600;line-height:1.35}.profile-inline-choice{width:100%;min-height:42px;padding:0 16px;border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);background:var(--color-surface);font-weight:600}.profile-inline-choice:hover{border-color:var(--color-primary)}.profile-inline-choice.is-selected{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 30%,transparent)}.profile-field{display:flex;flex-direction:column;gap:10px;color:var(--color-text);font-weight:600;font-size:.9rem}.profile-field input,.profile-field textarea{width:100%;border:1px solid var(--color-border);border-radius:18px;color:var(--color-text);background:var(--color-surface);font-weight:600;outline:none}.profile-field input:focus,.profile-field textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.profile-field input::placeholder,.profile-field textarea::placeholder{color:var(--color-text-muted);opacity:1;font-size:.9rem}.profile-field input{min-height:58px;padding:0 18px}.profile-field textarea{min-height:138px;resize:vertical;padding:16px 18px;line-height:1.5}@media (hover: none) and (pointer: coarse){.profile-field{font-size:1rem}}@supports (-webkit-touch-callout: none){.profile-field{font-size:1rem}}.profile-field--number>div{position:relative}.profile-field--number>div span{position:absolute;top:50%;right:18px;color:var(--color-text-muted);font-weight:700;transform:translateY(-50%)}.profile-field--number input{padding-right:58px}.profile-option-group{display:flex;min-width:0;flex-direction:column;gap:10px;border:0}.profile-option-group legend{color:var(--color-text-muted);font-weight:600}.profile-signup-option-group{gap:0}.profile-signup-option-group legend{margin-bottom:10px}.profile-signup-option-group.profile-option-group--multi>p{margin-bottom:10px}.profile-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.profile-option-grid button{min-height:48px;border:1px solid var(--color-border);border-radius:15px;color:var(--color-text);background:var(--color-surface);font-weight:600}.profile-option-grid button.is-selected{border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-primary) 36%,transparent)}.profile-body-type-options{display:flex;flex-direction:column;gap:12px}.profile-body-type-option{display:flex;width:100%;align-items:center;gap:14px;padding:1rem 18px;border:1px solid var(--color-border);border-radius:14px;color:var(--color-text-muted);background:var(--color-surface);font:inherit;font-size:.92rem;font-weight:700;text-align:left}.profile-body-type-option.is-selected{border-color:var(--color-text);color:var(--color-text)}.profile-body-type-option__radio{position:relative;width:18px;height:18px;flex:0 0 auto;border:2px solid var(--color-border);border-radius:50%}.profile-body-type-option.is-selected .profile-body-type-option__radio{border-color:var(--color-onboarding-action)}.profile-body-type-option.is-selected .profile-body-type-option__radio:after{position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:50%;background:var(--color-onboarding-action);content:""}.profile-photo-input{display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:var(--color-text);font-weight:600}.profile-photo-input>span{color:var(--color-text-muted)}.profile-photo-input input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.profile-photo-guide{display:inline-flex;width:fit-content;align-items:center;gap:8px;border:0;color:var(--color-text);background:transparent;font:inherit;font-weight:700}.profile-photo-guide span{color:var(--color-text-muted)}.profile-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.profile-photo-slot{position:relative;min-width:0;aspect-ratio:1/1}.profile-photo-slot input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.profile-photo-slot label{position:relative;display:flex;width:100%;height:100%;align-items:center;justify-content:center;overflow:hidden;border:1px solid transparent;border-radius:14px;background:var(--color-surface-muted);cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.profile-photo-slot label:hover{border-color:var(--color-primary)}.profile-photo-slot label img{width:100%;height:100%;object-fit:cover}.profile-photo-slot--primary{grid-column:span 2;grid-row:span 2}.profile-photo-slot--primary label{border-color:var(--color-text);border-radius:16px}.profile-photo-slot__plus{position:relative;width:34px;height:34px}.profile-photo-slot__plus:before,.profile-photo-slot__plus:after{position:absolute;top:50%;left:50%;width:100%;height:2px;border-radius:999px;background:color-mix(in srgb,var(--color-text-subtle) 56%,transparent);content:"";transform:translate(-50%,-50%)}.profile-photo-slot__plus:after{transform:translate(-50%,-50%) rotate(90deg)}.profile-photo-slot__badge{position:absolute;top:12px;left:12px;padding:5px 9px;border:2px solid var(--color-primary);border-radius:var(--radius-pill);color:var(--color-primary);background:var(--color-surface);font-size:.72rem;font-weight:700;line-height:1}.profile-photo-slot__remove{position:absolute;top:8px;right:8px;display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:50%;color:var(--color-surface);background:#0000009e;font-size:.85rem;font-weight:700}.profile-photo-preview{display:flex;width:75%;aspect-ratio:1/1;align-self:center;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--color-border);border-radius:24px;color:var(--color-primary);background:var(--color-surface);font-weight:700}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-option-grid--wide{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-option-group--multi>p{color:var(--color-primary);font-size:.78rem;font-weight:600}.profile-option-grid--hobby{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-option-grid--hobby button{min-height:42px;border-radius:var(--radius-pill)}.profile-option-grid--hobby button:disabled{opacity:.42}.profile-step-panel__status{min-height:22px;color:var(--color-text-subtle);font-size:.82rem;font-weight:600;line-height:1.45}.profile-step-panel__status.is-complete{color:var(--color-primary)}.profile-step-panel__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px}.profile-step-panel__next{width:100%;min-height:56px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-weight:700;box-shadow:0 14px 28px color-mix(in srgb,var(--color-primary) 22%,transparent)}.profile-step-panel__next:disabled{color:var(--color-text-subtle);background:var(--color-surface-muted);box-shadow:none}.profile-onboarding-finished{position:absolute;right:20px;bottom:calc(20px + env(safe-area-inset-bottom));left:20px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 14px 14px 18px;border-radius:20px;background:var(--color-surface);box-shadow:var(--shadow-card)}.profile-onboarding-finished p{color:var(--color-text);font-weight:700;line-height:1.35}.profile-onboarding-finished button{min-height:42px;flex:0 0 auto;padding:0 18px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-primary);font-weight:700}.profile-onboarding-finished button:disabled{opacity:.62}.profile-onboarding-finished.is-error p{color:var(--color-text)}.profile-onboarding-page{background:var(--color-surface)}.profile-onboarding-frame{background:var(--color-surface);color:var(--color-text)}.profile-onboarding-header{border-bottom:1px solid var(--color-border);background:var(--color-surface)}.profile-stepper p{color:var(--color-text-muted)}.profile-stepper__back{color:var(--color-text)}.profile-stepper__track{background:var(--color-surface-muted)}.profile-stepper__fill{background:var(--color-onboarding-action)}.profile-onboarding-state{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.profile-onboarding-state button{color:var(--color-on-brand);background:var(--color-onboarding-action)}.profile-onboarding-state--error{color:var(--color-text);background:var(--color-brand-soft)}.profile-step-panel__heading p{color:var(--color-text)}.profile-step-panel__heading h1{color:var(--color-text);font-size:1.2rem;font-weight:700}.profile-step-panel__heading>span{color:var(--color-text-muted);font-size:.8rem;font-weight:600;line-height:1.2}.profile-step-panel__heading>span strong{color:var(--color-text)}.profile-field-hint,.profile-option-group--multi>p,.profile-step-panel__status.is-complete{color:var(--color-text)}.profile-inline-choice{border-color:var(--color-border);color:var(--color-text-muted);background:var(--color-surface)}.profile-inline-choice:hover{border-color:var(--color-border)}.profile-inline-choice.is-selected{border-color:var(--color-onboarding-action);color:var(--color-text);background:var(--color-brand-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-onboarding-action) 55%,transparent)}.profile-field{color:var(--color-text)}.profile-field>span{color:var(--color-text-muted)}.profile-field input,.profile-field textarea{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.profile-field input:focus,.profile-field textarea:focus{border-color:var(--color-onboarding-action);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-onboarding-action) 28%,transparent)}.profile-field input::placeholder,.profile-field textarea::placeholder{color:var(--color-text)}.profile-field--number>div span,.profile-option-group legend,.profile-photo-input>span,.profile-photo-guide span,.profile-step-panel__status{color:var(--color-text-muted)}.profile-option-grid button{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.profile-option-grid button.is-selected{border-color:var(--color-onboarding-action);color:var(--color-text);background:var(--color-brand-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-onboarding-action) 55%,transparent)}.profile-body-type-option{border-color:var(--color-border);color:var(--color-text-muted);background:var(--color-surface)}.profile-body-type-option.is-selected{border-color:var(--color-border);color:var(--color-text)}.profile-body-type-option__radio{border-color:var(--color-border)}.profile-photo-input,.profile-photo-guide{color:var(--color-text)}.profile-photo-slot label{border-color:var(--color-border);background:var(--color-surface-muted)}.profile-photo-slot label:hover{border-color:var(--color-border)}.profile-photo-slot.has-photo label{border-color:var(--color-border);background:var(--color-surface)}.profile-photo-slot--primary label{border-color:var(--color-border)}.profile-photo-slot__plus:before,.profile-photo-slot__plus:after{background:var(--color-text-subtle)}.profile-photo-slot__badge{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-surface)}.profile-photo-slot__remove{color:#fff}.profile-photo-slot__remove .ui-icon{width:16px;height:16px}.profile-photo-preview{border-color:var(--color-border);color:var(--color-text);background:var(--color-surface)}.profile-step-panel__next{color:var(--color-on-brand);background:var(--color-onboarding-action);box-shadow:none}.profile-step-panel__next:disabled{color:var(--color-text);background:var(--color-surface-muted)}.profile-onboarding-finished{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:0 16px 36px #00000014}.profile-onboarding-finished p,.profile-onboarding-finished.is-error p{color:var(--color-text)}.profile-onboarding-finished button{color:var(--color-on-brand);background:var(--color-onboarding-action)}@media (max-width: 360px){.profile-onboarding-frame{font-size:.88rem}.profile-onboarding-content{padding-right:18px;padding-left:18px}.profile-option-grid{gap:7px}}.terms-page{display:flex;min-height:100svh;justify-content:center;background:var(--color-surface)}.terms-frame{position:relative;display:flex;width:min(100vw,var(--mobile-frame-width));height:100svh;flex-direction:column;overflow:hidden;background:var(--color-surface);color:var(--color-text)}.terms-frame--center{align-items:center;justify-content:center;padding:24px}.oauth-success-message{color:var(--color-text);font-size:17px;font-weight:600;line-height:1.45;text-align:center}.oauth-success-panel{display:flex;flex-direction:column;align-items:center;gap:18px}.oauth-success-retry,.terms-state-card button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:0 18px;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-onboarding-action);font-size:14px;font-weight:700}.terms-topbar{display:grid;flex:0 0 auto;grid-template-columns:44px 1fr 44px;align-items:center;padding:max(24px,env(safe-area-inset-top)) 24px 22px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.terms-topbar h1{color:var(--color-text);font-size:1.25rem;font-weight:700;line-height:1.1;text-align:center}.terms-back-button{color:var(--color-text)}.terms-topbar__spacer{display:block}.terms-form{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;font-size:.8rem;font-weight:700}.terms-content{display:flex;min-height:0;flex:1 1 auto;flex-direction:column;gap:34px;overflow-y:auto;padding:26px 20px 22px;-webkit-overflow-scrolling:touch}.terms-intro-card{position:relative;min-height:180px;overflow:hidden;padding:28px 24px;border:1px solid var(--color-border);border-radius:24px;background:var(--color-surface)}.terms-state-card{display:flex;min-height:142px;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;border-radius:22px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);text-align:center}.terms-state-card p{font-size:16px;font-weight:600;line-height:1.45}.terms-state-card--error{color:var(--color-text)}.terms-intro-card__copy{position:relative;z-index:1;display:flex;max-width:285px;flex-direction:column;gap:22px;color:var(--color-text);font-weight:700;line-height:1.48}.terms-intro-illustration{position:absolute;right:28px;bottom:-8px;width:138px;height:170px;opacity:.56}.terms-intro-illustration__cup{position:absolute;right:6px;bottom:0;width:82px;height:116px;border-radius:0 0 11px 11px;background:linear-gradient(180deg,#d8b7f4,#b996eb);clip-path:polygon(0 0,100% 0,82% 100%,18% 100%)}.terms-intro-illustration__straw{position:absolute;right:88px;bottom:10px;width:13px;height:126px;border-radius:999px;background:repeating-linear-gradient(180deg,#f4bedb 0,#f4bedb 18px,#f8d9e7 18px,#f8d9e7 31px);transform:rotate(-8deg)}.terms-intro-illustration__steam{position:absolute;top:0;width:24px;height:58px;border-radius:999px;background:var(--color-surface)}.terms-intro-illustration__steam--one{right:78px;top:16px}.terms-intro-illustration__steam--two{right:48px}.terms-intro-illustration__steam--three{right:20px;top:12px}.terms-section{display:flex;flex-direction:column;gap:16px}.terms-section>h2{padding-left:8px;color:var(--color-text);font-size:1.25rem;font-weight:700;line-height:1.2}.terms-document-card{max-height:420px;overflow-y:auto;padding:26px 22px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface);color:var(--color-text);-webkit-overflow-scrolling:touch}.terms-document-card::-webkit-scrollbar{width:0}.terms-document-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.terms-document-card__header span{flex:0 0 auto;color:var(--color-text-muted);font-size:12px;font-weight:600}.terms-document-card__body{display:flex;flex-direction:column;gap:20px;font-weight:500}.terms-document-card__body h3{color:var(--color-text);font-size:.8rem}.terms-document-card__body p{margin-top:8px;color:var(--color-text)}.terms-action-bar{flex:0 0 auto;padding:16px 20px calc(18px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(255,255,255,.72),var(--color-surface) 32%)}.terms-inline-error{margin-bottom:10px;color:var(--color-danger);font-size:13px;font-weight:600;line-height:1.45;text-align:center}.terms-submit-button{display:flex;width:100%;min-height:58px;align-items:center;justify-content:center;border:0;border-radius:var(--radius-pill);color:var(--color-on-brand);background:var(--color-onboarding-action);box-shadow:none;font-size:.9rem;font-weight:700}.terms-submit-button:disabled{color:var(--color-text);background:var(--color-surface-muted);box-shadow:none}.onboarding-sheet-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:flex-end;justify-content:center}.onboarding-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000007a;animation:terms-backdrop-in .18s ease-out both}.onboarding-info-sheet{position:relative;z-index:1;display:flex;width:100%;min-height:55%;max-height:calc(100% - max(42px,env(safe-area-inset-top)));flex-direction:column;align-items:center;padding:34px 26px calc(28px + env(safe-area-inset-bottom));border-radius:34px 34px 0 0;color:var(--color-text);background:var(--color-surface);box-shadow:0 -20px 60px #0000002e;text-align:center;animation:terms-sheet-up .24s cubic-bezier(.2,.9,.24,1) both}.onboarding-info-sheet h2{color:var(--color-text);font-size:1.25rem;font-weight:700;line-height:1.2}.onboarding-speech-icon{position:relative;display:flex;width:116px;height:96px;align-items:center;justify-content:center;gap:9px;margin:56px auto 46px;border-radius:50%;background:radial-gradient(circle at 36% 32%,var(--color-surface) 0 28%,var(--color-surface) 56%,var(--color-surface) 100%);box-shadow:inset 0 7px 16px #fffffff2,inset 0 -12px 22px #00000014,0 8px 14px #0000001f}.onboarding-speech-icon:after{position:absolute;bottom:-12px;left:17px;width:32px;height:34px;border-radius:0 0 0 24px;background:linear-gradient(145deg,var(--color-surface),var(--color-surface));content:"";transform:rotate(24deg)}.onboarding-speech-icon span{position:relative;z-index:1;width:10px;height:10px;border-radius:50%;background:var(--color-surface-muted)}.onboarding-info-sheet__copy{display:flex;flex:1 1 auto;flex-direction:column;justify-content:center;gap:26px;color:var(--color-text);font-size:1rem;font-weight:700;line-height:1.58}.onboarding-info-sheet__close{display:flex;width:100%;min-height:58px;flex:0 0 auto;align-items:center;justify-content:center;margin-top:28px;border:0;border-radius:var(--radius-pill);color:var(--color-text);background:var(--color-surface);font-size:19px;font-weight:700}@keyframes terms-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes terms-backdrop-in{0%{opacity:0}to{opacity:1}}@media (max-width: 360px){.terms-topbar{padding-right:18px;padding-left:18px}.terms-topbar h1{font-size:22px}.terms-content{padding-right:16px;padding-left:16px}.terms-intro-card__copy{font-size:15px}.terms-section>h2{font-size:22px}.terms-document-card__body p{font-size:15px}.onboarding-info-sheet{padding-right:20px;padding-left:20px}.onboarding-info-sheet h2{font-size:24px}.onboarding-speech-icon{margin-top:40px;margin-bottom:34px}.onboarding-info-sheet__copy{font-size:17px}}@font-face{font-family:Pretendard Variable;src:url(/fonts/PretendardVariable.woff2) format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root,:root[data-theme=dark]{color-scheme:dark;--color-primary: #6ba8ff;--color-accent: #f5f5f2;--color-subtle: #8f8f8f;--color-background: #050505;--color-soft-background: #0a0a0a;--color-gradient-start: var(--color-accent);--color-gradient-mid: var(--color-subtle);--color-gradient-end: var(--color-background);--color-brand: var(--color-primary);--color-brand-hover: #8abbff;--color-brand-soft: #191919;--color-brand-wash: #080808;--color-header-mark: var(--color-primary);--color-header-text: #f4f4f1;--color-header-icon: #f4f4f1;--color-device-backdrop: #000000;--color-action: var(--color-primary);--color-action-soft: var(--color-brand-soft);--color-kakao: #fee500;--color-onboarding-action: #6ba8ff;--color-text: #f4f4f1;--color-text-muted: #8f8f8f;--color-text-subtle: #5e5e5e;--color-border: #242424;--color-border-light: #2a2a2a;--color-border-muted: #3a3a3a;--color-surface: #101010;--color-surface-raised: #050505;--color-surface-muted: #181818;--color-card: #111111;--color-card-deep: #000000;--color-card-spot: #242424;--color-card-chip: rgba(255, 255, 255, .08);--color-on-brand: #050505;--color-on-dark: #ffffff;--color-nav-muted: #6c6c6c;--shadow-frame: 0 24px 90px rgba(0, 0, 0, .74);--shadow-sheet: 0 -20px 60px rgba(0, 0, 0, .56);--shadow-card: 0 24px 60px rgba(0, 0, 0, .36);--shadow-button: 0 16px 32px rgba(49, 130, 246, .12);--radius-frame: 42px;--radius-card: 26px;--radius-pill: 999px;--font-family-base: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;--mobile-frame-width: 390px;--app-bottom-safe-offset: env(safe-area-inset-bottom);--bottom-nav-height: 72px;--back-button-font-size: 1.2rem;--back-button-font-weight: 600;--back-button-size: 44px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%;width:100%;max-width:100%;overflow-x:hidden}html{background:var(--color-soft-background)}body{color:var(--color-text);font-family:var(--font-family-base);font-size:1rem;letter-spacing:-.015em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}ol,ul{list-style:none}button,input,textarea,select{font:inherit;letter-spacing:-.015em}@media (hover: none) and (pointer: coarse){:where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select){font-size:max(16px,1rem)}}@supports (-webkit-touch-callout: none){:where(input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select){font-size:max(16px,1rem)}}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb,var(--color-brand) 42%,transparent);outline-offset:3px}.back-button{display:inline-flex;width:var(--back-button-size);height:var(--back-button-size);flex:0 0 auto;align-items:center;justify-content:center;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit;background:transparent;font-size:var(--back-button-font-size);font-weight:var(--back-button-font-weight);line-height:1;text-decoration:none}.back-button--circle{border:1px solid var(--color-border-light);border-radius:50%;background:var(--color-surface)}.back-button--text{width:auto;min-width:var(--back-button-size);padding:0 8px;font-size:.9rem;font-weight:600}.back-button:disabled{cursor:not-allowed;opacity:.45}.dropdown{position:relative;width:100%;min-width:0}.dropdown__trigger{display:flex;width:100%;min-height:52px;align-items:center;justify-content:space-between;gap:12px;padding:0 15px 0 16px;border:1px solid var(--color-border);border-radius:18px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text);background:var(--color-surface);box-shadow:inset 0 0 0 1px #ffffff08;font:inherit;font-weight:600;line-height:1;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}.dropdown__trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown__trigger svg{width:20px;height:20px;flex:0 0 auto;color:var(--color-primary);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4;transition:transform .16s ease}.dropdown__trigger:hover,.dropdown__trigger.is-open{border-color:color-mix(in srgb,var(--color-primary) 58%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface))}.dropdown__trigger:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}.dropdown__trigger.is-open svg{transform:rotate(180deg)}.dropdown__trigger.is-placeholder{color:var(--color-text-subtle)}.dropdown__menu{position:absolute;z-index:30;top:calc(100% + 8px);right:0;left:0;display:grid;max-height:240px;gap:4px;overflow-y:auto;padding:8px;border:1px solid color-mix(in srgb,var(--color-primary) 28%,var(--color-border));border-radius:18px;background:var(--color-surface);box-shadow:var(--shadow-card)}.dropdown__menu button{display:flex;min-height:42px;align-items:center;justify-content:space-between;padding:0 12px;border:0;border-radius:13px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--color-text);background:transparent;font:inherit;font-weight:600;text-align:left}.dropdown__menu button:hover,.dropdown__menu button:focus-visible{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));outline:none}.dropdown__menu button.is-selected{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 16%,var(--color-surface));font-weight:700}:root:not([data-theme=dark]),:root[data-theme=light]{color-scheme:light;--color-primary: #1b64da;--color-accent: #191f28;--color-subtle: #626e7c;--color-background: #ffffff;--color-soft-background: #f2f4f6;--color-brand-hover: #1554bb;--color-brand-soft: #e8f3ff;--color-brand-wash: #f9fafb;--color-header-text: #191f28;--color-header-icon: #191f28;--color-device-backdrop: #f1f3f5;--color-onboarding-action: var(--color-primary);--color-text: #191f28;--color-text-muted: #566273;--color-text-subtle: #626e7c;--color-border: #e5e8eb;--color-border-light: #f2f4f6;--color-border-muted: #d1d6db;--color-surface: #ffffff;--color-surface-raised: #ffffff;--color-surface-muted: #f2f4f6;--color-card: #ffffff;--color-card-deep: #f2f4f6;--color-card-spot: #e5e8eb;--color-card-chip: #f2f4f6;--color-on-brand: #ffffff;--color-nav-muted: #626e7c;--shadow-frame: 0 12px 60px rgba(26, 38, 52, .07);--shadow-sheet: 0 -12px 48px rgba(26, 38, 52, .12);--shadow-card: 0 8px 28px rgba(26, 38, 52, .06);--shadow-button: 0 6px 18px rgba(49, 130, 246, .12)}:root{--color-danger: #bf2938;--color-success: #08795b}body{background:var(--color-soft-background)}input,textarea,select{color:var(--color-text);background-color:var(--color-surface)}input::placeholder,textarea::placeholder{color:var(--color-text-subtle)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:6px 10px;border:1px solid var(--color-border);border-radius:99px;color:var(--color-text);background:var(--color-surface);font-size:.8rem;white-space:nowrap}.app-header-actions{display:flex;align-items:center;gap:8px}.login-page .mobile-frame{gap:3rem;padding:40px 24px}.login-page .signup-sheet{width:100%}.login-page .theme-toggle{position:absolute;top:16px;right:16px}.kakao-button{color:#191919!important}.kakao-button span,.kakao-button span:after{background:#191919!important}:root[data-theme=light] .admin-page{background:var(--color-soft-background)}:root[data-theme=light] .admin-sidebar{background:var(--color-surface);box-shadow:var(--shadow-card)}:root[data-theme=light] .dropdown__menu{box-shadow:var(--shadow-card)}:root[data-theme=light] .home-frame,:root[data-theme=light] .mobile-frame{box-shadow:var(--shadow-frame)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--shadow-nav: 0 -18px 42px rgba(0, 0, 0, .48)}:root[data-theme=light]{--shadow-nav: 0 -4px 24px rgba(26, 38, 52, .06)}.chat-message--mine .chat-delete-button{color:inherit;opacity:1}.workflow-header h1{min-width:0}.workflow-header .theme-toggle{flex-shrink:0}@media (max-width: 360px){.workflow-header{gap:8px}.workflow-header h1{font-size:1.2rem}.home-header{padding-inline:16px}.app-header-actions{gap:6px}}:root[data-theme=dark]{--color-primary: #6ba8ff;--color-brand-hover: #8abbff;--color-background: #17191e;--color-soft-background: #101216;--color-device-backdrop: #101216;--color-surface: #20232a;--color-surface-raised: #20232a;--color-surface-muted: #2b3039;--color-card: #20232a;--color-card-deep: #17191e;--color-card-spot: #333944;--color-card-chip: #2b3039;--color-text: #f2f4f6;--color-text-muted: #aeb6c2;--color-text-subtle: #919baa;--color-header-text: #f2f4f6;--color-header-icon: #f2f4f6;--color-border: #353b46;--color-border-light: #2b3039;--color-border-muted: #4b5563;--color-brand-soft: #24364f;--color-brand-wash: #1b2533;--color-on-brand: #101f35;--color-onboarding-action: #6ba8ff;--color-nav-muted: #919baa;--color-danger: #ff8989;--color-success: #6ed6b5;--shadow-button: 0 6px 20px rgba(0, 0, 0, .1)}:root{--radius-frame: 28px;--radius-card: 24px}body{line-height:1.55;word-break:keep-all;overflow-wrap:break-word}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{transition:background-color .16s,color .16s,border-color .16s,opacity .16s}button:disabled{opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 35%,transparent);outline-offset:3px}input[type=checkbox],input[type=radio]{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-grid;place-content:center;width:24px;height:24px;min-width:24px;margin:0;padding:0;border:2px solid var(--color-border-muted);border-radius:7px;background:var(--color-surface);vertical-align:middle;cursor:pointer;transition:background .16s,border-color .16s}input[type=checkbox]:after{content:"";width:11px;height:6px;border:solid var(--color-on-brand);border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .16s}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:checked:after{transform:translateY(-1px) rotate(-45deg) scale(1)}input[type=radio]{border-radius:50%}input[type=radio]:checked:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--color-on-brand)}input[type=file]{padding:12px;border:1px dashed var(--color-border-muted);border-radius:16px;background:var(--color-surface-muted);max-width:100%}input[type=file]::file-selector-button{font:inherit;font-weight:600;color:var(--color-primary);background:var(--color-brand-soft);border:0;border-radius:10px;padding:10px 14px;margin-right:12px;cursor:pointer}input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=range]{accent-color:var(--color-primary)}.ui-icon{width:22px;height:22px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;border:0;border-radius:14px;color:var(--color-text-muted);background:transparent}.icon-button:hover{background:var(--color-surface-muted)}.theme-toggle{border:0;background:var(--color-surface-muted);min-height:36px;padding:8px 10px;font-weight:500}.theme-toggle .ui-icon{width:17px;height:17px}.dropdown__trigger{border:1px solid transparent;border-radius:14px;background:var(--color-surface-muted);box-shadow:none;font-weight:500;min-height:52px;line-height:1.5}.dropdown__menu{border-color:var(--color-border);border-radius:16px;padding:6px;box-shadow:0 8px 32px #191f281f}.dropdown__menu button{border-radius:10px;font-weight:500;min-height:44px;line-height:1.5}.dropdown__menu button.is-selected{background:var(--color-brand-soft);font-weight:600}.dropdown__menu button.is-active{background:var(--color-surface-muted)}.home-frame{background:var(--color-background)}.home-header{border-bottom:1px solid var(--color-border-light);box-shadow:none}.notice-button{box-shadow:none;border:0;background:var(--color-surface-muted)}.notice-button--unread{animation:none}:root[data-theme=light] .home-frame,:root[data-theme=light] .mobile-frame{box-shadow:0 0 48px #191f280a}@media (max-width: 480px){.home-frame,.mobile-frame{border:0;border-radius:0}}.workflow-page{min-height:100svh;padding:0 20px 80px;color:var(--color-text);background:var(--color-soft-background);font-size:1rem;line-height:1.6}.workflow-shell{width:min(100%,600px);margin:0 auto}.workflow-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:72px;margin-bottom:8px}.workflow-wordmark{color:var(--color-text-muted);font-weight:600;letter-spacing:-.035em;margin-right:auto}.workflow-page-title{padding:20px 4px 28px}.workflow-page-title h1{font-size:1.75rem;font-weight:700;line-height:1.35;letter-spacing:-.04em}.workflow-card{padding:28px;margin-bottom:16px;border:0;border-radius:24px;background:var(--color-surface)}.workflow-card h2{font-size:1.125rem;font-weight:650;margin-bottom:18px;letter-spacing:-.025em}.workflow-card>.workflow-muted+.workflow-form{margin-top:28px}.workflow-form,.workflow-list{display:grid;gap:24px}.workflow-form label{display:grid;gap:10px;color:var(--color-text-muted);font-weight:500;font-size:.875rem}.workflow-form label small{font-weight:400;line-height:1.6}.workflow-form input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),.workflow-form textarea{width:100%;min-height:54px;padding:15px 16px;border:1px solid transparent;border-radius:14px;background:var(--color-surface-muted);color:var(--color-text);font-size:1rem;font-weight:400;line-height:1.5;transition:border-color .16s,background .16s}.workflow-form input:focus,.workflow-form textarea:focus{border-color:var(--color-primary);background:var(--color-surface);outline:3px solid color-mix(in srgb,var(--color-primary) 12%,transparent);outline-offset:0}.workflow-form textarea{min-height:120px;resize:vertical}.workflow-form input:disabled{opacity:.65}.workflow-form>h2{margin:4px 0 -4px}.workflow-form fieldset{min-width:0}.workflow-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 18px;border:0;border-radius:14px;color:var(--color-text);background:var(--color-surface-muted);font-weight:600;font-size:.9375rem;line-height:1.5;text-align:center}.workflow-button:hover:not(:disabled){background:var(--color-border)}.workflow-button--primary{background:var(--color-primary);color:var(--color-on-brand)}.workflow-button--primary:hover:not(:disabled){background:var(--color-brand-hover)}.workflow-button--danger{color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface))}.workflow-button:disabled{opacity:1;color:var(--color-text-muted);background:var(--color-surface-muted)}.workflow-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}.workflow-muted{color:var(--color-text-muted);font-size:.875rem;line-height:1.65}.workflow-message{padding:16px 18px;margin:16px 0;border-radius:16px;background:var(--color-brand-soft);color:var(--color-text);font-size:.875rem;overflow-wrap:anywhere}.workflow-error{color:var(--color-danger)}.workflow-message.workflow-error{background:color-mix(in srgb,var(--color-danger) 8%,var(--color-surface))}.workflow-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--color-border-light)}.workflow-row:last-child{border-bottom:0}.workflow-row>*{min-width:0}.workflow-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:8px;font-size:.75rem;font-weight:600;background:var(--color-brand-soft);color:var(--color-primary)}.workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workflow-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.workflow-dialog{width:min(100%,480px);max-height:85svh;overflow:auto;padding:28px;border-radius:28px;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-sheet);font-size:1rem;line-height:1.65;animation:dialog-enter .18s ease-out}.workflow-dialog .workflow-header{min-height:40px;margin-bottom:20px}.workflow-dialog h2{font-size:1.25rem;font-weight:700;letter-spacing:-.025em}.workflow-dialog>p{color:var(--color-text-muted);margin-bottom:24px}.workflow-dialog .workflow-actions>*{flex:1}.workflow-photo{width:120px;height:160px;border-radius:16px;object-fit:cover}.email-entry{display:block;margin-top:12px;width:100%}.workflow-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px;padding:5px;background:var(--color-surface-muted);border-radius:16px}.workflow-tabs .workflow-button{flex:1;padding:9px 14px;min-height:40px;border-radius:12px;white-space:nowrap}.workflow-tabs .active,.workflow-tabs .active:hover:not(:disabled){color:var(--color-primary);background:var(--color-surface);box-shadow:0 2px 6px #191f280f}.chat-delete-button{border:0;background:transparent;color:var(--color-text-muted);font-size:.75rem;padding:4px}.workflow-keywords{border:0}.workflow-keywords legend{color:var(--color-text-muted);font-size:.875rem;font-weight:500}.workflow-keywords .workflow-button{font-size:.875rem;min-height:40px;padding:8px 14px;border-radius:99px}.settings-profile{display:flex;align-items:center;gap:16px;margin-bottom:24px}.settings-avatar{display:grid;place-items:center;width:56px;height:56px;border-radius:20px;background:var(--color-brand-soft);color:var(--color-primary)}.settings-avatar .ui-icon{width:26px;height:26px}.settings-profile h2{margin:0 0 2px;font-size:1.25rem}.settings-account-link{display:flex;align-items:center;gap:12px;padding:16px 0;width:100%;border:0;border-top:1px solid var(--color-border-light);background:transparent;color:var(--color-text);text-align:left;font-size:.9375rem}.settings-account-link>:last-child{margin-left:auto}.settings-account-link>.ui-icon{color:var(--color-text-subtle)}.settings-section-heading{display:flex;align-items:center;gap:10px}.settings-section-heading>.ui-icon{color:var(--color-primary);width:20px}.settings-switch-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}.settings-switch-row+.settings-switch-row{border-top:1px solid var(--color-border-light)}.settings-switch-copy{min-width:0;flex:1}.settings-switch-copy>span{color:var(--color-text);font-weight:500}.settings-switch-copy>p{margin:6px 0 0;color:var(--color-text-muted);font-size:.8125rem;line-height:1.6}.ui-switch{position:relative;display:block;width:50px;height:30px;flex:0 0 50px;padding:3px;border:0;border-radius:99px;background:var(--color-border-muted)}.ui-switch>span{display:block;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000001f;transition:transform .18s}.ui-switch[aria-checked=true]{background:var(--color-primary)}.ui-switch[aria-checked=true]>span{transform:translate(20px)}.settings-form{gap:0}.settings-form>label{margin-bottom:24px}.settings-form .settings-section-heading{margin:8px 0 20px}.settings-form hr{border:0;height:1px;margin:12px 0 28px;background:var(--color-border-light)}.settings-save{margin-top:24px;min-height:54px}.settings-links{gap:0}.settings-links a{display:flex;align-items:center;gap:14px;padding:18px 0;border-bottom:1px solid var(--color-border-light);font-size:.9375rem}.settings-links a:last-child{border:0;padding-bottom:0}.settings-links a>.ui-icon:first-child{color:var(--color-primary)}.settings-links a>.ui-icon:last-child{width:18px;color:var(--color-text-subtle);margin-left:auto}.settings-footer{justify-content:center;gap:24px;margin-top:28px}.settings-footer .workflow-button{background:transparent;color:var(--color-text-muted);padding:8px;font-size:.8125rem;font-weight:400}.settings-footer .workflow-button--danger{color:var(--color-text-subtle)}@keyframes dialog-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 420px){.workflow-page{padding-inline:16px}.workflow-card{padding:24px 20px;border-radius:22px}.workflow-grid{grid-template-columns:1fr}.workflow-form>.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.workflow-dialog{padding:24px}.workflow-page-title{padding-top:16px}.settings-switch-row{gap:18px}}.chat-room-page>.workflow-actions{justify-content:flex-end;margin:0;padding:4px 20px;gap:18px}.chat-room-page>.workflow-actions .workflow-button{padding:4px 0;min-height:32px;background:transparent;color:var(--color-text-muted);font-size:.75rem;font-weight:500}.workflow-form input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;min-height:0;padding:0;margin:14px 0;border:0;border-radius:99px;background:var(--color-border);cursor:pointer}.workflow-form input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border:3px solid var(--color-surface);border-radius:50%;background:var(--color-primary);box-shadow:0 1px 6px #00000026}.workflow-form input[type=range]::-moz-range-thumb{width:18px;height:18px;border:3px solid var(--color-surface);border-radius:50%;background:var(--color-primary);box-shadow:0 1px 6px #00000026}
