@charset "UTF-8";
:root{--bg:var(--tone-f8f7fc, #f8f7fc);--paper:#fff;--ink:var(--tone-302c3f, #302c3f);--muted:var(--tone-777181, #777181);--purple:var(--tone-7961cf, #7961cf);--purple-dark:var(--tone-644bb8, #644bb8);--lavender:var(--tone-eee9fb, #eee9fb);--line:var(--tone-efedf4, #efedf4);--green:#e3f0e7;--peach:#fce9dd;--blue:#e5effc;--shadow:0 8px 32px var(--tone-453c6c05, #453c6c05);--font:Pretendard,"Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);font-size:14px;letter-spacing:-.35px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--tone-aa94ed, #aa94ed);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.6}button:hover{filter:brightness(.98)}h1,h2,h3,p{margin:0}svg{width:20px;height:20px;display:block;stroke-width:1.7;flex-shrink:0}[data-icon]{display:inline-flex;vertical-align:middle;flex-shrink:0}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--purple);color:#fff;padding:12px 20px;border-radius:10px}.skip-link:focus{top:12px}.app-shell{display:flex;min-height:100vh}.sidebar{width:224px;flex-shrink:0;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:38px 22px 18px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-size:32px;font-weight:900;letter-spacing:-2px;padding-left:10px}.brand-dot{color:var(--purple)}.brand-mark{position:relative;display:inline-block;background:var(--purple);height:37px;width:37px;border-radius:14px;transform:rotate(-8deg);flex-shrink:0}.brand-mark i{position:absolute;background:#fff;width:4px;height:5px;border-radius:100%;top:12px;left:11px}.brand-mark i+i{left:23px}.brand-mark b{position:absolute;width:15px;height:7px;border-bottom:2px solid white;border-radius:0 0 12px 12px;top:19px;left:11px}.brand-tagline{padding:10px 0 0 11px;color:var(--tone-8a8396, #8a8396);font-size:11px;letter-spacing:.5px}.primary-nav{display:flex;flex-direction:column;gap:7px;margin-top:44px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 12px;border-radius:12px;font-weight:600;font-size:13px;color:var(--tone-7c7589, #7c7589);white-space:nowrap}.nav-item.active{background:var(--tone-f0ebfb, #f0ebfb);color:var(--tone-7258c5, #7258c5)}.nav-item:hover{background:var(--tone-f7f4fc, #f7f4fc)}.nav-count{margin-left:auto;font-size:11px;background:var(--tone-eeeaf5, #eeeaf5);padding:2px 6px;border-radius:6px;color:var(--tone-746b88, #746b88)}.sidebar-section-title{display:flex;align-items:center;justify-content:space-between;padding:0 7px 0 12px;margin-top:35px;color:var(--tone-9a93a5, #9a93a5);font-size:11px;font-weight:600}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;color:var(--tone-7d758d, #7d758d);flex-shrink:0}.icon-button:hover{background:var(--tone-f1edf9, #f1edf9)}.icon-button svg{width:17px;height:17px}.group-links{margin-top:7px;display:grid;gap:4px}.group-link{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border-radius:10px;text-align:left;color:var(--tone-7b7486, #7b7486);font-size:12px}.group-link.selected{color:var(--tone-433955, #433955);font-weight:700;background:var(--tone-fbf9ff, #fbf9ff)}.group-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.group-link .selected-check{margin-left:auto;font-size:12px;color:var(--purple)}.lavender{background:var(--tone-aa91e2, #aa91e2)}.green{background:#9dbca5}.peach{background:#e9ac8d}.blue{background:#96b5dd}.sidebar-bottom{margin-top:auto;padding-top:35px}.sidebar-note{background:var(--tone-f8f6fc, #f8f6fc);border:1px solid var(--tone-eeebf5, #eeebf5);border-radius:16px;padding:17px;position:relative;min-height:125px}.tiny-star{position:absolute;right:14px;top:11px;color:var(--tone-c1b0e8, #c1b0e8);font-size:31px}.sidebar-note p{font-size:12px;line-height:1.9;color:var(--tone-7b718d, #7b718d);margin-top:7px}.sidebar-note strong{color:var(--tone-594969, #594969);font-weight:600}.note-line{width:37px;height:3px;border-radius:2px;background:var(--tone-d5caee, #d5caee);display:block;margin-top:13px}.profile-row{display:flex;align-items:center;gap:9px;width:100%;text-align:left;margin-top:22px;padding:0 1px}.profile-row strong{font-size:12px;font-weight:600;display:block;max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-row small{font-size:10px;display:block;color:var(--tone-968c9f, #968c9f);margin-top:5px}.profile-row>[data-icon]{margin-left:auto}.profile-row svg{width:15px;height:15px}.avatar{height:33px;width:33px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;font-weight:700;color:var(--tone-60506b, #60506b)}.avatar-me{background:var(--tone-ede5fa, #ede5fa)}.workspace{margin-left:224px;min-width:0;width:calc(100% - 224px)}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 38px;border-bottom:1px solid var(--line);background:#fff}.breadcrumb{font-size:12px;display:flex;gap:13px;align-items:center;color:var(--tone-9b94a5, #9b94a5)}.breadcrumb-separator{color:var(--tone-d0c9d9, #d0c9d9)}.breadcrumb strong{color:var(--tone-655a73, #655a73);font-weight:500}.topbar-right{display:flex;gap:23px;align-items:center}.today-label{font-size:11px;color:var(--tone-8d8398, #8d8398)}.kakao-button{border-radius:9px;padding:10px 13px;background:#fee500;color:#302600;display:flex;align-items:center;gap:8px;font-size:11px;font-weight:650;white-space:nowrap}.kakao-bubble{width:16px;height:13px;background:#302600;display:inline-block;border-radius:50%;position:relative}.kakao-bubble:after{content:"";position:absolute;left:3px;bottom:-2px;width:5px;height:5px;transform:skew(-20deg) rotate(-20deg);background:#302600}.mobile-brand{display:none}.demo-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:37px;padding:7px 38px;background:var(--tone-f0edf8, #f0edf8);color:var(--tone-8a7a9e, #8a7a9e);font-size:10px;line-height:1.6}.demo-bar strong{font-weight:600;color:var(--tone-726184, #726184)}.demo-dot{width:5px;height:5px;display:inline-block;border-radius:50%;background:var(--tone-a995d2, #a995d2);margin-right:7px;vertical-align:middle}.demo-bar button{display:flex;align-items:center;gap:3px;font-size:10px;white-space:nowrap;padding:0}.demo-bar svg{width:12px;height:12px}main{max-width:1580px;margin:0 auto;padding:35px 38px 0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:27px}.eyebrow{font-size:9px;letter-spacing:1.9px;color:var(--tone-9a8aac, #9a8aac);font-weight:700;margin-bottom:10px}h1{font-size:31px;letter-spacing:-1.6px;font-weight:780;line-height:1.4;display:flex;gap:12px;align-items:center}.title-flower{color:var(--tone-b8a5df, #b8a5df);font-size:35px;line-height:1;font-weight:400}.page-heading p{color:var(--tone-958b9f, #958b9f);font-size:12px;margin-top:8px}.heading-actions{display:flex;gap:8px;margin-top:15px;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:12px 16px;min-height:42px;font-size:12px;border-radius:10px;font-weight:650;line-height:1.3;transition:background .15s,transform .15s}.button svg{width:16px;height:16px}.button:active{transform:translateY(1px)}.primary{background:var(--purple);color:white;box-shadow:0 3px 7px var(--tone-7961cf19, #7961cf19)}.primary:hover{background:var(--purple-dark)}.secondary{background:white;border:1px solid var(--tone-e7e2ef, #e7e2ef);color:var(--tone-756681, #756681)}.danger-button{color:#b65263;background:#fff4f5;border:1px solid #f6dce1}.hero-strip{display:grid;grid-template-columns:1fr 230px 180px;background:var(--tone-f1edfa, #f1edfa);border:1px solid var(--tone-e9e2f4, #e9e2f4);border-radius:21px;min-height:187px;overflow:hidden;margin-bottom:24px;position:relative}.next-meeting{padding:26px 29px;z-index:1}.mini-label{font-size:10px;color:var(--tone-8b76a5, #8b76a5);display:flex;align-items:center;gap:6px;margin-bottom:12px;font-weight:600}.pulse-dot{display:block;height:6px;width:6px;background:var(--tone-ae94d2, #ae94d2);border-radius:50%}.next-meeting-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.next-meeting h2{font-size:22px;font-weight:750;letter-spacing:-1px;color:var(--tone-4d3d66, #4d3d66);line-height:1.4}.dday{font-size:9px;color:var(--tone-7d60b6, #7d60b6);background:var(--tone-e3d9f4, #e3d9f4);border-radius:6px;padding:4px 6px;font-weight:700;white-space:nowrap}.next-meeting p{font-size:11px;line-height:1.7;color:var(--tone-9686a5, #9686a5);margin-top:9px}.text-link{font-size:10px;font-weight:650;color:var(--tone-8c72b0, #8c72b0);display:flex;align-items:center;gap:6px;padding:0;margin-top:15px}.text-link svg{width:14px;height:14px}.hero-art{position:relative;min-height:187px}.paper-calendar{position:absolute;top:32px;left:45px;width:115px;height:132px;background:#fffcf4;transform:rotate(9deg);border-radius:5px 5px 13px 13px;box-shadow:4px 8px 0 var(--tone-dcd2ef80, #dcd2ef80);padding-top:27px;text-align:center}.paper-calendar:before{content:"";position:absolute;top:0;left:0;width:100%;height:21px;background:var(--tone-d4c2e6, #d4c2e6);border-radius:5px 5px 0 0;border-bottom:2px dashed var(--tone-baa4d1, #baa4d1)}.paper-calendar>span{font-size:6px;letter-spacing:1.4px;color:var(--tone-a592aa, #a592aa)}.paper-calendar strong{display:block;font-size:50px;line-height:1.25;font-weight:700;color:var(--tone-9d82b8, #9d82b8);letter-spacing:-3px}.paper-calendar i{font-size:24px;line-height:1;color:#c49a9c;position:absolute;right:12px;bottom:7px;font-style:normal;transform:rotate(-15deg)}.little-note{position:absolute;top:22px;left:1px;transform:rotate(-11deg);font-size:8px;font-weight:700;letter-spacing:1.7px;color:var(--tone-b3a0c7, #b3a0c7);z-index:2}.friend-face{position:absolute;border:2px solid var(--tone-f1edfa, #f1edfa);box-shadow:0 4px 5px var(--tone-9583a515, #9583a515)}.face-yellow{width:60px;height:62px;left:2px;bottom:18px;background:#f7df91;border-radius:45% 48% 42% 45%;transform:rotate(-14deg);z-index:3}.face-purple{width:59px;height:61px;left:54px;bottom:0px;background:var(--tone-c1a9e4, #c1a9e4);border-radius:45% 48% 43% 45%;transform:rotate(6deg);z-index:4}.face-green{width:51px;height:56px;left:141px;bottom:14px;background:#b7cfac;border-radius:43% 44% 40% 45%;transform:rotate(16deg);z-index:3}.face-eyes:before,.face-eyes:after{content:"";position:absolute;top:23px;width:3px;height:4px;background:#70634f;border-radius:50%;left:18px}.face-eyes:after{left:33px}.face-smile{position:absolute;top:32px;left:22px;width:11px;height:6px;border-bottom:1.5px solid #70634f;border-radius:0 0 9px 9px}.face-green .face-eyes:before{left:14px}.face-green .face-eyes:after{left:29px}.face-green .face-smile{left:18px}.art-spark{position:absolute;color:var(--tone-baa1d4, #baa1d4)}.spark-one{top:43px;right:15px;font-size:25px;transform:rotate(12deg)}.spark-two{left:8px;top:73px;font-size:15px;color:var(--tone-cbbbcf, #cbbbcf)}.group-summary{align-self:center;border-left:1px solid var(--tone-e2daef, #e2daef);padding:0 23px;margin-right:8px}.avatar-stack{display:flex;padding-left:1px}.avatar-stack .avatar{border:2px solid var(--tone-f1edfa, #f1edfa);margin-left:-3px;width:31px;height:31px;font-size:9px}.group-summary>p{font-size:10px;margin-top:8px;color:var(--tone-a090ae, #a090ae);white-space:nowrap}.group-summary>p strong{font-weight:600;color:var(--tone-7e698f, #7e698f)}.summary-divider{height:1px;background:var(--tone-e2daef, #e2daef);margin:17px 0 13px}.summary-stat{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:var(--tone-947f9f, #947f9f)}.summary-stat strong{font-size:21px;color:var(--tone-7a6190, #7a6190);letter-spacing:-.5px;font-weight:650}.summary-stat strong span{font-size:10px;font-weight:400;margin-left:3px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:21px;align-items:start}.card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.calendar-card{overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 23px 19px}.month-nav{display:flex;align-items:center;gap:2px}.month-nav h2{font-size:19px;font-weight:750;letter-spacing:-.6px;margin-right:12px;white-space:nowrap}.month-nav .icon-button{width:24px;height:26px}.calendar-tools{display:flex;align-items:center;gap:13px}.small-button{border:1px solid var(--tone-e9e4f0, #e9e4f0);border-radius:7px;color:var(--tone-8c7d99, #8c7d99);padding:5px 10px;font-size:10px;white-space:nowrap}.view-pill{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--tone-9c8fa7, #9c8fa7)}.view-pill svg{width:13px;height:13px}.weekdays{display:grid;grid-template-columns:repeat(7,1fr);font-size:10px;text-align:center;color:var(--tone-aaa0b3, #aaa0b3);padding:0 0 13px;border-bottom:1px solid var(--tone-f0edf5, #f0edf5);margin:0 14px}.weekdays .saturday{color:#9aabd2}.weekdays .sunday{color:#d4a0a4}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:4px 10px 3px}.day-cell{position:relative;min-height:88px;min-width:0;border-bottom:1px solid var(--tone-f3f0f7, #f3f0f7);cursor:pointer;padding:8px 3px 5px;outline-offset:-3px!important;border-radius:6px;text-align:left;background:#fff;display:flex;flex-direction:column;gap:4px}.day-cell:hover{background:var(--tone-fbf9ff, #fbf9ff)}.day-cell.selected{background:var(--tone-f5f1fd, #f5f1fd)}.day-cell.outside{background:var(--tone-fcfbfd, #fcfbfd)}.date-number{font-size:11px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--tone-8b8199, #8b8199);margin:0 0 2px 5px}.day-cell.saturday .date-number{color:#9daed0}.day-cell.sunday .date-number{color:#cc9a9e}.day-cell.outside .date-number{color:var(--tone-d7d0df, #d7d0df)}.day-cell.today .date-number{box-shadow:inset 0 0 0 1px var(--tone-b8a4e0, #b8a4e0);color:var(--tone-8e72bd, #8e72bd)}.day-cell.selected .date-number{background:var(--purple);color:#fff;box-shadow:none}.calendar-chip{border-radius:4px;font-size:8px;line-height:1.5;padding:3px 4px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:100%;font-weight:500}.category-food{background:var(--tone-eee8fa, #eee8fa);color:var(--tone-8a6aac, #8a6aac)}.category-trip{background:#e9f2e7;color:#799670}.category-hobby{background:#fbede4;color:#b58b71}.category-other{background:#eaf0fa;color:#8198b9}.more-events{font-size:8px;color:var(--tone-9b8bb1, #9b8bb1);padding-left:4px}.calendar-legend{display:flex;align-items:center;justify-content:flex-start;gap:15px;padding:18px 21px 20px;flex-wrap:wrap;color:var(--tone-aa9eb4, #aa9eb4);font-size:8px}.calendar-legend>span{display:flex;align-items:center;gap:5px}.legend-dot{height:5px;width:5px;display:inline-block;border-radius:50%}.day-card{padding:23px 22px}.day-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.section-label{font-size:9px;color:var(--tone-a799b2, #a799b2)}.day-heading h2{font-size:17px;letter-spacing:-.6px;font-weight:700;margin-top:7px}.day-count{background:var(--tone-f4f0fb, #f4f0fb);color:var(--tone-9c87b6, #9c87b6);font-size:10px;border-radius:7px;padding:5px 7px}.event-mini{border:1px solid var(--tone-eee8f6, #eee8f6);border-radius:12px;padding:16px 14px;margin-bottom:12px;position:relative;overflow:hidden}.event-mini:before{content:"";position:absolute;left:0;top:19px;bottom:19px;width:3px;background:var(--tone-b69bdc, #b69bdc);border-radius:0 3px 3px 0}.event-mini.cat-trip:before{background:#a3b993}.event-mini.cat-hobby:before{background:#dbaf91}.event-mini.cat-other:before{background:#9bb7da}.event-mini-head{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--tone-a48db8, #a48db8)}.event-mini-head button{color:var(--tone-b0a3bc, #b0a3bc);padding:0}.event-mini-head svg{width:15px;height:15px}.event-title-button{display:block;text-align:left;font-size:13px;font-weight:700;line-height:1.55;padding:0;margin:10px 0 13px;overflow-wrap:anywhere;word-break:keep-all}.event-meta{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--tone-a89bb1, #a89bb1);line-height:1.7;margin:4px 0}.event-meta svg{width:13px;height:13px}.event-meta span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rsvp-summary{margin-top:14px;padding-top:13px;border-top:1px dashed var(--tone-ede6f4, #ede6f4);display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;color:var(--tone-b09abf, #b09abf)}.rsvp-summary .avatar{width:22px;height:22px;font-size:7px;margin-left:-4px;border-color:white}.rsvp-controls{display:flex;gap:5px;margin-top:13px}.rsvp-controls button{flex:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--tone-ece5f3, #ece5f3);border-radius:7px;padding:7px 3px;font-size:9px;color:var(--tone-aa99b9, #aa99b9);white-space:nowrap;min-height:30px}.rsvp-controls button.chosen{background:var(--tone-eee8f8, #eee8f8);color:var(--tone-8a6ab4, #8a6ab4);border-color:var(--tone-e5d9f4, #e5d9f4);font-weight:650}.add-day-event{margin-top:5px;border:1px dashed var(--tone-dfd4ed, #dfd4ed);border-radius:10px;min-height:40px;display:flex;align-items:center;justify-content:center;width:100%;gap:6px;font-size:10px;color:var(--tone-b19ac5, #b19ac5)}.add-day-event svg{width:14px;height:14px}.little-tip{border:1px solid #f0ebdf;background:#faf7f0;display:flex;align-items:center;gap:13px;border-radius:15px;padding:18px 16px;margin-top:15px}.tip-icon{font-size:23px;filter:grayscale(.5);opacity:.7}.little-tip strong{font-size:11px;color:#9e8d70;font-weight:600}.little-tip p{font-size:9px;color:#b2a48d;margin-top:6px}.main-footer{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--tone-b2a7bd, #b2a7bd);margin:30px 0;padding:0 2px}.main-footer button{font-size:9px;color:var(--tone-aa9bb8, #aa9bb8);padding:0}.mobile-nav,.mobile-group-wrap{display:none}.empty-state{text-align:center;padding:22px 5px 24px}.empty-icon{font-size:27px;display:block;margin-bottom:12px;color:var(--tone-c2b2db, #c2b2db)}.empty-state h3{font-size:13px;color:var(--tone-9c89ac, #9c89ac);margin-bottom:8px}.empty-state p{font-size:10px;line-height:1.9;color:var(--tone-b1a3bc, #b1a3bc)}.listing-view{padding:26px}.listing-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.listing-heading h2{font-size:18px}.listing-heading>span{font-size:11px;color:var(--tone-a08dac, #a08dac)}.upcoming-item{display:flex;gap:20px;align-items:center;padding:20px 8px;border-bottom:1px solid var(--line);width:100%;text-align:left}.upcoming-item:last-child{border:0}.upcoming-date{width:48px;text-align:center;flex-shrink:0}.upcoming-date small{display:block;color:var(--tone-aa96bb, #aa96bb);font-size:10px}.upcoming-date strong{display:block;font-size:25px;color:var(--tone-846b9e, #846b9e);margin-top:4px}.upcoming-content{flex:1;min-width:0}.upcoming-content h3{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upcoming-content p{font-size:11px;color:var(--tone-a291af, #a291af);line-height:1.7;margin-top:7px}.category-label{padding:5px 9px;border-radius:6px;display:inline-block;font-size:10px;white-space:nowrap}.upcoming-item>svg{width:17px;color:var(--tone-bfb1cc, #bfb1cc)}.groups-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.group-card{padding:25px;display:flex;flex-direction:column;align-items:flex-start;min-height:246px}.group-card-icon{height:43px;width:43px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:23px;background:var(--tone-f0eaf9, #f0eaf9);color:var(--tone-a487c4, #a487c4)}.group-card h2{font-size:19px;margin-top:20px;overflow-wrap:anywhere}.group-card p{font-size:12px;line-height:1.8;color:var(--tone-a28cae, #a28cae);margin-top:8px;overflow-wrap:anywhere}.group-card-footer{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px;font-size:10px;color:var(--tone-a18aad, #a18aad);margin-top:auto;padding-top:25px}.group-card-footer .small-button{font-size:10px}.new-group-card{border:1px dashed var(--tone-dacdea, #dacdea);border-radius:20px;min-height:246px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--tone-ac93c3, #ac93c3);gap:15px;font-size:12px;background:var(--tone-f7f3fc, #f7f3fc)}.new-group-card svg{width:24px;height:24px}dialog{border:0;border-radius:22px;padding:29px;box-shadow:0 24px 80px var(--tone-362a5933, #362a5933);width:min(480px,calc(100% - 32px));max-height:90dvh;color:var(--ink);overflow-y:auto}dialog::backdrop{background:var(--tone-2c224b66, #2c224b66);backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:25px}.dialog-top h2{font-size:21px;letter-spacing:-.8px;line-height:1.5}.dialog-top .eyebrow{font-size:8px;line-height:1.6;margin-bottom:8px}.dialog-top .icon-button{margin-top:-5px;margin-right:-8px}label{display:block;font-size:11px;font-weight:600;margin:17px 0 8px;color:var(--tone-85728f, #85728f)}.required{color:var(--tone-ac90c8, #ac90c8);margin-left:2px}input:not([type=hidden]),select,textarea{width:100%;border:1px solid var(--tone-e8e0ef, #e8e0ef);background:var(--tone-fcfbfe, #fcfbfe);border-radius:9px;padding:12px;color:var(--tone-6f567d, #6f567d);font-size:12px;min-width:0}input::placeholder,textarea::placeholder{color:var(--tone-b8a7c1, #b8a7c1);font-size:11px}textarea{resize:vertical;min-height:85px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.input-with-icon{position:relative}.input-with-icon>[data-icon]{position:absolute;left:12px;top:12px;color:var(--tone-b49cc3, #b49cc3)}.input-with-icon svg{width:17px;height:17px}.input-with-icon input{padding-left:37px}.form-hint{font-size:10px;line-height:1.8;color:var(--tone-aa94b6, #aa94b6);margin-top:18px;display:flex;align-items:flex-start;gap:4px;flex-wrap:wrap}.form-hint svg{width:14px;height:14px}.form-hint strong{font-weight:650}.form-error{color:#b66178;font-size:11px;line-height:1.8;margin-top:10px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.dialog-actions .button{flex:1}.detail-category{margin-bottom:13px}.detail-note{font-size:12px;line-height:1.9;color:var(--tone-9b84aa, #9b84aa);border:1px solid var(--tone-eee5f5, #eee5f5);border-radius:11px;padding:14px;background:var(--tone-fbf9fd, #fbf9fd);white-space:pre-wrap;overflow-wrap:anywhere;margin:17px 0}.detail-meta{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--tone-947da3, #947da3);margin-bottom:11px}.detail-meta svg{width:17px;height:17px}.detail-meta span:last-child{overflow-wrap:anywhere;min-width:0}.detail-participants{display:flex;flex-wrap:wrap;gap:10px;margin:13px 0 20px}.participant{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--tone-ab90ba, #ab90ba);padding:5px 8px 5px 4px;border-radius:25px;background:var(--tone-faf7fd, #faf7fd)}.participant .avatar{width:25px;height:25px;font-size:9px}.detail-rsvp-title{font-size:11px;color:var(--tone-9c80ae, #9c80ae);margin-top:23px}.detail-rsvp .rsvp-controls{gap:8px}.detail-rsvp .rsvp-controls button{padding:11px;font-size:11px}.detail-actions{display:flex;justify-content:space-between;gap:8px;padding-top:23px;margin-top:23px;border-top:1px solid var(--line)}.detail-actions .button{min-height:38px}.info-illustration{background:#fff7d6;border-radius:15px;text-align:center;font-size:34px;padding:20px;margin-bottom:21px}.info-copy{font-size:12px;line-height:1.95;color:var(--tone-9c82ab, #9c82ab)}.info-copy strong{color:var(--tone-7b5e8e, #7b5e8e);font-weight:650}.info-steps{display:grid;gap:13px;margin:21px 0}.info-step{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.8;color:var(--tone-9a7cab, #9a7cab)}.step-number{width:23px;height:23px;background:var(--tone-eee5f8, #eee5f8);color:var(--tone-a185b8, #a185b8);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:10px;font-weight:650}.info-note{font-size:10px;background:var(--tone-f6f2fa, #f6f2fa);border-radius:10px;padding:12px;line-height:1.8;color:var(--tone-aa91b9, #aa91b9)}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:100;max-width:calc(100% - 40px);background:var(--tone-59466b, #59466b);color:#fff;padding:13px 22px;border-radius:12px;font-size:12px;line-height:1.6;box-shadow:0 6px 24px var(--tone-3b245a26, #3b245a26);transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.noscript-notice{position:fixed;inset:auto 0 0;background:#fee500;padding:20px;text-align:center;z-index:110}
@media(min-width:1500px){main{padding-top:43px}.hero-strip{grid-template-columns:1fr 280px 210px}.hero-art{transform:translateX(18px)}.calendar-layout{grid-template-columns:minmax(0,1fr) 320px}.day-cell{min-height:108px}.calendar-chip{font-size:10px}.date-number{font-size:12px}.calendar-legend{font-size:10px}.day-card{padding:27px}.event-mini{padding:18px}.event-title-button{font-size:15px}.event-meta{font-size:11px}}
@media(max-width:1220px){.sidebar{width:200px;padding:32px 15px 18px}.workspace{margin-left:200px;width:calc(100% - 200px)}.topbar{padding:0 26px}.demo-bar{padding-left:26px;padding-right:26px}main{padding:29px 26px 0}.hero-strip{grid-template-columns:1fr 200px 155px}.next-meeting{padding:25px}.next-meeting h2{font-size:19px}.group-summary{padding:0 17px}.calendar-layout{grid-template-columns:minmax(0,1fr) 245px;gap:17px}.day-card{padding:20px 16px}.day-cell{min-height:85px}.calendar-toolbar{padding:20px 18px}.calendar-legend{gap:10px;padding-left:18px}.groups-grid{grid-template-columns:repeat(2,minmax(0,1fr))}h1{font-size:29px}.today-label{display:none}}
@media(max-width:1050px){.sidebar{width:185px;padding-left:12px;padding-right:12px}.workspace{margin-left:185px;width:calc(100% - 185px)}.hero-strip{grid-template-columns:1fr 190px}.group-summary{display:none}.calendar-layout{grid-template-columns:minmax(0,1fr) 225px;gap:14px}.day-card{padding:20px 14px}.event-mini{padding:14px 11px}.page-heading{align-items:flex-start;gap:10px}.heading-actions{margin-top:20px}.button{font-size:11px;padding:11px 12px}.page-heading p{font-size:11px}h1{font-size:25px}.eyebrow{font-size:8px}.view-pill{display:none}.month-nav h2{font-size:17px}.calendar-toolbar{padding:18px 14px}.calendar-grid{padding-left:5px;padding-right:5px}.day-cell{min-height:79px;padding-left:2px;padding-right:2px}.date-number{margin-left:2px}.calendar-chip{font-size:7px}.calendar-legend{gap:8px;font-size:7px;padding:15px 13px}.nav-item{gap:9px;font-size:12px;padding-left:10px}.sidebar-note{padding:13px}.sidebar-note p{font-size:11px}}
@media(max-width:900px){.calendar-layout{grid-template-columns:minmax(0,1fr)}.day-column{display:grid;grid-template-columns:1fr 220px;gap:15px;align-items:start}.little-tip{margin:0}.day-heading{margin-bottom:15px}.day-card{padding:21px}.day-cell{min-height:91px}.calendar-chip{font-size:9px}.calendar-legend{font-size:9px}.page-heading{flex-wrap:wrap}.heading-actions{margin-top:5px}.hero-strip{margin-top:2px}.demo-bar{font-size:9px}.calendar-toolbar{padding:21px}.month-nav h2{font-size:20px}.calendar-grid{padding:4px 13px}.calendar-legend{padding-left:23px}.date-number{margin-left:5px}h1{font-size:29px}}
@media(max-width:720px){.sidebar{display:none}.workspace{width:100%;margin:0}.topbar{height:67px;padding:0 21px}.breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:9px;font-size:24px;font-weight:850;letter-spacing:-1px}.brand-mark.small{width:29px;height:29px;border-radius:11px}.brand-mark.small i{top:9px;left:8px;width:3px;height:4px}.brand-mark.small i+i{left:18px}.brand-mark.small b{left:8px;top:16px;width:13px;height:5px}.topbar-right{gap:0}.kakao-button{font-size:10px;padding:9px 11px}.demo-bar{padding:8px 21px;font-size:9px;line-height:1.7;align-items:flex-start}.demo-description{display:block;padding-left:12px;font-size:8px}.demo-bar button{margin-top:1px;font-size:9px}main{padding:26px 19px 85px}.page-heading{gap:18px;margin-bottom:20px}.page-heading p{font-size:11px;margin-top:8px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:7px}h1{font-size:27px;gap:9px;letter-spacing:-1.4px}.title-flower{font-size:30px}.heading-actions{width:100%;gap:8px;margin-top:0}.heading-actions .button{flex:1;font-size:12px;min-height:42px}.mobile-group-wrap{display:flex;align-items:center;gap:10px;margin-bottom:17px}.mobile-group-wrap label{white-space:nowrap;font-size:9px;color:var(--tone-aa98b6, #aa98b6);margin:0;font-weight:400}.mobile-group-wrap select{background:transparent;border-color:var(--tone-e8e0f0, #e8e0f0);padding:8px 12px;min-height:34px;font-size:11px;color:var(--tone-8c709e, #8c709e);max-width:180px}.hero-strip{grid-template-columns:1fr 140px;border-radius:17px;min-height:160px;margin-bottom:19px}.next-meeting{padding:20px}.mini-label{font-size:9px;margin-bottom:10px}.next-meeting h2{font-size:17px;line-height:1.5}.next-meeting-title{gap:6px}.next-meeting p{font-size:9px;max-width:190px}.dday{font-size:8px;padding:3px 5px}.text-link{font-size:9px;margin-top:12px}.hero-art{min-height:160px;transform:scale(.76);transform-origin:center center;width:185px;margin-left:-25px}.paper-calendar{top:15px}.face-yellow{bottom:3px}.face-purple{bottom:-17px}.face-green{bottom:0}.spark-one{right:-1px;top:22px}.little-note{top:6px}.calendar-layout{gap:17px}.calendar-card{border-radius:17px}.calendar-toolbar{padding:21px 15px 17px}.month-nav h2{font-size:18px;margin-right:10px}.calendar-grid{padding:4px 7px}.weekdays{font-size:9px;margin:0 10px;padding-bottom:13px}.day-cell{min-height:76px;padding:6px 2px 3px;gap:3px}.date-number{font-size:10px;width:22px;height:22px;margin-left:3px;margin-bottom:2px}.calendar-chip{font-size:7px;padding:2px 3px}.calendar-legend{font-size:7px;gap:12px;padding:15px 14px 17px}.legend-dot{width:4px;height:4px}.day-column{display:block}.day-card{border-radius:17px;padding:21px}.day-heading h2{font-size:18px}.day-heading{margin-bottom:20px}.event-mini{padding:18px 16px}.event-mini-head{font-size:10px}.event-title-button{font-size:15px;margin:11px 0}.event-meta{font-size:11px}.rsvp-summary{font-size:10px;margin-top:15px}.rsvp-controls{gap:7px}.rsvp-controls button{font-size:11px;padding:10px;min-height:37px}.add-day-event{font-size:11px;min-height:43px}.little-tip{margin-top:15px;padding:18px}.little-tip strong{font-size:11px}.little-tip p{font-size:10px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;padding:11px 20px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--tone-eee7f6, #eee7f6);background:#ffffffed;backdrop-filter:blur(14px);z-index:30;justify-content:space-around}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:9px;color:var(--tone-baabc5, #baabc5);min-width:72px;min-height:38px}.mobile-nav button.active{color:var(--purple)}.mobile-nav svg{width:21px;height:21px}.main-footer{font-size:8px;margin:26px 1px 0}.main-footer button{font-size:8px}.groups-grid{grid-template-columns:1fr}.group-card{min-height:225px}.new-group-card{min-height:150px}.listing-view{padding:20px 17px}.upcoming-item{gap:12px;padding:20px 0}.upcoming-content h3{font-size:12px}.upcoming-content p{font-size:10px}.upcoming-item>.category-label{display:none}.listing-heading h2{font-size:17px}.listing-heading>span{font-size:10px}.toast{bottom:85px;font-size:11px;padding:12px 17px}dialog{padding:25px;width:calc(100% - 28px);max-height:88dvh}.dialog-top h2{font-size:20px}input:not([type=hidden]),select,textarea{font-size:16px;padding:11px}.form-grid{gap:10px}.dialog-actions .button{font-size:12px;min-height:44px}.input-with-icon input{padding-left:37px}.form-hint{font-size:10px}.info-copy,.info-step{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Keep the soft palette while giving Korean labels enough contrast. */
.page-heading p{font-size:13px;color:var(--tone-81748d, #81748d)}.demo-bar,.demo-bar strong,.demo-bar button{color:var(--tone-756585, #756585);font-size:11px}.next-meeting p{font-size:12px;color:var(--tone-84728f, #84728f)}.mini-label,.text-link{color:var(--tone-816498, #816498);font-size:11px}.breadcrumb,.today-label{color:var(--tone-82768d, #82768d)}.date-number{font-size:12px;color:var(--tone-756781, #756781)}.weekdays{font-size:11px;color:var(--tone-87788f, #87788f)}.day-cell.saturday .date-number{color:#7a91b4}.day-cell.sunday .date-number{color:#b7838b}.calendar-chip{font-size:10px}.category-food{color:var(--tone-796092, #796092)}.category-trip{color:#56774e}.category-hobby{color:#9c6b4c}.category-other{color:#607fa8}.calendar-legend{font-size:10px;color:var(--tone-8d7e98, #8d7e98)}.section-label,.event-mini-head{font-size:11px;color:var(--tone-9279a2, #9279a2)}.event-meta{font-size:11px;color:var(--tone-877293, #877293)}.rsvp-summary{font-size:10px;color:var(--tone-91759f, #91759f)}.rsvp-controls button{color:var(--tone-8c749c, #8c749c)}.rsvp-controls button.chosen{color:var(--tone-78529a, #78529a)}.add-day-event{color:var(--tone-9472aa, #9472aa);font-size:11px}.little-tip strong{color:#8a775b}.little-tip p{color:#9a886d;font-size:10px}.group-summary>p,.summary-stat{color:var(--tone-8d739d, #8d739d)}.empty-state p{color:var(--tone-9581a2, #9581a2);font-size:11px}.form-hint,.info-copy,.info-step,.info-note{color:var(--tone-8a7299, #8a7299)}.form-hint{font-size:11px}.info-note{font-size:11px}.upcoming-content>strong{display:block;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upcoming-meta{display:block;font-size:12px;color:var(--tone-95829e, #95829e);line-height:1.7;margin-top:7px}
@media(max-width:1050px){.calendar-chip{font-size:8px}.calendar-legend{font-size:9px}.date-number{font-size:11px}.page-heading p{font-size:12px}}
@media(max-width:720px){.demo-bar,.demo-bar strong,.demo-bar button{font-size:10px}.demo-description{font-size:9px}.page-heading p{font-size:12px}.next-meeting p{font-size:10px}.mini-label,.text-link{font-size:10px}.calendar-chip{font-size:8px}.calendar-legend{font-size:8px}.weekdays{font-size:10px}.date-number{font-size:11px}.upcoming-content>strong{font-size:13px}.upcoming-meta{font-size:11px}.hero-strip{grid-template-columns:minmax(0,1fr) 130px}.next-meeting{padding:20px 17px}}
/* Original character portraits and group invitation flow. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;border:0!important;clip:rect(0,0,0,0)!important;overflow:hidden!important;white-space:nowrap!important}
.hero-character-art{min-height:211px;transform:none;width:auto;margin:0;isolation:isolate}
.hero-character-art .paper-calendar{left:112px;top:42px;width:103px;height:124px}
.hero-character-art .paper-calendar strong{font-size:43px}
.hero-character-art .paper-calendar>span{font-size:5px}
.hero-character-art .little-note{left:103px;top:23px;font-size:7px}
.hero-character-art .spark-one{top:19px;right:2px;font-size:20px}
.hero-character-art .spark-two{left:4px;top:69px}
.hero-owner{position:absolute;z-index:2;left:-8px;bottom:19px;width:165px;height:178px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:20px}
.hero-owner img{position:absolute;bottom:13px;left:0;width:165px;height:165px;object-fit:contain;z-index:1;transition:transform .18s}
.hero-owner:hover img{transform:translateY(-3px) rotate(-2deg)}
.owner-ground{position:absolute;bottom:26px;left:46px;width:76px;height:8px;background:var(--tone-b9a1d62b, #b9a1d62b);border-radius:50%}
.owner-badge{position:absolute;bottom:0;z-index:3;display:flex;align-items:center;gap:4px;max-width:165px;padding:6px 9px;background:#ffffffeb;border:1px solid var(--tone-e3d9f1, #e3d9f1);border-radius:20px;color:var(--tone-86679d, #86679d);font-size:10px;white-space:nowrap;box-shadow:0 3px 6px var(--tone-66468d08, #66468d08)}
.owner-badge>span:nth-child(2){max-width:110px;overflow:hidden;text-overflow:ellipsis}.owner-crown{font-size:15px;color:#ba9d5a;line-height:1}.owner-badge svg{width:11px;height:11px;color:var(--tone-aa8cba, #aa8cba)}
.owner-change-hint{position:absolute;left:34px;top:-8px;z-index:4;padding:5px 8px;background:var(--tone-7e639a, #7e639a);color:white;border-radius:7px;font-size:9px;opacity:0;pointer-events:none;transition:opacity .15s;white-space:nowrap}
.hero-owner:hover .owner-change-hint,.hero-owner:focus-visible .owner-change-hint{opacity:1}
.group-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;width:100%;height:71px}
.group-character-button{display:flex;align-items:center;flex-direction:column;padding:0;position:relative;margin-top:-16px}
.group-character-button img{width:72px;height:72px;object-fit:contain}
.group-character-button>span{font-size:9px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tone-9173a2, #9173a2)}
.group-card h2{margin-top:13px}
#characterDialog{width:min(490px,calc(100% - 28px))}
.character-dialog-description{font-size:12px;line-height:1.8;color:var(--tone-8b759a, #8b759a);margin-top:-7px;margin-bottom:20px}
.character-dialog-description strong{color:var(--tone-6d4f83, #6d4f83)}
.character-fieldset{margin:0;padding:0;border:0}
.character-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.character-option{display:block;margin:0;position:relative;cursor:pointer}
.character-option input[type=radio]{position:absolute;width:1px;height:1px;padding:0;margin:0;opacity:0;left:50%;top:50%;min-width:0}
.character-option-card{display:flex;align-items:center;flex-direction:column;position:relative;padding:8px 9px 14px;border:1.5px solid var(--tone-eee6f4, #eee6f4);border-radius:17px;background:var(--tone-fcfaff, #fcfaff);transition:border-color .15s,background .15s}
.character-option:nth-child(2) .character-option-card{background:#f6faf6}
.character-option:nth-child(3) .character-option-card{background:#fcf8f1}
.character-option:nth-child(4) .character-option-card{background:#fff6f2}
.character-option-card img{object-fit:contain;width:100%;height:136px}
.character-option-card strong{font-size:12px;font-weight:650;color:var(--tone-795f87, #795f87);line-height:1.5}
.character-option-card small{font-size:10px;color:var(--tone-9a849f, #9a849f);font-weight:400;margin-top:5px}
.character-selection-check{position:absolute;top:9px;right:9px;background:var(--purple);color:#fff;height:19px;width:19px;align-items:center;justify-content:center;font-size:11px;border-radius:50%;display:none;z-index:1}
.character-option input:checked+.character-option-card{border-color:var(--tone-a28ad4, #a28ad4);box-shadow:0 0 0 2px var(--tone-b7a2df22, #b7a2df22)}
.character-option input:checked+.character-option-card .character-selection-check{display:flex}
.character-option input:focus-visible+.character-option-card{outline:3px solid var(--tone-b19bdc, #b19bdc);outline-offset:3px}
.character-option:hover .character-option-card{border-color:var(--tone-bba5db, #bba5db)}
.character-choices.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.compact .character-option-card{padding:4px 4px 10px;border-radius:12px}
.compact .character-option-card img{height:88px}
.compact .character-option-card strong{font-size:10px;white-space:nowrap}
.compact .character-option-card small{display:none}
.compact .character-selection-check{width:15px;height:15px;font-size:9px;top:5px;right:5px}
#groupDialog{width:min(550px,calc(100% - 28px))}
.form-section{border:0;border-top:1px solid var(--tone-efe7f5, #efe7f5);margin:24px 0 0;padding:17px 0 0;min-width:0}
.form-section legend{font-size:12px;font-weight:650;color:var(--tone-7c638c, #7c638c);padding:0 9px 0 0}
.sample-label{font-size:9px;font-weight:400;background:var(--tone-f2edf8, #f2edf8);color:var(--tone-9b83ad, #9b83ad);border-radius:5px;padding:3px 6px;margin-left:6px}
.section-help{font-size:11px;line-height:1.8;color:var(--tone-9c89a9, #9c89a9);margin-bottom:12px}
.selected-friends{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:9px;align-items:center}
.friend-chip{display:inline-flex;gap:5px;align-items:center;max-width:100%;background:var(--tone-f7f3fb, #f7f3fb);border:1px solid var(--tone-ece4f4, #ece4f4);border-radius:20px;padding:4px 9px 4px 4px;font-size:11px;color:var(--tone-856895, #856895);line-height:1.5}
.friend-chip .avatar{width:26px;height:26px;font-size:9px}
.friend-chip small{font-size:9px;color:var(--tone-a38bb4, #a38bb4)}.friend-chip button{display:flex;padding:3px;margin-right:-4px;border-radius:50%;color:var(--tone-a991b8, #a991b8)}.friend-chip button svg{width:12px;height:12px}.host-chip{background:var(--tone-f0eafa, #f0eafa)}
.friend-add-button{display:inline-flex;align-items:center;gap:7px;border:1px dashed var(--tone-cdbbdd, #cdbbdd);background:var(--tone-fcfaff, #fcfaff);padding:8px 13px;min-height:38px;border-radius:20px;color:var(--tone-9473aa, #9473aa);font-size:11px;margin-top:2px}.friend-add-button svg{width:15px;height:15px}
.friend-picker-panel{border:1px solid var(--tone-e5daef, #e5daef);background:var(--tone-faf7fd, #faf7fd);border-radius:14px;margin-top:13px;padding:14px}
.friend-picker-panel input[type=search]{background:#fff}
.friend-options{display:grid;gap:4px;margin-top:10px;max-height:240px;overflow:auto;padding:2px}
.friend-option{display:flex;align-items:center;gap:10px;padding:9px 7px;margin:0;border-radius:10px;cursor:pointer}
.friend-option:hover{background:var(--tone-f1eaf9, #f1eaf9)}.friend-option>span{display:flex;flex-direction:column;gap:4px;flex:1}
.friend-option strong{font-size:12px;font-weight:600;color:var(--tone-785d8b, #785d8b)}.friend-option small{font-size:10px;font-weight:400;color:var(--tone-a089ae, #a089ae)}
input[type=checkbox]{width:17px!important;height:17px!important;min-width:17px!important;padding:0!important;accent-color:var(--purple);cursor:pointer}
.friend-option input[type=checkbox]{margin-left:auto;margin-right:3px}
.friend-count{font-size:10px;color:var(--tone-967da7, #967da7);display:inline-block;margin-top:15px}.friend-picker-done{float:right;background:#fff;margin-top:8px;min-height:30px}
.friend-empty{font-size:11px;color:var(--tone-9c84ad, #9c84ad);padding:16px;text-align:center}
.checkbox-row{display:flex;align-items:center;gap:9px;font-size:11px;font-weight:500;line-height:1.7;color:var(--tone-8c6b9f, #8c6b9f);cursor:pointer;margin-top:18px}
.checkbox-row input{flex-shrink:0;margin:0}
.first-event-section{border:1px solid var(--tone-eae2f3, #eae2f3);border-radius:14px;background:var(--tone-fcfaff, #fcfaff);padding:16px;margin-top:24px}
.first-event-section>.checkbox-row{margin:0;font-size:12px;font-weight:600}
.first-event-section input:not([type=checkbox]){background:#fff}
.invitation-status{display:inline-flex;align-items:center;background:#fff6db;border:1px solid #f3e9c8;color:#9b8350;font-size:10px;padding:7px 10px;border-radius:7px;margin-top:-6px}
.invitation-status .demo-dot{background:#c8ad67}
.invitation-recipients{margin-top:20px}.invitation-recipient-title{display:block;font-size:11px;color:var(--tone-8d73a0, #8d73a0);margin-bottom:10px}
.no-recipients{font-size:11px;color:var(--tone-a18caf, #a18caf)}
#invitationMessage{font-size:12px;line-height:1.9;background:var(--tone-faf6ff, #faf6ff);color:var(--tone-7f608f, #7f608f);min-height:225px;resize:vertical}
.invitation-notice{font-size:11px;line-height:1.9;background:#fffaf0;color:#9c865d;border-radius:10px;padding:12px;margin-top:15px}
@media(min-width:1500px){.hero-character-art{margin-left:10px}.hero-owner{left:4px}.hero-character-art .paper-calendar{left:129px}}
@media(max-width:1220px){.hero-character-art .paper-calendar{left:91px;width:93px;height:120px}.hero-owner{left:-17px;width:157px}.hero-owner img{width:157px;height:165px}.hero-character-art .little-note{left:86px}.hero-character-art .spark-one{right:0}}
@media(max-width:720px){.hero-character-art{width:130px;min-height:191px;margin-left:-7px;transform:none}.hero-character-art .paper-calendar{left:53px;top:45px;width:76px;height:102px}.hero-character-art .paper-calendar strong{font-size:32px;line-height:1.4}.hero-character-art .paper-calendar>span{font-size:4px;letter-spacing:.6px}.hero-character-art .paper-calendar i{font-size:17px;right:9px;bottom:10px}.hero-character-art .paper-calendar:before{height:18px}.hero-character-art .little-note{left:40px;top:23px;font-size:6px;letter-spacing:1px}.hero-character-art .spark-one{right:-2px;top:16px;font-size:16px}.hero-character-art .spark-two{left:0;top:60px;font-size:11px}.hero-owner{left:-22px;bottom:15px;width:146px;height:159px}.hero-owner img{width:146px;height:146px;bottom:12px}.owner-ground{width:60px;left:42px;bottom:23px}.owner-badge{font-size:9px;padding:5px 7px;max-width:139px;gap:3px}.owner-badge>span:nth-child(2){max-width:88px}.owner-badge svg{width:9px;height:9px}.owner-change-hint{display:none}.character-option-card img{height:122px}.compact .character-option-card img{height:72px}.compact .character-option-card strong{font-size:9px}.character-choices.compact{gap:5px}.form-section legend{font-size:12px}.friend-option{min-height:51px}.friend-add-button{min-height:40px}.first-event-section{padding:13px}.checkbox-row{font-size:11px}.form-hint{font-size:10px}.section-help{font-size:10px}.invitation-notice{font-size:11px}#invitationMessage{font-size:13px}.group-card-top{height:70px}}
@media(max-width:360px){.hero-strip{grid-template-columns:minmax(0,1fr) 112px}.hero-character-art{width:112px}.hero-character-art .paper-calendar{left:34px}.hero-owner{left:-28px;width:133px}.hero-owner img{width:133px;height:146px}.owner-badge{max-width:126px}.owner-badge>span:nth-child(2){max-width:75px}.hero-character-art .little-note{left:24px}.next-meeting h2{font-size:15px}.next-meeting{padding-left:14px;padding-right:7px}.character-choices.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.compact .character-option-card img{height:95px}}
/* Swipeable day/week/month summary; the calendar and empty state keep their layout. */
.day-column,.day-card{min-width:0}.day-event-slides{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;padding:4px 0;position:relative}.day-event-slides::-webkit-scrollbar{display:none}.day-event-slides>.event-mini{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;margin:0;display:flex;flex-direction:column}.day-event-slides .rsvp-summary{margin-top:auto;padding-top:14px}.day-event-slides .event-title-button{overflow-wrap:anywhere}.day-event-slides:focus-visible{outline:2px solid var(--purple);outline-offset:3px;border-radius:12px}.day-carousel-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 12px}.day-swipe-hint{font-size:11px;color:var(--muted)}.day-carousel-buttons{display:flex;align-items:center;gap:3px}.day-carousel-buttons .icon-button{width:36px;height:36px;border:1px solid var(--line)}.day-slide-position{min-width:42px;text-align:center;font-size:11px;color:var(--purple);font-variant-numeric:tabular-nums}

/* Shared calendar scope: keep each appointment's group recognizable. */
.event-group-label{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 9px;border-radius:8px;background:var(--event-group-wash);color:#555365;font-size:11px;font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.event-group-label i{flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--event-group-color)}
.event-mini>.event-group-label{margin-bottom:9px}.upcoming-content>.event-group-label{width:fit-content;margin-bottom:5px}
#nextGroupLabel:not(:empty){margin-top:8px}.detail-category{margin-left:8px}.all-groups-icon{font-size:17px;line-height:1;color:var(--purple)}
.calendar-legend{flex-wrap:wrap}.calendar-legend>span{overflow-wrap:anywhere}

.settings-account-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.settings-account-actions .mobile-profile{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px}.settings-account-actions .kakao-button{min-height:44px}.account-settings h2{margin-top:10px}
.calendar-main{min-width:0}.poll-nudges{display:grid;gap:10px;margin-top:14px}.poll-nudges[hidden]{display:none}.poll-nudge{display:flex;width:100%;align-items:center;gap:12px;padding:16px;text-align:left;border:1px solid #f4cdcf;border-radius:18px;background:#fff0f1;color:#a63d4d}.poll-nudge>span:nth-child(2){flex:1;min-width:0}.poll-nudge strong,.poll-nudge small{display:block;overflow-wrap:anywhere}.poll-nudge small{font-size:11px;line-height:1.6;margin-top:4px;color:#a46b73}.polls-section{padding:22px;margin-top:20px;margin-bottom:20px}.poll-list{display:grid;gap:10px}.poll-list-item{display:flex;flex-direction:column;gap:7px;text-align:left;border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff;color:var(--ink)}.poll-list-item strong{font-size:15px;overflow-wrap:anywhere}.poll-list-item small{font-size:12px;color:var(--muted);line-height:1.6}.poll-state{display:inline-flex;align-self:flex-start;width:fit-content;padding:5px 9px;border-radius:8px;background:#f0ebff;color:#735dc2;font-size:11px;font-weight:700}.poll-state.confirmed{background:#e5f3e9;color:#427151}.poll-state.tied,.poll-state.no_votes{background:#fff0de;color:#946625}.plan-choices{display:grid;gap:14px}.plan-choices>button{display:flex;flex-direction:column;text-align:left;gap:10px;border:1px solid var(--line);border-radius:18px;padding:22px;background:#faf8ff;color:var(--ink)}.plan-choices>button>span{font-size:25px}.plan-choices strong{font-size:18px}.plan-choices small{line-height:1.7;color:var(--muted)}
#pollCreateForm>label,#pollRevoteForm>label,#pollConfirmForm>label{display:block;font-size:13px;font-weight:700;margin:18px 0 8px}#pollCreateForm input:not([type=checkbox]),#pollCreateForm select,#pollCreateForm textarea,#pollRevoteForm input,#pollConfirmForm select{width:100%;min-width:0;min-height:46px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fcfbff;color:var(--ink);font-family:inherit;font-size:16px;line-height:1.5;box-sizing:border-box}#pollCreateForm fieldset{min-width:0;margin:20px 0 0;padding:0;border:0}#pollCreateForm legend{font-size:13px;font-weight:700}.poll-member-choices{display:flex;flex-wrap:wrap;gap:8px}.poll-date-add{display:flex;gap:8px;align-items:center}.poll-date-add>input{flex:1}.poll-date-add>button{flex-shrink:0}.poll-date-chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.poll-date-chips>button{padding:8px 11px;border:1px solid #dfd7f5;border-radius:10px;background:#f4effd;color:#70549e;min-height:40px}.poll-dates-field>label{display:block;font-size:13px;margin:14px 0 8px}.poll-rules{font-size:12px;color:var(--muted);line-height:1.8;padding:14px;background:#f6f3fc;border-radius:12px}.poll-detail-status{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:12px;color:var(--muted)}.poll-note{font-size:13px;line-height:1.8;white-space:pre-wrap}.poll-options{display:grid;gap:10px;margin:14px 0}.poll-option{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);border-radius:14px;background:#fff}.poll-option:has(input:checked),.poll-option.winner{background:#f3eefc;border-color:#ab93d7}.poll-option input{width:20px;height:20px;flex-shrink:0;accent-color:var(--purple)}.poll-option>span{flex:1;min-width:0}.poll-option strong{font-size:14px;line-height:1.6}.poll-option small{display:block;font-size:11px;color:var(--muted);margin-top:5px;line-height:1.7;overflow-wrap:anywhere}.poll-option b{font-size:12px;white-space:nowrap;color:#8264b7}.poll-vote-actions,.poll-share-actions,.poll-resolution-actions{display:flex;gap:8px;flex-wrap:wrap}.poll-vote-actions>button,.poll-share-actions>button{flex:1}.poll-share-actions{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.poll-resolution{padding:18px;border-radius:15px;background:#fff7ed;margin-top:20px}.poll-resolution h3{font-size:16px}.poll-resolution p{font-size:12px;line-height:1.8}.poll-resolution form>.button{margin-top:12px}.poll-confirmed{padding:20px;border-radius:16px;background:#eaf5ec;color:#426d4d}.poll-confirmed strong{font-size:17px;line-height:1.7}.poll-confirmed p{font-size:13px}.poll-confirmed .button{margin-top:8px}#pollActionError:not(:empty),#pollCreateError:not(:empty){color:#b04450;padding:10px 0;font-size:12px;line-height:1.7}

/* Choose the invitation destination before preparing a share message. */
.invitation-choices>button{min-height:136px}.invitation-choices>button:hover,.invitation-choices>button[aria-expanded=true]{border-color:var(--purple);background:var(--tone-f5f1fd,#f5f1fd)}
.invitation-choices:has(#chooseGroupInvite[aria-expanded=true])>button{min-height:48px;padding:14px 16px}.invitation-choices:has(#chooseGroupInvite[aria-expanded=true])>button>span,.invitation-choices:has(#chooseGroupInvite[aria-expanded=true])>button>small{display:none}.invitation-choices:has(#chooseGroupInvite[aria-expanded=true])>button>strong{font-size:15px}
.invite-new-divider{display:flex;align-items:center;gap:12px;margin:19px 0 10px;color:var(--muted);font-size:11px}.invite-new-divider:before,.invite-new-divider:after{content:"";height:1px;flex:1;background:var(--line)}.invite-new-hint{font-size:11px;line-height:1.7;color:var(--muted);text-align:center;margin-top:10px;word-break:keep-all}.invite-group-panel>#createInviteGroup{border-style:dashed;border-color:var(--purple);color:var(--purple);background:#fff}
.invite-group-panel{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fcfbff}.invite-group-panel>label{display:block;font-size:13px;font-weight:700;margin-bottom:10px}.invite-group-panel select{font-size:16px;min-height:46px}.invite-group-panel>.button{width:100%;min-height:46px;margin-top:8px}.invitation-scope{font-size:13px;line-height:1.8;padding:13px 15px;border-radius:12px;background:var(--tone-f5f1fd,#f5f1fd);margin:15px 0}.invitation-options{display:grid;gap:12px}
