.btn{border-radius:.375rem;padding:.5rem 1rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.btn:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-offset-width:2px}.btn-primary{background-color:var(--primary);color:var(--primary-foreground)}.btn-primary:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.btn-primary:focus{--tw-ring-color:var(--primary)}.btn-secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.btn-secondary:hover{--tw-bg-opacity:1;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.btn-secondary:focus{--tw-ring-color:var(--secondary)}.btn-outline{border-width:1px;border-color:var(--border);background-color:transparent;color:var(--foreground)}.btn-outline:hover{background-color:var(--muted)}.btn-outline:focus{--tw-ring-color:var(--border)}.btn-ghost{background-color:transparent;color:var(--muted-foreground)}.btn-ghost:hover{background-color:var(--muted);color:var(--foreground)}.btn-ghost:focus{--tw-ring-color:var(--muted)}.btn-destructive{background-color:var(--destructive);color:var(--destructive-foreground)}.btn-destructive:hover{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.btn-destructive:focus{--tw-ring-color:var(--destructive)}.btn-sm{padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem}.btn-lg{padding:.75rem 1.5rem;font-size:1.125rem;line-height:1.75rem}.card{border-radius:.5rem;background-color:var(--background)}.card-corners{position:relative}.card-corners:before{width:2px;height:25%}.card-corners:after,.card-corners:before{content:"";position:absolute;top:0;left:0;background-color:var(--border)}.card-corners:after{width:25%;height:2px}.corner-bottom-right{width:25%;height:2px}.corner-bottom-right,.corner-bottom-right-vertical{content:"";position:absolute;bottom:0;right:0;background-color:var(--border)}.corner-bottom-right-vertical{width:2px;height:25%}.card-hover{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.card-padding{padding:1.5rem}.card-padding-sm{padding:1rem}.card-padding-lg{padding:2rem}.form-input{width:100%;border-radius:.375rem;border-width:1px;border-color:var(--border);background-color:var(--input);padding:.5rem .75rem;color:var(--foreground)}.form-input::placeholder{color:var(--muted-foreground)}.form-input:focus{border-color:transparent;outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:var(--primary)}.form-label{margin-bottom:.5rem;display:block;font-weight:500;color:var(--foreground)}.form-error,.form-label{font-size:.875rem;line-height:1.25rem}.form-error{margin-top:.25rem;color:var(--destructive)}.form-group{margin-bottom:1rem}.nav-link{color:var(--muted-foreground);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.nav-link-active,.nav-link:hover{color:var(--foreground)}.nav-link-active{border-bottom-width:2px;border-color:var(--primary)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.hover\:shadow-md:hover{box-shadow:var(--shadow-md)}.hover\:shadow-lg:hover{box-shadow:var(--shadow-lg)}.container{margin-left:auto;margin-right:auto;max-width:80rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container{padding-left:2rem;padding-right:2rem}}.container-sm{margin-left:auto;margin-right:auto;max-width:56rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-sm{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-sm{padding-left:2rem;padding-right:2rem}}.container-lg{margin-left:auto;margin-right:auto;max-width:80rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.container-lg{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.container-lg{padding-left:2rem;padding-right:2rem}}.puzzle img{margin-left:auto;margin-right:auto;padding:0 .625rem}.tag{border-radius:.25rem;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:500}.tag-blue{background-color:rgb(219 234 254/var(--tw-bg-opacity,1));color:rgb(30 64 175/var(--tw-text-opacity,1))}.tag-blue,.tag-green{--tw-bg-opacity:1;--tw-text-opacity:1}.tag-green{background-color:rgb(220 252 231/var(--tw-bg-opacity,1));color:rgb(22 101 52/var(--tw-text-opacity,1))}.tag-yellow{background-color:rgb(254 249 195/var(--tw-bg-opacity,1));color:rgb(133 77 14/var(--tw-text-opacity,1))}.tag-red,.tag-yellow{--tw-bg-opacity:1;--tw-text-opacity:1}.tag-red{background-color:rgb(254 226 226/var(--tw-bg-opacity,1));color:rgb(153 27 27/var(--tw-text-opacity,1))}.tag-gray{background-color:rgb(243 244 246/var(--tw-bg-opacity,1));color:rgb(31 41 55/var(--tw-text-opacity,1))}.difficulty-easy,.tag-gray{--tw-bg-opacity:1;--tw-text-opacity:1}.difficulty-easy{background-color:rgb(220 252 231/var(--tw-bg-opacity,1));color:rgb(22 101 52/var(--tw-text-opacity,1))}.difficulty-medium{background-color:rgb(254 249 195/var(--tw-bg-opacity,1));color:rgb(133 77 14/var(--tw-text-opacity,1))}.difficulty-hard,.difficulty-medium{--tw-bg-opacity:1;--tw-text-opacity:1}.difficulty-hard{background-color:rgb(254 226 226/var(--tw-bg-opacity,1));color:rgb(153 27 27/var(--tw-text-opacity,1))}.score-good{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.score-bad{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.score-neutral{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.space-y-8>*+*{margin-top:2rem}.text-balance{text-wrap:balance}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.focus-ring:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:var(--primary);--tw-ring-offset-width:2px}.focus-ring-secondary:focus,.focus-ring:focus{outline:2px solid transparent;outline-offset:2px;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-ring-secondary:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);--tw-ring-color:var(--secondary);--tw-ring-offset-width:2px}.hover-lift:hover{--tw-translate-y:-0.25rem;--tw-shadow:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover-lift:hover,.hover-scale:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover-scale:hover{--tw-scale-x:1.05;--tw-scale-y:1.05}.interactive{cursor:pointer}.interactive:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.responsive-container{margin-left:auto;margin-right:auto;width:100%;max-width:80rem;padding-left:1rem;padding-right:1rem}@media (min-width:640px){.responsive-container{padding-left:1.5rem;padding-right:1.5rem}}@media (min-width:1024px){.responsive-container{padding-left:2rem;padding-right:2rem}}.responsive-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem}@media (min-width:768px){.responsive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.responsive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.responsive-flex{display:flex;flex-direction:column}@media (min-width:1024px){.responsive-flex{flex-direction:row}}.fade-in{opacity:0}.slide-in{--tw-translate-y:1rem}.scale-in,.slide-in{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));opacity:0}.scale-in{--tw-scale-x:.95;--tw-scale-y:.95}.font-playfair{font-family:var(--font-caladea),serif}.font-inter{font-family:var(--font-inter),sans-serif}.font-alegreya{font-family:var(--font-alegreya),serif}.font-nunito{font-family:var(--font-nunito),sans-serif}.text-display{font-size:3rem;line-height:1.375}.text-display,.text-h1{font-family:var(--font-playfair-display),serif;font-family:var(--font-caladea),serif}.text-h1{font-size:1.875rem;line-height:2.25rem}.text-h2{font-family:var(--font-playfair-display),serif;font-size:1.5rem;line-height:2rem;font-family:var(--font-caladea),serif}.text-h3{font-size:1.25rem}.text-h3,.text-h4{font-family:var(--font-playfair-display),serif;line-height:1.75rem;font-family:var(--font-caladea),serif}.text-h4{font-size:1.125rem;font-weight:500}.text-body{font-size:1rem;line-height:1.5rem}.text-body,.text-body-sm{font-family:var(--font-nunito),sans-serif}.text-body-sm{font-size:.875rem;line-height:1.25rem}.text-body-lg{font-size:1.125rem;line-height:1.75rem;font-family:var(--font-nunito),sans-serif}.shadow-sm{box-shadow:0 1px 2px 0 rgb(0 0 0/.05)}.shadow-md{box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)}.shadow-lg{box-shadow:0 10px 15px -3px rgb(0 0 0/.1),0 4px 6px -4px rgb(0 0 0/.1)}.shadow-xl{box-shadow:0 20px 25px -5px rgb(0 0 0/.1),0 8px 10px -6px rgb(0 0 0/.1)}.gradient-primary{--tw-gradient-from:var(--primary) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.gradient-primary,.gradient-secondary{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.gradient-secondary{--tw-gradient-from:var(--secondary) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#4b5563 var(--tw-gradient-to-position)}.gradient-muted{background-image:linear-gradient(to right,var(--tw-gradient-stops));--tw-gradient-from:var(--muted) var(--tw-gradient-from-position);--tw-gradient-to:rgb(255 255 255/0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#9ca3af var(--tw-gradient-to-position)}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem}.ProseMirror{outline:none;min-height:200px}.ProseMirror p,.puzzle p,.rich-text p{margin:.75em 0}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3,.ProseMirror h4,.ProseMirror h5,.ProseMirror h6,.puzzle h1,.puzzle h2,.puzzle h3,.puzzle h4,.puzzle h5,.puzzle h6,.rich-text h1,.rich-text h2,.rich-text h3,.rich-text h4,.rich-text h5,.rich-text h6{margin:1em 0 .5em;font-weight:600}.ProseMirror h1,.puzzle h1,.rich-text h1{font-size:2em}.ProseMirror h2,.puzzle h2,.rich-text h2{font-size:1.5em}.ProseMirror h3,.puzzle h3,.rich-text h3{font-size:1.25em}.ProseMirror h4,.puzzle h4,.rich-text h4{font-size:.875em;color:#6b7280;font-weight:400}.ProseMirror ul,.puzzle ul,.rich-text ul{list-style-type:disc;margin:.5em 0;padding-left:1.5em}.ProseMirror ol,.puzzle ol,.rich-text ol{list-style-type:decimal;margin:.5em 0;padding-left:1.5em}.ProseMirror blockquote,.puzzle blockquote,.rich-text blockquote{border-left:3px solid var(--border);margin:.5em 0;padding-left:1em;font-style:italic;color:var(--muted-foreground)}.ProseMirror code,.puzzle code,.rich-text code{background-color:var(--secondary);color:var(--foreground);padding:.125em .25em;border-radius:.25em;font-family:monospace}.ProseMirror pre,.puzzle pre,.rich-text pre{background-color:var(--secondary);color:var(--foreground);padding:1em;border-radius:.5em;overflow-x:auto}.ProseMirror pre code,.puzzle pre code,.rich-text pre code{background-color:transparent;padding:0}.ProseMirror .code-block-view.is-calc{position:relative;display:flex;align-items:stretch;gap:1em;background-color:var(--secondary);border-radius:.5em;padding:1em;margin:1em 0}.ProseMirror .calc-help{position:absolute;top:.15em;right:.1em}.ProseMirror .calc-help-btn{display:flex;padding:2px;border:none;background:none;color:var(--muted-foreground);opacity:.4;cursor:pointer}.ProseMirror .calc-help-btn:hover{opacity:1}.ProseMirror .calc-help-btn svg{width:.9em;height:.9em}.calc-help-panel{position:fixed;top:0;left:0;z-index:1200;width:min(24rem,80vw);max-height:60vh;overflow-y:auto;padding:.9em 1em;background-color:var(--background);color:var(--foreground);border:1px solid var(--border);border-radius:.5em;box-shadow:0 4px 16px rgb(0 0 0/.15);font-size:.8rem;line-height:1.5;text-align:left;user-select:text}.calc-help-panel h4{margin:.8em 0 .25em;font-size:.85rem;font-weight:600}.calc-help-panel h4:first-child{margin-top:0}.calc-help-panel p{margin:.25em 0}.calc-help-panel pre{margin:.4em 0;padding:.5em .6em;background-color:var(--secondary);border-radius:.4em;font-family:monospace;font-size:.75rem;overflow-x:auto}.calc-help-panel code{font-family:monospace;font-size:.75rem;white-space:nowrap}.ProseMirror .code-block-view.is-calc pre{flex:1;min-width:0;margin:0;padding:0;background-color:transparent;border-radius:0;overflow-x:auto}.ProseMirror .code-block-view.is-calc pre code{display:block;font-size:.875em;line-height:1.6}.ProseMirror .calc-gutter{flex:none;max-width:40%;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;text-align:right;font-family:monospace;font-size:.875em;line-height:1.6;user-select:none;color:var(--muted-foreground);border-left:1px solid var(--border);padding-left:1em}.ProseMirror .calc-line{position:relative;min-height:1.6em;white-space:nowrap;display:flex;align-items:flex-end;justify-content:flex-end}.ProseMirror button.calc-line{font:inherit;color:inherit;background:none;border:none;padding:0;text-align:right;cursor:pointer}.ProseMirror button.calc-line:hover .calc-line-text{color:var(--foreground)}.ProseMirror .calc-copied-tag{position:absolute;left:0;bottom:calc(.2em / .75);height:calc(1.2em / .75);display:flex;align-items:center;padding:0 .4em;border-radius:.5em;background-color:var(--primary);color:var(--primary-foreground);font-size:.75em;pointer-events:none;animation:calc-copied-fade 1.2s ease-out forwards}@keyframes calc-copied-fade{0%,60%{opacity:1}to{opacity:0}}.ProseMirror .calc-line.is-error{opacity:.55;font-style:italic}.ProseMirror .calc-bar{position:absolute;right:0;bottom:.2em;height:1.2em;background-color:var(--primary);opacity:.17;border-radius:2px}.ProseMirror .calc-bar.is-negative{background-color:var(--destructive)}.ProseMirror .calc-bar.calc-bar-band{opacity:.08}.ProseMirror .calc-line-text{position:relative}.ProseMirror .calc-unit-shadow{text-decoration:underline dotted;text-decoration-color:var(--muted-foreground);text-underline-offset:3px;cursor:help}.ProseMirror .calc-tick{position:absolute;top:0;bottom:0;width:1px;background-color:var(--muted-foreground);opacity:.25}.ProseMirror strong,.puzzle strong,.rich-text strong{font-weight:600}.ProseMirror em,.puzzle em,.rich-text em{font-style:italic}.ProseMirror a,.puzzle a,.rich-text a{color:var(--primary);text-decoration:underline}.ProseMirror a:hover,.puzzle a:hover,.rich-text a:hover{color:var(--ring)}.ProseMirror .preview-ref,.puzzle .preview-ref,.rich-text .preview-ref{border-bottom:1px dotted var(--primary);cursor:pointer}.preview-popover{max-width:400px}.preview-hover-card>.rich-text>:first-child{margin-top:0}.preview-hover-card>.rich-text>:last-child{margin-bottom:0}.ProseMirror ul[data-type=taskList]{list-style:none;margin:.5em 0;padding-left:0}.ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:.5em}.ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;user-select:none}.ProseMirror ul[data-type=taskList] li>div{flex:1 1 auto}.ProseMirror ul[data-type=taskList] li>div>p{margin:0}.ProseMirror .tag-chip.todo-target,.ProseMirror li[data-type=taskItem].todo-target{animation:todo-target-fade 2.5s ease-out forwards;border-radius:.25rem}@keyframes todo-target-fade{0%,40%{background-color:rgba(250,204,21,.35)}to{background-color:transparent}}.ProseMirror img{max-width:100%;height:auto;border-radius:.5rem;margin:1rem auto}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;border-bottom-width:1px;border-color:var(--border);--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1));padding:.75rem}.editor-button{border-radius:.25rem;padding:.5rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.editor-button:hover{background-color:var(--muted)}.editor-button-active{background-color:var(--primary);color:var(--primary-foreground)}.content-area{max-width:none}.content-area h1,.content-area h2,.content-area h3,.content-area h4,.content-area h5,.content-area h6{font-family:var(--font-caladea),serif}.content-area ol,.content-area p,.content-area ul{font-family:var(--font-nunito),sans-serif}.image-upload-area{border-radius:.5rem;border-width:2px;border-style:dashed;border-color:var(--muted);padding:2rem;text-align:center;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.image-upload-area:hover{border-color:var(--primary)}.image-upload-area.dragover{border-color:var(--primary);--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.image-preview{height:auto;max-width:100%;border-radius:.5rem;--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.textarea-autogrow{field-sizing:content;min-height:2.5em;overflow-y:hidden}.editor-placeholder{pointer-events:none;user-select:none;color:var(--muted-foreground)}.editor-placeholder:before{content:attr(data-placeholder)}.livelog-editor{display:flex;flex-direction:column;height:100%}.livelog-editor .tiptap{flex:1;outline:none;border:none;box-shadow:none;padding:0;min-height:100%;font-size:inherit;line-height:inherit;font-family:inherit;color:inherit}.livelog-editor .tiptap h1,.livelog-editor .tiptap h2,.livelog-editor .tiptap h3,.livelog-editor .tiptap h4,.livelog-editor .tiptap h5,.livelog-editor .tiptap h6,.livelog-editor .tiptap ol,.livelog-editor .tiptap p,.livelog-editor .tiptap ul{font-family:inherit}.livelog-editor .tiptap p:first-child{margin-top:0}.livelog-editor .tiptap li p{margin:0}.livelog-editor .tiptap p.is-editor-empty:first-child:before{color:#9ca3af;content:attr(data-placeholder);float:left;height:0;pointer-events:none}.livelog-editor .tiptap p.is-editor-empty:first-child:has(.strategy-ghost):before,.livelog-editor .tiptap p.is-editor-empty:first-child:has(.transcript-ghost):before{content:none}.strategy-instance-chip{display:inline;color:#000000;text-decoration:underline dashed #9ca3af;text-underline-offset:.15em;white-space:normal;cursor:text;user-select:text;padding-block:1px;-webkit-box-decoration-break:clone;box-decoration-break:clone}:where(pre code) .strategy-instance-chip{color:inherit}.strategy-instance-chip[data-main=true]{font-weight:700}.ProseMirror h4 .strategy-instance-chip[data-rating=NEUTRAL]{color:#6b7280}.strategy-instance-chip[data-rating=POSITIVE]{color:#14301d;text-decoration-color:rgba(22,163,74,.4)}.strategy-instance-chip[data-rating=NEGATIVE]{color:#3d1414;text-decoration-color:rgba(220,38,38,.4)}.strategy-rated[data-rating=NEGATIVE]:after,.strategy-rated[data-rating=POSITIVE]:after{display:inline-block;font-size:.6em;vertical-align:super;line-height:0;margin-left:.1em;color:inherit}.strategy-rated[data-rating=POSITIVE]:after{content:"✓"}.strategy-rated[data-rating=NEGATIVE]:after{content:"✗"}.ProseMirror h4 .strategy-instance-chip[data-missing=true],.strategy-instance-chip[data-missing=true]{color:#9ca3af;text-decoration:line-through;text-decoration-color:#d1d5db}.ProseMirror .strategy-instance-chip.ProseMirror-selectednode,.ProseMirror .strategy-instance-chip.is-selected{background-color:#e5e7eb;border-radius:.125rem;box-shadow:0 0 0 1px #e5e7eb;text-decoration:none}.ProseMirror .strategy-instance-chip[data-rating=POSITIVE].ProseMirror-selectednode,.ProseMirror .strategy-instance-chip[data-rating=POSITIVE].is-selected{background-color:#dcfce7;box-shadow:0 0 0 1px #dcfce7}.ProseMirror .strategy-instance-chip[data-rating=NEGATIVE].ProseMirror-selectednode,.ProseMirror .strategy-instance-chip[data-rating=NEGATIVE].is-selected{background-color:#fee2e2;box-shadow:0 0 0 1px #fee2e2}.strategy-rating-buttons,.strategy-rating-menu{display:flex;align-items:center;gap:.125rem}.strategy-rating-menu{position:fixed;z-index:50;padding:.25rem;background:#ffffff;border:1px solid #e5e7eb;border-radius:.375rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);color:#111827;text-decoration:none;cursor:default;user-select:none}.strategy-rating-menu-item{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;border:none;border-radius:.25rem;line-height:1;text-decoration:none;cursor:pointer}.strategy-rating-menu-item[data-rating=NEUTRAL]{color:#374151;background-color:#e5e7eb}.strategy-rating-menu-item[data-rating=POSITIVE]{color:#16a34a;background-color:#dcfce7}.strategy-rating-menu-item[data-rating=NEGATIVE]{color:#dc2626;background-color:#fee2e2}.strategy-rating-menu-item[aria-checked=true],.strategy-rating-menu-item[aria-pressed=true]{box-shadow:inset 0 0 0 1px currentColor}.strategy-rating-menu-unrated{font-size:.875rem;font-weight:600;line-height:1}.strategy-rating-menu-edit{margin-left:.125rem;padding-left:.25rem;border-left:1px solid #f3f4f6;border-radius:0;width:1.75rem;color:#6b7280;background:none}.strategy-rating-menu-edit:hover{color:#2563eb}.strategy-rating-menu-notes{margin-left:.125rem;padding-left:.25rem;border-left:1px solid #f3f4f6;border-radius:0;width:1.75rem;color:#6b7280;background:none}.strategy-rating-menu-notes:hover,.strategy-rating-menu-notes[data-has-notes=true],.strategy-rating-menu-notes[data-open=true]{color:#2563eb}.strategy-rating-menu-notes+.strategy-rating-menu-edit{border-left:none;padding-left:0;width:1.5rem}.strategy-rating-menu-icon{width:.875rem;height:.875rem;flex-shrink:0}.strategy-rating-menu--suggestions{flex-direction:column;align-items:stretch;width:16rem;max-width:calc(100vw - 1rem)}.strategy-rating-menu-suggestions{margin-top:.25rem;padding-top:.25rem;border-top:1px solid #f3f4f6;max-height:14rem;overflow-y:auto}.strategy-rating-menu-suggestion-group,.strategy-rating-menu-suggestions{display:flex;flex-direction:column}.strategy-rating-menu-suggestion-group+.strategy-rating-menu-suggestion-group{margin-top:.25rem;padding-top:.25rem;border-top:1px solid #f3f4f6}.strategy-rating-menu-suggestion{display:flex;align-items:center;gap:.375rem;padding:.25rem .375rem;border:none;border-radius:.25rem;background:none;font-size:.8125rem;line-height:1.3;text-align:left;color:#374151;cursor:pointer}.strategy-rating-menu-suggestion-icon{width:.875rem;height:.875rem;flex-shrink:0;color:#9ca3af}.strategy-rating-menu-suggestion:hover .strategy-rating-menu-suggestion-icon{color:#6b7280}.strategy-rating-menu-suggestion:hover{background-color:#f3f4f6;color:#111827}.strategy-rating-menu--notes{flex-direction:column;align-items:stretch;width:20rem;max-width:calc(100vw - 1rem)}.strategy-notes{display:flex;flex-direction:column;gap:.375rem;margin-top:.25rem;padding-top:.375rem;border-top:1px solid #f3f4f6;user-select:text;animation:strategy-notes-in .14s ease-out}@keyframes strategy-notes-in{0%{opacity:0;transform:translateY(-.25rem)}to{opacity:1;transform:none}}.ProseMirror.strategy-notes-input{min-height:2.75rem;max-height:40vh;overflow-y:auto;padding:.25rem .375rem;border:1px solid #e5e7eb;border-radius:.25rem;font-family:var(--font-sans,ui-sans-serif,system-ui,sans-serif);font-size:.8125rem;line-height:1.35;color:#111827;outline:none}.ProseMirror.strategy-notes-input:focus{border-color:#93c5fd}.ProseMirror.strategy-notes-input p{margin:0}.ProseMirror.strategy-notes-input p+p{margin-top:.375rem}.ProseMirror.strategy-notes-input p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:#9ca3af;pointer-events:none}.strategy-notes-actions{display:flex;justify-content:flex-end;gap:.375rem}.strategy-notes-actions button{padding:.1875rem .625rem;border-radius:.25rem;font-family:var(--font-sans,ui-sans-serif,system-ui,sans-serif);font-size:.75rem;line-height:1.2;cursor:pointer}.strategy-notes-cancel{border:1px solid #e5e7eb;background:#ffffff;color:#6b7280}.strategy-notes-cancel:hover{background:#f9fafb;color:#374151}.strategy-notes-save{border:1px solid #2563eb;background:#2563eb;color:#ffffff}.strategy-notes-save:hover{background:#1d4ed8}.strategy-ghost{color:#9ca3af;pointer-events:none;user-select:none;white-space:pre-wrap}.strategy-ghost--block{display:block}.strategy-ghost-main,.strategy-ghost-sub{pointer-events:auto;width:fit-content}.strategy-ghost--stack .strategy-ghost-main{display:block}.strategy-ghost-nested{display:block;margin-left:1.5em}.strategy-ghost-sub{display:block}.strategy-ghost-hint{font-size:.75em;opacity:.7}.transcript-ghost{color:#9ca3af;font-style:italic;pointer-events:none;user-select:none;white-space:pre-wrap}.transcript-unrefined{color:#6b7280}.transcript-listening{display:inline-flex;align-items:center;gap:.18em;margin-left:.3em;vertical-align:baseline;pointer-events:none;user-select:none}.transcript-listening-dot{width:.2em;height:.2em;border-radius:50%;background:#9ca3af;animation:transcript-listening-pulse 1.2s ease-in-out infinite}.transcript-listening-dot:nth-child(2){animation-delay:.2s}.transcript-listening-dot:nth-child(3){animation-delay:.4s}@keyframes transcript-listening-pulse{0%,60%,to{opacity:.25}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.transcript-listening-dot{animation:none;opacity:.6}}.transcript-settling{animation:transcript-settle .45s ease-out}@keyframes transcript-settle{0%{color:#9ca3af}to{color:inherit}}.strategy-slash-menu{display:flex;max-width:min(44rem,calc(100vw - 2rem));background:#ffffff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px -5px rgba(0,0,0,.15),0 8px 10px -6px rgba(0,0,0,.1);overflow-x:auto;overflow-y:hidden;z-index:60}.strategy-slash-col{display:flex;flex-direction:column;flex:0 0 auto;min-width:13rem;max-width:18rem;max-height:16rem;overflow-y:auto;padding:.25rem}.strategy-slash-col--suggested{border-left:1px solid #f3f4f6;background:#fafafa}.strategy-slash-heading{padding:.25rem .5rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af}.strategy-slash-item{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;width:100%;text-align:left;padding:.3rem .5rem;border-radius:.375rem;font-size:.8125rem;line-height:1.2;color:#374151;background:transparent}.strategy-slash-item.is-active{background-color:#eef2ff;color:#3730a3}.strategy-slash-item.is-trail{background-color:#f3f4f6}.strategy-slash-item--create{color:#4f46e5;font-weight:500}.strategy-slash-item--prediction{margin-top:.25rem;border-top:1px solid #f3f4f6;color:#4338ca;font-weight:500}.strategy-slash-create{display:inline-flex;align-items:flex-start;gap:.25rem;min-width:0}.strategy-slash-create svg{flex-shrink:0;margin-top:.1rem}.strategy-slash-item .truncate{min-width:0;white-space:normal;overflow-wrap:break-word}.strategy-slash-type{flex-shrink:0;font-size:.6875rem;color:#9ca3af}.strategy-slash-empty{padding:.5rem .75rem;font-size:.8125rem;color:#9ca3af}.prediction-composer{display:flex;align-items:center;gap:.4rem;margin:.7em 0;padding:.45rem .55rem;border-left:3px solid #818cf8;border-radius:.25rem;background:#f8faff;font-family:var(--font-sans,ui-sans-serif,system-ui,sans-serif);font-size:.8125rem;color:#374151}.prediction-composer-label{flex-shrink:0;color:#6366f1;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.prediction-composer input{min-width:0;border:0;border-bottom:1px solid #c7d2fe;border-radius:0;background:transparent;outline:none}.prediction-composer input:focus{border-bottom-color:#4f46e5}.prediction-composer-text{flex:1 1 auto;padding:.1rem .15rem;color:#111827}.prediction-composer-at{flex-shrink:0;color:#9ca3af}.prediction-composer-probability{display:inline-flex;align-items:baseline;flex-shrink:0;color:#6b7280}.prediction-composer-probability input{width:2rem;padding:.1rem 0;text-align:center;color:#111827}.prediction-composer button{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;padding:.15rem;border-radius:.25rem;color:#9ca3af}.prediction-composer-save:focus-visible,.prediction-composer-save:hover{background:#e0e7ff;color:#4338ca}.prediction-composer-cancel:focus-visible,.prediction-composer-cancel:hover{background:#f3f4f6;color:#4b5563}.prediction-composer-error{flex-basis:100%;color:#dc2626;font-size:.6875rem}@media (max-width:520px){.prediction-composer{flex-wrap:wrap}.prediction-composer-text{flex-basis:calc(100% - 5.5rem)}}.ProseMirror div[data-type=details]{display:flex;align-items:flex-start;gap:.4em;margin:.6em 0}.ProseMirror div[data-type=details]>button{flex:0 0 auto;margin:.5em 0 0;padding:0;border:none;background:none;cursor:pointer;line-height:1;color:var(--muted-foreground)}.ProseMirror div[data-type=details]>button:before{content:"";display:block;width:0;height:0;border-left:.4em solid;border-top:.3em solid transparent;border-bottom:.3em solid transparent;transition:transform .12s ease}.ProseMirror div[data-type=details].is-open>button:before{transform:rotate(90deg)}.ProseMirror div[data-type=details]>div{flex:1 1 auto;min-width:0}.ProseMirror div[data-type=details] summary{list-style:none;font-style:italic;font-weight:600}.ProseMirror div[data-type=details]:not(.is-open) summary{cursor:pointer}.ProseMirror div[data-type=details] summary::-webkit-details-marker{display:none}.ProseMirror div[data-type=details] div[data-type=detailsContent]{border-left:3px solid var(--border);padding-left:1em;margin-top:.5em}.ProseMirror div[data-type=details] div[data-type=detailsContent][hidden]{display:none}.puzzle details,.rich-text details{margin:.6em 0}.puzzle details>summary,.rich-text details>summary{list-style:none;cursor:pointer;font-style:italic;font-weight:600}.puzzle details>summary::-webkit-details-marker,.rich-text details>summary::-webkit-details-marker{display:none}.puzzle details>summary:before,.rich-text details>summary:before{content:"";display:inline-block;width:0;height:0;margin-right:.45em;vertical-align:middle;border-left:.4em solid var(--muted-foreground);border-top:.3em solid transparent;border-bottom:.3em solid transparent;transition:transform .12s ease}.puzzle details[open]>summary:before,.rich-text details[open]>summary:before{transform:rotate(90deg)}.puzzle details>div[data-type=detailsContent],.rich-text details>div[data-type=detailsContent]{border-left:3px solid var(--border);padding-left:1em;margin:.5em 0 0 .4em}.tag-chip{display:inline;color:#4b5563;text-decoration:none;white-space:normal;cursor:pointer;user-select:none;padding-block:1px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.tag-chip:hover{color:#111827;text-decoration:underline;text-underline-offset:.15em}.tag-chip.is-selected{background-color:#e5e7eb;border-radius:3px}.MathJax{font-size:1.1em}.MathJax_Display{margin:1em 0;text-align:center}.tex2jax_process{line-height:1.6}.tex2jax_process .MathJax{margin:0 .2em}.tex2jax_process .MathJax_Display{display:block;margin:1.5em auto;text-align:center}.tex2jax_process p:has(.MathJax_Display){text-align:center}.tex2jax_process .MathJax_Display+p{margin-top:1em}.math-container{margin-top:1rem;margin-bottom:1rem;text-align:center}.math-inline{margin-left:.25rem;margin-right:.25rem;display:inline-block}.math-display{margin:1rem auto;display:block}.math-content,.math-content .MathJax_Display{overflow-x:auto}@media (max-width:768px){.MathJax{font-size:1em}.MathJax_Display{margin:.75em 0}.tex2jax_process .MathJax_Display{margin:1em auto}}@media print{.MathJax{font-size:1em}.MathJax_Display{page-break-inside:avoid}}.MathJax:focus{outline:2px solid var(--primary);outline-offset:2px}.MathJax::selection{background-color:var(--primary);color:var(--primary-foreground)}.MathJax_Error{color:var(--destructive);background-color:var(--destructive);padding:.25em .5em;border-radius:.25em;font-family:monospace}.scan-box{border:1.2mm solid #000;padding:4mm;margin:5mm 0}.scan-comb-cell{display:inline-block;width:5.5mm;height:7mm;border:.4mm solid #000;vertical-align:middle}.scan-comb-cell+.scan-comb-cell{margin-left:-.4mm}.scan-writebox{display:inline-block;min-width:38mm;height:9mm;border:.4mm solid #000;vertical-align:middle}.scan-writebox-full{display:block;width:100%}@media print{.no-print,button,footer,header,nav{display:none!important}.print-sheet{display:block!important}.print-page-break,.puzzle-break{page-break-before:always}.print-avoid-break{page-break-inside:avoid}body{font-size:12pt;background:#fff}a,body{color:#000}a{text-decoration:none}.print-sheet .ruled-line{border-color:#888!important}.print-sheet .chess-dark{background-color:#c8c8c8!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-sheet .scan-box,.print-sheet .scan-comb-cell,.print-sheet .scan-writebox{border-color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}input[type=number]{-moz-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}