.id-photo-page{min-height:60svh}.id-photo-breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink-faint);padding:20px 0 0}.id-photo-breadcrumb a{color:var(--blue-700);text-decoration:none}.id-photo-breadcrumb a:hover{text-decoration:underline}.id-photo-hero{padding:32px 0 44px}.id-photo-hero h1{margin:0;font-size:28px;font-weight:700;display:flex;align-items:center;gap:12px}.id-photo-hero-intro{max-width:640px;margin:14px 0 0;color:var(--ink-muted);font-size:14px}.id-photo-workspace{padding:40px 0 80px}.id-photo-layout{display:grid;grid-template-columns:minmax(0,480px) minmax(0,560px);gap:40px;align-items:start}.id-photo-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:380px;border:2px dashed var(--line-strong);border-radius:12px;padding:48px 24px;color:var(--ink-muted);text-align:center;cursor:pointer;transition:all .2s ease;background:var(--paper-raised)}.id-photo-dropzone:hover{border-color:var(--blue-700);background:var(--blue-050)}.id-photo-dropzone strong{font-size:14px;font-weight:600;color:var(--ink-muted);margin-bottom:4px}.id-photo-dropzone span{font-size:12px;color:var(--ink-faint)}.id-photo-preview-area{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--paper-raised);display:flex;align-items:center;justify-content:center;min-height:380px}.id-photo-preview-area img{max-width:100%;max-height:360px;border-radius:8px;object-fit:contain}.id-photo-controls{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;padding:24px;display:grid;gap:24px}.id-photo-control-group{margin-bottom:0}.id-photo-control-group h3{margin:0 0 10px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.id-photo-control-group h3 span{font-weight:400;color:var(--ink-faint);font-size:12px}.id-photo-color-options{display:flex;gap:10px;flex-wrap:wrap}.id-photo-color-swatch{width:44px;height:44px;border-radius:8px;border:2px solid var(--line);cursor:pointer;transition:all .15s ease;position:relative;padding:0;display:grid;place-items:center}.id-photo-color-swatch:hover{border-color:var(--line-strong)}.id-photo-color-swatch.is-active{border-color:var(--blue-700);box-shadow:0 0 0 2px color-mix(in srgb,var(--blue-700) 30%,transparent)}.id-photo-color-swatch.is-active:after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;font-size:14px;font-weight:700;color:white;text-shadow:0 1px 2px rgba(0,0,0,.5)}.id-photo-color-swatch.is-active svg{display:none}.id-photo-color-custom{background:conic-gradient(from 0deg,#ff0000,#ffff00,#00ff00,#00ffff,#0000ff,#ff00ff,#ff0000);position:relative;overflow:hidden}.id-photo-color-custom input[type=color]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;border:none;padding:0}.id-photo-size-options{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.id-photo-size-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit;color:var(--ink)}.id-photo-size-chip:hover{border-color:var(--line-strong)}.id-photo-size-chip.is-active{border-color:var(--blue-700);background:var(--blue-050)}.id-photo-size-icon{width:24px;background:var(--line-strong);border-radius:2px;flex-shrink:0}.id-photo-size-info{display:flex;flex-direction:column}.id-photo-size-chip strong{font-size:13px;font-weight:500}.id-photo-size-chip span{font-size:11px;color:var(--ink-faint);font-family:var(--font-mono)}.id-photo-actions{display:flex;gap:10px;margin-top:24px}.id-photo-actions .button-primary{flex:1 1;font-weight:600}.id-photo-actions .button-primary,.id-photo-actions .button-quiet{padding:12px 20px;border-radius:8px;font-size:14px}.id-photo-processing-overlay{position:fixed;inset:0;background:rgba(16,23,34,.8);z-index:100;display:flex;align-items:center;justify-content:center}.id-photo-processing-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:16px;padding:40px 48px;text-align:center}.id-photo-spinner{width:48px;height:48px;border:3px solid var(--line);border-top-color:var(--blue-700);border-radius:50%;animation:id-photo-spin .8s linear infinite;margin:0 auto 16px}.id-photo-processing-card p{margin:0;color:var(--ink-muted);font-size:14px}.id-photo-processing-step{font-size:12px;color:var(--ink-faint);margin-top:8px}.id-photo-output{margin-top:32px;padding-top:32px;border-top:1px solid var(--line)}.id-photo-output-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.id-photo-output-header h2{margin:0;font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}.id-photo-output-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.id-photo-output-card{margin:0;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;padding:12px;text-align:center}.id-photo-output-card img{display:block;width:100%;background:white;border-radius:4px;margin-bottom:8px;object-fit:contain}.id-photo-output-card figcaption{display:flex;flex-direction:column;gap:2px}.id-photo-output-card figcaption strong{font-size:12px;font-weight:500}.id-photo-output-card figcaption span{color:var(--ink-faint);font-size:11px}.id-photo-output-card figcaption .text-link{margin-top:6px;font-size:11px}.id-photo-error{margin-top:16px;padding:16px;border-left:3px solid var(--coral);background:var(--paper-tint);border-radius:0 8px 8px 0}.id-photo-error p{margin:0 0 10px;color:var(--coral);font-size:13px}.ocr-page{min-height:60svh}.ocr-hero{padding:32px 0 44px}.ocr-hero .back-link{display:inline-flex;align-items:center;gap:5px;color:var(--ink-muted);font-size:12px;text-decoration:none;margin-bottom:20px}.ocr-hero .back-link:hover{color:var(--blue-700)}.ocr-hero h1{margin:0;font-size:28px;font-weight:700;display:flex;align-items:center;gap:12px}.ocr-hero-intro{max-width:640px;margin:14px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.6}.ocr-workspace{padding:0 0 80px}.ocr-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.ocr-upload-panel{display:flex;flex-direction:column;gap:20px}.ocr-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:320px;border:2px dashed var(--line-strong);border-radius:12px;padding:48px 24px;color:var(--ink-muted);text-align:center;cursor:pointer;transition:all .2s ease;background:var(--paper-raised)}.ocr-upload-area:hover{border-color:var(--blue-700);background:var(--blue-050)}.ocr-upload-area-has-image{padding:16px;border-style:solid;cursor:default}.ocr-upload-area-has-image:hover{border-color:var(--line-strong);background:var(--paper-raised)}.ocr-image-preview{position:relative;border-radius:8px;overflow:hidden;width:100%}.ocr-image-preview img{display:block;max-width:100%;max-height:400px;object-fit:contain;margin:0 auto}.ocr-remove-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;background:rgba(0,0,0,.6);color:white;border:none;border-radius:6px;cursor:pointer;transition:background .12s ease}.ocr-remove-btn:hover{background:rgba(0,0,0,.8)}.ocr-tips{padding:16px 20px;background:var(--paper-raised);border:1px solid var(--line);border-radius:12px}.ocr-tips-title{font-size:12px;font-weight:600;color:var(--ink-muted);margin-bottom:10px}.ocr-tips ul{font-size:12px;color:var(--ink-faint);line-height:1.7;padding-left:16px;margin:0}.ocr-tips li{margin-bottom:2px}.ocr-controls{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;padding:24px;gap:24px}.ocr-control-group,.ocr-controls{display:flex;flex-direction:column}.ocr-control-group{gap:10px}.ocr-control-label{font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.ocr-control-label-hint{font-weight:400;color:var(--ink-faint);font-size:12px}.ocr-lang-options{display:flex;gap:8px;flex-wrap:wrap}.ocr-lang-btn{padding:8px 16px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:13px;color:var(--ink);font-family:inherit;transition:all .15s ease;display:flex;align-items:center;gap:6px}.ocr-lang-btn:hover{border-color:var(--line-strong)}.ocr-lang-btn.is-active{border-color:var(--blue-700);background:var(--blue-050);color:var(--blue-700)}.ocr-lang-flag{font-size:15px}.ocr-format-options{display:flex;gap:8px}.ocr-format-btn{flex:1 1;padding:10px 14px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;text-align:left;font-family:inherit;color:var(--ink);transition:all .15s ease}.ocr-format-btn:hover{border-color:var(--line-strong)}.ocr-format-btn.is-active{border-color:var(--blue-700);background:var(--blue-050)}.ocr-format-btn strong{font-size:13px;font-weight:600;display:block;margin-bottom:2px}.ocr-format-btn span{font-size:11px;color:var(--ink-faint);display:block}.ocr-actions{display:flex;gap:10px}.ocr-actions .button-primary{flex:1 1;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px}.ocr-actions .button,.ocr-actions .button-primary{padding:12px 20px;border-radius:8px;font-size:14px}.ocr-btn-spinner{animation:id-photo-spin .8s linear infinite}.ocr-result-panel{margin-top:32px;padding-top:32px;border-top:1px solid var(--line);gap:16px}.ocr-output-box,.ocr-result-panel{display:flex;flex-direction:column}.ocr-output-box{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;overflow:hidden}.ocr-output-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.ocr-output-title{font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.ocr-output-check{color:var(--green,#5dba8b)}.ocr-output-actions{display:flex;gap:6px}.ocr-ghost-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:transparent;color:var(--blue-700);border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .12s ease}.ocr-ghost-btn:hover{background:var(--blue-050)}.ocr-output-body{padding:20px;min-height:200px;max-height:400px;overflow-y:auto}.ocr-output-text{font-size:14px;line-height:1.8;color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit}.ocr-output-text.is-markdown{font-family:var(--font-mono);font-size:13px;line-height:1.7}.ocr-stats{display:flex;gap:20px;padding:12px 20px;border-top:1px solid var(--line);font-size:11px;color:var(--ink-faint)}.ocr-stat strong{color:var(--ink-muted);font-weight:600}.ocr-result-actions{display:flex;gap:10px}.ocr-result-actions .button-primary{font-weight:600}.ocr-result-actions .button,.ocr-result-actions .button-primary{flex:1 1;padding:12px 20px;border-radius:8px;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px}.ocr-processing-overlay{position:fixed;inset:0;background:rgba(16,23,34,.8);z-index:100;display:flex;align-items:center;justify-content:center}.ocr-processing-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:16px;padding:40px 48px;text-align:center}.ocr-processing-spinner{width:48px;height:48px;border:3px solid var(--line);border-top-color:var(--blue-700);border-radius:50%;animation:id-photo-spin .8s linear infinite;margin:0 auto 16px}.ocr-processing-card p{margin:0;color:var(--ink-muted);font-size:14px}.ocr-processing-step{font-size:12px;color:var(--ink-faint);margin-top:8px}.ocr-error{margin-top:16px;padding:16px;border-left:3px solid var(--coral);background:var(--paper-tint);border-radius:0 8px 8px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.ocr-error p{margin:0;color:var(--coral);font-size:13px}.vt-page{min-height:60svh}.vt-hero{padding:32px 0 44px}.vt-hero .back-link{display:inline-flex;align-items:center;gap:5px;color:var(--ink-muted);font-size:12px;text-decoration:none;margin-bottom:20px}.vt-hero .back-link:hover{color:var(--blue-700)}.vt-hero h1{margin:0;font-size:28px;font-weight:700;display:flex;align-items:center;gap:12px}.vt-hero-intro{max-width:640px;margin:14px 0 0;color:var(--ink-muted);font-size:14px;line-height:1.6}.vt-workspace{padding:0 0 80px}.vt-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}.vt-upload-panel{gap:20px}.vt-upload-area,.vt-upload-panel{display:flex;flex-direction:column}.vt-upload-area{align-items:center;justify-content:center;gap:12px;min-height:320px;border:2px dashed var(--line-strong);border-radius:12px;padding:48px 24px;color:var(--ink-muted);text-align:center;cursor:pointer;transition:all .2s ease;background:var(--paper-raised)}.vt-upload-area:hover{border-color:var(--blue-700);background:var(--blue-050)}.vt-upload-area-has-video{padding:16px;border-style:solid;cursor:default}.vt-upload-area-has-video:hover{border-color:var(--line-strong);background:var(--paper-raised)}.vt-video-preview{position:relative;border-radius:8px;overflow:hidden;width:100%;display:flex;align-items:center;justify-content:center;background:#000}.vt-video-preview video{display:block;max-width:100%;max-height:360px}.vt-video-meta{display:flex;align-items:center;justify-content:space-between;padding:10px 4px 4px;font-size:11px;color:var(--ink-faint)}.vt-video-meta span:first-child{display:flex;align-items:center;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.vt-remove-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;background:rgba(0,0,0,.6);color:white;border:none;border-radius:6px;cursor:pointer;transition:background .12s ease}.vt-remove-btn:hover{background:rgba(0,0,0,.8)}.vt-tips{padding:16px 20px;background:var(--paper-raised);border:1px solid var(--line);border-radius:12px}.vt-tips-title{font-size:12px;font-weight:600;color:var(--ink-muted);margin-bottom:10px}.vt-tips ul{font-size:12px;color:var(--ink-faint);line-height:1.7;padding-left:16px;margin:0}.vt-tips li{margin-bottom:2px}.vt-controls{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;padding:24px;gap:24px}.vt-control-group,.vt-controls{display:flex;flex-direction:column}.vt-control-group{gap:10px}.vt-control-label{font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px}.vt-control-label-hint{font-weight:400;color:var(--ink-faint);font-size:12px}.vt-lang-options{display:flex;gap:8px;flex-wrap:wrap}.vt-lang-btn{padding:8px 16px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:13px;color:var(--ink);font-family:inherit;transition:all .15s ease;display:flex;align-items:center;gap:6px}.vt-lang-btn:hover{border-color:var(--line-strong)}.vt-lang-btn.is-active{border-color:var(--blue-700);background:var(--blue-050);color:var(--blue-700)}.vt-lang-flag{font-size:15px}.vt-format-options{display:flex;gap:8px}.vt-format-btn{flex:1 1;padding:10px 14px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;text-align:left;font-family:inherit;color:var(--ink);transition:all .15s ease}.vt-format-btn:hover{border-color:var(--line-strong)}.vt-format-btn.is-active{border-color:var(--blue-700);background:var(--blue-050)}.vt-format-btn strong{font-size:13px;font-weight:600;display:block;margin-bottom:2px}.vt-format-btn span{font-size:11px;color:var(--ink-faint);display:block}.vt-checkbox{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:var(--paper-tint);border:1px solid var(--line);border-radius:8px;cursor:pointer;transition:all .15s ease}.vt-checkbox:hover{border-color:var(--line-strong)}.vt-checkbox input[type=checkbox]{margin-top:2px;accent-color:var(--blue-700);flex-shrink:0}.vt-checkbox-body{display:flex;flex-direction:column;gap:2px}.vt-checkbox-body strong{font-size:13px;font-weight:600}.vt-checkbox-body span{font-size:11px;color:var(--ink-faint)}.vt-actions{display:flex;gap:10px}.vt-actions .button-primary{flex:1 1;font-weight:600;display:flex;align-items:center;justify-content:center;gap:6px}.vt-actions .button,.vt-actions .button-primary{padding:12px 20px;border-radius:8px;font-size:14px}.vt-btn-spinner{animation:id-photo-spin .8s linear infinite}.vt-result-panel{margin-top:32px;padding-top:32px;border-top:1px solid var(--line);gap:16px}.vt-output-box,.vt-result-panel{display:flex;flex-direction:column}.vt-output-box{background:var(--paper-raised);border:1px solid var(--line);border-radius:12px;overflow:hidden}.vt-output-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line)}.vt-output-title{font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.vt-output-check{color:var(--green,#5dba8b)}.vt-output-actions{display:flex;gap:6px}.vt-ghost-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:transparent;color:var(--blue-700);border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;font-family:inherit;transition:background .12s ease}.vt-ghost-btn:hover{background:var(--blue-050)}.vt-output-body{padding:20px;min-height:200px;max-height:400px;overflow-y:auto}.vt-output-text{font-size:14px;line-height:1.8;color:var(--ink);white-space:pre-wrap;word-break:break-word;margin:0;font-family:inherit}.vt-stats{display:flex;gap:20px;padding:12px 20px;border-top:1px solid var(--line);font-size:11px;color:var(--ink-faint)}.vt-stat strong{color:var(--ink-muted);font-weight:600}.vt-result-actions{display:flex;gap:10px}.vt-result-actions .button-primary{font-weight:600}.vt-result-actions .button,.vt-result-actions .button-primary{flex:1 1;padding:12px 20px;border-radius:8px;font-size:14px;display:flex;align-items:center;justify-content:center;gap:6px}.vt-processing-overlay{position:fixed;inset:0;background:rgba(16,23,34,.8);z-index:100;display:flex;align-items:center;justify-content:center}.vt-processing-card{background:var(--paper-raised);border:1px solid var(--line);border-radius:16px;padding:40px 48px;text-align:center}.vt-processing-spinner{width:48px;height:48px;border:3px solid var(--line);border-top-color:var(--blue-700);border-radius:50%;animation:id-photo-spin .8s linear infinite;margin:0 auto 16px}.vt-processing-card p{margin:0;color:var(--ink-muted);font-size:14px}.vt-processing-step{font-size:12px;color:var(--ink-faint);margin-top:8px}.vt-progress{width:320px;max-width:60vw;height:6px;margin:16px auto 0;border-radius:999px;background:var(--line);overflow:hidden}.vt-progress-fill{height:100%;border-radius:999px;background:var(--blue-700);transition:width .2s ease}.vt-cancel-btn{margin-top:20px;padding:6px 16px;font-size:12px;border-radius:6px}.vt-error{margin-top:16px;padding:16px;border-left:3px solid var(--coral);background:var(--paper-tint);border-radius:0 8px 8px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.vt-error p{margin:0;color:var(--coral);font-size:13px}.vt-error-note{margin-top:8px!important;color:var(--ink-faint)!important;font-size:12px!important;font-style:italic}.compress-page{min-height:100vh}.compress-hero{padding:80px 0 48px;border-bottom:1px solid var(--line)}.compress-hero h1{margin:12px 0 0;font-size:32px;font-weight:700}.compress-hero-intro{max-width:640px;margin:16px 0 0;color:var(--ink-muted);font-size:15px;line-height:1.6}.compress-workspace{padding:48px 0 80px}.compress-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px}.compress-upload-panel{display:flex;flex-direction:column;gap:24px}.compress-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;border:2px dashed var(--line-strong);border-radius:12px;background:var(--paper-tint);cursor:pointer;transition:all .2s ease;min-height:200px}.compress-upload-area:hover{border-color:var(--blue-700);background:var(--paper-raised)}.compress-upload-area svg{color:var(--ink-muted)}.compress-upload-area strong{font-size:15px;color:var(--ink)}.compress-upload-area span{font-size:12px;color:var(--ink-muted)}.compress-upload-area-has-image{padding:16px;border-style:solid;cursor:default}.compress-image-preview{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.compress-image-preview img{max-width:100%;max-height:300px;border-radius:8px;object-fit:contain}.compress-remove-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;border:none;background:rgba(0,0,0,.6);color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.compress-remove-btn:hover{background:rgba(0,0,0,.8)}.compress-tips{padding:16px;background:var(--paper-tint);border-radius:8px;border:1px solid var(--line)}.compress-tips-title{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:8px}.compress-tips ul{margin:0;padding-left:20px;font-size:12px;color:var(--ink-muted);line-height:1.6}.compress-controls{display:flex;flex-direction:column;gap:24px}.compress-control-group{display:flex;flex-direction:column;gap:12px}.compress-control-label{font-size:13px;font-weight:600;color:var(--ink)}.compress-control-label-hint{font-weight:400;color:var(--ink-muted);font-size:12px}.compress-quality-slider{display:flex;align-items:center;gap:16px}.compress-quality-slider input[type=range]{flex:1 1;height:6px;border-radius:3px;background:var(--line);outline:none;-webkit-appearance:none}.compress-quality-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--blue-700);cursor:pointer;border:2px solid var(--paper);box-shadow:0 2px 6px rgba(0,0,0,.2)}.compress-quality-slider input[type=range]:disabled{opacity:.5}.compress-quality-value{font-size:14px;font-weight:600;color:var(--blue-700);min-width:40px;text-align:right}.compress-quality-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-faint);margin-top:-8px}.compress-format-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.compress-format-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);cursor:pointer;transition:all .2s ease}.compress-format-btn:hover{border-color:var(--blue-700)}.compress-format-btn.is-active{border-color:var(--blue-700);background:color-mix(in srgb,var(--blue-700) 8%,var(--paper))}.compress-format-btn strong{font-size:13px;color:var(--ink)}.compress-format-btn span{font-size:10px;color:var(--ink-muted)}.compress-actions{display:flex;gap:12px;margin-top:8px}.compress-result-panel{margin-top:40px;padding:24px;background:var(--paper-raised);border:1px solid var(--line);border-radius:12px}.compress-result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.compress-result-header h3{margin:0;font-size:16px;font-weight:600;color:var(--green,#5dba8b)}.compress-comparison{display:flex;align-items:center;justify-content:center;gap:32px;margin-bottom:24px}.compress-comparison-item{display:flex;flex-direction:column;align-items:center;gap:8px}.compress-comparison-label{font-size:12px;color:var(--ink-muted);font-weight:500}.compress-comparison-image{width:200px;height:150px;border-radius:8px;overflow:hidden;background:var(--paper-tint);display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}.compress-comparison-image img{max-width:100%;max-height:100%;object-fit:contain}.compress-comparison-size{font-size:13px;font-weight:600;color:var(--ink)}.compress-comparison-arrow{font-size:24px;color:var(--blue-700)}.compress-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;padding-top:16px;border-top:1px solid var(--line)}.compress-stat{font-size:12px;color:var(--ink-muted)}.compress-stat strong{display:block;font-size:14px;color:var(--ink);margin-top:4px}.compress-error{margin-top:24px;padding:16px;border-left:3px solid var(--coral);background:var(--paper-tint);border-radius:0 8px 8px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.compress-error p{margin:0;color:var(--coral);font-size:13px}.compress-processing-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.compress-processing-card{background:var(--paper);padding:32px 48px;border-radius:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.compress-processing-spinner{width:40px;height:40px;border:3px solid var(--line);border-top-color:var(--blue-700);border-radius:50%;animation:compress-spin .8s linear infinite}@keyframes compress-spin{to{transform:rotate(1turn)}}.compress-processing-card p{margin:0;color:var(--ink-muted);font-size:14px}.qr-page{min-height:100vh}.qr-hero{padding:80px 0 48px;border-bottom:1px solid var(--line)}.qr-hero h1{margin:12px 0 0;font-size:32px;font-weight:700}.qr-hero-intro{max-width:640px;margin:16px 0 0;color:var(--ink-muted);font-size:15px;line-height:1.6}.qr-workspace{padding:48px 0 80px}.qr-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px}.qr-input-panel{gap:24px}.qr-input-group,.qr-input-panel{display:flex;flex-direction:column}.qr-input-group{gap:8px}.qr-input-label{font-size:13px;font-weight:600;color:var(--ink)}.qr-textarea{width:100%;min-height:120px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-family:inherit;font-size:14px;resize:vertical;transition:border-color .2s}.qr-textarea:focus{outline:none;border-color:var(--blue-700)}.qr-textarea::placeholder{color:var(--ink-faint)}.qr-control-group{display:flex;flex-direction:column;gap:12px}.qr-control-label{font-size:13px;font-weight:600;color:var(--ink)}.qr-control-label-hint{font-weight:400;color:var(--ink-muted);font-size:12px}.qr-size-slider{display:flex;align-items:center;gap:16px}.qr-size-slider input[type=range]{flex:1 1;height:6px;border-radius:3px;background:var(--line);outline:none;-webkit-appearance:none}.qr-size-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--blue-700);cursor:pointer;border:2px solid var(--paper);box-shadow:0 2px 6px rgba(0,0,0,.2)}.qr-size-value{font-size:14px;font-weight:600;color:var(--blue-700);min-width:50px;text-align:right}.qr-color-inputs{display:flex;gap:24px}.qr-color-input{display:flex;align-items:center;gap:8px}.qr-color-input label{font-size:12px;color:var(--ink-muted)}.qr-color-input input[type=color]{width:36px;height:36px;border:1px solid var(--line);border-radius:6px;cursor:pointer;padding:2px;background:var(--paper)}.qr-color-hex{font-size:12px;color:var(--ink-faint);font-family:monospace}.qr-ec-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.qr-ec-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;border:1px solid var(--line);border-radius:8px;background:var(--paper);cursor:pointer;transition:all .2s ease}.qr-ec-btn.is-active,.qr-ec-btn:hover{border-color:var(--blue-700)}.qr-ec-btn.is-active{background:color-mix(in srgb,var(--blue-700) 8%,var(--paper))}.qr-ec-btn strong{font-size:12px;color:var(--ink)}.qr-ec-btn span{font-size:10px;color:var(--ink-muted)}.qr-actions{display:flex;gap:12px;margin-top:8px}.qr-preview-panel{display:flex;flex-direction:column;gap:24px}.qr-preview-box{aspect-ratio:1;max-height:400px;border:1px solid var(--line);border-radius:12px;background:var(--paper-raised);display:flex;align-items:center;justify-content:center;padding:24px}.qr-preview-image{max-width:100%;max-height:100%;object-fit:contain}.qr-preview-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--ink-faint)}.qr-preview-placeholder svg{opacity:.3}.qr-preview-placeholder p{margin:0;font-size:13px}.qr-preview-actions{display:flex;gap:12px}.qr-error{padding:12px 16px;border-left:3px solid var(--coral);background:var(--paper-tint);border-radius:0 8px 8px 0}.qr-error p{margin:0;color:var(--coral);font-size:13px}.knowledge-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.35em .45em;margin:0 0 13px;color:var(--blue-700);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.11em;line-height:1.35;text-transform:uppercase}.knowledge-crumb__item{display:inline-flex;align-items:center;gap:.45em;min-width:0}.knowledge-crumb__sep{color:color-mix(in srgb,var(--blue-700) 72%,transparent)}.knowledge-crumb a{color:inherit;text-decoration:none}.knowledge-crumb a:hover{text-decoration:underline;text-underline-offset:3px}.knowledge-crumb__current{overflow:hidden;max-width:min(42ch,100%);text-overflow:ellipsis;white-space:nowrap}.knowledge-crumb a:focus-visible,.knowledge-crumb__current:focus-visible{outline:2px solid var(--blue-500);outline-offset:3px}.diary-blank-e__rail .knowledge-crumb{margin:0}.diary-day .knowledge-crumb{margin:26px 0 0}.crystal-doc-head .knowledge-crumb{margin:0 0 14px}.notes-doc .knowledge-crumb{margin-bottom:22px}.knowledge-menu{--amber:#ffd43b;position:relative}.knowledge-menu-panel{position:absolute;z-index:5;top:78px;left:50%;display:block;width:min(640px,calc(100vw - 32px));padding:14px 18px 0;border-radius:10px;background:var(--paper-raised);box-shadow:var(--panel-top-shadow),var(--shadow);opacity:0;visibility:hidden;pointer-events:none;transform:translateX(-50%) translateY(-8px);transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1),visibility .2s}.knowledge-menu[data-state=open] .knowledge-menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.knowledge-menu-eyebrow{margin:0 0 10px;color:var(--blue-700);font-family:var(--font-mono);font-size:10px;font-weight:650;letter-spacing:.16em;text-align:left;text-transform:uppercase}.knowledge-menu-columns{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.knowledge-menu-column{display:grid;align-content:start;gap:2px;padding:0 16px;border-right:0}.knowledge-menu-column:first-child{padding-left:0}.knowledge-menu-column+.knowledge-menu-column{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--blue-700) 16%,transparent)}.knowledge-menu-column:last-child{padding-right:0}.knowledge-menu-column a{display:flex;align-items:center;gap:8px;min-height:30px;padding:0 8px;border-radius:6px;color:var(--ink-muted);font-size:13px;text-decoration:none}.knowledge-menu-column a:focus-visible,.knowledge-menu-column a:hover{color:var(--blue-700);background:transparent}.knowledge-menu-column a svg{flex:none;color:var(--blue-700)}.knowledge-menu-column a:not(.knowledge-menu-heading) svg{transition:transform .16s ease}.knowledge-menu-column a:not(.knowledge-menu-heading):focus-visible svg,.knowledge-menu-column a:not(.knowledge-menu-heading):hover svg{transform:translateX(5px)}.knowledge-menu-heading{margin-bottom:4px;font-weight:700}.knowledge-menu-footer{position:relative;z-index:1;display:flex;justify-content:flex-end;margin:4px 0 0;padding:4px 4px 14px;border-top:0}.knowledge-menu-footer a{display:inline-flex;align-items:center;gap:6px;color:var(--blue-700);font-size:13px;font-weight:650;text-decoration:none;background-image:linear-gradient(var(--amber),var(--amber));background-repeat:no-repeat;background-position:0 100%;background-size:0 2px;transition:background-size .16s ease}.knowledge-menu-footer a svg{transition:transform .16s ease}.knowledge-menu-footer a:focus-visible,.knowledge-menu-footer a:hover{text-decoration:none;background-size:100% 2px}.knowledge-menu-footer a:focus-visible svg,.knowledge-menu-footer a:hover svg{transform:translateX(5px)}@media (prefers-reduced-motion:reduce){.knowledge-menu-column a:not(.knowledge-menu-heading) svg,.knowledge-menu-footer a,.knowledge-menu-footer a svg{transition:none}}.knowledge-page{--amber:#ffd43b;min-height:100svh;background:radial-gradient(90% 48% at 50% -10%,color-mix(in srgb,var(--blue-500) 14%,transparent),transparent 68%),linear-gradient(180deg,color-mix(in srgb,var(--blue-050) 90%,var(--paper)) 0,color-mix(in srgb,var(--blue-050) 28%,var(--paper)) 46%,var(--paper) 78%)}.knowledge-page .knowledge-hero{padding:var(--top-pad) 0 0;background:transparent;text-align:left}.knowledge-hero .eyebrow{margin-bottom:12px;color:var(--blue-700);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.knowledge-hero h1{margin:0 0 10px;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:600;letter-spacing:-.03em;line-height:1.08}.knowledge-subtitle{max-width:40rem;margin:0;color:var(--ink-muted);font-size:16px;line-height:1.7}.knowledge-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:32px 0 0;padding:22px 0;border-radius:2px;background:color-mix(in srgb,var(--paper-raised) 88%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--blue-100) 55%,transparent),0 16px 36px color-mix(in srgb,var(--blue-700) 9%,transparent)}.knowledge-stats div{min-width:0;padding:0 24px}.knowledge-stats div+div{padding-left:24px;border-left:0}.knowledge-stats dt{margin:0 0 4px;color:var(--ink-faint);font-size:12px}.knowledge-stats dd{margin:0;color:var(--blue-800);font-size:1.7rem;font-weight:600;line-height:1.1}.knowledge-sections{padding:18px 0 28px}.knowledge-section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto auto;row-gap:12px;column-gap:0;border-radius:2px;background:color-mix(in srgb,var(--paper-raised) 92%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--blue-100) 55%,transparent),0 16px 36px color-mix(in srgb,var(--blue-700) 9%,transparent)}.knowledge-card{display:grid;grid-row:span 4;grid-template-rows:subgrid;align-content:start;min-width:0;padding:26px 24px 18px;border:0;border-radius:0;background:transparent;scroll-margin-top:96px}.knowledge-card+.knowledge-card{box-shadow:inset 1px 0 0 color-mix(in srgb,var(--blue-700) 16%,transparent)}:root[data-theme=dark] .knowledge-latest-empty,:root[data-theme=dark] .knowledge-section-grid,:root[data-theme=dark] .knowledge-stats{box-shadow:0 1px 0 color-mix(in srgb,var(--blue-700) 18%,transparent),0 18px 40px color-mix(in srgb,#000 46%,transparent)}.knowledge-card header{display:flex;align-items:center;justify-content:space-between}.knowledge-card-icon{display:grid;place-items:center;color:var(--blue-700)}.knowledge-card-count{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px}.knowledge-card h2{margin:0;font-size:1.35rem;letter-spacing:0}.knowledge-card>p{margin:0;color:var(--ink-muted);font-size:13px;line-height:1.6}.knowledge-card ul{display:grid;gap:2px;margin:0;padding:0;border-top:0;list-style:none}.knowledge-card li a{display:flex;align-items:center;gap:8px;width:100%;min-height:34px;padding:4px 0;border-radius:6px;color:var(--ink-muted);font-size:13px;text-decoration:none}.knowledge-card li a span{min-width:0}.knowledge-card li a svg{flex:none;color:var(--blue-700);transition:transform .16s ease}.knowledge-card li a:focus-visible,.knowledge-card li a:hover{color:var(--blue-700);background:transparent}.knowledge-card li a:hover svg{transform:translateX(4px)}.knowledge-latest{padding:8px 0 72px}.knowledge-latest h2{margin:0 0 18px;font-size:1.5rem;letter-spacing:0}.knowledge-latest-list{margin:0;padding:0;border-top:0;list-style:none}.knowledge-latest-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:baseline;padding:16px 0;border-bottom:0}.knowledge-latest-list li+li{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--blue-700) 12%,transparent)}.knowledge-latest-list li>a{font-size:16px;font-weight:700;text-decoration:none;overflow-wrap:anywhere}.knowledge-latest-list li>a:hover{color:var(--blue-700)}.knowledge-latest-meta{display:inline-flex;gap:14px;color:var(--ink-faint);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.knowledge-latest-empty{margin:0;padding:28px 22px;border:0;border-radius:2px;background:color-mix(in srgb,var(--paper-raised) 92%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--blue-100) 55%,transparent),0 16px 36px color-mix(in srgb,var(--blue-700) 9%,transparent);color:var(--ink-muted);font-size:14.5px;line-height:1.7;text-align:center}.knowledge-archive{padding:0 0 88px}.knowledge-archive-inner{display:flex;align-items:center;justify-content:center;gap:18px;padding:8px 0 28px;border-top:0}.knowledge-archive-inner p{margin:0;color:var(--ink-muted);font-size:14px}.knowledge-archive-inner a{display:inline-flex;align-items:center;gap:6px;color:var(--blue-700);font-size:14px;font-weight:700;text-decoration:none;background-image:linear-gradient(var(--amber),var(--amber));background-repeat:no-repeat;background-position:0 100%;background-size:0 2px;transition:background-size .16s ease}.knowledge-archive-inner a:focus-visible,.knowledge-archive-inner a:hover{text-decoration:none;background-size:100% 2px}@media (max-width:900px){.knowledge-section-grid,.knowledge-stats{grid-template-columns:1fr;grid-template-rows:auto}.knowledge-card{display:grid;grid-row:auto;grid-template-rows:auto;gap:12px}.knowledge-card+.knowledge-card{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--blue-700) 16%,transparent)}.knowledge-menu-panel{padding:16px 16px 0}.knowledge-menu-columns{grid-template-columns:1fr}.knowledge-menu-column{padding:10px 0;border-right:0;border-bottom:1px solid var(--line)}.knowledge-menu-column:last-child{border-bottom:0}.knowledge-menu-footer{margin:10px -16px 0;padding:10px 16px}}@media (max-width:640px){.knowledge-page .knowledge-hero{padding-bottom:0}.knowledge-stats div,.knowledge-stats div+div{padding:14px 20px}.knowledge-stats div+div{box-shadow:inset 0 1px 0 color-mix(in srgb,var(--blue-700) 12%,transparent)}.knowledge-latest-list li{grid-template-columns:1fr;gap:6px}.knowledge-archive-inner{flex-direction:column;gap:10px}}.course-container{max-width:860px;padding-top:40px}.course-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:28px;color:var(--ink-muted);font-size:13px;text-decoration:none}.course-back:focus-visible,.course-back:hover{color:var(--blue-700)}.course-header{justify-content:space-between;gap:32px;margin-bottom:40px}.course-header,.course-header-main{display:flex;align-items:flex-start}.course-header-main{gap:18px;min-width:0}.course-icon{display:grid;width:46px;height:46px;flex:none;place-items:center;border-radius:11px;color:var(--blue-700);background:var(--blue-050)}.course-header h1{margin:0 0 8px;font-size:clamp(1.7rem,3.5vw,2.1rem);letter-spacing:0;line-height:1.15}.course-header p{margin:0;color:var(--ink-muted);font-size:14px;line-height:1.6}.course-progress{display:grid;flex:none;justify-items:end;gap:2px;padding-top:4px}.course-progress strong{font-size:1.5rem;line-height:1.1}.course-progress span{color:var(--ink-faint);font-size:11px}.course-progress-track{width:140px;height:5px;margin-top:8px;overflow:hidden;border-radius:3px;background:var(--line)}.course-progress-bar{height:100%;border-radius:3px;background:var(--blue-700)}.course-outline{display:grid;gap:14px}.course-unit{border:1px solid var(--line);border-radius:9px;background:var(--paper-raised)}.course-unit summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;cursor:pointer;list-style:none}.course-unit summary::-webkit-details-marker{display:none}.course-unit-title{font-size:15px;font-weight:700}.course-unit-meta{display:inline-flex;align-items:center;gap:10px;color:var(--ink-faint);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.course-unit-chevron-open,.course-unit[open] .course-unit-chevron-closed{display:none}.course-unit[open] .course-unit-chevron-open{display:inline}.course-lesson-list{display:grid;margin:0;padding:0 8px 10px;list-style:none}.course-lesson-list li>a,.course-lesson-pending{display:flex;align-items:center;gap:9px;min-height:42px;padding:6px 12px;border-radius:6px;font-size:14px}.course-lesson-list li>a{color:var(--ink);text-decoration:none}.course-lesson-list li>a:focus-visible,.course-lesson-list li>a:hover{background:var(--paper-tint)}.course-lesson-list li>a svg{flex:none;color:var(--blue-700);transition:transform .16s ease}.course-lesson-list li>a:hover svg{transform:translateX(3px)}.course-lesson-index{flex:none;color:var(--ink-faint);font-family:var(--font-mono);font-size:10px}.course-lesson-title{min-width:0;overflow-wrap:anywhere}.course-lesson-meta{margin-left:auto;font-family:var(--font-mono);font-size:11px;white-space:nowrap}.course-lesson-list li.is-pending .course-lesson-index,.course-lesson-list li.is-pending .course-lesson-title,.course-lesson-meta{color:var(--ink-faint)}.course-lesson-pending svg{flex:none;color:var(--line-strong)}.course-lesson-badge{margin-left:auto;padding:2px 8px;border:1px solid var(--line);border-radius:20px;color:var(--ink-faint);font-size:10px;white-space:nowrap}.course-note{margin:36px 0 0;color:var(--ink-faint);font-size:13px;text-align:center}@media (prefers-reduced-motion:reduce){.knowledge-archive-inner a,.knowledge-card li a svg{transition:none}}.knowledge-card li a small{margin-left:auto;color:var(--ink-faint);font-family:var(--font-mono);font-size:10px;white-space:nowrap}@media (max-width:640px){.course-header{flex-direction:column;gap:20px}.course-progress{justify-items:start;width:100%}.course-progress-track{width:100%}}.notes-page{overflow-x:clip;background:var(--paper)}.notes-shell{display:grid;grid-template-columns:258px minmax(0,1fr) 236px;grid-template-areas:"rail doc outline";align-items:start;width:min(1280px,calc(100% - 48px));margin:0 auto}.notes-bar{display:contents}.notes-rail{grid-area:rail;position:sticky;top:94px;display:flex;height:calc(100vh - 118px);flex-direction:column;gap:12px;padding:20px 14px 20px 0;border-right:1px solid var(--line);overflow:auto}.notes-rail-head{display:flex;align-items:center;gap:9px;padding:0 8px}.notes-rail-mark{display:grid;width:26px;height:26px;flex:0 0 auto;place-items:center;border-radius:7px;background:var(--blue-100);font-size:13px}.notes-rail-head strong{display:block;color:var(--ink);font-size:14px}.notes-rail-head small{display:block;color:var(--ink-faint);font-size:11.5px;line-height:1.4}button.notes-mobile-toggle{display:none}.notes-rail-search,.shelf-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:var(--paper-raised);color:var(--ink-faint)}.notes-rail-search{margin:0 8px;padding:7px 10px}.notes-rail-search input,.shelf-search input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);font-family:inherit;font-size:13px;outline:none}.notes-rail-search input::placeholder,.shelf-search input::placeholder{color:var(--ink-faint)}.notes-rail-body{display:flex;min-height:0;flex-direction:column;gap:2px}.notes-rail-label{padding:6px 8px 4px;margin:0;color:var(--ink-faint);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}.notes-tree{display:flex;flex-direction:column;gap:2px;padding:0 8px;margin:0;list-style:none}.notes-tree a{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;color:var(--ink-muted);font-size:13.5px;text-decoration:none}.notes-tree a:hover{background:var(--paper-tint);color:var(--ink)}.notes-tree a.active{background:var(--blue-050);color:var(--blue-800);font-weight:600}.notes-tree .idx{flex:0 0 auto;color:var(--ink-faint);font-family:var(--font-mono);font-size:11.5px}.notes-tree a.active .idx{color:var(--blue-700)}.notes-tree .tree-title{overflow:hidden;min-width:0;text-overflow:ellipsis;white-space:nowrap}.notes-tree .state{flex:0 0 auto;margin-left:auto;padding:0 6px;border:1px solid var(--line);border-radius:999px;color:var(--ink-faint);font-size:10.5px}.notes-tree-empty{padding:8px 9px;color:var(--ink-faint);font-size:12.5px}.notes-rail-foot{display:flex;flex-direction:column;gap:6px;margin-top:auto;padding:12px 8px 0;border-top:1px solid var(--line);font-size:12.5px}.notes-rail-foot a{color:var(--ink-muted);text-decoration:none}.notes-rail-foot a:hover{color:var(--blue-700)}.notes-doc{grid-area:doc;min-width:0;padding:30px 46px 80px}.notes-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;color:var(--ink-faint);font-size:12.5px}.notes-breadcrumb a{color:var(--ink-faint);text-decoration:none}.notes-breadcrumb a:hover{color:var(--blue-700)}.notes-breadcrumb-current{overflow:hidden;max-width:320px;text-overflow:ellipsis;white-space:nowrap}.notes-title-row{display:flex;align-items:flex-start;gap:16px}.notes-title-row h1{margin:0;font-size:clamp(1.75rem,3.2vw,2.15rem);letter-spacing:-.01em;line-height:1.3}.notes-toolbar{margin-left:auto}.notes-toolbar .article-actions{display:flex;gap:6px}.notes-toolbar .icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--paper-raised);color:var(--ink-muted)}.notes-toolbar .icon-button:hover{border-color:var(--line-strong);color:var(--ink);background:var(--paper-tint)}.notes-meta-cover{display:none}.notes-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0 26px;color:var(--ink-muted);font-size:12.5px}.notes-meta .chip{padding:2px 10px;border:1px solid var(--line);border-radius:999px;background:var(--paper-raised);color:inherit;text-decoration:none}.notes-meta .chip.state{border-color:color-mix(in srgb,var(--blue-500) 45%,var(--line));background:var(--blue-050);color:var(--blue-800)}.notes-book-info h2,.notes-related h2{margin:0 0 16px;font-size:24px;line-height:1.4}.info-table{width:100%;margin:0;border-collapse:collapse;background:var(--paper-raised);font-size:14px}.info-table td,.info-table th{padding:11px 14px;border:1px solid var(--line);text-align:left;vertical-align:middle}.info-table th{width:106px;background:var(--paper-tint);color:var(--ink-muted);font-weight:500;white-space:nowrap}.info-cover-cell{width:140px;text-align:center}.book-cover{display:flex;flex-direction:column;justify-content:center;gap:4px;border:1px solid var(--line-strong);border-radius:4px;background:linear-gradient(180deg,#fffdf7,#f4ece0);box-shadow:0 6px 14px rgba(22,48,82,.1);color:#22303f}.book-cover .cover-line{font-size:11px;font-weight:600;line-height:1.3;text-align:center}.book-cover .cover-line-main{font-size:13px;font-weight:700}.book-cover small{color:#6b7b8c;font-family:var(--font-mono);font-size:8px;letter-spacing:.06em;text-align:center}.info-cover-cell .book-cover{width:96px;height:128px;padding:12px 10px;margin:0 auto}.notes-doc-body .article-markdown-preview{max-width:none}.notes-doc-body .article-markdown-preview .wmde-markdown{max-width:none;background:transparent;color:var(--ink-muted);font-family:var(--font-sans);font-size:16px;line-height:1.85}.notes-doc-body .article-markdown-preview .wmde-markdown h1{display:none}.notes-doc-body .article-markdown-preview .wmde-markdown h2,.notes-doc-body .article-markdown-preview .wmde-markdown h3,.notes-doc-body .article-markdown-preview .wmde-markdown h4{border-bottom:0;color:var(--ink);font-family:var(--font-sans);letter-spacing:0}.notes-doc-body .article-markdown-preview .wmde-markdown h2{padding:0;margin:52px 0 16px;font-size:24px;line-height:1.4}.notes-doc-body .article-markdown-preview .wmde-markdown h3{margin:32px 0 10px;font-size:17.5px}.notes-doc-body .article-markdown-preview .wmde-markdown p{margin:0 0 14px;color:var(--ink);font-size:inherit;line-height:inherit}.notes-doc-body .article-markdown-preview .wmde-markdown a{color:var(--blue-700);text-decoration-color:var(--blue-500);text-underline-offset:3px}.notes-doc-body .article-markdown-preview .wmde-markdown strong{color:var(--ink)}.notes-doc-body .article-markdown-preview .wmde-markdown ol,.notes-doc-body .article-markdown-preview .wmde-markdown ul{padding-left:24px;margin:0 0 18px;color:var(--ink);font-size:15.5px;line-height:1.8}.notes-doc-body .article-markdown-preview .wmde-markdown li+li{margin-top:6px}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown :is(blockquote,.markdown-alert){--amber-hi:#ffd43b;position:relative;margin:24px 0 28px;padding:14px 16px 14px calc(1.15em + 10px);border:0;border-radius:0;background:color-mix(in srgb,var(--paper-tint) 42%,transparent);color:var(--ink-muted);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 58%,transparent),0 12px 32px color-mix(in srgb,var(--blue-700) 5.5%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown :is(blockquote,.markdown-alert):before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;border-radius:0;background:linear-gradient(180deg,color-mix(in srgb,var(--amber) 75%,var(--coral)),color-mix(in srgb,var(--blue-700) 55%,transparent))}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown :is(blockquote,.markdown-alert) p{margin:0 0 .65em;color:var(--ink-muted);font-size:inherit;line-height:1.8}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown .markdown-alert>:last-child,:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown blockquote p:last-child{margin-bottom:0!important}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown :is(blockquote,.markdown-alert) strong{color:var(--ink);font-weight:650}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown .markdown-table-scroll{max-width:100%;min-width:0;margin:22px 0 28px;overflow-x:auto;background:color-mix(in srgb,var(--paper-tint) 38%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 55%,transparent),0 12px 32px color-mix(in srgb,var(--blue-700) 5%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown table{display:table;width:max-content;min-width:100%;max-width:none;height:auto;margin:18px 0 26px;border-collapse:collapse;background:color-mix(in srgb,var(--paper-tint) 38%,transparent);color:var(--ink-muted);font-size:13.5px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 55%,transparent),0 12px 32px color-mix(in srgb,var(--blue-700) 5%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown .markdown-table-scroll table{margin:0;background:transparent;box-shadow:none}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown :is(th,td){height:auto;padding:11px 14px;border:0;border-bottom:1px solid color-mix(in srgb,var(--line) 55%,transparent);text-align:left;vertical-align:top;background:transparent;color:var(--ink-muted);overflow-wrap:anywhere}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown th{padding-top:12px;padding-bottom:10px;color:var(--ink-faint);font-family:var(--font-mono);font-size:10.5px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid color-mix(in srgb,var(--blue-700) 35%,transparent);background:color-mix(in srgb,var(--paper-tint) 62%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown table tr{height:auto;background:transparent;border:0}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown tbody tr:nth-child(odd) td{background:transparent}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--blue-050) 58%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown tbody tr:last-child td{border-bottom:0}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown td:first-child{color:var(--ink);font-weight:600;font-size:14.5px}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown table :not(pre)>code{--amber-hi:#ffd43b;padding:1px 0 2px;border:0;border-radius:0;background:transparent;box-shadow:inset 0 -1.5px 0 color-mix(in srgb,var(--amber-hi) 45%,transparent);color:var(--blue-800)}.notes-doc-body .article-markdown-preview .wmde-markdown img{display:block;box-sizing:border-box;max-width:100%;height:auto;margin:20px 0 4px;border:1px solid var(--line);border-radius:4px;background:transparent}.notes-doc-body .article-markdown-preview .wmde-markdown hr{margin:38px 0;border-color:var(--line)}.notes-doc-body .article-markdown-preview .wmde-markdown :not(pre)>code{padding:2px 5px;border:1px solid var(--line);border-radius:5px;background:var(--paper-tint);color:var(--blue-800);font-family:var(--font-mono);font-size:.86em}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre{--amber:#ffd43b;position:relative;margin:26px 0 32px;padding:0;border:0;border-radius:0;background:color-mix(in srgb,var(--paper-tint) 65%,var(--paper-raised));background-color:color-mix(in srgb,var(--paper-tint) 65%,var(--paper-raised));overflow:hidden;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line) 55%,transparent),0 18px 44px color-mix(in srgb,var(--blue-700) 7%,transparent)}html[data-theme=dark] :is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre{background:color-mix(in srgb,var(--paper-raised) 70%,#0c121c);background-color:color-mix(in srgb,var(--paper-raised) 70%,#0c121c)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .copied,:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre>button{display:none}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px 11px;border-bottom:0;background:transparent;position:relative}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--blue-700) 32%,transparent) 18%,color-mix(in srgb,var(--blue-700) 32%,transparent) 82%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-lang{color:var(--blue-700);font-family:var(--font-mono);font-size:10.5px;font-weight:650;letter-spacing:.14em;text-transform:uppercase}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy{display:inline-flex;align-items:center;gap:5px;margin-left:auto;min-height:28px;padding:0 2px 3px;border:0;border-radius:0;background:transparent;color:var(--ink-muted);cursor:pointer;font-family:var(--font-mono);font-size:11px;font-weight:650;box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--amber) 55%,transparent);transition:color .15s ease,box-shadow .15s ease}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy:hover{color:var(--ink);box-shadow:inset 0 -3px 0 var(--amber)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy:focus-visible{outline:2px solid var(--blue-700);outline-offset:3px}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy.is-copied{color:var(--green);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--green) 50%,transparent)}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy svg{flex:0 0 auto}:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre>code{display:block;padding:16px 18px 20px;background:transparent;background-color:transparent;color:var(--ink);font-family:var(--font-mono);font-size:12.5px;line-height:1.78;white-space:pre;overflow-x:auto;border-radius:0}.article-page .article-markdown-preview .wmde-markdown>pre{margin:38px 0 45px}.article-page .article-markdown-preview .wmde-markdown>pre>code{font-size:12px;line-height:1.8;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word}:is(.diary-entry-body,.diary-reader-body,.crystal-doc-body) .article-markdown-preview .wmde-markdown>pre{margin:16px 0 22px}@media (prefers-reduced-motion:reduce){:is(.notes-doc-body,.diary-entry-body,.diary-reader-body,.diary-detail-body,.crystal-doc-body,.article-page) .article-markdown-preview .wmde-markdown>pre .cb-header-copy{transition:none}}.notes-doc-body .article-markdown-preview .wmde-markdown :is(h2,h3):first-child{margin-top:0}.notes-related{margin-top:52px}.notes-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.notes-related-grid a{display:block;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper-raised);text-decoration:none}.notes-related-grid a:hover{border-color:var(--blue-500)}.notes-related-grid strong{display:block;margin-bottom:3px;color:var(--ink);font-size:14px}.notes-related-grid small{color:var(--ink-faint);font-size:12px}.notes-doc-end{display:flex;align-items:center;gap:12px;margin-top:44px;padding-top:20px;border-top:1px solid var(--line);color:var(--ink-faint);font-size:12.5px}.notes-pager{display:flex;gap:14px;margin-left:auto}.notes-pager a{color:var(--ink-muted);text-decoration:none}.notes-pager a:hover{color:var(--blue-700)}.notes-outline{grid-area:outline;position:sticky;top:94px;height:calc(100vh - 118px);padding:26px 0 20px 20px;border-left:1px solid var(--line);overflow:auto}.notes-outline-head{display:flex;align-items:center;gap:8px;width:100%;margin:0 0 12px;border:0;background:transparent;color:var(--ink-muted);font-family:inherit;font-size:12.5px;letter-spacing:.04em;text-align:left}.notes-outline-head>span{flex:1 1;height:1px;background:var(--line)}.notes-outline-body{display:block}.notes-outline-list{display:flex;flex-direction:column;gap:1px;padding:0;margin:0;list-style:none}.notes-outline-list a{display:block;overflow:hidden;padding:5px 9px;border-left:2px solid transparent;border-radius:7px;color:var(--ink-muted);font-size:13px;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.notes-outline-list a:hover{background:var(--paper-tint);color:var(--ink)}.notes-outline-list a[aria-current=location]{border-left-color:var(--blue-700);background:var(--blue-050);color:var(--blue-800);font-weight:600}.notes-outline-list .sub a{padding-left:22px;color:var(--ink-faint);font-size:12.5px}.notes-outline-empty{margin:0;color:var(--ink-faint);font-size:12.5px}.notes-outline-foot{display:flex;flex-direction:column;gap:8px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink-faint);font-size:12px}.notes-progress-track{display:block;height:3px;border-radius:999px;background:var(--line);overflow:hidden}.notes-progress-track i{display:block;height:100%;transform-origin:left center;transform:scaleX(0);background:var(--blue-700);transition:transform .12s linear}.notes-float{position:fixed;z-index:30;right:34px;bottom:34px;display:flex;flex-direction:column;gap:10px}.notes-float .article-like{margin:0;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--paper-raised);box-shadow:var(--shadow)}.notes-float .article-like-control{min-height:0;gap:6px}.notes-float .article-like-button{width:30px;height:30px;flex:0 0 30px}.notes-float .article-like-heart{width:26px}.notes-float .article-like-count{font-size:12px}.notes-float-top{display:grid;width:44px;height:44px;align-self:flex-end;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--paper-raised);box-shadow:var(--shadow);color:var(--ink-muted);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .16s ease}.notes-float-top[data-visible=true]{opacity:1;pointer-events:auto}.notes-float-top:hover{color:var(--blue-700);border-color:var(--line-strong)}.notes-shelf-page{padding-bottom:40px}.notes-shelf-hero{padding:74px 0 0}.notes-shelf-hero .eyebrow{margin:0 0 12px;color:var(--blue-700);font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.notes-shelf-hero h1{margin:0 0 12px;font-size:clamp(2.1rem,4.4vw,2.9rem);letter-spacing:0;line-height:1.15}.notes-shelf-sub{max-width:640px;margin:0;color:var(--ink-muted);font-size:15.5px}.notes-shelf-stats{display:flex;gap:34px;margin:26px 0 0;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.notes-shelf-stats div{min-width:72px}.notes-shelf-stats dd{margin:0;color:var(--ink);font-size:24px;font-weight:700;line-height:1.2}.notes-shelf-stats dt{color:var(--ink-faint);font-size:12.5px}.notes-shelf-body{margin-top:30px}.shelf-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.shelf-chips{display:flex;flex-wrap:wrap;gap:8px}.filter-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper-raised);color:var(--ink-muted);cursor:pointer;font-family:inherit;font-size:13px}.filter-chip:hover{border-color:var(--line-strong);color:var(--ink)}.filter-chip.active{border-color:var(--blue-700);background:var(--blue-050);color:var(--blue-800);font-weight:600}.filter-chip .chip-count{color:var(--ink-faint);font-family:var(--font-mono);font-size:11px}.filter-chip.active .chip-count{color:var(--blue-700)}.shelf-search{margin-left:auto;padding:6px 10px;min-width:220px}.shelf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.book-card{display:flex;gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper-raised);text-decoration:none}.book-card:hover{border-color:var(--blue-500)}.book-card .book-cover{width:78px;height:104px;flex:0 0 auto;padding:10px 8px}.book-card-body{display:block;min-width:0}.book-card-title{display:block;margin-bottom:2px;color:var(--ink);font-size:16px}.book-card-author{display:block;margin-bottom:8px;color:var(--ink-faint);font-size:12.5px}.book-card-summary{display:-webkit-box;overflow:hidden;margin-bottom:10px;color:var(--ink-muted);font-size:13px;-webkit-box-orient:vertical;-webkit-line-clamp:3}.book-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--ink-faint);font-size:11.5px}.shelf-empty{padding:26px 0;color:var(--ink-faint);font-size:14px}.notes-template-card{margin-top:26px;padding:18px 20px;border:1px dashed var(--line-strong);border-radius:14px;background:var(--paper-tint)}.notes-template-card h2{margin:0 0 10px;font-size:15px}.notes-template-card ol{margin:0;padding-left:20px;color:var(--ink-muted);font-size:13.5px}.notes-template-hint{margin:12px 0 0;color:var(--ink-faint);font-size:12.5px}.category-empty{padding:30px 0;color:var(--ink-faint);font-size:14px}@media (min-width:720px){.notes-template-card ol{column-count:2;column-gap:28px}}@media (max-width:1180px){.notes-shell{grid-template-columns:240px minmax(0,1fr)}.notes-outline{display:none}.notes-doc{padding:30px 34px 70px}}@media (max-width:980px){.notes-shell{display:flex;flex-direction:column;align-items:stretch;width:100%}.notes-bar{position:sticky;z-index:9;top:78px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;column-gap:8px;box-sizing:border-box;width:100%;margin:0;padding:10px max(20px,calc((100% - 760px) / 2));border-bottom:1px solid var(--line);background:var(--paper-raised)}.notes-bar:before{position:absolute;right:0;bottom:100%;left:0;height:78px;background:inherit;content:"";pointer-events:none}.notes-outline,.notes-rail{display:contents}.notes-rail-head{grid-column:1;grid-row:1;padding:0}.notes-outline-body,.notes-outline-foot,.notes-rail-body,.notes-rail-search{grid-column:1/-1}.notes-outline-body,.notes-rail-body,.notes-rail-head>div,.notes-rail-search{display:none}.notes-rail[data-mobile-open=true] .notes-rail-head{display:flex}.notes-rail[data-mobile-open=true] .notes-rail-search{display:flex;margin:12px 0 0}.notes-rail[data-mobile-open=true] .notes-rail-body{display:flex;margin-top:12px}.notes-rail .notes-tree{padding:0}.notes-rail-foot{padding:12px 0 0}button.notes-mobile-toggle{display:inline-flex;align-items:center;margin-left:0;min-height:34px;padding:6px 14px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink-muted);cursor:pointer;font-family:inherit;font-size:13px}.notes-outline[data-mobile-open=true] .notes-outline-body{display:block;padding-bottom:14px}button.notes-outline-head{display:flex;grid-column:2;grid-row:1;width:auto;margin:0;min-height:34px;padding:6px 14px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink-muted);cursor:pointer;font-size:13px}button.notes-mobile-toggle[aria-expanded=true]{border-color:var(--blue-100);background:var(--blue-050);color:var(--blue-800)}.notes-outline-head>span{display:none}.notes-outline[data-mobile-open=true] .notes-outline-list{margin-top:12px}.notes-outline-head-desktop{display:none}.notes-outline-foot{display:none;flex-direction:row;align-items:center;gap:10px;margin-top:0;padding:0 0 14px;border-top:0}.notes-outline[data-mobile-open=true] .notes-outline-foot{display:flex}.notes-progress-track{flex:1 1}.notes-doc{box-sizing:border-box;width:min(100% - 40px,760px);margin-inline:auto;padding:22px 0 60px}.notes-title-row{flex-direction:column;gap:12px}.notes-toolbar{margin-left:0}.notes-doc-body .article-markdown-preview .wmde-markdown h2{margin-top:40px;font-size:21px}.notes-doc-body .article-markdown-preview .wmde-markdown h3{font-size:16.5px}.notes-related-grid{grid-template-columns:minmax(0,1fr)}.notes-float{right:18px;bottom:18px;gap:8px}.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.shelf-search{min-width:0;margin-left:0;width:100%}}@media (max-width:760px){.notes-bar{top:66px}.notes-bar:before{height:66px}}@media (max-width:620px){.notes-shelf-hero{padding-top:46px}.notes-shelf-stats{gap:20px}.shelf{grid-template-columns:minmax(0,1fr)}.info-table th{width:84px}.info-cover-cell,.notes-info-extra{display:none}.notes-meta-cover{display:flex;margin:18px 0 0}.notes-meta-cover .book-cover{width:88px;height:118px}.notes-meta{margin-top:14px}.notes-float .article-like{padding:6px 10px}}@media print{.notes-float,.notes-outline,.notes-rail,.notes-toolbar,.site-footer,.site-header{display:none!important}.notes-shell{display:block;width:100%}.notes-doc{padding:0}}.book-list-fan{position:relative;flex:0 0 auto;width:132px;height:96px}.book-list-fan .book-cover{position:absolute;top:3px;width:66px;height:90px;padding:8px 6px;gap:3px}.book-list-fan .book-cover:first-child{left:0;transform:rotate(-5deg)}.book-list-fan .book-cover:nth-child(2){left:33px;top:0;z-index:1}.book-list-fan .book-cover:nth-child(3){left:66px;transform:rotate(5deg)}.book-list-fan .book-cover .cover-line{font-size:8.5px;overflow-wrap:anywhere}.book-list-fan .book-cover .cover-line-main{font-size:10px}.book-list-fan .book-cover small{font-size:6px}img.book-list-cover{display:block;object-fit:cover;border-radius:4px;box-shadow:0 12px 28px color-mix(in srgb,var(--blue-700) 14%,transparent)}.book-list-index-meta{margin:18px 0 0;color:var(--ink-faint);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em}.book-list-index-rule{height:1px;margin:22px 0 0;background:linear-gradient(90deg,color-mix(in srgb,var(--blue-700) 35%,transparent),transparent)}.book-list-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}.book-list-filter-note{margin-left:auto;color:var(--ink-faint);font-size:12px}.book-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;padding-bottom:40px}.book-list-card{display:flex;gap:16px;min-width:0;padding:4px 0 8px;border:0;border-radius:0;background:transparent;color:inherit;text-decoration:none}.book-list-card:hover h2{color:var(--blue-800)}.book-list-card:focus-visible{outline:2px solid var(--blue-500);outline-offset:4px}.book-list-card-body{display:block;flex:1 1;min-width:0}.book-list-tag{display:inline-block;margin:0;padding:0;border-radius:0;background:transparent;color:var(--coral);font-family:var(--font-mono);font-size:11px;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.book-list-card h2{margin:4px 0 6px;font-size:20px;font-weight:650;line-height:1.3}.book-list-oneliner{display:-webkit-box;overflow:hidden;margin:0 0 10px;color:var(--ink-muted);font-size:13.5px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2}.book-list-vein{display:block;height:2px;margin:0 0 8px;background:color-mix(in srgb,var(--line) 65%,transparent)}.book-list-vein i{display:block;height:100%;background:linear-gradient(90deg,var(--blue-700),color-mix(in srgb,var(--coral) 40%,transparent))}.book-list-meta{display:block;margin-top:8px;color:var(--ink-faint);font-size:12px;line-height:1.5}.book-list-byline .dot{width:3px;height:3px;border-radius:50%;background:var(--line-strong)}.book-list-byline{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;color:var(--ink-faint);font-size:12.5px}.book-list-howto{display:flex;gap:12px;align-items:flex-start;margin:0 0 22px;padding:13px 16px;border-left:3px solid var(--blue-500);border-radius:0 10px 10px 0;background:var(--blue-050);color:var(--ink-muted);font-size:13.5px}.book-list-howto p{margin:0}.book-list-howto b{color:var(--ink)}.book-list-howto .mark{color:var(--blue-700);font-weight:700}.book-list-rows{border-top:1px solid var(--line)}.book-list-row{display:grid;grid-template-columns:42px 78px minmax(0,1fr) 140px;gap:18px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}.book-list-row:hover{background:color-mix(in srgb,var(--blue-050) 55%,transparent)}.book-list-idx{padding-top:4px;color:var(--ink-faint);font-family:var(--font-mono);font-size:15px}.book-list-row .book-cover{width:78px;height:104px;padding:10px 8px;gap:4px}.book-list-row .book-cover .cover-line{font-size:9.5px}.book-list-row .book-cover .cover-line-main{font-size:11px}.book-list-row .book-cover small{font-size:7px}.book-list-title-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.book-list-title-line strong{font-size:16px}.book-list-title-line .author{color:var(--ink-faint);font-size:12.5px}.book-list-status{display:inline-flex;align-items:center;gap:5px;padding:1px 9px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink-faint);font-size:11.5px}.book-list-status.reading{border-color:var(--blue-500);background:var(--blue-050);color:var(--blue-800)}.book-list-status.finished{border-color:color-mix(in srgb,var(--green) 45%,transparent);background:color-mix(in srgb,var(--green) 10%,transparent);color:var(--green)}.book-list-why{max-width:62ch;margin:0;color:var(--ink-muted);font-size:13.5px}.book-list-why b{color:var(--ink);font-weight:600}.book-list-side{padding-top:2px;color:var(--ink-faint);font-size:12px;text-align:right}.book-list-side .time{display:block;margin-bottom:6px;font-family:var(--font-mono);font-size:11px}.book-list-note-link{display:inline-flex;align-items:center;gap:5px;color:var(--blue-700);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.book-list-note-link:hover{text-decoration:underline}.book-list-related{margin:40px 0 0}.book-list-related h2{margin:0 0 14px;font-size:15px}.book-list-related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.book-list-related-card{display:flex;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper-raised);text-decoration:none}.book-list-related-card:hover{border-color:var(--blue-500)}.book-list-related-card strong{display:block;font-size:14.5px;line-height:1.35}.book-list-related-card small{color:var(--ink-faint);font-size:12px}.book-list-related-card .book-list-fan{width:76px;height:64px}.book-list-related-card .book-list-fan .book-cover{top:0;width:46px;height:62px;padding:6px 4px;gap:2px}.book-list-related-card .book-list-fan .book-cover:nth-child(2){left:30px}.book-list-related-card .book-list-fan .book-cover .cover-line{font-size:7px}.book-list-related-card .book-list-fan .book-cover .cover-line-main{font-size:8px}.book-list-related-card .book-list-fan .book-cover small{display:none}.book-list-foot{margin-top:34px;padding-bottom:40px}.book-list-back{display:inline-flex;align-items:center;gap:6px;color:var(--ink-muted);font-size:13px;text-decoration:none}.book-list-back:hover{color:var(--blue-700)}@media (max-width:980px){.book-list-grid{grid-template-columns:minmax(0,1fr)}.book-list-filter-note{margin-left:0}.book-list-byline{margin-top:12px}}@media (max-width:620px){.book-list-card{gap:12px}.book-list-fan{width:108px;height:78px}.book-list-fan .book-cover{width:54px;height:74px;padding:6px 5px}.book-list-fan .book-cover:nth-child(2){left:26px}.book-list-fan .book-cover:nth-child(3){left:52px}.book-list-fan .book-cover .cover-line{font-size:7.5px}.book-list-fan .book-cover .cover-line-main{font-size:8.5px}.book-list-fan .book-cover small{font-size:5.5px}.book-list-card h2{font-size:18px}.book-list-row{grid-template-columns:30px 64px minmax(0,1fr);gap:12px;padding:16px 0}.book-list-row .book-cover{width:64px;height:86px;padding:8px 6px}.book-list-side{grid-column:2/4;display:flex;align-items:center;gap:12px;padding-top:0;text-align:left}.book-list-side .time{margin-bottom:0}.book-list-howto{padding:11px 12px;font-size:13px}.book-list-related-grid{grid-template-columns:minmax(0,1fr)}}