:root{font-family:Inter,system-ui,sans-serif;color:#1b2617;background:#f7f8f4;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button{font:inherit}.skip-link{position:fixed;top:-4rem;left:1rem;background:#172d17;color:#fff;padding:.7rem 1rem;z-index:20}.skip-link:focus{top:1rem}.shell{min-height:100vh}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e4e8df;display:flex;gap:16px;height:64px;padding:0 24px}.brand{color:#172d17;font-weight:800;letter-spacing:-.03em;text-decoration:none}.menu-button{background:transparent;border:0;color:#172d17;cursor:pointer;display:none;font-size:1.25rem}.credit-indicator{align-items:center;color:#44513e;display:flex;font-size:.82rem;gap:8px;margin-left:auto}.credit-dot{background:#2f7d32;border-radius:50%;height:9px;width:9px}.credit-dot.warning,.meter .warning{background:#c68a16}.credit-dot.critical,.meter .critical{background:#c83e32}.extra-credit{color:#306b79;font-weight:650}.account-button,.plan-link,.button-secondary,.button-primary,.button-danger{border:0;border-radius:8px;cursor:pointer;font:inherit;padding:9px 12px}.account-button,.plan-link,.button-secondary{background:#eaf0e6;color:#1b3a1c}.button-primary{background:#173b19;color:#fff}.button-danger{background:#b42318;color:#fff}.layout{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 64px)}.sidebar{background:#f1f4ed;border-right:1px solid #e1e6dc;padding:20px 12px}.sidebar nav{display:grid;gap:4px}.nav-heading{color:#687262;font-size:.72rem;font-weight:750;letter-spacing:.08em;margin:18px 12px 4px;text-transform:uppercase}.nav-heading:first-child{margin-top:0}.sidebar nav button{background:transparent;border:0;border-radius:7px;color:#475244;cursor:pointer;padding:10px 12px;text-align:left}.sidebar nav button.active,.sidebar nav button:hover{background:#dfead9;color:#173b19;font-weight:650}.plan-link{margin-top:24px;text-align:left;width:100%}main{max-width:920px;padding:56px clamp(24px,6vw,80px);width:100%}.eyebrow{color:#5b7058;font-size:.82rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}h1{font-size:clamp(2rem,4vw,3.1rem);letter-spacing:-.04em;margin:.2rem 0 2rem}h2,h3{color:#172d17}.card,.state-card{background:#fff;border:1px solid #e3e8df;border-radius:14px;box-shadow:0 2px 7px #22331a08;padding:28px}.card h2,.state-card h2{margin-top:0}.empty-state{max-width:620px}.state-card{align-items:center;display:flex;gap:12px;max-width:620px}.state-card p{margin:0}.error-state{align-items:flex-start;display:block}.error-state p{margin:0 0 18px}.spinner{animation:spin .8s linear infinite;border:3px solid #d8e2d3;border-radius:50%;border-top-color:#2f7d32;display:inline-block;flex:0 0 auto;height:22px;width:22px}@keyframes spin{to{transform:rotate(360deg)}}.card-heading,.account-profile{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.card-heading h2{margin-bottom:6px}.card-heading p,.muted{color:#5b7058}.meter{background:#e6ebe2;border-radius:999px;height:10px;margin:24px 0 12px;overflow:hidden}.meter span{background:#2f7d32;border-radius:inherit;display:block;height:100%;transition:width .2s ease}.credit-total{font-size:1.05rem}.credit-total strong{color:#173b19;font-size:1.65rem}.credit-details{display:flex;gap:32px;margin:20px 0}.credit-details div{min-width:120px}.credit-details dt{color:#5b7058;font-size:.85rem}.credit-details dd{font-size:1.1rem;font-weight:700;margin:3px 0 0}.account-card hr{border:0;border-top:1px solid #e4e8df;margin:24px 0}.account-profile{align-items:center}.account-profile h3,.account-profile p{margin:0}.account-profile p{color:#5b7058;margin-top:4px}.toast{align-items:center;background:#173b19;border-radius:9px;bottom:24px;box-shadow:0 8px 24px #18261833;color:#fff;display:flex;gap:12px;max-width:380px;padding:12px 14px;position:fixed;right:24px;z-index:40}.toast button{background:transparent;border:0;color:inherit;cursor:pointer;font-size:1.35rem;line-height:1;padding:0 2px}.dialog-backdrop{background:#172d1766;display:grid;top:0;right:0;bottom:0;left:0;padding:24px;place-items:center;position:fixed;z-index:30}.dialog{background:#fff;border-radius:14px;box-shadow:0 16px 45px #14251455;max-height:calc(100vh - 48px);overflow:auto;padding:24px;width:min(100%,480px)}.dialog.dialog-wide{width:min(100%,760px)}.dialog h2{margin-top:0}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:22px}.button-row{display:flex;flex-wrap:wrap;gap:8px}.button-row input{background:#fff;border:1px solid #b9c5b4;border-radius:7px;font:inherit;min-width:180px;padding:9px 10px}.auth-card{max-width:480px}.auth-card form,.dialog label{display:grid;gap:7px;margin-top:16px}.auth-card label{display:grid;font-weight:650;gap:7px}.auth-card input,.dialog input,.dialog select{background:#fff;border:1px solid #b9c5b4;border-radius:7px;font:inherit;padding:10px;width:100%}.auth-card form .button-primary{justify-self:start;margin-top:6px}.form-error{color:#b42318;font-weight:600}.notice{background:#e9f6e7;border-radius:8px;color:#1b5922;padding:10px 12px}.user-list{display:grid;margin-top:22px}.user-row{align-items:center;border-top:1px solid #e4e8df;display:flex;gap:16px;justify-content:space-between;padding:14px 0}.user-row div{display:grid;gap:3px;min-width:0}.user-row span{color:#5b7058;font-size:.9rem}button:focus-visible,a:focus-visible{outline:3px solid #175cd3;outline-offset:3px}.capture-form{display:grid;gap:16px;margin-top:20px}.capture-form label,.dialog label{display:grid;font-weight:650;gap:7px}.capture-form input,.capture-form textarea,.capture-form select,.filters input,.filters select,.dialog textarea{background:#fff;border:1px solid #b9c5b4;border-radius:7px;font:inherit;padding:10px;width:100%}.capture-form textarea,.dialog textarea{resize:vertical}.library-search{display:grid;font-weight:650;gap:7px;margin:22px 0}.library-search input{border:1px solid #b9c5b4;border-radius:7px;font:inherit;padding:10px}.form-grid,.filters{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.filters{margin:20px 0}.item-list{display:grid}.item-row,.project-row{border-top:1px solid #e4e8df;display:flex;gap:18px;justify-content:space-between;padding:18px 0}.item-content{min-width:0}.item-content h3,.project-row h3{margin:7px 0}.item-content p,.project-row p{color:#4e5d4b;margin:0 0 8px;white-space:pre-wrap}.item-content a{color:#175cd3;overflow-wrap:anywhere}.item-content small,.project-row small{color:#5b7058;display:block;margin-top:8px}.item-meta{color:#687262;display:flex;flex-wrap:wrap;font-size:.78rem;gap:8px;text-transform:capitalize}.item-meta span,.status-pill{background:#edf3e9;border-radius:999px;padding:4px 8px}.item-actions{align-items:flex-start;flex:0 0 auto;justify-content:flex-end}.project-row{align-items:center}.status-pill{color:#315e32;font-size:.82rem}.hub-content{display:grid;gap:16px}.hub-content>p{margin:0;white-space:pre-wrap}.hub-section{border-top:1px solid #e4e8df;padding-top:16px}.hub-section h3{font-size:1rem;margin:0 0 8px}.hub-list{display:grid;gap:8px}.hub-row{background:#f6f8f3;border-radius:8px;display:grid;gap:3px;padding:10px}.hub-row strong{color:#1c3a1d}.hub-row span,.hub-row small{color:#5b7058}.hub-row a{color:#175cd3;width:fit-content}.recorder,.practice-result{background:#f4f8f1;border:1px solid #dce8d6;border-radius:10px;display:grid;gap:12px;padding:16px}.recorder p{margin:0}.recorder small{color:#5b7058}.checkbox-label{align-items:center;display:flex!important;font-weight:500!important;gap:8px!important}.checkbox-label input{height:18px;width:18px}.audio-preview{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.audio-preview audio{max-width:100%}.diagnostic-list{display:grid;gap:8px}.diagnostic-list p{background:#fff;border-radius:7px;margin:0;padding:9px}.sr-only{height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px;clip:rect(0,0,0,0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:700px){.menu-button,.layout{display:block}.sidebar{display:none}.sidebar.open{display:block;min-height:calc(100vh - 64px);position:absolute;width:250px;z-index:10}.topbar{padding:0 16px}.account-button{display:none}main{padding:36px 24px}.card-heading,.account-profile{align-items:stretch;flex-direction:column}.credit-details{gap:18px}.user-row{align-items:stretch;flex-direction:column}.form-grid,.filters{grid-template-columns:1fr}.item-row,.project-row{align-items:stretch;flex-direction:column}.item-actions{justify-content:flex-start}.toast{bottom:16px;left:16px;right:16px}}
