@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";
:root{--paper:#f7f6f2;--white:#fff;--ink:#20231f;--muted:#85877f;--line:#e8e7e1;--orange:#d47b53;--orange-pale:#fff1e8;--green:#718276;--sans:"DM Sans",sans-serif;--display:Manrope,sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:14px var(--sans);-webkit-font-smoothing:antialiased;margin:0}button,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{z-index:2;background:#f1f0eb;border-right:1px solid #e9e8e1;flex-direction:column;width:232px;padding:27px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{font:800 18px var(--display);letter-spacing:-1px;color:#282b26;align-items:center;gap:9px;padding:0 9px 45px;text-decoration:none;display:flex}.brand-mark{color:#fff;width:27px;height:27px;font:800 20px var(--display);letter-spacing:-2px;background:#d9794e;border-radius:8px;place-items:center;display:grid}.brand-mark span{vertical-align:top;font-size:11px}.brand-light{color:#85877f;font-weight:500}.side-label{color:#a09f98;font:500 9px var(--mono);letter-spacing:1.1px;margin-bottom:12px;padding:0 10px}.side-link,.recent-item{color:#6e7169;text-align:left;width:100%;height:39px;font:500 12px var(--sans);background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:0 10px;display:flex}.side-link:hover,.recent-item:hover{background:#e9e8e2}.side-link.active{color:#353932;background:#e6e5de;font-weight:600}.icon{color:#9b785f;place-items:center;min-width:13px;display:inline-grid}.side-link>.icon{color:#83877f;width:16px;font-size:15px}.new-tag{color:#bf7954;font:500 8px var(--mono);letter-spacing:.5px;margin-left:auto}.recent-label{justify-content:space-between;margin-top:38px;display:flex}.recent-label button{color:#96978e;background:0 0;border:0;font-size:18px;line-height:9px}.recent-item{flex-wrap:wrap;gap:8px;height:42px;font-size:11px}.recent-item small{color:#a2a39a;width:100%;margin-top:-12px;padding-left:22px;font-size:9px}.recent-dot{background:#e69b68;border-radius:50%;width:7px;height:7px}.dot-lilac{background:#aaa1bf}.sidebar-bottom{background:#f5f4f0;border:1px solid #e4e3dc;border-radius:8px;grid-template-columns:24px 1fr 12px;align-items:start;gap:7px;margin-top:auto;padding:12px 10px;display:grid}.help-icon{color:#74776d;background:#e7e6df;border-radius:50%;place-items:center;width:19px;height:19px;font:12px Georgia;display:grid}.sidebar-bottom strong{font-size:10px;font-weight:600}.sidebar-bottom p{color:#888b82;margin:4px 0 0;font-size:9px;line-height:1.55}.bottom-arrow{color:#a2a399;font-size:11px}.main-area{min-width:0;margin-left:232px}.topbar{background:#f7f6f2db;border-bottom:1px solid #ecebe5;justify-content:space-between;align-items:center;height:58px;padding:0 max(32px,50% - 525px);display:flex}.breadcrumbs{color:#93948c;font-size:11px}.breadcrumbs>span{color:#c3c3bc;padding:0 9px}.breadcrumbs strong{color:#51544e;font-weight:600}.top-actions{align-items:center;gap:17px;display:flex}.save-state{color:#999b92;font-size:10px}.save-state i{vertical-align:1px;background:#8da088;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block}.avatar{color:#62655d;width:26px;height:26px;font:600 10px var(--sans);background:#edebe4;border:1px solid #d9d9d1;border-radius:50%}.content{max-width:1050px;margin:0 auto;padding:37px 43px 20px}.intro{justify-content:space-between;align-items:center;min-height:168px;padding:0 33px 26px 4px;display:flex}.eyebrow,.section-kicker{font:500 9px var(--mono);letter-spacing:1.3px;color:#a0806b}.eyebrow{align-items:center;gap:8px;display:flex}.eyebrow i{background:#cf7e56;width:20px;height:1px}h1{font:500 39px/1.12 var(--display);letter-spacing:-1.6px;color:#2a2c27;margin:14px 0 10px}h1 em{letter-spacing:-1.1px;color:#a26345;font:italic 400 37px/1.1 Georgia,serif}.intro-copy{color:#777a72;max-width:400px;margin:0;font-size:12px;line-height:1.7}.intro-art{place-items:center;width:235px;height:145px;margin-right:16px;display:grid;position:relative}.art-ring{border:1px solid #e7dcd1;border-radius:50%;position:absolute;transform:rotate(-20deg)}.ring-one{width:205px;height:88px}.ring-two{border-color:#e9e4db;width:180px;height:120px;transform:rotate(37deg)}.art-center{color:#bd7954;background:#f0e7db;border:1px solid #e9dacc;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:58px;height:58px;font:22px/1 Georgia;display:flex}.art-center span{font:8px var(--mono);letter-spacing:1px;margin-top:4px}.art-note{color:#c98760;font-size:24px;position:absolute}.note-a{top:20px;left:40px}.note-b{color:#93977f;bottom:22px;right:34px}.art-caption{color:#aaa69b;font:8px var(--mono);letter-spacing:1.1px;position:absolute;bottom:0}.workspace-card{background:#fff;border:1px solid #ecebe5;border-radius:9px;padding:24px 26px 18px;box-shadow:0 3px 15px #30302005}.card-heading{justify-content:space-between;align-items:center;display:flex}.section-kicker{color:#a6a59b;letter-spacing:1.1px;font-size:8px}.section-kicker span{color:#d18358}.card-heading h2{font:600 17px var(--display);letter-spacing:-.45px;margin:6px 0 0}.text-button,.subtle-button{color:#96988f;font:10px var(--sans);background:0 0;border:0}.text-button:hover,.subtle-button:hover{color:#bb714b}.text-button .icon,.subtle-button .icon{margin-right:3px}.source-row{background:#fcfbf9;border:1px solid #eeede8;border-radius:6px;align-items:center;gap:13px;margin-top:18px;padding:13px 14px;display:flex}.source-badge{align-items:center;gap:9px;min-width:175px;display:flex}.source-symbol{color:#ad6946;background:#f7e9dd;border-radius:6px;place-items:center;width:31px;height:31px;font:18px Georgia;display:grid}.source-badge strong,.source-badge small{display:block}.source-badge strong{font-size:11px;font-weight:600}.source-badge small{color:#9a9c93;margin-top:3px;font-size:9px}.source-description{flex:1;align-items:center;gap:6px;display:flex}.music-chip{color:#777a72;background:#f3f2ed;border-radius:4px;padding:5px 8px;font-size:9px}.info-button{color:#999a92;background:0 0;border:1px solid #dcdcd4;border-radius:50%;width:16px;height:16px;font:10px Georgia}.listen-button{color:#60645c;height:29px;font:500 10px var(--sans);background:#fff;border:1px solid #e8e6df;border-radius:5px;padding:0 11px}.listen-button .icon{color:#ca7750;margin-right:5px;font-size:8px}.phrase-label{color:#999b92;font:8px var(--mono);letter-spacing:1px;justify-content:space-between;align-items:center;margin-top:20px;display:flex}.edit-hint{letter-spacing:0;font:9px var(--sans);color:#a5a69e}.notation-wrap{background:#fffefa;border:1px solid #f0efe9;border-radius:5px;margin-top:8px;padding:6px 12px 0}.staff{height:107px;position:relative}.staff-lines{flex-direction:column;justify-content:space-between;height:68px;display:flex;position:absolute;top:12px;left:28px;right:45px}.staff-lines i{background:#e8e6df;height:1px}.treble{color:#b0a397;height:79px;font-size:53px;line-height:1;position:absolute;top:3px;left:0}.notes{justify-content:space-around;align-items:center;height:84px;display:flex;position:absolute;top:0;left:43px;right:65px}.note{cursor:pointer;color:#ad6b49;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;width:42px;height:68px;padding:0;display:flex;position:relative}.note:before{content:"";width:11px;height:8px;top:var(--note-y);background:#cf8057;border-radius:50%;position:absolute;transform:rotate(-22deg);box-shadow:0 0 0 3px #f8eae0}.note .swara{top:calc(var(--note-y) + 15px);font:500 8px var(--mono);color:#9b705d;position:absolute}.note .western{font:9px var(--mono);color:#96988e;position:absolute;bottom:1px}.note:hover:before,.note.selected:before{background:#a95d3b;box-shadow:0 0 0 4px #f2d8c9}.add-note{color:#9b9c92;background:0 0;border:1px dashed #d8d6cd;border-radius:50%;width:22px;height:22px;font-size:16px;position:absolute;top:35px;right:5px}.add-note:hover{color:#c77b54;border-color:#c77b54}.beat-markers{color:#b2b2a9;font:8px var(--mono);justify-content:space-between;display:flex;position:absolute;bottom:3px;left:45px;right:55px}.notation-foot,.piano-foot{color:#9d9e96;justify-content:space-between;align-items:center;margin-top:9px;font-size:9px;display:flex}.notation-foot b{color:#d5d3cb;padding:0 6px;font-weight:400}.legend-dot{background:#cb8058;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.editing-on{color:#b56e47!important}.conversion-divider{align-items:center;gap:14px;height:43px;display:flex}.conversion-divider>span{background:#efeee8;flex:1;height:1px}.convert-icon{color:#bf754f;background:#f6eee6;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}.target-heading{margin-bottom:14px}.key-select{border:1px solid #ebeae4;border-radius:5px;align-items:center;gap:8px;height:28px;padding:0 8px;display:flex}.key-select>span{font:8px var(--mono);letter-spacing:.6px;color:#a5a69e}.key-select select{font:10px var(--sans);color:#5f625a;cursor:pointer;background:0 0;border:0;outline:none}.piano-panel{background:#fcfbf8;border:1px solid #eeede8;border-radius:6px;padding:14px 14px 10px}.piano-topline{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.piano-label{color:#999a91;font:8px var(--mono);letter-spacing:1px;display:block}.piano-subtitle{color:#a5a69e;margin-top:4px;font-size:9px;display:block}.play-controls{gap:5px;display:flex}.play-button{color:#fff;height:29px;font:500 10px var(--sans);background:#313c35;border:0;border-radius:5px;padding:0 12px}.play-button:hover{background:#516254}.play-button .icon{color:#fff;margin-right:6px;font-size:8px}.icon-button{color:#8b8d84;background:#fff;border:1px solid #e8e6df;border-radius:5px;width:29px;height:29px;font-size:8px}.piano-roll{align-items:center;gap:6px;height:56px;padding:0 4px 7px;display:flex;overflow:auto}.roll-note{color:#986248;min-width:42px;height:28px;font:9px var(--mono);background:#f2e6dc;border:0;border-bottom:2px solid #d79a75;border-radius:4px 4px 2px 2px;place-items:center;transition:transform .12s,background .12s;display:grid}.roll-note:nth-child(3n){height:39px}.roll-note:hover,.roll-note.roll-active{background:#e6c6af;transform:translateY(-2px)}.keyboard{-webkit-user-select:none;user-select:none;height:77px;padding:0 4px;display:flex;position:relative}.white-slot{flex:1;min-width:0;position:relative}.key{cursor:pointer;color:#a7a89f;width:100%;height:100%;font:8px var(--mono);background:linear-gradient(#fff,#f8f8f5);border:1px solid #d8d8d1;border-right:0;border-radius:0 0 4px 4px;justify-content:center;align-items:flex-end;padding:0 0 5px;display:flex;position:relative}.white-slot:last-child .key{border-right:1px solid #d8d8d1}.key:hover,.key.key-active{color:#ab6945;background:linear-gradient(#fff4ec,#f3d7c3)}.black-key{z-index:2;background:linear-gradient(90deg,#262b28,#424741 60%,#272b28);border:0;border-radius:0 0 3px 3px;width:56%;height:48px;position:absolute;top:0;transform:translate(-50%);box-shadow:0 2px 3px #0002}.black-key:hover{background:linear-gradient(#84583f,#634531)}.piano-dot{background:#778675}.piano-foot{margin-top:9px}.learn-card{background:#f0f0e9;border:1px solid #e9e9e1;border-radius:8px;grid-template-columns:35px 1fr 200px;align-items:start;gap:10px;margin-top:14px;padding:19px 22px;display:grid}.learn-icon{color:#838675;background:#e5e5db;border-radius:7px;place-items:center;width:27px;height:27px;font-size:17px;display:grid}.learn-copy .section-kicker{font-size:8px}.learn-copy h3{font:600 14px var(--display);letter-spacing:-.25px;margin:6px 0}.learn-copy>p{color:#777a71;max-width:520px;margin:0;font-size:10px;line-height:1.65}.learn-link{color:#a96847;font:500 10px var(--sans);background:0 0;border:0;margin-top:10px;padding:0}.learn-link span{padding-left:4px}.learn-side{border-left:1px solid #dfdfd6;flex-direction:column;gap:10px;padding-left:17px;display:flex}.learn-stat span,.learn-stat strong{display:block}.learn-stat span{font:8px var(--mono);letter-spacing:.7px;color:#9b9d92}.learn-stat strong{font:500 10px var(--sans);color:#555a52;margin-top:3px}footer{text-align:center;color:#aaa99f;padding:18px 0 5px;font-size:9px}footer span{color:#d0a184;padding:0 5px}.toast{color:#fff;opacity:0;pointer-events:none;z-index:5;background:#313b34;border-radius:6px;padding:10px 15px;font-size:11px;transition:all .2s;animation:.18s ease-out forwards toast-in;position:fixed;bottom:25px;left:calc(50% + 116px);transform:translate(-50%,12px);box-shadow:0 5px 18px #0002}@keyframes toast-in{to{transform:translate(-50%)}}.modal-backdrop{z-index:4;background:#25282066;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:10px;width:min(540px,100%);padding:30px;position:relative;box-shadow:0 15px 50px #0002}.modal-close{color:#8b8e85;background:0 0;border:0;font-size:24px;position:absolute;top:12px;right:16px}.modal h2{font:600 22px var(--display);letter-spacing:-.6px;margin:8px 0}.modal>p{color:#777a72;font-size:12px;line-height:1.7}.idea-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:19px 0;display:grid}.idea-grid>div{background:#f7f6f2;border-radius:6px;padding:12px}.idea-grid span{color:#be7753;font:9px var(--mono);display:block}.idea-grid strong{font:600 11px var(--display);margin:8px 0 5px;display:block}.idea-grid p{color:#888a82;margin:0;font-size:10px;line-height:1.5}.modal .modal-note{color:#92948b;border-top:1px solid #efeee8;padding-top:12px;font-size:10px}button:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #be7753}@media (max-width:1000px){.sidebar{width:190px}.main-area{margin-left:190px}.content,.topbar{padding-left:25px;padding-right:25px}.learn-card{grid-template-columns:30px 1fr 160px}.source-badge{min-width:145px}.source-description{gap:4px}.music-chip{padding:5px 6px}.toast{left:calc(50% + 95px)}}@media (max-width:750px){.sidebar{display:none}.main-area{margin:0}.topbar{height:50px;padding:0 16px}.content{padding:24px 14px}.intro{min-height:140px;padding:0 5px 15px}.intro-art{width:135px;margin:0}.ring-one{width:130px}.ring-two{width:112px}.art-center{width:48px;height:48px}.art-note{font-size:19px}.note-a{left:10px}.note-b{right:9px}.art-caption{letter-spacing:.5px;font-size:6px}.intro-copy{max-width:340px;font-size:11px}h1{font-size:31px}h1 em{font-size:29px}.workspace-card{padding:18px 14px 14px}.source-row{flex-wrap:wrap;gap:10px}.source-badge{min-width:calc(100% - 90px)}.source-description{flex-wrap:wrap;order:3;width:100%}.listen-button{margin-left:auto}.learn-card{grid-template-columns:28px 1fr}.learn-side{border-top:1px solid #dfdfd6;border-left:0;grid-column:2;grid-template-columns:repeat(3,1fr);padding:12px 0 0;display:grid}.phrase-label{font-size:7px}.edit-hint{font-size:8px}.note{width:30px}.key-select{height:26px}.piano-roll{gap:4px}.roll-note{min-width:34px}.top-actions{gap:9px}.save-state{font-size:9px}.toast{left:50%}}@media (max-width:430px){.intro-art{opacity:.75;width:100px}.ring-one{width:100px}.ring-two{width:92px}.art-center{width:40px;height:40px;font-size:17px}.art-caption{display:none}.note .swara{font-size:7px}.note .western{font-size:8px}.treble{font-size:45px}.staff-lines{left:25px;right:30px}.beat-markers{left:38px;right:37px}.notes{left:36px;right:44px}.learn-card{padding:15px}.learn-side{gap:6px}.learn-stat strong{font-size:9px}.topbar{padding:0 12px}.save-state{font-size:8px}.breadcrumbs{font-size:10px}.source-row{padding:11px 9px}.music-chip{padding:5px;font-size:8px}.intro{align-items:flex-start}.intro-art{margin-top:16px}.content{padding-left:10px;padding-right:10px}.workspace-card{padding-left:11px;padding-right:11px}.edit-hint{text-align:right;max-width:48%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
