@font-face{font-family:system-local;src:local("Inter"),local("SF Pro Display")}*{box-sizing:border-box}body{margin:0;background:#f8f9f5;color:#253a35;font-family:system-local,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.5;cursor:wait}:focus-visible{outline:3px solid #74a58c;outline-offset:4px}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#172c29;color:#e5eee7;padding:35px 22px;display:flex;flex-direction:column}.brand{font-size:33px;font-weight:650;letter-spacing:-1.5px;display:flex;align-items:center;gap:10px;padding:0 12px}.brand-star{font-size:43px;color:#c8edba;line-height:1}.web-badge{font-size:9px;letter-spacing:1.5px;font-weight:500;border:1px solid #5d7166;border-radius:4px;padding:4px;margin:6px 0 0 3px;color:#abc0af}.workspace{margin:40px 0 35px;display:flex;align-items:center;gap:11px;padding:15px 10px;border-block:1px solid #334640;font-size:12px;font-weight:550}.workspace small{display:block;color:#9caf9f;font-size:10px;margin-top:5px;font-weight:400}.avatar{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#dce7d5;color:#334d39}.status-dot,.storage-label i{width:6px;height:6px;border-radius:50%;background:#b2d7a2}.status-dot{margin-left:auto}.nav-label{font-size:9px;letter-spacing:1.8px;color:#8ea496;padding-left:14px;margin:0 0 14px}nav{display:grid;gap:7px}nav a{display:flex;align-items:center;gap:13px;padding:13px;border-radius:7px;color:#aebfb3;font-size:13px}nav a.active{background:#31463b;color:#d8edc9}nav a span{font-size:21px;width:22px;line-height:1}nav a b{margin-left:auto;background:#49613e;padding:3px 7px;border-radius:4px;font-size:10px;font-weight:500}.sidebar-bottom{margin-top:auto}.storage-label{font-size:10px;display:flex;align-items:center;gap:7px;color:#b4c2b6}.sidebar-bottom p{font-size:17px;line-height:1.6;color:#c9d4c6;margin:23px 0 40px;letter-spacing:-.3px}.sidebar-footer{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#7f9888}.sidebar-footer span{letter-spacing:0}.shell{margin-left:248px;min-height:100dvh;display:flex;flex-direction:column}.topbar{padding:22px 42px;border-bottom:1px solid #e4e8e0;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;min-height:86px}.topbar>div{display:flex;gap:13px}#breadcrumb{color:#7c8a80}#breadcrumb span{padding:0 11px;color:#a5aea4}.button{display:inline-flex;justify-content:center;align-items:center;gap:7px;padding:11px 17px;border:1px solid #d8dfd4;border-radius:7px;background:transparent;color:#354a3c;font-size:12px;font-weight:550;transition:background .15s,transform .15s;white-space:nowrap}.button:hover{background:#e9eee4}.button.primary{background:#c7e9b5;border-color:#c7e9b5;color:#233d29}.button.primary:hover{background:#b5dca1}.button.dark{background:#254439;color:#fff;border-color:#254439}.button.quiet{border-color:transparent}.button.large{padding:15px 26px;font-size:14px}.icon-button{border:0;background:transparent;font-size:24px;color:#7f8e80;padding:2px 8px}main{padding:46px 42px 28px;max-width:1400px;width:100%;margin:auto;flex:1}.eyebrow{font-size:10px;letter-spacing:1.5px;color:#87917e;font-weight:550;margin:0 0 12px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:29px}h1{font-size:34px;letter-spacing:-1.2px;font-weight:550;margin:0 0 11px;line-height:1.2}h2{font-size:20px;font-weight:550;letter-spacing:-.5px;margin:0}p{line-height:1.7}.muted{color:#829080}.page-heading p{font-size:12px;color:#80907f;margin:0}.date{color:#7a8877;font-size:11px;white-space:nowrap;padding-bottom:3px}.summary{display:grid;grid-template-columns:1.4fr 1fr 1fr;border:1px solid #e0e5da;background:#fff;border-radius:11px;overflow:hidden;margin-bottom:28px}.stat{padding:25px 27px;border-right:1px solid #e6eadd}.stat:last-child{border:0}.stat-label{color:#7b8a77;font-size:11px;display:flex;justify-content:space-between}.stat-value{font-size:34px;letter-spacing:-1px;margin-top:14px;font-weight:550;line-height:1}.stat-value small{font-size:12px;font-weight:400;letter-spacing:0;color:#95a08c;margin-left:8px}.stat.accent{background:#edf3e5}.stat.accent .stat-value{color:#42652f}.section-top{display:flex;justify-content:space-between;align-items:center;margin:32px 0 18px}.section-title{display:flex;gap:10px;align-items:center}.count-pill{font-size:10px;padding:3px 7px;color:#78866f;background:#e8eddf;border-radius:5px}.deck-table{background:#fff;border:1px solid #e0e5da;border-radius:10px;overflow:hidden}.table-head,.deck-row{display:grid;grid-template-columns:minmax(180px,1fr) 70px 70px 90px 115px;align-items:center;gap:16px;padding:19px 24px}.table-head{font-size:9px;text-transform:uppercase;letter-spacing:.9px;color:#8b9683;background:#fcfdf9;border-bottom:1px solid #e7ebdf}.deck-row{min-height:92px;border-bottom:1px solid #e9eddf}.deck-row:last-child{border:0}.deck-name{display:flex;align-items:center;gap:15px;min-width:0}.deck-icon{width:40px;height:44px;flex-shrink:0;display:grid;place-items:center;font-size:24px;border:1px solid #d9e4cb;background:#f0f5e9;border-radius:8px;color:#6f8a53;transform:rotate(-3deg)}.deck-name strong{display:block;font-size:14px;font-weight:550;overflow-wrap:anywhere}.deck-name small{display:block;font-size:10px;color:#94a08b;margin-top:6px}.deck-number{font-size:14px;font-variant-numeric:tabular-nums}.blue{color:#6a8cb3}.orange{color:#b59657}.green{color:#60844e}.empty{padding:46px 25px;text-align:center}.empty-symbol{font-size:40px;color:#8ca476;margin-bottom:14px}.empty h2{margin:10px 0}.empty p{color:#829080;font-size:13px;max-width:390px;margin:12px auto 22px}.tip{display:flex;align-items:flex-start;gap:15px;margin:25px 0;background:#f0f3e9;padding:20px 24px;border-radius:9px;color:#718164}.tip>span{font-size:23px;line-height:1.4}.tip strong{font-size:11px;font-weight:550;color:#526846}.tip p{font-size:11px;margin:5px 0 0;line-height:1.7}.footer{display:flex;justify-content:space-between;gap:20px;padding:22px 42px 28px;font-size:10px;color:#909b87}.footer a{color:#697d60}.search-bar{display:flex;gap:12px;margin-bottom:20px}.search-bar input{flex:1;min-width:0}.search-bar select{width:210px}input,textarea,select{border:1px solid #dce2d5;background:#fff;border-radius:7px;padding:12px;color:#334738;width:100%}textarea{resize:vertical;min-height:110px;line-height:1.6}label{display:block;font-size:12px;color:#687c5b;margin:18px 0 8px}.note-item{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:22px;padding:20px 24px;border-bottom:1px solid #e8ecdf}.note-item:last-child{border:0}.note-field{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.6;overflow-wrap:anywhere}.note-field small{display:block;color:#8a987e;font-size:9px;margin-bottom:5px}.notes-meta{font-size:11px;color:#87977b;margin:15px 0}.review-top{display:flex;align-items:center;justify-content:space-between;margin:5px 0 35px;gap:20px}.review-counters{display:flex;gap:16px;font-variant-numeric:tabular-nums;font-size:12px}.review-card{background:#fff;border:1px solid #dfe5d7;border-radius:14px;overflow:hidden;box-shadow:0 7px 30px #1d412507;max-width:820px;margin:0 auto}.card-meta{text-align:center;font-size:9px;letter-spacing:1.5px;color:#97a18c;padding:23px;border-bottom:1px solid #f0f3eb}.card-frame{width:100%;height:340px;display:block;border:0;background:white}.review-actions{max-width:820px;margin:24px auto;text-align:center;min-height:100px}.shortcut-hint{font-size:10px;color:#96a18a;margin-top:15px}.ratings{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rating{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid #dce3d2;border-radius:8px;padding:14px;color:#4f6541}.rating span{font-size:10px;opacity:.65}.rating:first-child{color:#b46d60}.rating:nth-child(2){color:#ae944e}.rating:nth-child(3){background:#e4f0db;border-color:#cddfbe}.rating:hover{filter:brightness(.97)}dialog{border:1px solid #dce4d4;border-radius:14px;background:#fafbf6;color:#253a35;width:min(560px,calc(100% - 32px));padding:26px;max-height:90dvh;box-shadow:0 30px 100px #17302026}dialog::backdrop{background:#172c2966;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;font-size:21px;font-weight:550;letter-spacing:-.5px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-help{font-size:11px;color:#839476;line-height:1.7;margin:14px 0}.form-error{font-size:12px;color:#ad5147;margin-top:16px}#toast{position:fixed;bottom:25px;left:calc(50% + 124px);transform:translateX(-50%);background:#254439;color:#f6fff0;padding:14px 23px;border-radius:9px;font-size:12px;box-shadow:0 5px 25px #17302026;max-width:90vw;z-index:5}.loading{text-align:center;padding:80px;color:#829080}.error-state{padding:35px;background:#fff5ed;border:1px solid #e6d7c6;border-radius:10px}.error-state h2{margin-bottom:12px}.error-state p{color:#967e63}.mobile-label{display:none}@media(min-width:1500px){main{padding-top:65px}}@media(max-width:1100px){.sidebar{width:215px;padding-inline:18px}.shell{margin-left:215px}main{padding:32px 25px}.topbar{padding:18px 25px}.table-head,.deck-row{grid-template-columns:minmax(150px,1fr) 45px 45px 65px 100px;gap:12px;padding-inline:19px}.footer{padding-inline:25px}#toast{left:calc(50% + 107px)}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:17px 20px;flex-direction:row;align-items:center;justify-content:space-between}.brand{font-size:25px;padding:0;gap:6px}.brand-star{font-size:31px}.web-badge{font-size:8px;padding:3px}.workspace,.nav-label,.sidebar-bottom{display:none}nav{display:flex;gap:4px}nav a{padding:8px;font-size:11px;gap:5px}nav a span{font-size:16px;width:auto}nav a b{display:none}.shell{margin:0}.topbar{padding:14px 20px;min-height:70px}.topbar>div{gap:6px}.topbar .button{font-size:11px;padding:10px}.topbar .quiet span{display:none}#breadcrumb{font-size:10px}#breadcrumb span{padding:0 5px}main{padding:29px 20px 10px}h1{font-size:29px}.page-heading{align-items:flex-start}.date{display:none}.summary{grid-template-columns:1fr 1fr 1fr;margin-bottom:23px}.stat{padding:17px 13px}.stat-label{font-size:9px;min-height:23px}.stat-value{font-size:29px;margin-top:10px}.stat-value small{display:block;font-size:9px;margin:7px 0 0}.section-top{margin-top:25px}.table-head{display:none}.deck-row{grid-template-columns:1fr 70px;gap:12px;padding:19px 15px}.deck-number{display:none}.deck-row .button{padding:10px 8px;font-size:10px}.deck-name{gap:10px}.deck-name strong{font-size:13px}.deck-icon{height:38px;width:33px;font-size:21px}.tip{padding:17px}.footer{padding:20px;font-size:9px}.footer>span{max-width:160px}.search-bar{flex-wrap:wrap}.search-bar select{width:100%}.note-item{grid-template-columns:1fr auto;gap:12px;padding:17px}.note-item .note-field:nth-child(2){display:none}.review-top{margin-bottom:22px}.review-top .button{padding:9px}.review-counters{gap:10px;font-size:11px}.card-frame{height:330px}.ratings{gap:7px}.rating{padding:12px 6px;font-size:11px}.review-actions .large{width:100%}.card-meta{padding:18px}#toast{left:50%;width:max-content}.button.quiet{padding-inline:4px}}

/* Mobile editor, review tools, personal login and Telegram layout. */
[hidden]{display:none!important}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.editor-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:20px;padding:9px;background:#edf2e7;border-radius:8px}.editor-toolbar button{border:1px solid #d6dfcc;border-radius:5px;background:#fff;min-width:34px;min-height:34px;color:#49603c;padding:5px 9px}.editor-toolbar .format-label{font-size:10px;margin:0 0 0 auto}.editor-toolbar select{width:auto;padding:7px;font-size:11px}.deck-settings{border:0;background:none;color:#849576;padding:5px 0 0;font-size:10px}.deck-settings:hover{text-decoration:underline}.note-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:2px;max-width:210px}.note-controls .button{font-size:10px;padding:6px 8px}.tags{font-size:9px;color:#8a9b7a;max-width:100%;overflow-wrap:anywhere;flex-basis:100%;text-align:right}.danger{color:#ad6256}.card-meta{position:relative}.card-menu{position:absolute;right:15px;top:14px;z-index:2;text-align:left;font-size:12px;letter-spacing:0}.card-menu summary{cursor:pointer;padding:4px 12px;list-style:none;font-size:17px}.card-menu[open]{background:#f8faf3;border:1px solid #dce4d3;border-radius:8px;box-shadow:0 5px 20px #253a351a}.card-menu button{display:block;border:0;background:none;color:#536b43;padding:14px;width:100%;text-align:left;font-size:12px;white-space:nowrap}.stats-panel{padding:26px;margin-bottom:22px;border:1px solid #dfe5d6;border-radius:11px;background:#fff}.activity-chart{height:190px;display:flex;gap:5px;align-items:end;margin:25px 0 35px;padding-top:22px}.activity-day{flex:1;height:100%;position:relative;display:flex;align-items:end;min-width:2px}.activity-day span{display:block;width:100%;background:#9dbb7c;border-radius:3px 3px 0 0;min-height:2px}.activity-day b{display:none;position:absolute;top:-20px;font-size:10px;font-weight:400}.activity-day:hover b{display:block}.activity-day small{display:none;position:absolute;bottom:-20px;font-size:8px;color:#8c997e;white-space:nowrap}.activity-day:nth-child(5n+1) small{display:block}.distribution{display:grid;grid-template-columns:repeat(5,1fr);margin-top:24px;gap:15px}.distribution span{display:block;font-size:11px;color:#899a7b}.distribution strong{display:block;margin-top:12px;font-size:25px;font-weight:500}.login-panel{max-width:420px;margin:50px auto}.login-panel .button{margin-top:20px;width:100%}.app-locked nav,.app-locked .footer a,.app-locked #import-button,.app-locked #add-button,.app-locked #undo-button{pointer-events:none;opacity:.4}.telegram-app .sidebar{display:none}.telegram-app .shell{margin-left:0}.telegram-app main{padding-bottom:calc(25px + var(--tg-safe-bottom,0px))}.telegram-app #toast{left:50%}.telegram-app .footer{padding-bottom:calc(24px + var(--tg-safe-bottom,0px))}
:root[data-theme="dark"]{color-scheme:dark}:root[data-theme="dark"] body{background:#18211d;color:#dce6d5}:root[data-theme="dark"] .topbar,:root[data-theme="dark"] .footer{border-color:#344134}:root[data-theme="dark"] .summary,:root[data-theme="dark"] .deck-table,:root[data-theme="dark"] .stats-panel,:root[data-theme="dark"] .review-card,:root[data-theme="dark"] dialog,:root[data-theme="dark"] .rating,:root[data-theme="dark"] .editor-toolbar button{background:#222d25;border-color:#3a4836;color:#dce6d5}:root[data-theme="dark"] .stat.accent,:root[data-theme="dark"] .tip,:root[data-theme="dark"] .editor-toolbar,:root[data-theme="dark"] .table-head,:root[data-theme="dark"] .card-menu[open]{background:#2a3828;color:#bbd2a6}:root[data-theme="dark"] .stat.accent .stat-value,:root[data-theme="dark"] .tip strong,:root[data-theme="dark"] .card-menu button{color:#bdd59d}:root[data-theme="dark"] input,:root[data-theme="dark"] textarea,:root[data-theme="dark"] select{background:#19231c;border-color:#43533c;color:#dbe6d4}:root[data-theme="dark"] .button{color:#c3d6b0;border-color:#42543a}:root[data-theme="dark"] .button.primary{color:#233d29}:root[data-theme="dark"] .button.dark{background:#496441;color:#fff}:root[data-theme="dark"] .deck-row,:root[data-theme="dark"] .stat,:root[data-theme="dark"] .note-item,:root[data-theme="dark"] .card-meta{border-color:#35422f}:root[data-theme="dark"] .rating:nth-child(3){background:#3e5131}:root[data-theme="dark"] .button:hover{background:#3d5033}:root[data-theme="dark"] .deck-icon,:root[data-theme="dark"] .count-pill{background:#34472b;border-color:#4a603d;color:#aec594}
@media(max-width:760px){.topbar{flex-wrap:wrap;gap:7px}.topbar>div{margin-left:auto;gap:3px}.topbar .icon-button{font-size:21px;padding:5px}.editor-grid{grid-template-columns:1fr;gap:0}input,textarea,select{font-size:16px}dialog{padding:20px;max-height:92dvh;overscroll-behavior:contain}.editor-toolbar{gap:5px}.editor-toolbar button{min-height:40px}.review-top{flex-wrap:wrap}.review-counters{width:100%;justify-content:center}.review-actions{position:sticky;bottom:0;background:#f8f9f5;padding:12px 0 calc(12px + var(--tg-safe-bottom,0px));margin-bottom:0;z-index:1}:root[data-theme="dark"] .review-actions{background:#18211d}.rating{min-height:62px}.note-item{grid-template-columns:1fr;gap:8px}.note-item .note-field:nth-child(2){display:block;color:#8c9d7d;font-size:12px}.note-controls{max-width:none;justify-content:flex-start}.tags{text-align:left}.note-controls .button{padding:10px;font-size:11px}.distribution{grid-template-columns:repeat(2,1fr);gap:25px}.stats-panel{padding:20px}.activity-chart{gap:3px;height:150px}.footer{flex-wrap:wrap}.footer #logout-button{padding:0;font-size:10px}.login-panel{margin:30px auto}.sidebar{gap:10px}.sidebar nav a{font-size:10px;padding:6px}.sidebar nav a span{display:none}}

.telegram-app .shell{min-height:var(--tg-viewport-stable-height,100dvh)}.telegram-app .topbar{padding-top:calc(18px + var(--tg-safe-top,0px))}

/* Let navigation wrap rather than clip on narrow phones and at larger text sizes. */
@media(max-width:760px){
  .sidebar{flex-wrap:wrap}
  .sidebar nav{min-width:0;flex-wrap:wrap}
}
@media(max-width:380px){
  .sidebar nav{width:100%;justify-content:space-between}
}

.settings-panel{max-width:820px}.settings-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.checkbox-label{display:flex;gap:9px;align-items:center}.checkbox-label input{width:auto}.markdown-summary{margin-top:22px;padding:18px;border:1px solid #9dbb7c;border-radius:9px}.markdown-summary h3{margin:0}.settings-panel [role="status"]{font-size:12px;overflow-wrap:anywhere}.settings-panel input,.settings-panel select{min-width:0}.topbar a.icon-button{display:inline-flex;align-items:center;justify-content:center}
@media(max-width:760px){.topbar>div{flex-wrap:wrap;justify-content:flex-end}.settings-actions .button{white-space:normal}.settings-panel{padding:18px}}
