:root{color:#293d34;font-synthesis:none;background:#f4f0e7;font-family:system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0}header{border-bottom:1px solid #d5dace;justify-content:space-between;align-items:center;max-width:1120px;margin:auto;padding:28px 40px;display:flex}.brand{color:#293d34;font-family:serif;font-size:28px;text-decoration:none}.brand span{letter-spacing:3px;margin-left:18px;font-family:system-ui;font-size:12px}.edition{letter-spacing:2px;color:#718075;font-size:10px}main{max-width:760px;margin:auto;padding:48px 26px}.intro{margin-bottom:42px}.eyebrow{letter-spacing:2px;color:#6f7e70;font-size:11px}h1{margin:12px 0;font-family:Noto Serif SC,serif;font-size:34px;font-weight:400;line-height:1.6}.intro>p:last-child,.connect>p{color:#718075;font-size:14px;line-height:1.9}.panel,.card{background:#fffcf5;border:1px solid #dedfd3;border-radius:4px;margin-bottom:26px;padding:30px;box-shadow:0 8px 30px #263a2e05}h2{font-size:21px;font-weight:500}h2 span{color:#6e7a71;font-size:13px}label{margin:18px 0 8px;font-size:13px;display:block}input[type=password]{background:0 0;border:1px solid #b8c3b7;border-radius:3px;width:100%;padding:14px;font-size:16px}.check{align-items:center;gap:8px;display:flex}button{font:inherit;cursor:pointer;color:#fff;background:#314e3d;border:1px solid #314e3d;border-radius:3px;padding:11px 18px;font-size:13px}button:disabled{opacity:.5;cursor:default}.secondary{color:#314e3d;background:0 0;border-color:#c2cabb}.quiet{color:#7c8075;background:0 0;border:0;padding-left:8px}.selected{background:#e4eadc}a{color:#476c51}.connect>a{margin-left:18px;font-size:12px}.toolbar{justify-content:space-between;align-items:center;display:flex}.toolbar h2{margin:8px 0}.sync{color:#718075;margin-bottom:24px;font-size:12px;line-height:1.8}.hint,.error,.notice{border-radius:3px;padding:13px 16px;font-size:13px;line-height:1.7}.hint{color:#78673e;background:#ece6d8}.error{color:#8f4739;background:#f3ded8}.notice{color:#426349;background:#e3eadc}.card-head{letter-spacing:1px;color:#88907e;justify-content:space-between;font-size:10px;display:flex}.card h3{color:#6a7b69;margin:25px 0;font-size:13px;font-weight:500}blockquote{white-space:pre-wrap;color:#293d34;overflow-wrap:anywhere;margin:0 0 28px;font-family:Noto Serif SC,serif;font-size:19px;line-height:1.95}.thought{white-space:pre-wrap;border-top:1px solid #e3e5d9;margin:20px 0;padding-top:12px;font-size:14px;line-height:1.85}.actions{flex-wrap:wrap;gap:9px;margin-top:25px;display:flex}.book-link{margin-top:20px;font-size:11px;display:inline-block}.completed{border-left:3px solid #91a481}.empty{text-align:center;color:#718075;padding:42px 18px}.empty p{font-size:13px;line-height:1.9}footer{text-align:center;color:#8a9282;margin:44px 0 15px;font-size:11px;line-height:2.3}@media (width<=600px){header{padding:20px 22px}.edition{display:none}main{padding:28px 18px}h1{font-size:27px}.panel,.card{padding:24px 21px}.intro{margin-bottom:30px}.toolbar button{padding:9px 12px}}nav{border-bottom:1px solid #d5dace;justify-content:space-between;gap:5px;margin:-15px 0 35px;padding-bottom:14px;display:flex}nav a{white-space:nowrap;padding:8px 6px;font-size:13px;text-decoration:none}nav a[aria-current=page]{color:#293d34;background:#e3eadc;border-radius:3px}input[type=search],select{font:inherit;background:#fffcf5;border:1px solid #b8c3b7;border-radius:3px;min-width:0;max-width:100%;padding:12px;font-size:14px}.filters{flex-wrap:wrap;gap:10px;margin:25px 0;display:flex}.filters input{width:100%}.filters select{flex:1}.tabs{gap:10px;margin:25px 0;display:flex}.excerpt{white-space:pre-wrap;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.9;display:-webkit-box;overflow:hidden}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.stats .panel{margin:0;padding:22px}.stats strong{font-family:serif;font-size:32px;font-weight:400}dl{grid-template-columns:1fr auto;gap:16px;font-size:14px;display:grid}dd{margin:0}.book-options{max-height:350px;padding:0 3px;overflow:auto}.history-row h3{font-size:16px}.history-row blockquote{margin-top:24px}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:2px solid #68895d}@media (width<=400px){nav{gap:0}nav a{padding:9px 5px;font-size:12px}.tabs button{padding:10px 12px}.stats .panel{padding:16px}}.stats .duration{font-size:21px;line-height:1.7;display:block}
