.login-page{color:#30452e;background:radial-gradient(at 15% 45%,#e8efd9 0,#0000 60%),#f6f8f1;min-height:100dvh;padding:0}.login-layout{grid-template-columns:minmax(0,1fr) minmax(340px,430px);align-items:center;gap:90px;width:min(1120px,100%);min-height:calc(100dvh - 55px);margin:auto;padding:56px 40px;display:grid}.login-brand{color:#385331;align-items:center;gap:12px;margin-bottom:48px;font-size:27px;font-weight:750;text-decoration:none;display:flex}.login-brand img{width:47px;height:47px}.login-story>.eyebrow{letter-spacing:2px;margin-bottom:20px;font-size:10px;display:block}.login-story h1{letter-spacing:-2px;font-size:43px;line-height:1.4}.login-story>p{color:#788470;margin-top:21px;font-size:15px;line-height:1.9}.login-art{background:#fffef8;border:1px solid #dbe4cc;border-radius:21px;width:280px;margin:35px auto 30px;padding:23px 26px;transform:rotate(-4deg);box-shadow:8px 13px #e1e8d3}.login-art-top,.login-art-bottom{letter-spacing:1.2px;color:#71835c;justify-content:space-between;align-items:center;font-size:10px;display:flex}.login-art>strong{margin-top:17px;font-size:21px;display:block}.login-art-bars{align-items:end;gap:13px;height:94px;margin:16px 0;display:flex}.login-art-bars i{background:#b9cba4;border-radius:6px 6px 0 0;flex:1;height:27%}.login-art-bars i:nth-child(2){height:45%}.login-art-bars i:nth-child(3){height:40%}.login-art-bars i:nth-child(4){height:70%}.login-art-bars i:last-child{background:#54764a;height:100%}.login-art-bottom{letter-spacing:0;border-top:1px solid #e6eadc;padding-top:12px}.login-art-bottom>span:last-child{font-size:22px}.login-features{color:#728267;gap:22px;font-size:11px;display:flex}.login-features>span{align-items:center;gap:8px;display:flex}.login-features svg{width:19px}.login-card{text-align:center;background:#fffffff2;border:1px solid #e0e7d7;border-radius:25px;padding:39px 31px 30px;box-shadow:0 12px 50px #42532a04}.login-icon{width:65px;height:65px;margin:0 auto 24px;display:block}.login-mobile-brand{display:none}.login-card h2{letter-spacing:-1.1px;font-size:25px}.login-description{color:#87917f;margin:13px 0 29px;font-size:13px}.login-providers{flex-direction:column;gap:12px;display:flex}.social-login{color:#242724;background:#fff;border:1px solid #dadeda;border-radius:9px;justify-content:center;align-items:center;min-height:55px;padding:12px 40px;font-size:15px;font-weight:600;display:flex;position:relative}.social-login>svg{width:23px;height:23px;position:absolute;left:17px}.social-login.kakao{color:#191600;background:#fee500;border-color:#fee500}.social-login.apple{color:#fff;background:#191b19;border-color:#191b19}.social-login:disabled{opacity:.55;cursor:wait}.social-login:hover:not(:disabled){filter:brightness(.97)}.login-divider{color:#a0a699;align-items:center;gap:13px;margin:26px 0 16px;font-size:11px;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e8ecdf;flex:1;height:1px}.login-explore{color:#56734b;align-items:center;gap:16px;min-height:44px;font-size:13px;font-weight:650;display:inline-flex}.login-explore span{font-size:20px}.login-note{color:#949d8d;margin-top:18px;font-size:11px;line-height:1.9}.login-copyright{text-align:center;color:#9da694;padding:0 15px 25px;font-size:10px}.login-error{color:#925237;text-align:left;background:#fff3e9;border-radius:9px;margin-top:15px;padding:13px;font-size:12px;line-height:1.7}.login-error button{color:inherit;margin-top:8px;font-size:12px;text-decoration:underline;display:block}.login-status{color:#839076;margin-top:14px;font-size:12px}.account-settings{max-width:650px;margin:auto}.account-card{padding:28px 30px}.account-card>h2{margin-bottom:25px;font-size:16px}.account-profile{align-items:center;gap:16px;min-width:0;display:flex}.account-avatar{color:#6a8555;background:#eaf0e1;border-radius:20px;flex-shrink:0;place-items:center;width:58px;height:58px;font-size:24px;font-weight:650;display:grid}.account-profile>div{min-width:0}.account-profile strong{overflow-wrap:anywhere;font-size:17px}.account-profile p{color:#8a9580;overflow-wrap:anywhere;margin:8px 0;font-size:12px}.account-provider{color:#657359;background:#f4f6f0;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:10px;display:inline-flex}.account-provider>svg{width:12px;height:12px}.account-provider.kakao{color:#736617;background:#fff9cb}.account-details{border-top:1px solid #e9eddf;margin:27px 0 0;padding-top:9px}.account-details>div{grid-template-columns:95px minmax(0,1fr);gap:15px;padding:14px 0;font-size:12px;display:grid}.account-details dt{color:#8b9581}.account-details dd{text-align:right;overflow-wrap:anywhere;color:#4f6342;margin:0}.connected-dot{vertical-align:middle;background:#719e5a;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.account-logout{color:#9b6552;border-top:1px solid #e9eddf;align-items:center;gap:12px;width:100%;margin-top:12px;padding:21px 0 0;font-size:13px;display:flex}.account-logout span{text-align:left;flex:1}.account-connect{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:24px;display:flex}.account-storage-note{color:#929c88;align-items:flex-start;gap:8px;margin:17px 12px;font-size:11px;line-height:1.8;display:flex}.account-storage-note svg{flex-shrink:0;margin-top:2px}.login-page :is(button,a):focus-visible{outline-offset:4px;outline:3px solid #78985f}@media (width<=850px){.login-layout{gap:35px;padding:35px 25px}.login-story h1{font-size:34px}.login-features{flex-direction:column;gap:12px}.login-art{width:240px}.login-card{padding:32px 24px}}@media (width<=650px){.login-layout{max-width:440px;padding:max(30px,env(safe-area-inset-top)) 22px 24px;align-content:center;min-height:calc(100dvh - 55px);display:block}.login-story{display:none}.login-card{border-radius:24px;padding:35px 24px 27px}.login-icon{width:62px;height:62px;margin-bottom:13px}.login-mobile-brand{color:#73915d;margin-bottom:21px;font-size:12px;font-weight:650;display:block}.login-card h2{font-size:23px}.login-description{margin-bottom:27px;font-size:12px}.social-login{min-height:54px;font-size:14px}.login-note{font-size:10px}.account-card{padding:24px 21px}.account-profile strong{font-size:15px}.account-avatar{border-radius:16px;width:50px;height:50px}.account-details>div{grid-template-columns:78px minmax(0,1fr);font-size:11px}.account-storage-note{margin:15px 4px}}@media (width<=350px){.login-layout{padding-left:13px;padding-right:13px}.login-card{padding-left:19px;padding-right:19px}.login-card h2{font-size:21px}.social-login{font-size:13px}}.profit-report{max-width:820px;margin:0 auto}.profit-report .period-picker{background:0 0;border:0;border-radius:0;margin-bottom:24px;padding:0;overflow:visible}.period-presets{flex-wrap:wrap;gap:8px;display:flex}.period-presets button{border:1px solid var(--line);background:#f7f8f4;border-radius:9px;min-height:40px;padding:10px 16px;font-size:12px}.period-presets button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff;font-weight:650}.period-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:20px;display:flex}.period-form label{color:var(--muted);flex-direction:column;gap:8px;min-width:0;font-size:11px;display:flex}.period-form input{color:#344c30;background:#fbfcf9;border:1px solid #dce4d6;border-radius:8px;width:180px;max-width:100%;height:44px;padding:8px 10px}.period-separator{color:var(--muted);align-self:flex-end;padding-bottom:15px}.period-form .form-error{flex-basis:100%;margin:0}.period-caption{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.7}.profit-summary{padding:28px}.profit-summary>span{color:var(--muted);font-size:13px;display:block}.profit-summary>strong{letter-spacing:-1.5px;color:var(--green);overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin-top:10px;font-size:38px;display:block}.profit-summary .section-title{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.profit-summary h2{color:var(--muted);font-size:13px;font-weight:500}.profit-chart-scroll{margin-top:8px;padding-top:25px;overflow-x:auto}.profit-chart{height:220px;padding:30px 4px 10px;display:flex}.profit-column{outline-offset:-2px;flex-direction:column;flex:1;align-items:center;min-width:0;display:flex;position:relative}.profit-bar-area{width:100%;height:150px;position:relative}.profit-bar-area:before{content:"";border-top:1px solid #bdc8b7;position:absolute;top:50%;left:0;right:0}.profit-bar{background:var(--green);border-radius:4px 4px 0 0;width:65%;max-width:36px;position:absolute;left:50%;transform:translate(-50%)}.profit-bar.loss{background:var(--orange);border-radius:0 0 4px 4px}.profit-tick{color:var(--muted);white-space:nowrap;margin-top:10px;font-size:10px}.profit-tooltip{white-space:nowrap;color:#fff;z-index:1;pointer-events:none;background:#294b3a;border-radius:6px;padding:6px 8px;font-size:10px;line-height:1.6;display:none;position:absolute;top:-28px;left:50%;transform:translate(-50%)}.profit-column:hover .profit-tooltip,.profit-column:focus .profit-tooltip{display:block}.profit-column:first-child .profit-tooltip{left:0;transform:none}.profit-column:last-child .profit-tooltip{left:auto;right:0;transform:none}.stats-sale{text-align:left;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px 0;display:flex}.stats-sale:hover{background:#f7f8f4}.stats-sale:last-child{border-bottom:0}.stats-sale-copy{flex-direction:column;gap:8px;min-width:0;display:flex}.stats-sale-copy strong{overflow-wrap:anywhere;font-size:13px}.stats-sale-copy>small{color:var(--muted);font-size:11px;line-height:1.7}.stats-sale>strong{text-align:right;overflow-wrap:anywhere;max-width:48%;font-size:14px}@media (width<=700px){.period-presets{gap:6px}.period-presets button{padding:10px 11px;font-size:11px}.period-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.period-form input{width:100%;font-size:16px}.period-separator{display:none}.period-form .primary,.period-form .form-error{grid-column:1/-1}.period-caption{font-size:11px}.profit-summary{padding:22px 18px}.profit-summary>strong{font-size:32px}.stats-sale{gap:10px}.stats-sale>strong{font-size:13px}}.subscriptions-heading.page-heading{gap:16px;margin:18px 0 22px}.subscriptions-heading h1{letter-spacing:-1px;font-size:26px}.subscriptions-heading .primary{gap:5px;min-height:38px;padding:0 14px;font-size:12px}.subscription-ledger{min-width:0}.ledger-toolbar{border-bottom:1px solid #cfdad2;justify-content:space-between;align-items:center;gap:20px;padding:0 0 14px;display:flex}.ledger-tabs{flex-shrink:0;gap:6px;display:flex}.ledger-tabs button{color:#738078;border-radius:8px;align-items:center;gap:9px;min-height:40px;padding:0 14px;font-size:13px;display:flex}.ledger-tabs button span{font-variant-numeric:tabular-nums;font-size:12px}.ledger-tabs button[aria-pressed=true]{color:#fff;background:#245c49;font-weight:700}.ledger-tabs button:not([aria-pressed=true]):hover{background:#e9eee7}.ledger-search{color:#263e36;background:0 0;border:1px solid #dde4db;border-radius:8px;width:224px;min-width:0;max-width:100%;height:38px;padding:8px 12px;font-size:12px}.ledger-search::placeholder{color:#7b877f}.ledger-search-result{color:#728077;padding-top:14px;font-size:12px}.ledger-columns{color:#7c8980;grid-template-columns:minmax(0,1fr) 110px 135px 145px 108px;align-items:center;gap:18px;padding:14px 12px 10px;font-size:11px;display:grid}.ledger-columns>span:nth-child(4){text-align:right}.ledger-list{margin:0;padding:0;list-style:none}.ledger-row{border-bottom:1px solid var(--line);align-items:center;gap:18px;min-width:0;min-height:82px;padding:0 12px;display:flex}.ledger-row:hover{background:#eef2eb}.ledger-detail{text-align:left;flex:1;grid-template-columns:minmax(0,1fr) 110px 135px 145px;align-items:center;gap:18px;min-width:0;min-height:82px;padding:17px 0;display:grid}.ledger-company{flex-direction:column;gap:7px;min-width:0;display:flex}.ledger-company>strong{overflow-wrap:anywhere;font-size:14px;font-weight:650;line-height:1.5}.ledger-company>small{color:#7b877f;overflow-wrap:anywhere;font-size:11px;line-height:1.5}.ledger-mobile-date{display:none}.ledger-state{white-space:nowrap;color:#49684d;background:#eaf1e6;border-radius:5px;justify-self:start;align-items:center;gap:6px;padding:5px 8px;font-size:11px;font-weight:600;display:inline-flex}.ledger-state i{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.ledger-state.pending{color:#927333;background:#f4efdf}.ledger-state.partial{color:#49684d;background:#eaf1e6}.ledger-state.sold{color:#547794;background:#e9eff5}.ledger-state.none{color:#7c857d;background:#eceeea}.ledger-date{color:#54675b;white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.ledger-date small{color:#8a958d;font-size:10px}.ledger-figure{text-align:right;flex-direction:column;align-items:flex-end;gap:5px;min-width:0;display:flex}.ledger-figure strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;color:#245c49;max-width:100%;font-size:14px;font-weight:650}.ledger-figure small{color:#7b877f;font-size:10px;line-height:1.5}.ledger-action{color:#245c49;background:#fff;border:1px solid #d7e1d5;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:108px;min-height:36px;font-size:11px;font-weight:600;display:inline-flex}.ledger-action:hover{background:#e6eee2;border-color:#adc5ae}.ledger-open{color:#839088;flex-shrink:0;justify-content:flex-end;align-items:center;width:108px;min-height:40px;display:flex}.ledger-more{margin:22px auto 0;display:flex}.ledger-empty{text-align:center;color:#7c8980;flex-direction:column;align-items:center;gap:12px;padding:70px 16px;display:flex}.ledger-empty p{font-size:13px}@media (width<=1000px) and (width>=701px){.ledger-columns{grid-template-columns:minmax(0,1fr) 100px 105px 120px 88px;gap:12px}.ledger-detail{grid-template-columns:minmax(0,1fr) 100px 105px 120px;gap:12px}.ledger-date{flex-direction:column;align-items:flex-start;gap:3px}.ledger-row{gap:12px}.ledger-action,.ledger-open{width:88px}}@media (width<=700px){.subscriptions-heading.page-heading{margin:14px 0 18px}.subscriptions-heading h1{font-size:23px}.subscriptions-heading .primary{min-height:36px;padding:0 11px;font-size:11px}.ledger-toolbar{flex-wrap:wrap;gap:12px;padding-bottom:12px}.ledger-tabs{gap:5px;width:100%}.ledger-tabs button{flex:1;justify-content:center;gap:7px;min-height:39px;padding:0 8px;font-size:13px}.ledger-search{width:100%;height:36px;font-size:16px}.ledger-search::placeholder{font-size:12px}.ledger-columns{display:none}.ledger-row{grid-template-columns:minmax(0,1fr) 88px;gap:5px 12px;min-height:0;padding:14px 0;display:grid}.ledger-detail{grid-area:1/1/auto/-1;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:9px 12px;min-height:0;padding:0}.ledger-company{grid-area:1/1/3;gap:6px;padding-bottom:2px}.ledger-company>strong{font-size:14px}.ledger-company>small{font-size:10px}.ledger-mobile-date{display:inline}.ledger-state{grid-area:1/2;justify-self:end;padding:3px 6px;font-size:10px}.ledger-date{display:none}.ledger-figure{grid-area:2/2}.ledger-figure strong{font-size:13px}.ledger-action{grid-area:2/2;width:88px;min-height:30px;font-size:10px}.ledger-action svg{width:11px;height:11px}.ledger-open{display:none}.ledger-empty{padding:54px 14px}}.allocation-options{gap:8px;margin:16px 0;display:flex}.allocation-options button{border:1px solid var(--line);border-radius:9px;flex:1;padding:12px 8px;font-size:12px}.allocation-options button[aria-pressed=true]{background:var(--green);color:#fff}.allocation-options button:disabled{opacity:.45;cursor:not-allowed}.broker-select{color:#344c30;width:100%;min-width:0;min-height:44px;font:inherit;cursor:pointer;background:#fbfcf9;border:1px solid #dce4d6;border-radius:8px;padding:10px 12px;font-size:13px}.broker-select:focus-visible{outline-offset:3px;outline:3px solid #88bda0}@media (width<=700px){.broker-select{font-size:16px}}.alarm-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.alarm-time{color:#344c30;width:120px;min-width:0;max-width:100%;height:40px;font:inherit;background:#fbfcf9;border:1px solid #dce4d6;border-radius:8px;padding:6px;font-size:16px}.alarm-option{cursor:default}.alarm-control{cursor:pointer}.notification-buttons{color:#718062;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:8px 0;font-size:11px;display:flex}.notification-controls .field-note{text-align:left}.alarm-summary{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.alarm-status{color:#737c70;white-space:nowrap;background:#f3f4f0;border-radius:5px;align-items:center;gap:4px;width:fit-content;padding:4px 6px;font-size:10px;font-weight:400;line-height:1.5;display:inline-flex}.alarm-status.enabled{color:#245c49;background:#e8f2e2}.detail-date{display:contents}.detail-date dd{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.alarm-settings{border:1px solid #e5eadd;border-radius:10px;min-width:0;margin:24px 0 0;padding:8px 16px}.alarm-settings legend{padding:0 5px;font-size:13px;font-weight:650}.alarm-settings .field-note{color:#718062;margin:0 0 6px}.alarm-option{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.alarm-option+.alarm-option{border-top:1px solid var(--line)}.alarm-option>span:first-child{flex-direction:column;gap:6px;min-width:0;display:flex}.alarm-option strong{font-size:12px;font-weight:600}.alarm-option small{color:#7c8780;font-size:10px;line-height:1.6}.alarm-control{color:#718062;flex-shrink:0;align-items:center;gap:8px;font-size:11px;display:flex}.alarm-control input{appearance:none;cursor:pointer;background:#e1e6dc;border:1px solid #c3ccbd;border-radius:14px;width:40px;height:24px;margin:0;position:relative}.alarm-control input:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #213a3030}.alarm-control input:checked{background:#245c49;border-color:#245c49}.alarm-control input:checked:before{left:19px}.alarm-control input:disabled{opacity:.45;cursor:default}:root{color:#263e36;font-synthesis:none;--green:#245c49;--muted:#7c8780;--line:#e7ebe4;--orange:#b3643e;background:#f6f7f3;font-family:Inter,Pretendard,Noto Sans KR,Malgun Gothic,system-ui,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #88bda0}button,a,input,textarea{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}h1{letter-spacing:-1.5px;font-size:32px;font-weight:750;line-height:1.5}h2{letter-spacing:-.5px;font-size:16px}h3{font-size:20px}p{line-height:1.75}strong{font-weight:700}svg{flex-shrink:0}input,textarea{min-width:0}::selection{background:#d6e9cd}.app-shell{max-width:1120px;margin:auto;padding:0 32px}.app-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;height:102px;display:flex}.brand{text-align:left;align-items:center;gap:11px;padding:0;display:flex}.brand img{width:42px;height:42px}.brand>span{letter-spacing:-1px;font-size:22px;font-weight:800}.brand small{letter-spacing:1px;color:var(--muted);margin-top:4px;font-size:10px;font-weight:500;display:block}.header-right{align-items:center;gap:16px;display:flex}.local-badge{color:#66796a;align-items:center;gap:6px;font-size:11px;display:flex}.local-badge i{background:#89a878;border-radius:50%;width:5px;height:5px}.icon-button{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-button:hover{background:#edf1e9}main{padding:20px 0 130px}.demo-banner{color:#7b795e;background:#eeefe4;border-radius:7px;align-items:center;gap:8px;padding:10px 13px;font-size:11px;display:flex}.demo-banner button{white-space:nowrap;align-items:center;gap:4px;margin-left:auto;font-size:11px;display:flex}.page-heading{justify-content:space-between;align-items:center;gap:15px;margin:32px 0 25px;display:flex}.eyebrow{letter-spacing:2px;color:#83917e;margin-bottom:7px;font-size:10px;font-weight:700;display:block}.page-heading p{color:var(--muted);margin-top:6px;font-size:13px}.mobile-break{display:none}.primary,.secondary{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 20px;font-size:13px;font-weight:650;display:inline-flex}.primary{background:var(--green);color:#fff}.primary:hover{background:#194935}.secondary{color:#4f6257;background:#eef1ea}.home-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;display:grid}.card{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.calendar-card{padding:24px 22px 0}.calendar-top,.calendar-tools,.section-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.month-controls{align-items:center;gap:7px;display:flex}.month-controls strong{letter-spacing:-.4px;white-space:nowrap;font-size:18px}.month-controls .icon-button{width:24px;height:32px}.today-button{border:1px solid var(--line);color:#6c7d6e;border-radius:6px;margin-left:4px;padding:5px 9px;font-size:11px}.subtle{color:var(--muted);font-size:11px;font-weight:400}.calendar-tools{margin:20px 0 25px}.segmented{background:#f1f3ee;border-radius:8px;gap:2px;padding:3px;display:inline-flex}.segmented button{color:#839080;white-space:nowrap;border-radius:6px;padding:8px 13px;font-size:11px}.segmented button.active{color:var(--green);background:#fff;font-weight:700;box-shadow:0 1px 4px #163c2510}.legend{gap:12px;font-size:10px;display:flex}.legend span{align-items:center;gap:4px;display:flex}.legend span:before{content:"";background:currentColor;border-radius:50%;width:5px;height:5px}.subscription{color:#537559;background:#edf3e7}.refund{color:#b17e38;background:#fbf2df}.listing{color:#6786a7;background:#edf3fa}.legend span{background:0 0}.weekdays,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.weekdays{color:#9baba0;text-align:center;margin-bottom:10px;font-size:11px}.day{border-top:1px solid #f1f3ee;flex-direction:column;align-items:center;gap:5px;min-width:0;min-height:78px;padding:9px 2px 6px;display:flex;position:relative}.day.outside{opacity:.3}.day.selected{background:#f0f5e9;border-radius:8px}.day-number{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}.day.selected .day-number{background:var(--green);color:#fff;font-weight:700}.day.is-today:not(.selected) .day-number{color:var(--green);border:1px solid #b5cda8;font-weight:700}.day-events{flex-direction:column;gap:3px;width:100%;min-height:24px;display:flex}.calendar-event{text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:3px;padding:3px 1px;font-size:8px;overflow:hidden}.calendar-event span{text-overflow:ellipsis;overflow:hidden}.calendar-event i{display:none}.day-events>small{font-size:8px}.selected-day{border-top:1px solid var(--line);margin:15px -22px 0;padding:18px 22px 6px}.selected-day h2 span{color:var(--muted);margin-left:5px;font-size:11px;font-weight:400}.schedule-list{flex-direction:column;display:flex}.schedule-row{text-align:left;border-bottom:1px solid #f0f2ec;align-items:center;gap:10px;width:100%;min-width:0;padding:18px 0;display:flex}.schedule-row:last-child{border-bottom:0}.event-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.row-copy{flex-direction:column;flex:1;gap:7px;min-width:0;display:flex}.row-copy strong{word-break:keep-all;font-size:12px;font-weight:650}.row-copy small{color:#99a093;font-size:10px}.example-mark{vertical-align:middle;margin-left:5px;font-weight:500;color:#9b9f91!important;font-size:9px!important}.pill{white-space:nowrap;border-radius:5px;padding:5px 7px;font-size:9px}.schedule-row>svg{color:#a0aa9d}.home-aside{flex-direction:column;gap:18px;display:flex}.home-aside>.card{padding:23px 20px 6px}.tiny-label{letter-spacing:1.5px;color:#a6af9f;font-size:8px}.home-aside .schedule-row{gap:8px}.home-aside .event-icon{width:32px;height:32px}.home-aside .row-copy strong{font-size:11px}.home-aside .schedule-row>svg{display:none}.text-button{color:var(--green);align-items:center;gap:8px;padding:5px 0;font-size:11px;font-weight:600;display:inline-flex}.data-note{color:#9da493;padding:0 4px;font-size:10px;line-height:1.85}.bottom-nav{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:5;background:#ffffffed;border:1px solid #e4e9de;border-radius:18px;grid-template-columns:repeat(4,1fr);width:450px;max-width:calc(100% - 32px);height:70px;display:grid;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #244b3310}.bottom-nav button{color:#a5afa1;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.bottom-nav button.active{color:var(--green);font-weight:700}.bottom-nav button.active svg{background:#eaf0e1;border-radius:6px;box-shadow:0 0 0 5px #eaf0e1}.floating-add{display:none}.empty{text-align:center;color:#96a18e;flex-direction:column;align-items:center;gap:8px;padding:26px 10px;display:flex}.empty p{font-size:12px}.empty .primary{margin-top:10px}.list-tools{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.search{background:#fff;border:1px solid #e0e7da;border-radius:10px;width:220px;padding:12px;font-size:12px}.entry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.entry-card{text-align:left;padding:24px}.entry-card:hover{border-color:#bacdb1}.entry-card h2{margin:24px 0 8px;font-size:20px}.entry-card p{color:var(--muted);font-size:12px}.entry-bottom{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:25px;padding-top:18px;display:flex}.entry-bottom>span{color:var(--muted);font-size:11px}.entry-bottom>strong{color:var(--green);margin-left:auto;font-size:19px}.negative{color:#b26843!important}.stats-toolbar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.stat{flex-direction:column;gap:12px;padding:26px;display:flex}.stat>span{color:var(--muted);font-size:12px}.stat>strong{color:var(--green);letter-spacing:-1px;font-size:26px}.stat>small{color:#9ba691;font-size:10px}.report{margin-top:22px;padding:26px}.chart{gap:12px;height:185px;margin:30px 0 20px;display:flex}.chart-column{color:#97a28e;flex-direction:column;flex:1;align-items:center;gap:14px;min-width:0;font-size:10px;display:flex}.bar-track{border-bottom:1px solid #bdc8b7;align-items:flex-end;width:100%;max-width:42px;height:140px;display:flex}.bar{background:#bdcfb1;border-radius:5px 5px 0 0;width:100%;min-height:2px;display:block}.chart-column.active{color:var(--green);font-weight:700}.chart-column.active .bar{background:var(--green)}.bar.loss,.chart-column.active .bar.loss{background:#bb7852}.report-row{border-bottom:1px solid var(--line);justify-content:space-between;padding:22px 0;font-size:13px;display:flex}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.settings-card{padding:28px}.settings-card>p{color:var(--muted);margin:14px 0;font-size:12px}.setting-row{border-top:1px solid var(--line);text-align:left;align-items:center;gap:13px;width:100%;padding:22px 0;display:flex}.setting-row>span{flex-direction:column;flex:1;gap:7px;display:flex}.setting-row strong{font-size:12px}.setting-row small{color:var(--muted);font-size:10px}.formula{margin:20px 0;font-size:12px;line-height:1.7}.formula dt{margin:16px 0 4px;font-weight:600}.formula dd{color:var(--muted);margin:0}.info-note{color:#718062;background:#f0f4ea;border-radius:8px;gap:8px;padding:13px;font-size:11px;line-height:1.75;display:flex}.version{text-align:center;color:#a3ac9a;margin-top:35px;font-size:10px}.modal{color:#2c4032;background:#fff;border:1px solid #e0e6d8;border-radius:18px;width:540px;max-width:calc(100% - 24px);max-height:90dvh;padding:0;box-shadow:0 20px 100px #112b3533}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#213a3059}.modal-head{border-bottom:1px solid var(--line);z-index:2;background:#fff;justify-content:space-between;align-items:center;padding:19px 24px;display:flex;position:sticky;top:0}.modal-head h2{font-size:18px}.detail-body,.form-body{padding:24px}.detail-body>p{color:var(--muted);margin-bottom:16px;font-size:12px}.detail-body h3{margin-top:16px;font-size:25px}.detail-total{background:#edf3e6;border-radius:13px;flex-direction:column;gap:10px;margin:24px 0;padding:22px;display:flex}.detail-total>span{color:#7b8a70;font-size:12px}.detail-total>strong{color:var(--green);font-size:30px}.detail-total>small{color:#859778;font-size:11px}.detail-list{grid-template-columns:auto 1fr;gap:17px;font-size:12px;line-height:1.6;display:grid}.detail-list dt{color:var(--muted)}.detail-list dd{text-align:right;overflow-wrap:anywhere;margin:0}.memo{overflow-wrap:anywhere;background:#f7f8f4;border-radius:8px;padding:14px}.modal-actions{justify-content:space-between;gap:12px;margin-top:25px;display:flex}.danger-button{color:#a66a50;padding:10px;font-size:12px}.form-body h3{letter-spacing:1px;color:#99ab8c;align-items:center;gap:10px;margin:4px 0 20px;font-size:11px;display:flex}.form-body h3 span{letter-spacing:0;color:#42573c;font-size:14px}.form-body .info-note{margin-bottom:18px}.form-grid{grid-template-columns:1fr 1fr;gap:17px 16px;display:grid}.form-grid label{color:#7a8872;flex-direction:column;gap:8px;font-size:11px;display:flex}.full-width{grid-column:1/-1}.form-grid input,.backup-text textarea{color:#344c30;background:#fbfcf9;border:1px solid #dce4d6;border-radius:8px;width:100%;min-height:43px;padding:10px 12px;font-size:13px}.form-grid input[type=date]{appearance:none;min-width:0}.form-body details{border:1px solid #e5eadd;border-radius:10px;margin:23px 0 30px;padding:17px}.form-body summary{cursor:pointer;color:#697d5d;font-size:12px}.form-body summary span{color:#9ba793;margin-left:6px;font-size:10px}.form-body details[open] summary{margin-bottom:20px}.checkbox{cursor:pointer;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;display:flex}.checkbox input{accent-color:var(--green);width:17px;height:17px}.field-note{color:#96a18c;margin:10px 0 16px;font-size:10px;line-height:1.8}.live-total{background:#ecf2e4;border-radius:9px;justify-content:space-between;align-items:center;margin:20px 0;padding:20px;font-size:12px;display:flex}.live-total strong{color:var(--green);font-size:24px}.form-footer{border-top:1px solid var(--line);z-index:2;background:#fff;justify-content:flex-end;gap:10px;padding:17px 24px;display:flex;position:sticky;bottom:0}.form-footer .primary{min-width:145px}.form-error,.error-banner{color:#a25836;background:#fcf0e8;border-radius:8px;margin:14px 0;padding:12px;font-size:12px;line-height:1.7}.backup-actions{gap:10px;margin:18px 0;display:flex}.file-label,.backup-text{color:var(--muted);flex-direction:column;gap:12px;margin:20px 0;font-size:12px;display:flex}.file-label input{max-width:100%;font-size:11px}.backup-text textarea{resize:vertical;font-family:monospace;font-size:11px}.restore-confirm{border-top:1px solid var(--line);padding-top:18px}.restore-confirm p{margin-bottom:15px;font-size:12px}.toast{z-index:20;color:#fff;background:#294b3a;border-radius:12px;width:max-content;max-width:calc(100% - 28px);padding:15px 23px;font-size:12px;position:fixed;bottom:110px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #142d2820}@media (width>=1450px){.app-shell{padding-top:15px}.home-grid{grid-template-columns:minmax(0,1fr) 320px}.day{min-height:85px}}@media (width<=900px){.app-shell{padding:0 24px}.home-grid{grid-template-columns:minmax(0,1fr) 255px;gap:18px}.calendar-card{padding:20px 16px 0}.selected-day{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.calendar-top{gap:5px}.calendar-top>.subtle{display:none}.calendar-tools{gap:8px}.legend{gap:7px}.home-aside>.card{padding:20px 15px 4px}.stat{padding:20px}.stat>strong{font-size:22px}}@media (width<=700px){.app-shell{max-width:520px;padding:0 20px}.app-header{height:83px;padding-top:env(safe-area-inset-top);border:0}.brand img{width:36px;height:36px}.brand>span{font-size:21px}.brand small{display:none}.header-right{gap:10px}.local-badge{font-size:9px}.header-right .icon-button{width:30px}main{padding-top:0;padding-bottom:155px}.demo-banner{align-items:flex-start;padding:9px 10px;font-size:10px;line-height:1.6}.demo-banner>svg{margin-top:2px}.demo-banner button{margin-top:1px;padding:0}.page-heading{align-items:center;gap:10px;margin:29px 0 23px}h1{letter-spacing:-1.1px;font-size:27px;line-height:1.5}.mobile-break{display:block}.eyebrow{letter-spacing:1.7px;margin-bottom:8px;font-size:9px}.page-heading p{margin-top:8px;font-size:11px;line-height:1.8}.desktop-add{display:none}.home-grid{display:block}.calendar-card{border-radius:14px;padding:20px 12px 0}.calendar-top{padding:0 2px}.month-controls{gap:6px}.month-controls strong{font-size:17px}.today-button{margin-left:4px}.calendar-top>.subtle{font-size:9px;display:block}.calendar-tools{gap:4px;margin:18px 2px 23px}.segmented button{padding:8px 12px;font-size:10px}.legend{gap:9px;font-size:9px}.weekdays{font-size:10px}.day{gap:4px;min-height:70px;padding:6px 1px}.day-number{width:24px;height:24px;font-size:11px}.calendar-event{letter-spacing:-.4px;padding:3px 0;font-size:7px}.calendar-event i{display:none}.selected-day{margin:12px -12px 0;padding:16px 16px 5px}.selected-day h2{font-size:13px}.home-aside{gap:18px;margin-top:20px}.home-aside>.card{padding:20px 18px 4px}.home-aside .event-icon{width:36px;height:36px}.home-aside .row-copy strong{font-size:12px}.home-aside .schedule-row{gap:12px;padding:17px 0}.home-aside .schedule-row>svg{display:block}.data-note{text-align:center}.bottom-nav{width:100%;max-width:520px;height:calc(73px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-bottom:0;border-radius:18px 18px 0 0;bottom:0;box-shadow:0 -4px 25px #244b3308}.bottom-nav button{gap:7px;font-size:10px}.floating-add{z-index:4;bottom:calc(90px + env(safe-area-inset-bottom));background:var(--green);color:#fff;border-radius:28px;align-items:center;gap:7px;padding:13px 19px;font-size:12px;display:flex;position:fixed;right:max(20px,50vw - 240px);box-shadow:0 4px 15px #28563733}.list-tools{flex-direction:column;align-items:stretch;gap:15px}.list-tools .segmented{align-self:flex-start}.search{width:100%}.entry-grid{grid-template-columns:1fr;gap:14px}.entry-card{padding:22px}.entry-card h2{margin-top:18px}.page-heading>.primary{min-height:40px;padding:0 12px;font-size:11px}.stat-grid{grid-template-columns:1fr 1fr;gap:12px}.stat:first-child{background:#eaf0df;grid-column:1/-1}.stat{padding:20px}.stat>strong{font-size:21px}.stat:first-child>strong{font-size:30px}.stat>span{font-size:11px}.stat>small{font-size:9px}.report{padding:20px 16px}.report h2{font-size:14px}.chart{gap:6px}.chart-column{font-size:8px}.settings-grid{grid-template-columns:1fr;gap:17px}.settings-card{padding:23px}.modal{border-radius:15px;max-height:92dvh}.modal-head{padding:15px 18px}.modal-head h2{font-size:16px}.form-body,.detail-body{padding:20px 18px}.form-grid{gap:16px 12px}.form-grid input{padding:10px 8px;font-size:16px}.form-grid label{font-size:10px}.form-footer{padding:15px 18px}.detail-list{gap:15px;font-size:11px}.toast{bottom:150px}.backup-actions{flex-wrap:wrap}.backup-actions .secondary{font-size:11px}.stats-toolbar .subtle{font-size:9px}}@media (width<=360px){.app-shell{padding:0 14px}.calendar-top>.subtle{display:none}.calendar-tools{gap:5px}.segmented button{padding:8px 9px}.legend{gap:6px;font-size:8px}.header-right{gap:4px}.calendar-event{font-size:6px}.day{min-height:65px}.detail-total>strong{font-size:27px}.stat>strong{font-size:18px}.form-grid{gap:14px 9px}.page-heading>.primary{padding:0 10px;font-size:10px}}@media (prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}.bar{transition:height .3s}}@media (width<=700px){.app-header{height:72px}.home-heading{margin:20px 0 18px}.home-heading .eyebrow,.home-heading p{display:none}.home-heading h1{letter-spacing:-1px;font-size:21px}.home-heading .desktop-add{gap:4px;min-height:36px;padding:0 10px;font-size:10px;display:inline-flex}.day{min-height:60px}.floating-add{display:none}}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{min-width:0}@media (width<=360px){.form-grid input[type=date]{padding-left:6px;padding-right:4px;font-size:12px}}.ownership-legend{color:var(--green);white-space:nowrap;align-items:center;gap:6px;font-size:10px;display:inline-flex}.ownership-legend i{border:2px solid var(--green);border-radius:3px;width:14px;height:11px}.calendar-event.my-subscription{box-shadow:inset 0 0 0 2px var(--green);padding-left:3px;padding-right:3px;font-weight:750}.schedule-row.my-subscription{border:2px solid var(--green);border-radius:10px;margin:7px 0;padding:12px 10px}@media (width<=700px){.ownership-legend{font-size:9px}.home-aside .schedule-row.my-subscription{gap:8px;padding:12px 10px}}.record-summary{background:#f0f4ea;border-radius:12px;flex-direction:column;gap:8px;margin-bottom:20px;padding:16px;display:flex}.record-summary strong{color:var(--green);overflow-wrap:anywhere;font-size:19px}.record-summary span{color:#42573c;font-size:13px}.record-summary small{color:var(--muted);overflow-wrap:anywhere;font-size:11px;line-height:1.6}.source-details{color:var(--muted);padding:0 4px}.source-details summary{cursor:pointer;align-content:center;width:fit-content;min-height:36px;font-size:11px;font-weight:600}.source-details summary:hover{color:var(--green)}.source-details .data-note{text-align:left;padding:4px 0 0}.offering-filters{flex-wrap:wrap;gap:6px;margin:16px 0;display:flex}.offering-filters button{color:#3a5142;background:#fff;border:1px solid #bccbc0;border-radius:20px;padding:8px 12px;font-size:13px;font-weight:700}.offering-filters button[aria-pressed=true]{color:#fff;background:#174f35;border-color:#174f35}.offering-badge{color:#385742;vertical-align:middle;background:#edf3ef;border-radius:5px;padding:2px 6px;font-size:11px;font-weight:600;display:inline-block}.calendar-card{color:#18221d;border-color:#cfd7d1}.calendar-card .month-controls strong{font-size:26px;font-weight:800}.calendar-card .month-controls .icon-button{width:32px;height:40px}.calendar-card .today-button{color:#33463a;border-color:#b7c5ba;font-size:12px;font-weight:700}.calendar-card .subtle{color:#536158;font-size:12px}.calendar-tools{flex-wrap:wrap;gap:12px;margin:20px 0}.ownership-legend{color:#174f35;font-size:12px;font-weight:700}.legend{gap:6px;font-size:12px;font-weight:750}.subscription{--event-color:#c92c86;color:#9e1c67;background:#fff0f8}.refund{--event-color:#087f70;color:#08695d;background:#e7f7f2}.listing{--event-color:#087eaf;color:#08688e;background:#eaf7fd}.legend span{border:1px solid var(--event-color);background:#fff;border-radius:20px;padding:5px 9px}.legend span:before{background:var(--event-color);width:7px;height:7px}.weekdays,.calendar-days{grid-template-columns:repeat(5,minmax(0,1fr))}.weekdays{color:#4d5952;margin-bottom:4px;font-size:13px;font-weight:700}.weekdays span{padding:8px 0}.sunday{color:#c32c39}.day{border-top:1px solid #cbd3cd;border-radius:0;align-items:flex-start;gap:7px;min-height:112px;padding:7px 3px 12px}.day.outside{opacity:1;background:#f6f8f6}.day.outside .day-number{color:#778279}.day.selected{background:#fff;border-radius:0;box-shadow:inset 0 0 0 2px #218b52}.day-number{width:28px;height:28px;font-size:17px;font-weight:750}.day.is-today:not(.selected) .day-number{color:#17663c;border:2px solid #218b52}.day-events{gap:5px}.calendar-event{letter-spacing:-.3px;text-align:left;white-space:normal;color:#17221c;border-radius:3px;min-height:27px;padding:4px 3px;font-size:13px;font-weight:700;line-height:1.5;display:flow-root;overflow:visible}.calendar-event i{float:left;background:var(--event-color);color:#fff;letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin:1px 3px 0 0;font-size:11px;font-style:normal;font-weight:700;display:inline-flex}.calendar-event span{overflow-wrap:anywhere;overflow:visible}.calendar-event.my-subscription{box-shadow:inset 0 0 0 2px #17663c}.day-events>small{color:#415c4b;text-align:left;font-size:12px;font-weight:700}.selected-day h2{font-size:17px}.selected-day h2 span{color:#56645a;font-size:13px}.schedule-row .row-copy strong{color:#18221d;font-size:15px;font-weight:700}.schedule-row .row-copy small{color:#5c6860;font-size:12px}.schedule-row .pill{font-size:12px;font-weight:700}.schedule-detail{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;padding:8px 0;display:flex}.schedule-action{flex-shrink:0;min-height:44px}.schedule-row>.icon-button{width:28px}.sale-editor{border-bottom:1px solid var(--line);margin-bottom:14px;padding:12px 0 20px}.sale-editor h3{margin:0}.detail-body .modal-actions{flex-wrap:wrap}@media (width>=701px) and (width<=1000px){.home-grid{grid-template-columns:minmax(0,1fr)}.home-aside{margin-top:20px}}@media (width<=700px){.calendar-card{border-radius:10px;margin:0 -12px;padding:18px 6px 0}.calendar-top{flex-wrap:wrap;gap:6px;padding:0 6px}.calendar-card .month-controls strong{font-size:24px}.calendar-tools{margin:16px 6px}.ownership-legend{font-size:12px}.legend{gap:5px;font-size:12px}.legend span{padding:4px 7px}.day{min-height:110px;padding:6px 2px 10px}.day-number{font-size:16px}.calendar-event{padding:4px 2px;font-size:12px}.calendar-event i{width:16px;height:16px;margin-right:2px;font-size:10px}.selected-day{margin:14px -6px 0;padding:18px 14px 5px}}.home-grid.official-calendar{display:block}.official-source{color:var(--muted,#6b7672);padding:12px 4px;font-size:12px;line-height:1.7}.official-source p{margin:3px 0}.official-source a{color:inherit;text-underline-offset:2px;text-decoration:underline}.official-source [role=alert]{color:#a2382f}[data-offering=ipo]{--offering-color:#a3226c;--offering-tint:#fff0f8}[data-offering=spac]{--offering-color:#6241ac;--offering-tint:#f1ebff}[data-offering=rights]{--offering-color:#8a5a16;--offering-tint:#fff4df}.calendar-event[data-offering],.event-icon[data-offering],.pill[data-offering],.offering-badge[data-offering]{--event-color:var(--offering-color);color:var(--offering-color);background:var(--offering-tint)}.offering-filters button[data-offering]:not([data-offering=all]){color:var(--offering-color);border-color:var(--offering-color)}.offering-filters button[data-offering]:not([data-offering=all])[aria-pressed=true]{color:#fff;background:var(--offering-color)}.offering-legend{flex-wrap:wrap;align-items:center}.offering-legend span[data-offering]{--event-color:var(--offering-color);color:var(--offering-color)}.offering-legend small{color:#536158;font-size:11px;font-weight:500}
