.private-share-view{min-width:0;overflow-wrap:anywhere}.private-share-view figure{margin:12px 0}.private-share-view canvas{display:block;border-radius:12px;background:#15151b}.private-share-view button,.private-member-sharing button{border:1px solid var(--line,#eadde3);border-radius:10px;background:var(--card,#fff);color:var(--ink,#241c20);padding:9px 12px;cursor:pointer;font:inherit}.private-share-view button[aria-pressed=true],.private-member-sharing .share-confirm{background:var(--rose,#f0137f);color:#fff;border-color:transparent}.private-share-view label,.private-member-sharing label{display:block;margin:12px 0;line-height:1.6}.private-share-view input[type=range]{width:100%;accent-color:var(--rose,#f0137f)}.private-member-sharing input[type=checkbox]{accent-color:var(--rose,#f0137f);margin-right:8px}.private-member-sharing button:disabled{opacity:.5;cursor:default}.private-member-sharing .share-record{width:100%;text-align:left}.private-share-teacher textarea{display:block;width:100%;min-height:90px;border:1px solid var(--line,#eadde3);border-radius:10px;padding:10px;color:inherit;background:transparent}.private-share-teacher small{overflow-wrap:anywhere}:root{--t-caption: 13px;--t-body: 15px;--t-title: 17px;--t-heading: 20px;--t-display: 24px;--t-hero: 32px;--page: #FFF7FA;--card: #FFFFFF;--card-tone: #FFF0F6;--ink: #1F1A1C;--sub: #7B7175;--faint: #ADA3A7;--line: rgba(31, 26, 28, .07);--shadow: 0 1px 2px rgba(31, 26, 28, .03), 0 8px 24px rgba(240, 19, 127, .06);--rose: #F0137F;--ring: rgba(240, 19, 127, .14);--tab-bg: rgba(255, 255, 255, .94);--on-rose: #FFFFFF}@media (prefers-color-scheme: dark){:root{--page: #161214;--card: #221B1E;--card-tone: #2A2125;--ink: #F5EEF1;--sub: #A59A9E;--faint: #6E6468;--line: rgba(245, 238, 241, .08);--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 10px 30px rgba(0, 0, 0, .32);--rose: #FF4FA3;--ring: rgba(255, 79, 163, .2);--tab-bg: rgba(34, 27, 30, .94);--on-rose: #160F12}}*{box-sizing:border-box}p,h1,h2,ul,ol,li,figure{margin:0;padding:0}ul,ol{list-style:none}body{margin:0;background:var(--page);color:var(--ink);font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;-webkit-text-size-adjust:100%}.serif{font-weight:800;letter-spacing:-.02em}.shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;max-width:480px;margin:0 auto;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 24px 6px;font-size:11px;letter-spacing:.14em;color:var(--faint)}.head .mark{font-size:11px;font-weight:900;color:var(--rose);letter-spacing:.16em}.signout{min-height:44px;margin:-12px -12px -12px 0;padding:0 12px;border:0;background:transparent;color:var(--sub);font-family:inherit;font-size:12px;letter-spacing:.02em;white-space:nowrap}.main{flex:1;padding:8px 24px 112px}.stack>*+*{margin-top:16px}.card{background:var(--card);border-radius:20px;padding:20px;box-shadow:var(--shadow)}.card.quietcard{background:var(--card-tone);box-shadow:none}.card.warn{background:var(--card-tone)}.muted{color:var(--sub)}.mt{margin-top:8px}.num{font-variant-numeric:tabular-nums}.greet{padding:2px 0 6px}.greet .hello{font-size:var(--t-display);font-weight:800;letter-spacing:-.02em;line-height:1.35}.greet .place{margin-top:4px;font-size:var(--t-caption);color:var(--sub)}.cal{padding:18px 16px 14px}.calhead{display:flex;align-items:center;justify-content:space-between;padding:0 4px 10px}.calhead .mon{font-size:var(--t-title);font-weight:800;letter-spacing:-.01em}.calhead .arrows{display:flex;gap:2px}.calhead button{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:var(--sub);font-family:inherit;font-size:18px}.calhead button:disabled{opacity:.3}.dow{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}.dow span{text-align:center;font-size:11px;color:var(--faint)}.grid{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px}.day{position:relative;height:48px;padding:2px 0;border:0;background:transparent;display:grid;grid-template-rows:34px 6px;row-gap:4px;justify-items:center;align-items:center;font-family:inherit;color:var(--ink)}.day b{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.day.on b{font-weight:800}.day i{width:4px;height:4px;border-radius:50%;background:var(--rose)}.day.plan:not(.on) i{background:transparent;box-shadow:inset 0 0 0 1.5px var(--rose);width:5px;height:5px}.day.picked b{box-shadow:inset 0 0 0 1.5px var(--rose);color:var(--rose)}.day.today b{background:var(--rose);color:var(--on-rose);box-shadow:none;font-weight:800}.day.out{pointer-events:none}.edge{margin-top:10px;text-align:center;font-size:var(--t-caption);color:var(--faint)}.tally{margin-top:8px;text-align:right;font-size:var(--t-caption);color:var(--sub);padding:0 4px}.sechead{display:flex;align-items:center;justify-content:space-between;margin:6px 2px 10px}.sechead p{font-size:var(--t-title);font-weight:800;letter-spacing:-.01em}.sechead button{min-height:36px;padding:0 2px;border:0;background:none;color:var(--sub);font-family:inherit;font-size:var(--t-caption)}.stack.tight>*+*{margin-top:10px}.lesson{width:100%;display:flex;align-items:center;gap:12px;padding:16px 14px 16px 18px;border:0;border-radius:16px;background:var(--card);box-shadow:var(--shadow),inset 4px 0 0 var(--rose);color:var(--ink);font-family:inherit;text-align:left}.lesson .time{font-size:var(--t-title);font-weight:800;min-width:48px}.lesson .icon{flex-shrink:0;width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--card-tone);color:var(--rose)}.lesson .icon svg{width:18px;height:18px}.lesson .what{flex:1;min-width:0}.lesson .what b{display:block;font-size:var(--t-body);font-weight:700}.lesson .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.lesson .tags i{font-style:normal;font-size:11px;color:var(--sub);padding:3px 8px;border-radius:999px;background:var(--card-tone)}.lesson .chev{color:var(--faint);font-size:20px}.lesson.planned{cursor:default}.left .lefthead{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.left .cap{font-size:var(--t-caption);color:var(--sub);font-weight:700}.left .until{font-size:var(--t-caption);color:var(--sub)}.left .name{margin-top:8px;font-size:var(--t-body);font-weight:700}.left .chipline{margin-top:12px}.left .chip{display:inline-flex;align-items:center;min-height:36px;font-size:var(--t-body)}.me .name{font-size:var(--t-title);font-weight:800}.rowcard{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.title{padding:6px 0 14px;font-size:var(--t-heading);font-weight:800;letter-spacing:-.02em}.group{margin:4px 0 10px;font-size:var(--t-caption);color:var(--sub);letter-spacing:.08em}.stack .group:not(:first-child){margin-top:24px}.pass .name{font-size:var(--t-body);font-weight:600;letter-spacing:-.01em}.pass .rem{font-size:var(--t-display);font-weight:800;color:var(--rose);letter-spacing:-.02em}.pass .rem span{font-size:var(--t-caption);margin-left:2px}.pass .meta{margin-top:6px;font-size:var(--t-caption);color:var(--sub);line-height:1.6}.pass .meta b{color:var(--ink);font-weight:600}.pass .duet{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:var(--t-caption);color:var(--sub);line-height:1.7}.pass .duet em{color:var(--rose);font-style:normal;font-weight:600}.count{font-size:var(--t-caption);color:var(--sub);margin-bottom:16px}.count b{color:var(--rose);font-weight:800}.timeline>li{position:relative;display:flex;align-items:flex-start;gap:14px;padding-bottom:22px}.timeline>li:before{content:"";position:absolute;left:4.5px;top:16px;bottom:0;width:1px;background:var(--line)}.timeline>li:last-child{padding-bottom:0}.timeline>li:last-child:before{display:none}.dot{width:10px;height:10px;border-radius:50%;background:var(--rose);margin-top:6px;flex-shrink:0;opacity:.85}.timeline .body{flex:1}.timeline .when{font-size:var(--t-body);font-weight:800}.timeline .when em{font-style:normal;font-size:var(--t-caption);color:var(--faint);margin-left:6px}.timeline .who{margin-top:4px;font-size:var(--t-caption);color:var(--sub)}.timeline .one{font-size:var(--t-caption);color:var(--faint);margin-top:6px}.timeline .note{margin-top:10px;padding:11px 13px;border-radius:12px;background:var(--card);box-shadow:var(--shadow);border-left:3px solid var(--ring);font-size:var(--t-body);line-height:1.75;color:var(--ink);white-space:pre-wrap;word-break:keep-all}.more{font-size:var(--t-caption);color:var(--faint);text-align:center;padding-top:18px}.empty{padding:96px 0 0;text-align:center}.empty .big{font-size:var(--t-display);font-weight:800;line-height:1.6}.empty .sub{margin-top:20px;font-size:var(--t-caption);color:var(--sub);line-height:1.9}.say .cap{font-size:var(--t-caption);color:var(--rose);letter-spacing:.06em}.say p{margin-top:10px;font-size:var(--t-body);line-height:1.75;color:var(--sub);word-break:keep-all}.say .btn{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:6px;background:var(--page);text-decoration:none}.say .btn span{font-size:15px;opacity:.6}.btn{display:block;width:100%;min-height:48px;border:0;border-radius:14px;background:var(--card-tone);color:var(--rose);font-size:var(--t-body);font-weight:700;font-family:inherit}.btn.primary{background:var(--rose);color:var(--on-rose)}.btn:disabled{opacity:.45}.field{display:block;width:100%;min-height:52px;padding:0 16px;border:1px solid var(--line);border-radius:14px;background:var(--page);color:var(--ink);font-family:inherit;font-size:16px}.field::-moz-placeholder{color:var(--faint)}.field::placeholder{color:var(--faint)}.note{color:var(--rose);line-height:1.7}.chips{display:flex;gap:8px;margin-bottom:16px;overflow-x:auto}.chip{min-height:38px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--sub);font-family:inherit;font-size:var(--t-caption);font-weight:700;white-space:nowrap}.chip.on{background:var(--rose);border-color:var(--rose);color:var(--on-rose)}.tabs{position:fixed;left:50%;transform:translate(-50%);width:min(440px,calc(100% - 40px));bottom:calc(18px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:repeat(3,1fr);align-items:center;height:64px;border-radius:22px;background:var(--tab-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow)}.tab{display:flex;flex-direction:column;align-items:center;gap:5px;min-height:56px;justify-content:center;border:0;background:transparent;color:var(--faint);font-family:inherit;font-size:11px;letter-spacing:.02em}.tab svg{width:21px;height:21px}.tab.on{color:var(--rose)}.tab.on span{font-weight:700}.tab-indicator{position:absolute;left:0;bottom:5px;width:calc(100% / var(--member-tab-count, 3));display:grid;place-items:center;pointer-events:none;transform:translate(calc(var(--member-tab-index) * 100%))}.tab-indicator:after{content:"";width:16px;height:2px;border-radius:1px;background:var(--rose)}.danger .cap{font-size:var(--t-caption);color:var(--sub);letter-spacing:.06em}.danger .bullets{margin:6px 0 0;padding-left:18px;font-size:var(--t-caption);line-height:1.85;color:var(--sub)}.danger .bullets li{word-break:keep-all}.danger .btn.danger{color:var(--rose);border-color:var(--ring)}.stale{width:100%;margin-bottom:12px;padding:10px 14px;border:0;border-radius:12px;background:var(--card-tone);color:var(--sub);font:inherit;font-size:var(--t-caption);text-align:left}.stale span{float:right;opacity:.55}.ver{margin-top:28px;text-align:center;font-size:10px;letter-spacing:.08em;color:var(--faint);-webkit-user-select:none;-moz-user-select:none;user-select:none}.diaghead{display:flex;align-items:center;justify-content:space-between}.diaghead .cap{font-size:var(--t-caption);color:var(--rose);letter-spacing:.06em}.diaghead button{border:0;background:none;color:var(--sub);font-size:16px}.diagbox{width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--page);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.6;resize:vertical}.sheetwrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:#00000052}.sheet{width:100%;max-width:480px;max-height:88vh;overflow-y:auto;overscroll-behavior:contain;padding:18px 16px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:var(--page);color:var(--ink)}.sheethead{display:flex;align-items:center;justify-content:space-between}.sheethead .cap{font-size:var(--t-caption);color:var(--rose);letter-spacing:.06em}.sheethead .x{min-width:44px;min-height:44px;border:0;background:none;color:var(--sub);font-size:16px}.sheet .name{font-size:20px;font-weight:700;margin:4px 0 2px}.cancelbox{margin-top:18px;padding-top:14px;border-top:1px solid var(--line)}.cancelbox .blocked{margin-top:10px;font-size:var(--t-caption);color:var(--sub);word-break:keep-all;line-height:1.6}.updatewall{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px 16px calc(24px + env(safe-area-inset-bottom));background:var(--page)}.updatecard{width:100%;max-width:420px;color:var(--ink);text-align:center}.updatecard .name{font-size:22px;font-weight:700}.updatecard .blocked,.sheet .blocked{margin-top:10px;font-size:var(--t-caption);color:var(--sub);word-break:keep-all;line-height:1.6}.canceldone{text-align:center}.canceldone .donecheck{display:block;margin:6px auto 10px;color:#16a34a}.canceldone .donetitle{font-size:var(--t-heading);font-weight:700;word-break:keep-all;margin-bottom:6px}.ratecard .ratehead{display:flex;align-items:center;justify-content:space-between;gap:8px}.ratecard .ratecap{font-size:var(--t-caption);color:var(--sub)}.ratecard .ratesec{padding:2px 10px;border-radius:999px;background:var(--card-tone);font-size:12px;font-weight:700;color:var(--sub)}.ratecard .ratetitle{margin:6px 0 2px;font-size:22px;font-weight:800;word-break:keep-all}.ratecard .rateprivacy{line-height:1.5;word-break:keep-all}.ratecard .rateitem{margin:18px 0 0;padding:0;border:0;min-width:0}.ratecard .rateq{padding:0;font-size:var(--t-body);font-weight:700;word-break:keep-all}.ratecard .stars{display:flex;justify-content:space-between;margin-top:10px}.ratecard .star{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:44px;min-height:56px;padding:4px 0;border:0;background:transparent;color:#f5b400;font-family:inherit}.ratecard .star:disabled{opacity:.6}@media (prefers-reduced-motion: no-preference){.tab-indicator{transition:transform var(--motion-open) var(--motion-ease)}.ratecard .star path{transition:fill-opacity var(--motion-quick) ease}}.ratecard .starnum{font-size:12px;color:var(--sub)}.ratecard .starnum.picked{color:var(--ink);font-weight:800}.ratecard .ratescale{margin-top:6px}.ratecard .blocked{margin-top:10px;font-size:var(--t-caption);color:var(--sub);word-break:keep-all;line-height:1.6}.next-class{display:block;width:100%;text-align:left;padding:24px;color:var(--ink);font:inherit;border:1px solid var(--line);background:linear-gradient(135deg,var(--card),var(--card-tone));cursor:pointer}.next-class>span{display:block}.next-class .next-eyebrow{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:var(--rose);margin-bottom:20px}.next-date{color:var(--sub);font-size:14px;font-weight:600}.next-time{font-size:44px;letter-spacing:-.04em;font-weight:700;line-height:1.25;margin:4px 0 14px}.next-name{font-size:16px;font-weight:700}.next-meta{font-size:13px;line-height:1.6;color:var(--sub);margin-top:4px}.membership-summary .chipline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.aggregate-label{font-size:12px;color:var(--sub)}.membership-disclosure{margin-top:18px;border-top:1px solid var(--line)}.membership-disclosure>summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none;color:var(--sub);font-size:13px;font-weight:600}.membership-disclosure>summary::-webkit-details-marker{display:none}.membership-disclosure[open]>summary{color:var(--ink)}.membership-disclosure[open]>summary span{transform:rotate(45deg)}.membership-disclosure .pass{background:var(--card-tone);border-radius:12px;box-shadow:none}.feedback-preview{padding:20px}.feedback-preview .sechead{margin-bottom:12px;padding:0}.feedback-message{font-size:15px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.feedback-author{font-size:12px;line-height:1.5;margin-top:14px;color:var(--sub)}.lesson-state{display:inline-block;color:var(--sub);font-size:12px;font-weight:500;margin-top:5px}.lesson.planned .lesson-state{color:var(--rose)}.record-time{font-size:13px;font-weight:700;color:var(--ink);margin:3px 0}.record-day{margin-top:26px}.record-day-title{font-size:16px;font-weight:700;margin-bottom:16px}.record-day-title span{font-size:12px;font-weight:500;color:var(--sub);margin-left:4px}.record-day .timeline{margin-top:0}.rating-context{margin:6px 0 10px;font-size:12px;line-height:1.6;color:var(--sub)}.tags i,.who,.until,.pass .meta{font-size:13px}.dow span{color:var(--sub);font-size:12px}:root{--sub: #71676B;--faint: #82777C;--shadow: 0 2px 14px rgba(47,24,35,.035)}@media (prefers-color-scheme: dark){:root{--sub: #B9ADB3;--faint: #A1959B;--shadow: 0 2px 14px rgba(0,0,0,.18)}}@media (prefers-reduced-motion: no-preference){.membership-disclosure>summary span{transition:transform .16s ease}}.feedback-message{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}:root{--motion-ease: cubic-bezier(.2, .7, .2, 1);--motion-quick: .16s;--motion-open: .22s}@keyframes app-content-in{0%{opacity:.55}to{opacity:1}}@keyframes app-sheet-in{0%{transform:translateY(14px)}to{transform:translateY(0)}}@keyframes app-sheet-out{0%{transform:translateY(var(--sheet-drag-offset, 0px))}to{transform:translateY(calc(var(--sheet-drag-offset, 0px) + 14px))}}@keyframes app-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes app-scrim-out{to{opacity:0}}@keyframes app-feedback-in{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: no-preference){.app-motion-tab{transition:color var(--motion-quick) ease}.app-motion-tab-mark{transition:opacity var(--motion-quick) ease,transform var(--motion-quick) var(--motion-ease)}.app-motion-content{animation:app-content-in var(--motion-quick) var(--motion-ease)}.app-motion-overlay{animation:app-scrim-in var(--motion-open) var(--motion-ease)}.app-motion-sheet{animation:app-sheet-in var(--motion-open) var(--motion-ease)}.app-motion-overlay[data-closing]{animation:app-scrim-out var(--motion-quick) ease-in both}.app-motion-overlay[data-closing] .app-motion-sheet{animation:app-sheet-out var(--motion-quick) ease-in both}.app-motion-feedback{animation:app-feedback-in var(--motion-open) var(--motion-ease)}.app-motion-highlight,[data-motion-highlight]{animation:app-feedback-in .42s var(--motion-ease)}.app-motion-collapse{display:grid;grid-template-rows:1fr;transition:grid-template-rows var(--motion-quick) var(--motion-ease),opacity var(--motion-quick) ease}.app-motion-collapse[data-closing]{grid-template-rows:0fr;opacity:0}}.app-motion-tab-mark{opacity:0;transform:scaleX(.55)}.app-motion-tab[aria-current=page] .app-motion-tab-mark{opacity:1;transform:scaleX(1)}.app-motion-collapse-clip{min-height:0}.app-motion-collapse[data-closing] .app-motion-collapse-clip{overflow:hidden}
