@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700;12..96,800&family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&display=swap";@import"https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.lp-shell{--lp-bg: #f8f9ff;--lp-surface: #ffffff;--lp-text: #0b1c30;--lp-muted: #64748b;--lp-muted2: #94a3b8;--lp-border: #e2e8f0;--lp-blue: #003ec7;--lp-blue-fill: #0052ff;--lp-green: #007550;--lp-radius: .75rem;font-family:Manrope,DM Sans,system-ui,sans-serif;background:var(--lp-bg);color:var(--lp-text);min-height:100%;padding:0 1.25rem 5rem;margin:0 -.25rem}.lp-shell.lp-shell--create{padding-bottom:10rem}.lp-shell *,.lp-shell *:before,.lp-shell *:after{box-sizing:border-box}.lp-stat-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem;margin-bottom:1.75rem}@media(min-width:768px){.lp-stat-grid{grid-template-columns:repeat(1,minmax(0,1fr));max-width:360px}}.lp-stat-card{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 2px #0f172a0a}.lp-stat-icon{width:3rem;height:3rem;border-radius:9999px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-stat-icon.blue{background:#eff6ff;color:#2563eb}.lp-stat-icon.green{background:#ecfdf5;color:#059669}.lp-stat-icon.amber{background:#fffbeb;color:#d97706}.lp-stat-icon.purple{background:#f5f3ff;color:#7c3aed}.lp-label-caps{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--lp-muted);margin:0 0 .15rem}.lp-stat-value{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.lp-bento{display:grid;grid-template-columns:1fr;gap:1.25rem;max-width:1400px;margin:0 auto}@media(min-width:1024px){.lp-bento{grid-template-columns:minmax(0,8fr) minmax(0,4fr);align-items:start}.lp-bento.lp-bento--stacked{grid-template-columns:1fr}}.lp-bento.lp-bento--stacked{grid-template-columns:1fr}.lp-section-head--solo{justify-content:flex-start}.lp-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.lp-section-head h2{margin:0;font-size:1.75rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.lp-section-head p{margin:.35rem 0 0;font-size:.9375rem;color:var(--lp-muted)}.lp-link-btn{background:none;border:none;color:var(--lp-blue);font-weight:600;font-size:.875rem;cursor:pointer;display:inline-flex;align-items:center;gap:.25rem;padding:.25rem 0;font-family:inherit}.lp-link-btn:hover{text-decoration:underline}.lp-path-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.lp-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1100px){.lp-path-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.lp-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lp-path-card{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:0;overflow:hidden;transition:border-color .2s,box-shadow .2s;cursor:pointer;box-shadow:0 1px 2px #0f172a0a}.lp-path-card:hover{border-color:#93c5fd}.lp-path-cover-wrap{position:relative;width:100%;aspect-ratio:15 / 8;background:linear-gradient(145deg,#f1f5f9,#e8eef7,#f8fafc)}.lp-path-cover{width:100%;height:100%;object-fit:cover;object-position:center;display:block;background:transparent}.lp-path-cover--placeholder{display:flex;align-items:center;justify-content:center;color:var(--lp-blue-fill);opacity:.35}.lp-path-cover-menu{position:absolute;top:.45rem;right:.45rem;z-index:2}.lp-path-cover-menu-btn{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.5rem;border:none;background:#fffffff0;box-shadow:0 1px 4px #0f172a1f;cursor:pointer;color:#475569;font:inherit;padding:0}.lp-path-cover-menu-btn:hover{background:#fff;color:#0f172a}.lp-path-card-menu-panel{position:absolute;right:0;top:calc(100% + 4px);min-width:12.5rem;padding:.4rem;z-index:25;box-shadow:0 10px 40px #0f172a1f}.lp-path-menu-item{display:flex;align-items:center;gap:.5rem;width:100%;justify-content:flex-start;padding:.5rem .65rem;margin:0;border:none;border-radius:.4rem;background:transparent;color:#0f172a;font-size:.875rem;font-weight:500;font-family:inherit;white-space:nowrap;cursor:pointer;text-align:left}.lp-path-menu-item:hover{background:#f1f5f9}.lp-path-menu-item--danger{color:#b91c1c}.lp-path-menu-item--danger:hover{background:#fef2f2;color:#991b1b}.lp-color-field{margin-top:.3rem}.lp-color-row{display:flex;align-items:center;gap:.6rem}.lp-color-row input[type=color]{width:2.5rem;height:2rem;padding:0;border:1px solid var(--lp-border);border-radius:.4rem;background:#fff;cursor:pointer}.lp-btn-inline{padding:.45rem .7rem;font-size:.85rem}.lp-item-card--row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem}.lp-checkbox-label--grow{flex:1;min-width:0;margin:0;cursor:pointer;display:flex;align-items:center;gap:.5rem}.lp-item-row-actions{display:flex;align-items:center;gap:.62rem;flex-shrink:0}@media(hover:hover){.lp-item-row-actions .lp-icon-btn--row:not(.lp-icon-btn--open){opacity:0;visibility:hidden;pointer-events:none;transform:translateY(1px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.lp-item-card:hover .lp-item-row-actions .lp-icon-btn--row:not(.lp-icon-btn--open),.lp-item-card:focus-within .lp-item-row-actions .lp-icon-btn--row:not(.lp-icon-btn--open){opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}}.lp-icon-btn.lp-icon-btn--row{color:#e2e8f0;padding:.62rem;border-radius:.5rem;background:#0f172ad1;border:1px solid rgba(15,23,42,.95);box-shadow:0 2px 8px #02061759}.lp-icon-btn.lp-icon-btn--row:hover{color:#f8fafc;background:#020617f5;border-color:#0f172a}.lp-icon-btn.lp-icon-btn--open{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;color:#f8fafc;background:#0f172ae6;border:1px solid rgba(15,23,42,1);border-radius:.56rem;box-shadow:0 2px 8px #02061759;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.lp-item-row-actions .lp-icon-btn--row svg{width:18px;height:18px}.lp-icon-btn.lp-icon-btn--open:hover{color:#f8fafc;filter:brightness(1.08);border-color:#0f172a;transform:translateY(-1px);box-shadow:0 6px 16px #02061773;background:#020617f5}.lp-item-row-title-text{margin:0;font-size:.9375rem;font-weight:600;color:#0f172a;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lp-url-item-row{padding:.65rem .85rem}.lp-pending-body-wrap{padding:0 .15rem .15rem 0}.lp-item-card--pending{position:relative;padding:.5rem .85rem .4rem}.lp-item-card--pending .lp-pending-body-wrap{padding:0;padding-right:8.7rem;min-height:2rem}.lp-item-card--pending .lp-pending-body{line-height:1.32}.lp-item-row-actions--pending{position:absolute;top:.36rem;right:.55rem;z-index:2}.lp-item-card--pending .lp-task-para{margin:0}.lp-pending-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.08rem}.lp-pending-checklist li{display:flex;align-items:flex-start;gap:.42rem;margin:0;color:#334155;font-size:.93rem;line-height:1.32}.lp-checkmark{color:#0f172a;font-weight:700;line-height:1.2;margin-top:.02rem}.lp-note-body{margin:.35rem 0 0;font-size:.875rem;color:#475569;line-height:1.55}.lp-path-card-body{padding:.8rem .95rem .95rem}.lp-path-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.lp-path-icon-wrap{padding:.65rem;background:#f8fafc;border-radius:.5rem;color:var(--lp-blue-fill)}.lp-path-card:hover .lp-path-icon-wrap{background:#eff6ff}.lp-icon-btn{background:none;border:none;padding:.25rem;color:#cbd5e1;cursor:pointer;border-radius:.25rem;display:flex;align-items:center;justify-content:center}.lp-icon-btn:hover{color:#64748b;background:#f8fafc}.lp-path-title{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;line-height:1.35}.lp-path-desc{margin:0 0 .8rem;font-size:.8125rem;color:var(--lp-muted2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.12em}.lp-progress-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.lp-progress-label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--lp-muted)}.lp-progress-pct{font-size:.6875rem;font-weight:600}.lp-progress-track{height:.5rem;background:#f1f5f9;border-radius:9999px;overflow:hidden;margin-bottom:1rem}.lp-progress-fill{height:100%;border-radius:9999px;transition:width .35s ease}.lp-progress-fill.blue{background:var(--lp-blue-fill)}.lp-progress-fill.green{background:var(--lp-green)}.lp-path-footer{display:flex;justify-content:space-between;align-items:center}.lp-updated{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--lp-muted2)}.lp-play-btn{width:2.25rem;height:2.25rem;border-radius:9999px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.lp-play-btn.blue{background:#eff6ff;color:var(--lp-blue-fill)}.lp-play-btn.blue:hover{background:var(--lp-blue-fill);color:#fff}.lp-play-btn.green{background:#ecfdf5;color:#059669}.lp-play-btn.green:hover{background:#059669;color:#fff}.lp-add-card{border:2px dashed #e2e8f0;border-radius:var(--lp-radius);padding:1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;min-height:220px;transition:background .2s,border-color .2s;background:transparent;font-family:inherit;color:inherit}.lp-add-card:hover{background:#eff6ff80;border-color:#93c5fd}.lp-add-card-icon{width:3rem;height:3rem;border-radius:9999px;background:#f1f5f9;color:#94a3b8;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;transition:background .2s,color .2s}.lp-add-card:hover .lp-add-card-icon{background:#dbeafe;color:var(--lp-blue-fill)}.lp-add-card h4{margin:0 0 .35rem;font-size:1.125rem;font-weight:600;color:#94a3b8}.lp-add-card:hover h4{color:var(--lp-blue-fill)}.lp-add-card p{margin:0;font-size:.8125rem;color:var(--lp-muted2)}.lp-sidebar-stack{display:flex;flex-direction:column;gap:1rem}.lp-panel{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:1.25rem;box-shadow:0 1px 2px #0f172a0a}.lp-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.lp-panel-head h3{margin:0;font-size:1.125rem;font-weight:600}.lp-recent-row{display:flex;align-items:center;gap:.75rem;padding:.65rem;border-radius:.5rem;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s}.lp-recent-row:hover{background:#f8fafc;border-color:#f1f5f9}.lp-recent-icon{width:2.5rem;height:2.5rem;border-radius:.35rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.lp-recent-icon.red{background:#fef2f2;color:#ef4444}.lp-recent-icon.blue{background:#eff6ff;color:#3b82f6}.lp-recent-icon.green{background:#ecfdf5;color:#10b981}.lp-recent-meta{min-width:0;flex:1}.lp-recent-meta strong{display:block;font-size:.8125rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-recent-meta span{font-size:.6875rem;color:var(--lp-muted2)}.lp-banner{position:relative;border-radius:var(--lp-radius);padding:1.25rem;background:linear-gradient(135deg,#0047e5,#0052ff 55%,#1e40af);color:#fff;overflow:hidden;box-shadow:0 10px 25px -10px #0042ff73}.lp-banner-bg{position:absolute;inset:0;opacity:.12;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.55),transparent 50%),radial-gradient(circle at 80% 90%,rgba(110,200,255,.4),transparent 45%);pointer-events:none}.lp-banner-inner{position:relative;z-index:1}.lp-banner h3{margin:.5rem 0 .35rem;font-size:1.375rem;font-weight:700;line-height:1.25}.lp-banner p{margin:0 0 1rem;font-size:.8125rem;opacity:.92;line-height:1.55}.lp-banner-btn{width:100%;padding:.65rem 1rem;border-radius:.5rem;border:none;background:#fff;color:var(--lp-blue);font-weight:700;font-size:.8125rem;cursor:pointer;font-family:inherit;transition:background .15s}.lp-banner-btn:hover{background:#eff6ff}.lp-fab{position:fixed;bottom:1.75rem;right:1.75rem;width:3.5rem;height:3.5rem;border-radius:9999px;border:none;background:var(--lp-blue-fill);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 30px #0052ff59;z-index:30;transition:transform .15s}.lp-fab:hover{transform:scale(1.05)}.lp-fab:active{transform:scale(.96)}.lp-modal-overlay{--lp-bg: #f8f9ff;--lp-surface: #ffffff;--lp-text: #0b1c30;--lp-muted: #64748b;--lp-muted2: #94a3b8;--lp-border: #e2e8f0;--lp-blue: #003ec7;--lp-blue-fill: #0052ff;--lp-green: #007550;--lp-radius: .75rem;position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;font-family:Manrope,DM Sans,system-ui,sans-serif;color:var(--lp-text)}.lp-modal{background:var(--lp-surface);border-radius:var(--lp-radius);max-width:420px;width:100%;padding:1.5rem;box-shadow:0 24px 50px #0f172a33;border:1px solid rgba(226,232,240,.9)}.lp-modal--edit-path{max-width:min(28rem,100%);padding:1.625rem 1.75rem 1.5rem}.lp-modal h2{margin:0 0 1rem;font-size:1.25rem;font-weight:700}.lp-modal--edit-path h2{margin-bottom:.35rem}.lp-modal-subtitle{margin:0 0 1.25rem;font-size:.875rem;line-height:1.5;color:var(--lp-muted);font-weight:500}.lp-field{margin-bottom:1rem}.lp-field label{display:block;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--lp-muted);margin-bottom:.35rem}.lp-field input,.lp-field textarea,.lp-field select{width:100%;padding:.65rem .85rem;border:1px solid var(--lp-border);border-radius:.5rem;font-family:inherit;font-size:.875rem;outline:none}.lp-field input:focus,.lp-field textarea:focus,.lp-field select:focus{border-color:var(--lp-blue-fill);box-shadow:0 0 0 3px #0052ff1f}.lp-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:.65rem;margin-top:1.25rem}.lp-modal--edit-path .lp-field:last-of-type{margin-bottom:0}.lp-modal--edit-path .lp-modal-actions{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--lp-border)}.lp-modal--edit-path .lp-btn-primary,.lp-modal--edit-path .lp-btn-secondary{min-width:6.5rem;padding:.6rem 1.1rem;font-size:.875rem}.lp-modal--edit-path .lp-btn-primary{box-shadow:0 1px 2px #0052ff33}.lp-modal--edit-path .lp-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.lp-modal--edit-path .lp-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.lp-modal--edit-path .lp-field textarea{min-height:6.75rem;resize:vertical;line-height:1.55}.lp-modal--confirm-delete{max-width:min(24rem,100%)}.lp-confirm-warning{color:#9f1239}.lp-modal--cover-editor{max-width:min(36rem,100%)}.lp-cover-editor-hint{font-size:.8125rem;color:var(--lp-muted);line-height:1.45;margin:-.25rem 0 1rem}.lp-cover-editor-zoom{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem;flex-wrap:wrap}.lp-cover-editor-zoom-btn{flex:0 0 auto;width:2rem;height:2rem;padding:0;border-radius:.375rem;border:1px solid var(--lp-border);background:var(--lp-surface);color:var(--lp-text);font-size:1.125rem;line-height:1;cursor:pointer}.lp-cover-editor-zoom-btn:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.lp-cover-editor-zoom-btn:disabled{opacity:.45;cursor:not-allowed}.lp-cover-editor-zoom-slider{flex:1 1 10rem;min-width:6rem;accent-color:var(--lp-accent, #2563eb)}.lp-cover-editor-zoom-label{flex:0 0 auto;font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--lp-muted);min-width:3rem;text-align:right}.lp-cover-editor-frame{position:relative;width:100%;aspect-ratio:21 / 9;border-radius:.5rem;overflow:hidden;background:#e2e8f0;margin-bottom:.25rem;touch-action:none;-webkit-user-select:none;user-select:none}.lp-cover-editor-img{position:absolute;display:block;left:0;top:0;cursor:grab;touch-action:none;max-width:none}.lp-cover-editor-img--ready:active{cursor:grabbing}.lp-cover-editor-actions{margin-top:1rem}.lp-detail-hero-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;align-items:center}.lp-inline-add{margin-bottom:0;padding:.85rem 1rem;border:1px solid var(--lp-border);border-radius:.5rem;background:var(--lp-surface)}.lp-detail-bottom-add{margin-top:1rem}.lp-inline-add--link,.lp-inline-add--checkbox{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.lp-inline-add--notes,.lp-inline-add--files{display:flex;justify-content:flex-start;align-items:center}.lp-inline-add--files .lp-inline-add-btn{margin-left:0;margin-right:auto;align-self:flex-start}.lp-inline-input{flex:1;min-width:12rem;padding:.55rem .75rem;border:1px solid var(--lp-border);border-radius:.5rem;font-family:inherit;font-size:.875rem;outline:none}.lp-inline-input:focus{border-color:var(--lp-blue-fill);box-shadow:0 0 0 3px #0052ff1f}.lp-inline-add-btn{flex-shrink:0}.lp-inline-add--pending{margin-bottom:1rem}.lp-inline-pending-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;margin-top:.5rem}.lp-link-open-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.35rem;flex-wrap:wrap}.lp-link-url-text{font-size:.8125rem;color:var(--lp-muted2);word-break:break-all;min-width:0;flex:1}.lp-link-go-btn{display:inline-flex;align-items:center;gap:.35rem;flex-shrink:0;padding:.35rem .65rem;border-radius:.45rem;border:1px solid var(--lp-border);background:#eff6ff;color:var(--lp-blue-fill);font-size:.8125rem;font-weight:600;text-decoration:none;font-family:inherit}.lp-link-go-btn:hover{background:#dbeafe;border-color:#93c5fd}.lp-create-footer{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap;width:100%;margin-top:2rem;padding:1.75rem 0 5rem;border-top:1px solid var(--lp-border)}.lp-create-footer .lp-btn-primary,.lp-create-footer .lp-btn-secondary{min-width:8rem;padding-left:1.25rem;padding-right:1.25rem}.lp-create-resource-list{display:flex;flex-direction:column;gap:.65rem;margin-bottom:.5rem}.lp-create-resource-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:.5rem .75rem;align-items:start;padding:.85rem;border-radius:.5rem;border:1px solid var(--lp-border);background:#f8fafc}@media(max-width:520px){.lp-create-resource-row{grid-template-columns:1fr}}.lp-create-resource-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.lp-btn-mini{padding:.45rem .65rem;font-size:.75rem;border-radius:.375rem;border:1px solid var(--lp-border);background:var(--lp-surface);font-weight:600;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:.3rem;color:var(--lp-blue-fill)}.lp-btn-mini:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd}.lp-btn-mini:disabled{opacity:.45;cursor:not-allowed}.lp-btn-mini.lp-btn-mini--danger{color:#dc2626;border-color:#fecaca}.lp-btn-mini.lp-btn-mini--danger:hover:not(:disabled){background:#fef2f2}.lp-btn-secondary{padding:.55rem 1rem;border-radius:.5rem;border:1px solid var(--lp-border);background:var(--lp-surface);font-weight:600;font-size:.8125rem;cursor:pointer;font-family:inherit}.lp-btn-primary{padding:.55rem 1.15rem;border-radius:.5rem;border:none;background:var(--lp-blue-fill);color:#fff;font-weight:600;font-size:.8125rem;cursor:pointer;font-family:inherit}.lp-btn-primary:disabled{opacity:.5;cursor:not-allowed}.lp-btn-danger{padding:.55rem 1.15rem;border-radius:.5rem;border:1px solid #fca5a5;background:#dc2626;color:#fff;font-weight:600;font-size:.8125rem;cursor:pointer;font-family:inherit}.lp-btn-danger:hover{background:#b91c1c;border-color:#f87171}.lp-detail{max-width:900px;margin:0 auto}.lp-detail--modern{max-width:1100px}.lp-home-nav-btn{width:2.15rem;height:2.15rem;border-radius:.5rem;border:1px solid #dbe3f1;background:#fff;color:#2563eb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.lp-home-nav-btn:hover{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.lp-home-nav-btn.lp-home-nav-btn--inline{width:2rem;height:2rem;border-radius:.55rem;border-color:#e2e8f0;color:#64748b;background:#f8fafc;flex-shrink:0}.lp-home-nav-btn.lp-home-nav-btn--inline:hover{color:#334155;border-color:#cbd5e1;background:#f1f5f9}.lp-detail-back{background:none;border:none;display:inline-flex;align-items:center;gap:.35rem;color:var(--lp-muted);font-size:.8125rem;font-weight:600;cursor:pointer;margin-bottom:.45rem;font-family:inherit;padding:0}.lp-detail-back:hover{color:var(--lp-blue-fill)}.lp-detail-hero{background:linear-gradient(160deg,#fff,#f7faff);border:1px solid #dbeafe;border-radius:var(--lp-radius);padding:0;overflow:hidden;margin-bottom:.65rem;box-shadow:0 8px 24px #0f172a0f}.lp-detail-hero.lp-detail-hero--modern{background:#fff;border:1px solid #e2e8f0;border-radius:.65rem;box-shadow:0 1px 2px #0f172a0a}.lp-detail-hero-cover-wrap{width:100%;aspect-ratio:21 / 7;max-height:8.5rem;background:#0b0f1a}.lp-detail-hero-cover{width:100%;height:100%;object-fit:cover;display:block}.lp-detail-hero-inner{padding:1rem 1.05rem 1.05rem}.lp-detail-hero-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.lp-detail-hero-copy{min-width:0;flex:1}.lp-detail-hero-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:.35rem}.lp-detail-hero-edit-wrap{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.6rem}.lp-detail-hero-meta-pills{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.lp-detail-page-title{margin:0;font-size:clamp(1.8rem,2.8vw,2.35rem);font-weight:800;letter-spacing:-.03em;line-height:1.08;color:#0f172a;text-wrap:balance}.lp-detail-hero p{margin:0;color:#4b617d;font-size:.92rem;line-height:1.45;max-width:48rem}.lp-detail-category-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.38rem .75rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#4f46e5;background:#eef2ff;border:1px solid #c7d2fe;white-space:nowrap}.lp-detail-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;padding:.38rem .75rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.lp-detail-status-pill--active{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.lp-detail-status-pill--planning{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.lp-detail-status-pill--paused{color:#334155;background:#e2e8f0;border:1px solid #cbd5e1}.lp-detail-status-pill--completed{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.lp-detail-hero-edit-btn{border-color:#c7d2fe;background:#eef2ff;color:#1e3a8a;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease,background .16s ease,border-color .16s ease}.lp-detail-hero-edit-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.lp-detail-hero:hover .lp-detail-hero-edit-btn,.lp-detail-hero:focus-within .lp-detail-hero-edit-btn{opacity:1;visibility:visible;transform:translateY(0)}.lp-badge-soft{display:inline-block;font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .55rem;border-radius:9999px;background:#eff6ff;color:var(--lp-blue-fill)}.lp-detail-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:1rem}.lp-detail-tabs--top{margin-bottom:.55rem}.lp-detail-tabs.lp-detail-tabs--modern{gap:.45rem;margin-bottom:.85rem;overflow-x:auto;padding-bottom:.2rem}.lp-tab-sortable{flex-shrink:0}.lp-detail-tab{border:1px solid var(--lp-border);background:var(--lp-surface);padding:.42rem .72rem;border-radius:9999px;font-size:.79rem;font-weight:600;cursor:pointer;color:var(--lp-muted);font-family:inherit;display:inline-flex;align-items:center;gap:.35rem}.lp-detail-tabs--modern .lp-detail-tab{padding:.56rem .95rem;border-radius:9999px;border-color:#e2e8f0;background:#fff;color:#475569;touch-action:none}.lp-detail-tab.active{background:#eff6ff;border-color:#93c5fd;color:var(--lp-blue-fill)}.lp-detail-tabs--modern .lp-detail-tab.active{background:#4f46e5;border-color:#4f46e5;color:#fff;box-shadow:0 6px 14px #4f46e53d}.lp-detail-tab svg:first-child{opacity:.65}.lp-tab-sortable.is-dragging .lp-detail-tab,.is-dragging .lp-item-card{opacity:.8;box-shadow:0 10px 24px #0f172a29}.lp-detail-panel{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:1.25rem}.lp-detail-panel.lp-detail-panel--modern{background:#f8f9ff;border-color:transparent;padding:0}.lp-detail-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.lp-detail-toolbar h2{margin:0;font-size:1.45rem;font-weight:800;color:#0f172a}.lp-item-card{border:1px solid #e2e8f0;border-radius:.65rem;padding:1rem 1.05rem;margin-bottom:.65rem;background:#fff;transition:border-color .18s ease,box-shadow .18s ease}.lp-item-card:hover{border-color:#c7d2fe;box-shadow:0 8px 18px #0f172a0f}.lp-item-card:last-child{margin-bottom:0}.lp-item-sortable{margin-bottom:.55rem}.lp-item-sortable:last-child{margin-bottom:0}.lp-item-card-actions-row{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.lp-item-card-actions-btns{display:flex;align-items:center;gap:4px;transition:opacity .18s ease}@media(hover:hover){.lp-item-card:not(:hover):not(:focus-within) .lp-item-card-actions-btns{opacity:0}}.lp-checkbox-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lp-checkbox-label{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer;flex:1;min-width:0;margin:0;font-weight:500;color:var(--lp-text)}.lp-checkbox-label input[type=checkbox]{width:1.125rem;height:1.125rem;margin-top:.12rem;flex-shrink:0;cursor:pointer;accent-color:var(--lp-blue-fill)}.lp-checkbox-label.lp-checkbox-label--grow{align-items:center}.lp-checkbox-label.lp-checkbox-label--grow input[type=checkbox]{margin-top:0}.lp-checkbox-text{font-size:.9375rem;line-height:1.45;word-break:break-word}.lp-pending-body{font-size:.875rem;color:#475569;line-height:1.55}.lp-task-para{margin:0 0 .65rem}.lp-task-para:last-child{margin-bottom:0}.lp-task-para--muted{color:#94a3b8;font-style:italic}.lp-bullet-list,.lp-numbered-list{margin:0 0 .75rem 1.1rem;padding:0}.lp-bullet-list li,.lp-numbered-list li{margin-bottom:.3rem}.lp-bullet-list:last-child,.lp-numbered-list:last-child{margin-bottom:0}.lp-format-hint{font-size:.75rem;color:#64748b;line-height:1.45;margin:-.25rem 0 .5rem}.lp-format-hint code{font-size:.7rem;background:#f1f5f9;padding:.1rem .3rem;border-radius:3px;color:#0f172a}.lp-insert-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.35rem}.lp-modal--pending-task{max-width:min(28rem,100%)}.lp-pending-editor-hint{font-size:.8125rem;color:var(--lp-muted);line-height:1.45;margin:-.35rem 0 .65rem}.lp-pending-lines{display:flex;flex-direction:column;gap:.45rem;margin-bottom:.65rem;max-height:min(40vh,18rem);overflow-y:auto;padding-right:.15rem}.lp-pending-line-row{display:flex;align-items:center;gap:.55rem;padding:.45rem .55rem .45rem .5rem;border:1px solid var(--lp-border);border-radius:.5rem;background:#fafafa;min-width:0}.lp-pending-line-num{flex-shrink:0;min-width:1.75rem;height:1.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:9999px;font-size:.75rem;font-weight:700;background:#eff6ff;color:var(--lp-blue-fill)}.lp-pending-line-input{flex:1;min-width:0;border:none;background:transparent;font-family:inherit;font-size:.875rem;color:var(--lp-text);padding:.35rem .25rem;outline:none}.lp-pending-line-input::placeholder{color:var(--lp-muted2)}.lp-pending-line-input:focus{outline:none}.lp-pending-line-remove{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:.45rem;background:transparent;color:#94a3b8;cursor:pointer;font:inherit}.lp-pending-line-remove:hover:not(:disabled){background:#fee2e2;color:#dc2626}.lp-pending-line-remove:disabled{opacity:.28;cursor:not-allowed}.lp-pending-add-step{display:inline-flex;align-items:center;justify-content:center;width:100%;margin-top:.15rem;padding:.55rem .75rem;border-radius:.5rem;border:1px dashed var(--lp-border);background:#f8fafc;color:var(--lp-blue-fill);font-weight:600;font-size:.8125rem;cursor:pointer;font-family:inherit}.lp-pending-add-step:hover{background:#eff6ff;border-color:#93c5fd}.lp-item-top{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.lp-item-top h4{margin:0;font-size:.875rem;font-weight:600}.lp-item-meta{font-size:.6875rem;color:var(--lp-muted2)}.lp-empty-soft{text-align:center;padding:2rem 1rem;color:var(--lp-muted);font-size:.875rem}.lp-create-root{max-width:960px;margin:0 auto}.lp-create-breadcrumb{font-size:.8125rem;color:var(--lp-muted);margin-bottom:.35rem;display:flex;gap:.35rem;flex-wrap:wrap}.lp-create-breadcrumb span.accent{color:var(--lp-blue-fill);font-weight:600}.lp-create-root h1{margin:0 0 .35rem;font-size:2rem;font-weight:700}.lp-create-root>p.lead{margin:0 0 1.5rem;color:var(--lp-muted)}@media(max-width:767px){.lp-fab{bottom:calc(1.25rem + env(safe-area-inset-bottom,0));right:1rem}}.learning-path-container{overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}@media(max-width:767px){.lp-shell{padding:0 .8rem 4.75rem;margin:0}.lp-stat-card{padding:.9rem 1rem}.lp-path-card-body{padding:.75rem .85rem .85rem}.lp-path-title{font-size:1rem}.lp-path-desc{font-size:.78rem;margin-bottom:.65rem}.lp-path-footer{align-items:flex-end;gap:.65rem}.lp-updated{min-width:0;font-size:.7rem}.lp-modal,.lp-modal--edit-path{padding:1rem}.lp-modal-actions{flex-wrap:wrap}.lp-modal-actions .lp-btn-primary,.lp-modal-actions .lp-btn-secondary,.lp-modal-actions .lp-btn-danger{width:100%}.lp-detail{max-width:100%}.lp-detail-page-title{font-size:clamp(1.15rem,5.8vw,1.45rem);line-height:1.2}.lp-detail-hero-inner{padding:.85rem .85rem .95rem}.lp-detail-hero-head{flex-direction:column;align-items:stretch;gap:.8rem}.lp-detail-hero-edit-wrap{width:100%;align-items:stretch}.lp-detail-hero-actions{justify-content:flex-start}.lp-detail-hero-edit-btn{opacity:1;visibility:visible;transform:none}.lp-detail-hero-title-row{align-items:flex-start;gap:.45rem}.lp-detail-hero-meta-pills{justify-content:flex-start}.lp-detail-hero p{font-size:.86rem}.lp-detail-tabs.lp-detail-tabs--modern{margin-bottom:.75rem;gap:.4rem;padding-bottom:.3rem}.lp-detail-tabs--modern .lp-detail-tab{font-size:.76rem;padding:.5rem .78rem;min-height:2.25rem}.lp-item-card{padding:.85rem}.lp-item-card--row,.lp-checkbox-item{flex-direction:column;align-items:stretch;gap:.55rem}.lp-note-header-row{flex-direction:column;align-items:stretch;gap:.5rem}.lp-item-card--pending{padding:.7rem .78rem .75rem}.lp-item-card--pending .lp-pending-body-wrap{padding-right:0;min-height:0}.lp-item-row-actions--pending{position:static}.lp-item-row-title-text{white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.lp-item-row-actions,.lp-item-card-actions-row,.lp-item-card-actions-btns{width:100%;justify-content:flex-end;flex-wrap:wrap;gap:.5rem}.lp-icon-btn.lp-icon-btn--row,.lp-icon-btn.lp-icon-btn--open{width:2.45rem;height:2.45rem}.lp-inline-add{padding:.75rem}.lp-inline-add--link,.lp-inline-add--checkbox{align-items:stretch;flex-direction:column}.lp-inline-input{min-width:0;width:100%}.lp-inline-add-btn{width:100%}.lp-inline-add--files .lp-inline-add-btn{margin-right:0;align-self:stretch}.lp-pending-line-row{gap:.4rem;padding:.4rem}.lp-pending-line-remove{width:2.15rem;height:2.15rem}.lp-create-root h1{font-size:1.5rem}.lp-create-footer{margin-top:1.4rem;padding:1rem 0 3.4rem}.lp-create-footer .lp-btn-primary,.lp-create-footer .lp-btn-secondary{width:100%}}.landing-container{min-height:100vh;background:#fff;font-family:Plus Jakarta Sans,sans-serif;color:#0f172a;overflow-x:hidden}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 5%;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:1000}.landing-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:6rem 5%;gap:4rem}.hero-title{font-size:4.5rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-.02em}.text-gradient{background:linear-gradient(135deg,#2563eb,#8b5cf6);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.25rem;color:#475569;margin-bottom:2.5rem;max-width:500px;line-height:1.6}.hero-actions{display:flex;gap:1.5rem;align-items:center;flex-wrap:wrap}.google-btn-special{display:flex;align-items:center;gap:12px;padding:12px 24px;background:#0f172a;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 10px 20px #0f172a1a}.google-btn-special:hover{transform:translateY(-2px);box-shadow:0 15px 30px #0f172a33;background:#1e293b}.google-icon-wrapper{background:#fff;padding:4px;border-radius:6px;color:#0f172a;display:flex}.hero-preview{position:relative;display:flex;justify-content:center}.preview-card-placeholder{background:#f8fafc;border-radius:20px;border:8px solid #0f172a;padding:2rem;box-shadow:40px 40px #2563eb1a;width:100%;max-width:400px}.preview-header{display:flex;gap:8px;margin-bottom:2rem}.dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f57}.dot.yellow{background:#febc2e}.dot.green{background:#28c840}.preview-item{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.preview-check{width:24px;height:24px;border:2px solid #e2e8f0;border-radius:6px;background:#fff}.preview-item:first-child .preview-check{background:#2563eb;border-color:#2563eb}.preview-line{height:12px;background:#e2e8f0;border-radius:4px;flex-grow:1}.preview-item:first-child .preview-line{width:60%;background:#2563eb;opacity:.2}.landing-features{display:grid;grid-template-columns:repeat(3,1fr);padding:6rem 5%;gap:2.5rem;background:#f8fafc}.feature-card{background:#fff;padding:2.5rem;border-radius:24px;border:1px solid #e2e8f0;transition:all .3s}.feature-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px #0f172a0d}.feature-icon{width:48px;height:48px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;border-radius:12px;margin-bottom:20px}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8fafc;padding:2rem;font-family:Plus Jakarta Sans,sans-serif}.auth-card{background:#fff;width:100%;max-width:440px;padding:2.5rem;border-radius:24px;box-shadow:0 20px 50px #0f172a14}.back-link{display:flex;align-items:center;gap:8px;background:none;border:none;color:#64748b;font-weight:600;margin-bottom:2rem;cursor:pointer;transition:color .2s}.back-link:hover{color:#2563eb}.auth-header h2{font-size:2rem;font-weight:800;margin-bottom:8px}.auth-header p{color:#64748b;margin-bottom:2rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{display:flex;align-items:center;gap:8px;font-size:.875rem;font-weight:600;color:#1e293b}.input-group input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .2s}.input-group input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 4px #2563eb1a}.full-btn{width:100%;padding:14px;border-radius:12px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;border:none}.primary-btn.full-btn{background:#2563eb;color:#fff}.primary-btn.full-btn:hover{background:#1d4ed8}.google-btn{background:#fff;border:2px solid #e2e8f0;color:#1e293b;cursor:pointer;transition:all .2s}.google-btn:hover{background:#f8fafc;border-color:#cbd5e1}.divider{display:flex;align-items:center;margin:1.5rem 0;color:#cbd5e1}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#e2e8f0}.divider span{padding:0 1rem;font-size:.75rem;font-weight:800}.auth-footer{text-align:center;margin-top:2rem;color:#64748b;font-size:.875rem}.auth-footer span{color:#2563eb;font-weight:700;cursor:pointer}.auth-error{background:#fef2f2;color:#dc2626;padding:12px;border-radius:10px;border:1px solid #fee2e2;display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500}.text-btn{background:none;border:none;color:#64748b;font-weight:600;cursor:pointer;padding:.5rem 1rem}.text-btn:hover{color:#2563eb}.primary-btn.landing-btn{padding:.6rem 1.2rem;background:#2563eb;color:#fff;border-radius:8px;font-weight:600;border:none;cursor:pointer}.secondary-btn.hero-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#fff;color:#0f172a;border:2px solid #e2e8f0;border-radius:12px;font-weight:600;cursor:pointer}.study-room-layout{--sr-surface: #fcf8f9;--sr-on-surface: #323235;--sr-on-variant: #5f5f61;--sr-primary: #5a5e6c;--sr-primary-dim: #4e5260;--sr-on-primary: #f7f7ff;--sr-on-primary-container: #4d515f;--sr-inverse-surface: #0e0e0f;--sr-container: #f0edef;--sr-container-low: #f6f3f4;--sr-container-high: #eae7ea;--sr-container-highest: #e4e2e5;--sr-lowest: #ffffff;--sr-primary-container: #dee2f2;--sr-tertiary-container: #e2dbfd;--sr-outline-ghost: rgba(179, 177, 180, .15);--sr-primary-rgb: 90, 94, 108;--sr-ambient: 0 20px 40px rgba(50, 50, 53, .06);font-family:Manrope,system-ui,sans-serif;flex:1;min-height:0;min-width:0;width:100%;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--sr-surface);color:var(--sr-on-surface);overflow:hidden}.study-room-layout--landing{overflow-y:auto}.study-room-session{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.study-library-layout{flex:1;display:flex;flex-direction:column;min-height:100vh;min-width:0;max-width:100%;box-sizing:border-box;padding:3rem 2rem;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;background:var(--sr-surface)}.study-library-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:3rem;max-width:80rem;margin:0 auto;width:100%;min-width:0;box-sizing:border-box}.study-library-section{display:flex;flex-direction:column;gap:2rem}.section-meta h3{font-size:1.75rem;font-weight:800;color:var(--sr-on-surface);margin:.5rem 0}.section-meta p{font-size:.95rem;color:var(--sr-on-variant);line-height:1.6;overflow-wrap:anywhere;word-break:break-word}.section-icon{font-size:2.5rem;color:var(--sr-primary)}.library-upload-zone{aspect-ratio:1 / 1;width:100%;max-width:100%;box-sizing:border-box;background:var(--sr-container-low);border:2px dashed var(--sr-outline-ghost);border-radius:2.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.library-upload-zone:hover{background:var(--sr-container-high);border-color:var(--sr-primary);transform:translateY(-4px) scale(1.02)}.library-upload-zone.is-drag{background:var(--sr-primary-container);border-color:var(--sr-primary)}.upload-zone-inner{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--sr-on-variant);font-weight:700;max-width:100%;padding:.5rem;box-sizing:border-box;text-align:center}.upload-zone-inner span{overflow-wrap:anywhere;padding:0 .35rem}.library-scroll-area{background:var(--sr-container-low);border-radius:2rem;padding:1.5rem;min-height:500px;display:flex;flex-direction:column}.library-list{display:flex;flex-direction:column;gap:.75rem}.library-item{display:flex;align-items:center;gap:1.25rem;padding:1rem 1.25rem;background:var(--sr-surface-container);border:1px solid var(--sr-outline-ghost);border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;touch-action:none}.library-item:hover{background:var(--sr-surface-container-high);border-color:var(--sr-outline);transform:translate(4px);box-shadow:0 4px 12px #0000000d}.doc-icon{width:42px;height:42px;min-width:42px;display:flex;align-items:center;justify-content:center;background:var(--sr-primary-container);color:var(--sr-on-primary-container);border-radius:10px;font-size:1.35rem}.grab-handle{cursor:grab;position:relative}.grab-handle .drag-icon{position:absolute;opacity:0;transition:opacity .2s}.library-item:hover .grab-handle .drag-icon{opacity:1}.library-item:hover .grab-handle .type-icon{opacity:0}.doc-info{flex:1;display:flex;flex-direction:column}.doc-name{font-weight:700;color:var(--sr-on-surface);font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.rename-input{background:var(--sr-surface-container-highest);border:2px solid var(--sr-primary);color:var(--sr-on-surface);padding:4px 8px;border-radius:6px;font-size:.95rem;font-weight:700;width:100%;outline:none;margin:-6px -8px}.doc-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--sr-on-variant);font-weight:600}.doc-meta .dot{opacity:.3}.doc-actions{display:flex;align-items:center;gap:.75rem;opacity:.6;transition:opacity .2s}.library-item:hover .doc-actions{opacity:1}.doc-action-btn{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:.75rem;border:1px solid var(--sr-outline-ghost);background:var(--sr-container-low);color:var(--sr-on-variant);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);font-size:1.1rem}.doc-action-btn:hover{transform:translateY(-2px);background:var(--sr-container-highest);color:var(--sr-on-surface);border-color:var(--sr-primary-container);box-shadow:0 4px 12px #00000014}.doc-action-btn.resume:hover{background:var(--sr-primary-container);color:var(--sr-primary)}.doc-action-btn.delete:hover{background:#fee2e2;color:#fb7185;border-color:#fecaca}.library-loading,.library-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--sr-on-variant);text-align:center;padding:2rem}@media(max-width:1024px){.study-library-grid{grid-template-columns:1fr;gap:2rem}}.study-landing{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;position:relative;min-height:0}.study-landing-stage{position:relative;width:100%;max-width:42rem;z-index:1;display:flex;flex-direction:column;align-items:center}.study-landing-blur{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0}.study-landing-blur--tl{top:10%;left:-5rem;width:18rem;height:18rem;background:color-mix(in srgb,var(--sr-primary-container) 35%,transparent)}.study-landing-blur--br{bottom:15%;right:-4rem;width:16rem;height:16rem;background:color-mix(in srgb,var(--sr-tertiary-container) 35%,transparent)}.study-upload-glass{width:100%;max-width:36rem;padding:2.75rem 2rem;text-align:center;cursor:pointer;border-radius:2.5rem;border:1px solid var(--sr-outline-ghost);background:#fcf8f9d1;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--sr-ambient);transition:transform .45s ease,background .35s ease,border-color .35s ease}.study-upload-glass:hover{transform:scale(1.01);background:color-mix(in srgb,var(--sr-primary-container) 42%,rgba(252,248,249,.88))}.study-upload-glass:focus-visible{outline:2px solid var(--sr-primary);outline-offset:3px}.study-upload-glass.is-drag{background:color-mix(in srgb,var(--sr-primary-container) 50%,white);border-color:color-mix(in srgb,var(--sr-primary) 25%,transparent)}.study-upload-icon-ring{width:5rem;height:5rem;margin:0 auto 1.75rem;border-radius:50%;background:var(--sr-container-high);display:flex;align-items:center;justify-content:center;font-size:2.25rem;color:var(--sr-primary);transition:transform .5s ease}.study-upload-glass:hover .study-upload-icon-ring{transform:rotate(12deg)}.study-upload-heading{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.65rem;color:var(--sr-on-surface)}.study-upload-desc{font-size:.95rem;line-height:1.6;color:var(--sr-on-variant);max-width:20rem;margin:0 auto 1.75rem}.study-upload-cta{display:inline-block;font-size:.9rem;font-weight:600;color:var(--sr-primary);padding-bottom:.2rem;border-bottom:2px solid color-mix(in srgb,var(--sr-primary) 22%,transparent);transition:border-color .3s ease}.study-upload-glass:hover .study-upload-cta{border-bottom-color:var(--sr-primary)}.study-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.study-room-filebar{height:3.5rem;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:var(--sr-container-low);border-bottom:1px solid var(--sr-outline-ghost);z-index:20}.study-room-filebar-left{display:flex;align-items:center;gap:.85rem;min-width:0}.study-room-back-btn{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:none;border-radius:.75rem;background:var(--sr-lowest);color:var(--sr-on-variant);cursor:pointer;box-shadow:0 1px 2px #3232350f;transition:background .2s,color .2s,transform .2s}.study-room-back-btn:hover{background:var(--sr-container-high);color:var(--sr-primary);transform:translate(-2px)}.study-room-file-info{display:flex;align-items:center;gap:.6rem;min-width:0;padding-left:.85rem;border-left:1px solid var(--sr-outline-ghost)}.study-room-file-info .file-icon{font-size:1.35rem;color:var(--sr-primary);flex-shrink:0}.study-room-file-info .file-name{font-weight:600;font-size:.9rem;color:var(--sr-on-surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(42vw,220px)}.study-room-status-badge{margin-left:.35rem}.status-item{display:inline-flex;align-items:center;gap:.35rem;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:.3rem .55rem;border-radius:.25rem}.status-item.processing{color:var(--sr-on-variant);background:var(--sr-container-highest)}.status-item.ready{color:var(--sr-on-primary-container);background:var(--sr-primary-container)}.study-room-workspace{flex:1;min-height:0;display:flex;overflow:hidden;background:var(--sr-container);position:relative}.study-room-resizer{position:absolute;top:0;width:8px;height:100%;cursor:col-resize;z-index:100;background:transparent;transition:background .2s}.study-room-resizer:hover,.study-room-resizer.is-resizing{background:var(--sr-primary);opacity:.3}.study-room-resizer:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:2px;height:32px;background:var(--sr-on-variant);opacity:.1;border-radius:2px}.study-room-pdf-area{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--sr-surface);border-right:none}.study-room-ai-area{width:24rem;max-width:100%;flex-shrink:0;min-height:0;display:flex;flex-direction:column;background:var(--sr-container-low)}@media(max-width:900px){.study-room-ai-area{width:100%;min-height:42vh;border-right:none;border-top:1px solid var(--sr-outline-ghost)}.study-room-workspace{flex-direction:column}.study-room-pdf-area{border-right:none;min-height:45vh}}.study-pdf-view{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--sr-surface)}.pdf-toolbar{height:4rem;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;gap:1rem;background:var(--sr-container-low);border-bottom:1px solid var(--sr-outline-ghost)}.pdf-toolbar-cluster{display:flex;align-items:center;gap:.75rem;min-width:0}.pdf-toolbar-pill{display:flex;align-items:center;gap:.35rem;background:var(--sr-lowest);border-radius:999px;padding:.35rem .6rem;box-shadow:0 1px 2px #3232350d}.pdf-toolbar-group{display:flex;align-items:center;height:2.35rem}.pdf-toolbar-btn{width:2.15rem;height:2.15rem;border:none;border-radius:.5rem;background:transparent;color:var(--sr-on-variant);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.15rem;transition:color .2s,background .2s}.pdf-toolbar-btn:hover:not(:disabled){color:var(--sr-primary);background:var(--sr-container-high)}.pdf-toolbar-btn:disabled{opacity:.28;cursor:not-allowed}.pdf-toolbar-divider{width:1px;height:1rem;background:var(--sr-outline-ghost);margin:0 .15rem}.pdf-page-display{display:flex;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.875rem;font-weight:600;color:var(--sr-on-surface)}.pdf-page-input{width:2.5rem;text-align:center;border:none;background:transparent;font-weight:600;color:var(--sr-on-surface);font-size:.875rem;outline:none}.pdf-zoom-label{font-size:.875rem;font-weight:600;color:var(--sr-on-surface);min-width:2.75rem;text-align:center}.pdf-toolbar-actions{display:flex;align-items:center;gap:.35rem}.pdf-toolbar-icon-btn{width:2.35rem;height:2.35rem;border:none;border-radius:.65rem;background:transparent;color:var(--sr-on-variant);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.25rem;transition:background .2s,color .2s}.pdf-toolbar-icon-btn:hover{background:var(--sr-container-high);color:var(--sr-primary)}.pdf-scroll-container{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem 3rem;background:var(--sr-container);scroll-behavior:smooth}.pdf-page-wrapper{margin-bottom:2rem;transition:opacity .3s ease}.pdf-page-wrapper:last-child{margin-bottom:0}.pdf-document-wrapper{background:var(--sr-lowest);box-shadow:var(--sr-ambient);border-radius:.35rem;overflow:hidden}.react-pdf__Page__textContent{z-index:2!important;pointer-events:auto!important}.react-pdf__Page__annotations{z-index:1!important;pointer-events:none!important}.react-pdf__Page__annotations a{pointer-events:auto!important}.react-pdf__Page__textContent span{cursor:text!important;opacity:1!important}.study-pdf-loading{padding:4rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--sr-on-variant);font-size:.95rem;font-weight:500}.study-pdf-loading .study-spin{font-size:2.5rem;color:var(--sr-primary)}.study-pdf-empty{flex:1;display:flex;align-items:center;justify-content:center;opacity:.12;text-align:center}.study-pdf-empty p{font-size:1.25rem;font-weight:700;color:var(--sr-on-surface)}@keyframes study-spin{to{transform:rotate(360deg)}}.study-spin{animation:study-spin .9s linear infinite}.ai-action-badge{display:flex;align-items:center;gap:.35rem;padding:.35rem .45rem;border-radius:999px;background:var(--sr-inverse-surface);color:var(--sr-on-primary);box-shadow:var(--sr-ambient);border:1px solid rgba(255,255,255,.08)}.ai-action-btn{display:flex;align-items:center;gap:8px;padding:6px 12px;border:none;background:none;color:#fff;font-weight:500;font-size:.85rem;cursor:pointer;border-radius:6px;transition:all .2s;white-space:nowrap}.ai-action-btn:hover{background:#ffffff1a;transform:translateY(-1px)}.ai-action-btn.simplify{color:#c4b5fd}.ai-action-btn.simplify:hover{background:#c4b5fd26}.ai-action-divider{width:1px;height:1.1rem;background:#fff3}.ai-action-dismiss{border:none;background:transparent;color:#ffffff8c;padding:.35rem;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}.ai-action-dismiss:hover{color:#fff}.study-ai-sidebar{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--sr-container-low)}.study-ai-header{padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.study-ai-header h2{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;color:var(--sr-on-surface);margin:0}.study-ai-history-btn{width:2.35rem;height:2.35rem;border:none;border-radius:50%;background:transparent;color:var(--sr-on-variant);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.35rem;transition:background .2s}.study-ai-history-btn:hover{background:var(--sr-container-high);color:var(--sr-primary)}.study-ai-history-btn.active{background:var(--sr-primary-container);color:var(--sr-primary)}.study-ai-header-actions{display:flex;gap:.5rem}.settings-wrapper-fixed{position:fixed;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10001!important;pointer-events:none;padding:5rem;box-sizing:border-box}.study-ai-settings-floating{pointer-events:auto;width:32rem;max-width:calc(100% - 2rem);max-height:min(700px,calc(100vh - 10rem));padding:3rem;background:var(--sr-lowest);border-radius:2.5rem;border:1px solid var(--sr-outline-ghost);box-shadow:0 50px 100px -20px #00000073;display:flex!important;flex-direction:column!important;gap:1.5rem;overflow-y:auto;position:relative}.settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.settings-header h4{margin:0;font-size:1.1rem;font-weight:800;color:var(--sr-on-surface)}.settings-close-x{background:transparent;border:none;font-size:1.5rem;color:var(--sr-on-variant);cursor:pointer;padding:.5rem;line-height:1}.input-image-preview{display:flex;align-items:center;gap:.75rem;padding:.75rem;margin-bottom:.75rem;background:var(--sr-low);border:2px solid var(--sr-border);border-radius:.5rem;position:relative}.input-image-preview img{width:50px;height:50px;object-fit:cover;border-radius:.25rem;border:1px solid var(--sr-border)}.input-image-preview .remove-image{position:absolute;top:-8px;right:-8px;width:20px;height:20px;background:var(--sr-accent);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;box-shadow:0 2px 4px #0003}.msg-preview-image{max-width:100%;max-height:200px;border-radius:.5rem;border:1px solid var(--sr-border);margin-bottom:.75rem;display:block;cursor:pointer;transition:transform .2s}.msg-preview-image:hover{transform:scale(1.02)}.study-ai-actions-row{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem;background:transparent}.study-ai-input-tools{display:flex;align-items:center;gap:.25rem}.study-ai-send-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:none;background:#000;color:#fff;cursor:pointer;transition:all .2s;box-shadow:0 4px 10px #00000040}.study-ai-send-btn:hover:not(:disabled){transform:translateY(-2px);background:var(--sr-primary-high, #4a4a4d);box-shadow:0 6px 14px #0003}.study-ai-send-btn:disabled{background:var(--sr-container-high);color:#ffffff4d;cursor:not-allowed;box-shadow:none}.attach-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--sr-on-variant);cursor:pointer;transition:all .2s}.attach-btn:hover{background:var(--sr-container-highest);color:var(--sr-primary)}.settings-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998}.settings-field{display:flex;flex-direction:column;gap:.35rem}.settings-field label{font-size:.75rem;font-weight:800;color:var(--sr-on-variant);text-transform:uppercase;letter-spacing:.05em}.settings-field input{padding:.65rem .85rem;border-radius:.75rem;border:1px solid var(--sr-outline-ghost);background:var(--sr-lowest);font-size:.85rem;color:var(--sr-on-surface);outline:none;transition:border-color .2s}.settings-field input:focus{border-color:var(--sr-primary)}.settings-save-btn{margin-top:1rem;padding:.85rem;border-radius:.75rem;background:var(--sr-primary);color:#fff;border:none;font-weight:700;font-size:.9rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%}.settings-save-btn:hover:not(:disabled){background:var(--sr-primary-dim);transform:translateY(-1px)}.settings-save-btn.saved{background:#2e7d32;color:#fff}.settings-save-btn.saving{opacity:.7;cursor:wait}.settings-save-btn:disabled{opacity:.5;cursor:not-allowed}.study-ai-modes{padding:0 .5rem .5rem;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--sr-border);background:var(--sr-surface)}.segmented-control{display:flex;width:100%;padding:.25rem;background:var(--sr-container-low);border-radius:.75rem;border:1px solid var(--sr-border);gap:.25rem}.segment-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem;border:none;border-radius:.5rem;font-family:inherit;font-size:.875rem;font-weight:700;cursor:pointer;color:var(--sr-on-variant);background:transparent;transition:all .2s cubic-bezier(.4,0,.2,1)}.segment-btn:hover{color:var(--sr-on-surface);background:var(--sr-container-highest)}.segment-btn.active{background:var(--sr-inverse-surface);color:#fff;font-weight:800;box-shadow:0 4px 12px #00000026}.study-ai-sidebar.empty-state{display:flex;flex-direction:column}.study-ai-sidebar.empty-state .study-ai-messages{display:flex;justify-content:center;align-items:center}.study-ai-header-main{display:flex;flex-direction:column;gap:.75rem}.study-ai-modes-inline{display:flex;background:var(--sr-container-low);padding:2px;border-radius:8px;border:1px solid var(--sr-border);width:fit-content}.mode-toggle-btn{display:flex;align-items:center;gap:6px;padding:4px 10px;border:none;background:transparent;color:var(--sr-on-variant);font-family:inherit;font-size:.75rem;font-weight:700;cursor:pointer;border-radius:6px;transition:all .2s ease}.mode-toggle-btn:hover{color:var(--sr-on-surface);background:#0000000d}.mode-toggle-btn.active{background:var(--sr-inverse-surface);color:#fff;box-shadow:0 2px 4px #0000001a}.study-ai-empty{text-align:center;padding:2rem 1.5rem;color:var(--sr-on-variant);max-width:400px;margin:auto;cursor:default;-webkit-user-select:none;user-select:none}.study-ai-loading-center{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--sr-on-variant);font-weight:500;opacity:.7}.study-ai-placeholder{display:flex;align-items:center;justify-content:center;min-height:200px}.study-ai-placeholder svg{color:var(--sr-on-surface)}.empty-icon{margin-bottom:1.5rem;color:var(--sr-primary);opacity:.8;filter:drop-shadow(0 8px 16px rgba(var(--sr-primary-rgb),.2))}.study-ai-empty h3{font-family:Syne,sans-serif;font-size:1.25rem;font-weight:800;margin-bottom:.75rem;color:var(--sr-on-surface)}.study-ai-empty p{font-size:.85rem;line-height:1.6;opacity:.7}.study-ai-messages{flex:1;min-height:0;overflow-y:auto;padding:.5rem 1.5rem 1.25rem;display:flex;flex-direction:column;justify-content:flex-start;gap:1.35rem}.study-ai-messages:empty{display:none}.study-ai-msg{display:flex;flex-direction:column;gap:.45rem;max-width:100%}.study-ai-msg--user{align-self:flex-end;align-items:flex-end}.study-ai-msg--assistant{align-self:flex-start;align-items:flex-start}.study-ai-bubble{max-width:90%;padding:1rem 1.1rem;border-radius:1.15rem;font-size:.9rem;line-height:1.55;box-shadow:0 1px 2px #3232350a;border:1px solid var(--sr-outline-ghost)}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding:0 4px}.copy-msg-btn{background:none;border:none;cursor:pointer;padding:4px;color:#94a3b8;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.copy-msg-btn:hover{background:#0000000d;color:#d97706}.message-content{font-size:.95rem;line-height:1.6;color:var(--text-color);word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap}.message-content br{display:block;margin-bottom:.8rem;content:""}.ai-bold-highlight{color:#d97706;font-weight:700;padding:0 2px}.ai-italic-highlight{color:#475569;font-style:italic;font-weight:400}.study-ai-message.assistant .message-content,.study-ai-message.librarian .message-content{background:#fff;padding:12px 16px;border:1.5px solid var(--border-color);border-radius:8px;box-shadow:2px 2px 0 var(--border-color);margin-top:4px}.msg-text-content{font-size:.9rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.study-ai-msg--assistant .study-ai-bubble{background:var(--sr-lowest);color:var(--sr-on-surface);border-bottom-left-radius:.25rem;box-shadow:0 4px 8px #00000005}.study-ai-msg--user .study-ai-bubble{background:linear-gradient(145deg,var(--sr-primary) 0%,var(--sr-primary-dim) 100%);color:var(--sr-on-primary);border:none;border-bottom-right-radius:.25rem}.study-ai-bubble p{margin:0;white-space:pre-wrap}.study-ai-typing{display:flex;gap:.35rem;padding:.35rem 0}.study-ai-typing span{width:.4rem;height:.4rem;border-radius:50%;background:var(--sr-primary-container);animation:study-bounce 1s ease-in-out infinite}.study-ai-typing span:nth-child(2){animation-delay:.15s}.study-ai-typing span:nth-child(3){animation-delay:.3s}@keyframes study-bounce{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.study-ai-msg-meta{font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--sr-on-variant);opacity:.75;padding:0 .15rem}.study-ai-input-block{padding:.5rem .25rem 1rem;flex-shrink:0}.study-ai-form{position:relative;display:flex;flex-direction:column;background:var(--sr-surface-container-low);border-radius:1rem;padding:.25rem;border:1.5px solid var(--sr-outline-ghost);transition:all .2s}.study-ai-input-wrapper{display:flex;flex-direction:column;gap:.15rem;padding:.25rem .5rem}.study-ai-input-wrapper input{flex:1;background:transparent;border:none;outline:none;font-family:inherit;font-size:.9375rem;padding:.75rem .25rem .25rem;color:var(--sr-on-surface);min-width:0}.input-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;padding-bottom:.5rem;padding-right:.25rem}.send-btn{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:.75rem;border:none;background:var(--sr-primary);color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #5a5e6c26}.send-btn:hover:not(:disabled){background:var(--sr-primary-dim);transform:translateY(-2.2px);box-shadow:0 4px 12px #5a5e6c40}.send-btn:active:not(:disabled){transform:translateY(0)}.send-btn:disabled{opacity:.3;cursor:not-allowed;background:var(--sr-container-highest);color:var(--sr-on-variant)}.input-image-preview img{width:100%;height:100%;object-fit:cover}.remove-image{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:#0009;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px}.remove-key-btn:hover{text-decoration:underline;opacity:.8}.settings-field label{font-weight:600;font-size:.85rem;margin-bottom:.5rem;display:block}.msg-preview-image{max-width:100%;max-height:200px;border-radius:.75rem;margin-bottom:.5rem;display:block}.msg-context-quote{background:var(--sr-surface-container-high);border-left:3px solid var(--sr-primary);padding:.5rem .75rem;margin-bottom:.75rem;border-radius:4px 10px 10px 4px;font-size:.85rem;display:flex;gap:.5rem;color:var(--sr-on-surface-variant);font-style:italic;line-height:1.4}.msg-context-quote svg{flex-shrink:0;margin-top:2px;color:var(--sr-primary);opacity:.7}.input-context-chip{margin:0 .75rem .75rem;padding:.5rem .75rem;background:var(--sr-primary-container);border:1px dashed var(--sr-primary);border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:.75rem;box-shadow:0 2px 8px rgba(var(--sr-primary-rgb),.1)}.chip-content{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;color:var(--sr-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-chip{background:transparent;border:none;color:var(--sr-primary);cursor:pointer;display:flex;padding:2px;border-radius:50%;transition:all .2s;opacity:.7}.remove-chip:hover{background:var(--sr-primary);color:#fff;opacity:1}.study-ai-actions-row{display:flex;align-items:center;justify-content:space-between;padding:0 .5rem .5rem}.attach-btn{width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border-radius:.75rem;color:var(--sr-on-variant);cursor:pointer;transition:background .2s}.attach-btn:hover{background:var(--sr-container-high);color:var(--sr-primary)}.study-ai-textarea{width:100%;min-height:2.5rem;max-height:200px;resize:none;border:none;background:transparent;padding:.65rem .75rem;font-family:inherit;font-size:.95rem;line-height:1.5;color:var(--sr-on-surface);outline:none;box-sizing:border-box;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word}.study-ai-textarea::placeholder{color:var(--sr-on-variant)}.study-ai-textarea:focus{box-shadow:inset 0 -2px 0 0 var(--sr-primary)}.study-ai-textarea:disabled{opacity:.55;cursor:not-allowed}.study-ai-send-row{display:flex;justify-content:flex-end}.study-ai-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.study-ai-send-btn svg{flex-shrink:0;color:#fff}.study-ai-thread-note{margin-top:.85rem;text-align:center;font-size:.6rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sr-on-variant);opacity:.55}.pdf-page-jump-btn{background:var(--sr-primary);color:#fff;border:none;border-radius:.35rem;padding:.2rem .5rem;font-size:.7rem;font-weight:800;text-transform:uppercase;cursor:pointer;margin-left:.5rem;transition:all .2s}.pdf-page-jump-btn:hover{background:var(--sr-primary-high, #333);transform:translateY(-1px)}.study-ai-messages::-webkit-scrollbar,.pdf-scroll-container::-webkit-scrollbar{width:6px}.study-ai-messages::-webkit-scrollbar-thumb,.pdf-scroll-container::-webkit-scrollbar-thumb{background:var(--sr-container-highest);border-radius:10px}.study-ai-messages::-webkit-scrollbar-thumb:hover,.pdf-scroll-container::-webkit-scrollbar-thumb:hover{background:#b3b1b4}.pdf-viewer-scroll{flex:1;overflow-y:auto;background:var(--sr-container-lowest);display:flex;flex-direction:column;align-items:center;padding:4rem 2rem}.pdf-document-container{display:flex;flex-direction:column;gap:2rem;box-shadow:0 20px 50px #0000001a;background:#fff;border-radius:4px;margin-bottom:2rem}.react-pdf__Page__textContent{z-index:2!important;opacity:1!important;pointer-events:auto!important;-webkit-user-select:text!important;user-select:text!important}.react-pdf__Page__canvas{z-index:1!important;-webkit-user-select:none!important;user-select:none!important;pointer-events:none!important}.react-pdf__Page__annotations{z-index:3!important}.react-pdf__Page__textContent span{opacity:1!important;color:transparent!important;line-height:1.2!important;cursor:text!important}::selection{background:var(--sr-primary)!important;color:var(--sr-lowest)!important}::-moz-selection{background:var(--sr-primary)!important;color:var(--sr-lowest)!important}.pdf-controls-floating{position:sticky;top:1.5rem;z-index:10;margin-bottom:-4rem;pointer-events:none}.pdf-controls-pill{pointer-events:auto;background:var(--sr-surface-container-high);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--sr-outline-ghost);border-radius:100px;padding:.5rem 1.25rem;display:flex;align-items:center;gap:1.25rem;box-shadow:0 8px 32px #00000026}@media(max-width:768px){.study-room-layout{overflow-x:hidden}.study-library-layout{padding:1rem max(.75rem,env(safe-area-inset-right)) 1.5rem max(.75rem,env(safe-area-inset-left));min-height:auto}.study-library-grid{gap:1.5rem;max-width:100%}.study-library-section{gap:1rem;min-width:0}.section-meta h3{font-size:1.3rem}.library-upload-zone{aspect-ratio:auto;min-height:10.5rem;border-radius:1.25rem}.library-upload-zone:hover{transform:none}.section-icon{font-size:2rem}.library-scroll-area{min-height:220px;padding:1rem;border-radius:1.25rem}.library-item{gap:.65rem;padding:.85rem .75rem;flex-wrap:wrap}.doc-actions{width:100%;justify-content:flex-end;opacity:1}.study-room-filebar{height:auto;min-height:3.25rem;flex-wrap:wrap;padding:.5rem max(.65rem,env(safe-area-inset-right)) .6rem max(.65rem,env(safe-area-inset-left));gap:.35rem}.study-room-file-info .file-name{max-width:min(72vw,100%);white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pdf-toolbar{height:auto;min-height:3.25rem;flex-wrap:wrap;padding:.5rem .85rem;gap:.65rem}.pdf-viewer-scroll{padding:1rem .75rem}.study-ai-sidebar{max-height:min(50dvh,420px)}.pdf-controls-pill{flex-wrap:wrap;justify-content:center;gap:.5rem;padding:.45rem .85rem}}:root{--font-heading: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "DM Sans", system-ui, sans-serif;--brutal-border: 3px;--brutal-radius: 6px;--brutal-shadow: 4px 4px 0 0;--brutal-shadow-sm: 2px 2px 0 0;--primary: #2563EB;--primary-hover: #1d4ed8;--primary-light: #EFF6FF;--secondary: #0ea5e9;--bg-color: #FFFBF5;--surface: #ffffff;--text-main: #0f172a;--text-muted: #475569;--border: #0f172a;--success: #059669;--danger: #dc2626;--warn: #f59e0b;--warn-light: #fffbeb;--accent: #f59e0b;--calendar-day-hover-bg: #ede9fe;--calendar-day-hover-text: #5b21b6;--calendar-day-hover-border: #7c3aed;--radius-sm: 6px;--radius-md: 6px;--radius-lg: 8px;--shadow-sm: 2px 2px 0 0 var(--border);--shadow-md: 4px 4px 0 0 var(--border);--shadow-lg: 6px 6px 0 0 var(--border);--glass-bg: #ffffff;--glass-border: var(--border)}.theme-light{--primary: #2563EB;--primary-hover: #1d4ed8;--primary-light: #EFF6FF;--bg-color: #FFFBF5;--surface: #ffffff;--text-main: #0f172a;--text-muted: #475569;--border: #0f172a;--glass-bg: #ffffff}.theme-midnight{--primary: #818cf8;--primary-hover: #6366f1;--primary-light: #312e81;--bg-color: #0f172a;--surface: #1e293b;--text-main: #f8fafc;--text-muted: #94a3b8;--border: #f8fafc;--glass-bg: #1e293b;--calendar-day-hover-bg: rgba(45, 212, 191, .22);--calendar-day-hover-text: #ccfbf1;--calendar-day-hover-border: #2dd4bf}.theme-nord{--primary: #88c0d0;--primary-hover: #81a1c1;--primary-light: #3b4252;--bg-color: #2e3440;--surface: #3b4252;--text-main: #eceff4;--text-muted: #d8dee9;--border: #eceff4;--glass-bg: #3b4252;--calendar-day-hover-bg: rgba(191, 167, 217, .22);--calendar-day-hover-text: #eceff4;--calendar-day-hover-border: #bf8fd1}.theme-cyberpunk{--primary: #f43f5e;--primary-hover: #e11d48;--primary-light: #4c1d1d;--bg-color: #0a0a0a;--surface: #1a1a1a;--text-main: #ffffff;--text-muted: #a1a1aa;--border: #f43f5e;--glass-bg: #1a1a1a;--calendar-day-hover-bg: rgba(251, 146, 60, .16);--calendar-day-hover-text: #fde68a;--calendar-day-hover-border: #fb923c}.theme-forest{--primary: #059669;--primary-hover: #047857;--primary-light: #d1fae5;--bg-color: #f0fdf4;--surface: #ffffff;--text-main: #064e3b;--text-muted: #047857;--border: #064e3b;--glass-bg: #ffffff;--calendar-day-hover-bg: #f3e8ff;--calendar-day-hover-text: #5b21b6;--calendar-day-hover-border: #9333ea}*{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-main);line-height:1.6;overflow-x:hidden;min-height:100vh;transition:background-color .3s ease,color .3s ease;font-size:16px}.app{min-height:100vh;background:var(--bg-color)}.app-layout{display:flex;height:100vh;min-width:0;overflow:hidden}.container{max-width:1400px;margin:0 auto;padding:0 2rem}.sidebar{width:260px;background:var(--surface);border-right:var(--brutal-border) solid var(--border);display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem;position:relative;z-index:100}.sidebar-top{display:flex;flex-direction:column;gap:2rem}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem}.sidebar-btn{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;background:var(--surface);border:2px solid var(--border);border-radius:var(--brutal-radius);color:var(--text-main);font-family:var(--font-heading);font-weight:700;font-size:1rem;cursor:pointer;transition:all .1s;text-align:left;width:100%}.sidebar-btn:hover{transform:translate(-2px,-2px);box-shadow:var(--brutal-shadow-sm) var(--border);color:var(--primary)}.sidebar-btn.active{background:var(--primary);color:#fff;transform:translate(-1px,-1px);box-shadow:2px 2px 0 0 var(--border)}.sidebar-bottom{display:flex;flex-direction:column;gap:1.5rem}.sidebar-control-box{background:var(--bg-color);border:2px solid var(--border);border-radius:var(--brutal-radius);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.control-label{font-family:var(--font-heading);font-weight:800;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.theme-grid{display:flex;flex-wrap:wrap;gap:.5rem}.sidebar-user{display:flex;flex-direction:column;gap:1rem;padding-top:1rem;border-top:1px solid var(--border)}.user-info-brief{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.5rem;border-radius:var(--brutal-radius);transition:background .15s}.user-info-brief:hover{background:var(--primary-light)}.avatar-sm{width:36px;height:36px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:800;background:var(--primary);color:#fff;overflow:hidden;font-size:.9rem}.avatar-sm img{width:100%;height:100%;object-fit:cover}.user-name-small{font-weight:700;font-size:.9rem;color:var(--text-main);display:block;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-actions{display:flex;gap:.5rem}.icon-btn-brutal.mini{padding:.5rem;border-radius:4px}.main-content{flex:1;min-height:0;min-width:0;height:100vh;overflow-y:auto;overflow-x:hidden;background:var(--bg-color);display:flex;flex-direction:column;position:relative}.main-content.workspace-active{overflow:hidden}.main-content.streak-active{overflow-y:auto;overflow-x:hidden}.fab-brutal-add{position:fixed;bottom:2.5rem;right:2.5rem;width:64px;height:64px;background:var(--primary);color:#fff;border:2px solid var(--border);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:2px 2px 0 0 var(--border);transition:all .2s cubic-bezier(.175,.885,.32,1.275);z-index:1000}.fab-brutal-add:hover{transform:scale(1.1) translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.fab-brutal-add:active{transform:scale(.95);box-shadow:0 0 0 0 var(--border)}.content-header{background:var(--bg-color);padding:1.5rem 2rem;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;position:sticky;top:0;z-index:50}.content-header-right{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-left:auto}.install-app-btn{display:inline-flex;align-items:center;gap:.4rem;border:2px solid var(--border);background:var(--surface);color:var(--text-main);border-radius:var(--brutal-radius);font-family:var(--font-heading);font-size:.85rem;font-weight:700;padding:.45rem .65rem;cursor:pointer}.install-app-btn:hover{transform:translate(-1px,-1px);box-shadow:var(--brutal-shadow-sm) var(--border)}.install-helper-text{width:100%;margin:0;color:var(--text-muted);font-size:.85rem}.header-current-date{color:var(--text-muted);font-size:1rem;font-weight:600;white-space:nowrap}.section-title h2{font-family:var(--font-heading);display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:800}.content-container{flex:1;min-height:0;padding:2rem;max-width:1400px;width:100%;margin:0 auto}.content-container.workspace{padding:0;max-width:none;margin:0;flex:1;min-height:0;min-width:0;overflow-x:hidden;display:flex;flex-direction:column}.content-container.streak-page{flex:1;min-height:0;display:flex;flex-direction:column;padding:1rem 2rem 1.25rem}.header{display:none}.logo{display:flex;align-items:center;gap:.75rem}.logo img{width:40px;height:40px;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius)}.brand-name{font-family:var(--font-heading);font-weight:800;font-size:1.5rem;letter-spacing:-.03em;color:var(--text-main)}.nav{display:flex;align-items:center;gap:1.5rem}.streak-section.dashboard.life-section{flex:1;min-height:0;display:flex;flex-direction:column;gap:.75rem;padding:0;width:100%;max-width:72rem}.streak-mock-dashboard.streak-dashboard{flex:1;min-height:0;display:flex;flex-direction:column;gap:2rem;overflow-y:auto}.streak-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:stretch;flex-shrink:0}@media(max-width:900px){.streak-hero-grid{grid-template-columns:1fr}}.streak-hero-card{position:relative;overflow:hidden;padding:1.4rem 1.5rem 1.5rem;border:3px solid var(--border);border-radius:0;box-shadow:var(--brutal-shadow) var(--border)}.streak-hero-card-current{background:var(--primary);color:#fff}.streak-hero-card-longest{background:var(--surface);color:var(--text-main)}.streak-hero-watermark{position:absolute;right:-2rem;bottom:-2rem;opacity:.1;transform:rotate(12deg);pointer-events:none;color:inherit}.streak-hero-watermark-fire{color:#fff}.streak-hero-watermark-trophy{opacity:.06;transform:rotate(-12deg);color:var(--text-main)}.streak-hero-kicker{position:relative;z-index:1;margin:0 0 .35rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffffeb}.streak-hero-kicker-dark{color:var(--text-muted)}.streak-hero-numbers{position:relative;z-index:1;display:flex;align-items:baseline;gap:.5rem}.streak-hero-value{font-family:var(--font-heading);font-size:clamp(2.5rem,8vw,3.35rem);font-weight:800;line-height:1;letter-spacing:-.03em}.streak-hero-unit{font-size:1.05rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#ffffffeb}.streak-hero-numbers-dark .streak-hero-value{color:var(--text-main)}.streak-hero-unit-muted{color:#94a3b8}.streak-hero-meta{position:relative;z-index:1;margin-top:.95rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:700;color:#fff}.streak-hero-meta-dark{color:var(--text-main)}.streak-hero-badge-icon{color:var(--primary);flex-shrink:0}.streak-hero-reset{position:relative;z-index:1;margin-top:.85rem;display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .75rem;font-family:var(--font-heading);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:#00000026;border:2px solid rgba(255,255,255,.85);border-radius:0;cursor:pointer;transition:background .15s,transform .1s}.streak-hero-reset:hover{background:#00000047}.streak-visual-mock{background:var(--surface);border:3px solid var(--border);border-radius:0;box-shadow:var(--brutal-shadow) var(--border);overflow:visible;flex-shrink:0;min-height:min-content}.streak-visual-mock-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.9rem;padding:1.075rem 1.36rem;border-bottom:3px solid var(--border);background:#f1f5f9}.streak-visual-mock-title{margin:0;display:flex;align-items:center;gap:.45rem;font-family:var(--font-heading);font-size:1.015rem;font-weight:800;color:var(--text-main)}.streak-visual-mock-title-icon{color:var(--primary);flex-shrink:0}.streak-visual-mock-sub{margin:.214rem 0 0;font-size:.65rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.streak-visual-mock-body{width:100%;box-sizing:border-box;padding:.73rem .9rem .95rem;overflow:visible}.streak-month-nav{display:flex;gap:.475rem}.streak-month-nav-btn{display:flex;align-items:center;justify-content:center;padding:.4275rem;background:var(--surface);border:2px solid var(--border);border-radius:0;cursor:pointer;color:var(--text-main);transition:background .12s}.streak-month-nav-btn:hover{background:#f8fafc}.relapse-calendar--streak{display:block;width:100%;min-width:0;box-sizing:border-box;--streak-day-cap: clamp(1.886rem, min(9.43vw, 8.57vmin), 3.43rem)}.streak-cal-grid{display:grid;width:100%;min-width:0;box-sizing:border-box;grid-template-columns:repeat(7,minmax(0,1fr));column-gap:clamp(.77rem,2.71vw,1.67rem);row-gap:clamp(.39rem,1.2vw,.812rem);grid-auto-rows:auto;align-content:start;justify-items:center}.streak-cal-weekday{text-align:center;width:min(100%,var(--streak-day-cap));font-size:clamp(.47rem,1.58vmin,.615rem);font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding-bottom:.171rem;line-height:1.1}.streak-cal-cell{aspect-ratio:1 / 1;width:min(100%,var(--streak-day-cap));height:auto;min-width:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:clamp(.523rem,2.17vmin,.812rem);font-weight:800;border:2px solid var(--border);border-radius:0}.streak-cal-cell--adjacent{color:#cbd5e1;font-weight:700;border-color:#e2e8f0;background:#fafafa}.streak-cal-cell--track{background:var(--primary);color:#fff}.streak-cal-cell--today{background:var(--primary);color:#fff;box-shadow:inset 0 0 0 2px var(--border)}.streak-cal-cell--future{color:#94a3b8;font-weight:700;border-color:#e2e8f0;background:#fff}.streak-cal-cell--muted{color:#94a3b8;border-color:#e2e8f0;background:#f8fafc}.streak-cal-cell--relapse{background:var(--warn);color:#fff;border-color:var(--border);font-weight:900;box-shadow:inset 0 0 0 2px #ffffff59}.streak-visual-mock-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.675rem}.streak-visual-legend{margin:0 0 .73rem;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:.678rem;font-weight:600;color:var(--text-muted);line-height:1.33}.streak-legend-relapse-sample{display:inline-block;flex-shrink:0;width:.99rem;height:.99rem;border:2px solid var(--border);background:var(--warn);box-shadow:inset 0 0 0 1px #ffffff59}.streak-relapse-record-btn{display:inline-flex;align-items:center;gap:.405rem;padding:.43rem .9025rem;font-family:var(--font-heading);font-size:.632rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--border);border:2px solid var(--border);border-radius:0;cursor:pointer;box-shadow:var(--brutal-shadow-sm) var(--border);transition:transform .1s,box-shadow .1s}.streak-relapse-record-btn:hover{transform:translate(-1px,-1px);box-shadow:var(--brutal-shadow) var(--border)}.streak-section .streak-danger-zone{flex-shrink:0;margin-top:.3325rem;padding-bottom:.2375rem;display:flex;justify-content:center}.streak-clear-all{padding:.3325rem .7125rem!important;font-size:.646rem!important}.streak-grid-layout{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:.75rem;align-items:stretch}.relapse-calendar-box,.relapse-history-box{background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);padding:.75rem;box-shadow:var(--brutal-shadow-sm) var(--border);height:100%}.box-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.relapse-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.1rem;text-align:center}.calendar-weekday{font-weight:800;font-size:.65rem;color:var(--text-muted)}.calendar-day{aspect-ratio:1;max-width:35px;margin:0 auto;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border-radius:4px;color:var(--text-main)}.calendar-day.relapse-dot{background:var(--warn);color:#fff;border:2px solid var(--border)}.calendar-day.is-today{background:var(--primary);color:#fff}.relapse-list-container{max-height:180px;overflow-y:auto;padding-right:.5rem}.relapse-list-container::-webkit-scrollbar{width:4px}.relapse-list-container::-webkit-scrollbar-track{background:transparent}.relapse-list-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.streak-danger-zone{margin-top:1rem;display:flex;justify-content:center;padding-bottom:.5rem}.danger-btn-outline{background:transparent;border:2px solid var(--danger);color:var(--danger);padding:.5rem 1rem;border-radius:var(--brutal-radius);font-weight:800;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .15s;text-transform:uppercase;font-size:.75rem;box-shadow:3px 3px 0 0 var(--danger)}.danger-btn-outline:hover{background:var(--danger);color:#fff;transform:translate(-1px,-1px);box-shadow:4px 4px 0 0 var(--border)}.btn-compact{padding:.35rem .75rem}.calendar-day.is-today.relapse-dot{border-color:#fff;background:var(--warn)}.relapse-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:.5rem}.relapse-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem .6rem;background:var(--bg-color);border:2px solid var(--border);border-radius:var(--brutal-radius)}.relapse-info{display:flex;flex-direction:column}.relapse-date{font-weight:700;font-size:.85rem}.relapse-time{font-size:.8rem;color:var(--text-muted)}.delete-relapse-btn{padding:.4rem;background:none;border:2px solid transparent;border-radius:4px;color:var(--text-muted);cursor:pointer;transition:all .1s}.delete-relapse-btn:hover{color:var(--warn);border-color:var(--warn);background:var(--warn-light)}.relapse-btn-mini{padding:.5rem 1rem;font-size:.85rem;display:flex;align-items:center;gap:.5rem}.empty-history{text-align:center;color:var(--text-muted);padding:2rem;font-style:italic}.theme-quick-switch{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow-sm) var(--border)}.theme-dot{width:20px;height:20px;border-radius:4px;cursor:pointer;border:2px solid var(--border);transition:transform .15s}.theme-dot:hover{transform:scale(1.2)}.theme-dot.active{border-width:3px;transform:scale(1.1)}.theme-dot.theme-light{background-color:#6366f1}.theme-dot.theme-midnight{background-color:#8b5cf6}.theme-dot.theme-nord{background-color:#88c0d0}.theme-dot.theme-cyberpunk{background-color:#f43f5e}.theme-dot.theme-forest{background-color:#10b981}.user-profile{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--text-main)}.user-profile img{width:36px;height:36px;border-radius:var(--brutal-radius);object-fit:cover;border:2px solid var(--border)}.user-name{font-size:.95rem}.tab-switcher{display:flex;background:var(--surface);padding:.35rem;border-radius:var(--brutal-radius);gap:.25rem;border:var(--brutal-border) solid var(--border);box-shadow:var(--brutal-shadow-sm) var(--border)}.tab-btn{font-family:var(--font-heading);padding:.5rem 1.25rem;border-radius:4px;border:none;font-size:.9rem;font-weight:700;color:var(--text-muted);background:transparent;cursor:pointer;transition:all .15s}.tab-btn.active{background:var(--primary);color:#fff;border:2px solid var(--border);box-shadow:var(--brutal-shadow-sm) var(--border)}.header-tabs{display:flex;align-items:center;gap:1rem}.section-switcher{display:flex;background:var(--surface);padding:.35rem;border-radius:var(--brutal-radius);gap:.25rem;border:var(--brutal-border) solid var(--border);box-shadow:var(--brutal-shadow-sm) var(--border)}.section-btn{display:flex;align-items:center;gap:.5rem;font-family:var(--font-heading);padding:.5rem 1rem;border-radius:4px;border:none;font-size:.9rem;font-weight:700;color:var(--text-muted);background:transparent;cursor:pointer;transition:all .15s}.section-btn:hover{color:var(--text-main);background:var(--primary-light)}.section-btn.active{background:var(--primary);color:#fff;border:2px solid var(--border);box-shadow:var(--brutal-shadow-sm) var(--border)}.settings-btn{display:flex;align-items:center;justify-content:center;padding:.5rem;border-radius:var(--brutal-radius);background:var(--surface);border:var(--brutal-border) solid var(--border);cursor:pointer;color:var(--text-main);transition:all .15s;box-shadow:var(--brutal-shadow-sm) var(--border)}.settings-btn:hover{color:var(--primary);background:var(--primary-light);transform:translate(-1px,-1px);box-shadow:3px 3px 0 0 var(--border)}.settings-btn:active{transform:translate(2px,2px);box-shadow:none}.dashboard{padding:.5rem 0 1rem}.life-section{max-width:850px;margin:0 auto}.life-section-header{margin-bottom:.75rem}.life-section-header h2{font-family:var(--font-heading);font-size:1.75rem;font-weight:800;display:flex;align-items:center;gap:.5rem;color:var(--text-main);margin-bottom:.5rem}.life-section-desc{color:var(--text-muted);font-size:1rem}.streak-card{position:relative;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow) var(--border);padding:.75rem .85rem .85rem;text-align:center;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.streak-card-accent{position:absolute;top:0;left:0;right:0;height:11px;border-bottom:var(--brutal-border) solid var(--border);pointer-events:none}.streak-card-accent-fire{background:linear-gradient(90deg,#ea580c 0%,var(--primary) 45%,#38bdf8 100%)}.streak-card-accent-gold{background:linear-gradient(90deg,#d97706,#fbbf24 55%,#fcd34d)}.streak-card-current{background:linear-gradient(165deg,var(--primary-light) 0%,#ffffff 65%)}.streak-card-record{background:linear-gradient(165deg,var(--warn-light) 0%,#ffffff 70%)}.streak-card-head{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.2rem}.streak-card-icon{color:var(--primary);flex-shrink:0}.streak-card-record .streak-card-icon{color:#d97706}.streak-card-spacer{margin-top:.5rem;min-height:2rem;flex-shrink:0}.streak-label{display:block;font-size:.8rem;font-weight:700;color:var(--text-muted);margin-bottom:.25rem}.streak-card-head .streak-label{margin-bottom:0}.streak-value-current{color:var(--primary);font-size:1.55rem}.streak-value-record{color:#b45309;font-size:1.45rem}.streak-value{font-family:var(--font-heading);font-size:1.25rem;font-weight:800;color:var(--text-main);line-height:1}.streak-main-display{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.streak-unit{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.15rem}.streak-reset-btn{margin-top:.5rem;align-self:center;display:inline-flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.streak-actions{margin-bottom:2rem}.relapse-btn{width:100%;max-width:280px;display:block;margin:0 auto;border-color:var(--danger);color:var(--danger)}.relapse-btn:hover{background:#dc26261a}.relapse-history h3{font-family:var(--font-heading);font-size:1rem;margin-bottom:.75rem;color:var(--text-main)}.relapse-history ul{list-style:none;font-size:.9rem;color:var(--text-muted)}.relapse-history li{padding:.35rem 0;border-bottom:1px solid var(--border)}.relapse-history li:last-child{border-bottom:none}.wellness-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1rem}.wellness-card{background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow) var(--border);padding:1.5rem;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.wellness-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--border)}.wellness-card.done{border-color:var(--success);background:#05966914}.wellness-card .wellness-label{font-family:var(--font-heading);font-weight:700;font-size:1.1rem;color:var(--text-main)}.wellness-card .wellness-status{font-size:.875rem;color:var(--text-muted)}.wellness-card .check-box{position:absolute;top:1rem;right:1rem}.wellness-hint{font-size:.875rem;color:var(--text-muted);text-align:center}.calendar-header{display:flex;align-items:center;justify-content:center;gap:2.5rem;margin-bottom:3rem}.calendar-header h2{font-family:var(--font-heading);font-size:2rem;font-weight:800;letter-spacing:-.03em;color:var(--text-main)}.nav-icon{padding:.6rem;border-radius:var(--brutal-radius);background:var(--surface);border:var(--brutal-border) solid var(--border);transition:all .15s;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--brutal-shadow-sm) var(--border)}.nav-icon:hover{background:var(--primary);color:#fff;transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.nav-icon:active{transform:translate(2px,2px);box-shadow:none}.habits-table-container{background:var(--surface);border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);box-shadow:var(--brutal-shadow) var(--border);overflow-x:auto;margin-bottom:2.5rem}.monthly-scroll-hint{display:none}.habits-table{width:100%;border-collapse:separate;border-spacing:0}.habits-table th{font-family:var(--font-heading);background:var(--bg-color);color:var(--text-main);font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:1rem .75rem;border-bottom:var(--brutal-border) solid var(--border)}.habits-table td{padding:.875rem .5rem;border-bottom:2px solid var(--border);text-align:center;background:var(--surface)}.habit-name-col{text-align:left!important;padding-left:3rem!important;min-width:240px}.monthly-table th{padding:.5rem 2px!important;font-size:.65rem!important}.monthly-table thead th{border-bottom:none!important}.monthly-table tbody>tr:first-child>td{border-top:var(--brutal-border) solid var(--border)}.monthly-table td{padding:.5rem 2px!important}.monthly-table .check-box{width:20px!important;height:20px!important}.monthly-table .habit-name-col,.monthly-table .habit-name{min-width:160px!important;font-size:.875rem!important;padding-left:3rem!important}.monthly-table .stat-col{min-width:40px!important;font-size:.75rem!important}.monthly-table .stat-val{font-size:.8rem}.habit-name{text-align:left!important;padding-left:3rem!important;font-weight:600;font-size:.95rem;color:var(--text-main);background:var(--surface);position:sticky;left:0;z-index:10}.habit-row-info{display:flex;align-items:center;justify-content:space-between;gap:1rem}.delete-habit-icon{color:var(--text-muted);opacity:0;transition:opacity .2s;cursor:pointer}.habit-name:hover .delete-habit-icon{opacity:.5}.delete-habit-icon:hover{opacity:1!important;color:var(--danger)}.check-box{width:26px;height:26px;border-radius:4px;border:var(--brutal-border) solid var(--border);margin:0 auto;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;background:var(--surface)}.check-box:hover{background:var(--primary-light)}.check-box.active{background:var(--primary);border-color:var(--border);box-shadow:var(--brutal-shadow-sm) var(--border)}.stat-col{background:var(--bg-color);min-width:80px}.stat-val{font-weight:700;color:var(--text-main)}.achieved{color:var(--primary)!important;background:var(--primary-light)}.category-row{background:var(--bg-color)!important}.monthly-table .category-cell{padding:1rem 1.5rem 1rem 3rem!important;font-size:1rem!important;text-align:left!important;border-bottom:2px solid var(--border)!important}.category-cell strong{color:var(--text-main);margin-right:.75rem}.category-count-monthly{color:var(--text-muted);font-size:.875rem;font-weight:400}.add-habit-btn{font-family:var(--font-heading);display:flex;align-items:center;gap:.5rem;background:var(--surface);border:var(--brutal-border) dashed var(--border);color:var(--text-muted);padding:1rem 2rem;border-radius:var(--brutal-radius);width:100%;justify-content:center;font-weight:700;transition:all .15s;cursor:pointer}.add-habit-btn:hover{border-style:solid;color:var(--primary);background:var(--primary-light);box-shadow:var(--brutal-shadow-sm) var(--border)}.daily-view{max-width:900px;margin:0 auto}.daily-view.two-column-layout{display:grid;grid-template-columns:1fr 240px;gap:2rem;align-items:start}@media(max-width:768px){.daily-view.two-column-layout{grid-template-columns:1fr}}.daily-header-left{margin-bottom:1rem}.daily-sidebar-right{position:sticky;top:2rem;display:flex;flex-direction:column;gap:.5rem;z-index:35}.daily-sidebar-right button{padding:.75rem 1rem;font-size:1rem}.daily-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.daily-greeting{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;margin:0 0 .25rem;letter-spacing:-.02em}.daily-date{color:var(--text-muted);font-size:1rem}.daily-focus-total{font-family:var(--font-heading);display:flex;flex-direction:column;align-items:center;padding:.75rem 1.5rem;background:var(--primary);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);color:#fff;box-shadow:var(--brutal-shadow-sm) var(--border)}.daily-focus-total span{font-weight:700;font-size:1.25rem}.daily-focus-total small{font-size:.75rem;opacity:.8}.current-session-sidebar{width:100%;padding:.75rem 1rem;margin-bottom:1rem;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow-sm) var(--border);display:flex;flex-direction:column;gap:.5rem}.current-session-sidebar-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.current-session-sidebar-name{font-family:var(--font-heading);font-weight:700;font-size:1rem;color:var(--text-main);line-height:1.2}.current-session-sidebar-time{font-family:var(--font-heading);font-weight:700;font-size:1.25rem;color:var(--primary)}.current-session-sidebar-paused{font-size:.8rem;color:var(--text-muted);font-weight:500}.current-session-sidebar-actions{display:flex;gap:.5rem;margin-top:.25rem}.current-session-sidebar-actions .brutal-btn{margin-bottom:0}.daily-subtabs{display:flex;gap:0;margin-bottom:1.25rem;border-bottom:var(--brutal-border) solid var(--border)}.daily-subtab{font-family:var(--font-heading);padding:.75rem 1.5rem;background:none;border:none;font-weight:700;font-size:.95rem;color:var(--text-muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-3px;transition:all .15s}.daily-subtab:hover{color:var(--text-main)}.daily-subtab.active{color:var(--primary);border-bottom-color:var(--primary)}.discipline-tabs{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem 2rem 1rem;background:var(--bg-color);border-bottom:2px solid var(--border)}.discipline-tab{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-heading);font-size:.88rem;font-weight:700;padding:.5rem .85rem;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);background:var(--surface);color:var(--text-muted);cursor:pointer;box-shadow:var(--brutal-shadow-sm) var(--border);transition:color .15s,transform .12s,box-shadow .12s}.discipline-tab:hover{color:var(--text-main);transform:translate(-1px,-1px)}.discipline-tab.active{color:var(--primary);border-color:var(--primary);box-shadow:var(--brutal-shadow-sm) var(--primary)}.reset-actions-vertical{display:flex;flex-direction:column;gap:.75rem;position:absolute;right:0;top:50%;transform:translateY(-50%)}.icon-btn-reset{background:var(--surface);border:var(--brutal-border) solid var(--border);padding:.6rem;border-radius:var(--brutal-radius);cursor:pointer;color:var(--danger);transition:all .15s;box-shadow:var(--brutal-shadow-sm) var(--border)}.icon-btn-reset:hover{background:var(--danger);color:#fff;transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.daily-header-controls{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.timeline-view{min-height:200px}.timeline-list{display:flex;flex-direction:column;gap:0}.timeline-item{display:flex;align-items:center;gap:1rem;padding:1rem 0;position:relative}.timeline-dot{width:14px;height:14px;border-radius:4px;border:2px solid var(--border);background:var(--primary);flex-shrink:0;z-index:1}.timeline-line{position:absolute;left:5px;top:32px;bottom:-1rem;width:3px;background:var(--border)}.timeline-content{display:flex;justify-content:space-between;align-items:center;flex:1}.timeline-duration{font-family:var(--font-heading);color:var(--primary);font-weight:700}.empty-state{font-family:var(--font-body);text-align:center;color:var(--text-muted);padding:3rem;font-size:1rem}.daily-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;margin-bottom:2rem;text-align:center}.daily-habits-list,.habit-list{display:flex;flex-direction:column;gap:1rem}.daily-habit-item{background:var(--surface);padding:1.25rem 1.5rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);display:flex;gap:1rem;align-items:center;transition:all .15s;box-shadow:var(--brutal-shadow-sm) var(--border)}.daily-habit-item:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.daily-habit-info{flex:1;display:flex;flex-direction:column;align-items:flex-start;text-align:left}.daily-habit-info h4{font-family:var(--font-heading);font-size:1.125rem;font-weight:700;margin:0;text-align:left}.habit-row-info{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;width:100%}.daily-habit-info p{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 0;text-align:left}.daily-habit-item .check-box{margin-left:auto}.daily-habit-item.skipped{opacity:.6}.habit-duration{color:var(--primary)}.habit-actions{display:flex;align-items:center;gap:.5rem}.habit-action-btn{padding:.35rem!important}.focus-timer{display:flex;align-items:center;gap:.5rem}.focus-timer-icon{color:var(--text-muted)}.focus-timer-display{font-family:var(--font-heading);font-weight:700;min-width:4ch}.focus-timer-paused-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.current-session-bar{position:sticky;top:0;z-index:10;background:var(--card-bg);border-bottom:1px solid var(--border);padding:12px 1rem;margin-bottom:.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;box-shadow:0 1px 3px #0000000f}.priority-toggle{display:flex;gap:.5rem}.priority-btn{font-family:var(--font-heading);flex:1;padding:.75rem;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);background:var(--surface);cursor:pointer;font-weight:700;transition:all .15s}.priority-btn:hover{background:var(--primary-light)}.priority-btn.active{background:var(--primary);color:#fff}.category-priority-breakdown{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.category-section{margin-bottom:1.5rem}.category-droppable{border-radius:var(--brutal-radius);transition:all .2s ease;padding:.5rem;margin:-.5rem}.category-droppable.is-over{background:var(--primary-light);outline:2px dashed var(--primary);outline-offset:4px}.category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:var(--brutal-border) solid var(--border)}.category-header h3{font-family:var(--font-heading);font-size:1.25rem;font-weight:800;color:var(--text-main);margin:0}.category-badge{font-family:var(--font-heading);background:var(--primary);color:#fff;padding:.3rem .75rem;border-radius:var(--brutal-radius);font-size:.75rem;font-weight:700;border:2px solid var(--border)}.category-row .category-cell{background:var(--surface);border-top:2px solid var(--border);border-bottom:2px solid var(--border);padding:.75rem 1rem!important}.category-row strong{font-size:1.1rem;color:var(--primary);font-weight:800}.category-count-monthly{background:var(--bg);border:1px solid var(--border);padding:.15rem .5rem;border-radius:4px;font-size:.8rem;color:var(--text-muted)}.category-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);margin-top:.35rem;max-height:200px;overflow-y:auto;box-shadow:var(--brutal-shadow) var(--border);z-index:10}.category-suggestion-item{padding:.75rem 1rem;cursor:pointer;transition:background .2s;color:var(--text-main)}.category-suggestion-item:hover{background:var(--primary-light)}.category-list{display:flex;flex-direction:column;gap:.75rem}.category-item-manage{background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);padding:1rem;box-shadow:var(--brutal-shadow-sm) var(--border)}.category-info-row{display:flex;justify-content:space-between;align-items:center}.category-info-row strong{font-family:var(--font-heading);font-size:1rem;font-weight:700;color:var(--text-main);margin-right:.5rem}.category-count{font-size:.875rem;color:var(--text-muted);margin-left:.5rem}.category-actions{display:flex;gap:.5rem}.icon-btn{background:var(--surface);border:var(--brutal-border) solid var(--border);padding:.5rem;border-radius:var(--brutal-radius);cursor:pointer;color:var(--text-main);transition:all .15s;display:flex;align-items:center;justify-content:center}.icon-btn:hover{background:var(--primary-light);border-color:var(--primary);color:var(--primary)}.icon-btn.danger:hover{background:#ef44441a;border-color:var(--danger);color:var(--danger)}.category-edit-row{display:flex;gap:.5rem;align-items:center}.category-edit-row .custom-input{flex:1}.settings-overlay{position:fixed;inset:0;background:#0f172a99;z-index:25000;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:2rem 1rem;-webkit-user-select:none;user-select:none;overscroll-behavior:contain;isolation:isolate}.settings-modal{background:var(--surface);width:100%;max-width:500px;border-radius:var(--brutal-radius);padding:1.5rem;box-shadow:8px 8px 0 0 var(--border);display:flex;flex-direction:column;gap:1.5rem;border:var(--brutal-border) solid var(--border);color:var(--text-main);overflow-x:hidden;overflow-y:auto;max-height:min(92dvh,52rem);margin-top:auto;margin-bottom:auto;animation:modalSlideUp .25s cubic-bezier(.16,1,.3,1);position:relative;z-index:1;-webkit-overflow-scrolling:touch;-webkit-user-select:auto;user-select:auto}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.brutal-btn{font-family:var(--font-heading);padding:.85rem 1.5rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);font-weight:800;font-size:1rem;cursor:pointer;transition:all .1s;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:var(--brutal-shadow-sm) var(--border);text-transform:uppercase;letter-spacing:.02em}.brutal-btn.primary{background:var(--primary);color:#fff}.brutal-btn:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 0 var(--border)}.brutal-btn:active{transform:translate(2px,2px);box-shadow:none}.settings-header{display:flex;justify-content:space-between;align-items:center}.settings-header h3{font-family:var(--font-heading);font-size:1.25rem;font-weight:800}.clickable{cursor:pointer;padding:.35rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid transparent;transition:all .15s}.clickable:hover{background:var(--primary-light);border-color:var(--border)}.custom-pickers{display:flex;flex-direction:row;gap:1.5rem;padding:1rem 0}.picker-section{display:flex;flex-direction:column;gap:.5rem}.picker-label{font-weight:600;font-size:.9rem;color:var(--text-muted)}.mini-calendar-container{background:var(--bg);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);padding:1rem}.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;font-weight:700}.nav-btns button{background:none;border:none;cursor:pointer;padding:.25rem}.mini-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;text-align:center}.mini-weekday{font-size:.8rem;font-weight:700;color:var(--text-muted);margin-bottom:.5rem}.mini-day{background:transparent;border:none;padding:.5rem 0;border-radius:4px;cursor:pointer;transition:all .2s;font-size:.9rem}.mini-day:not(.empty):not(.selected):hover{background:var(--calendar-day-hover-bg);color:var(--calendar-day-hover-text)}.mini-day.selected:hover{background:var(--primary-hover);color:#fff}.mini-day.selected{background:var(--primary);color:#fff;font-weight:700}.mini-day.is-today{border:2px solid var(--primary)}.brutal-scroll::-webkit-scrollbar{width:6px}.brutal-scroll::-webkit-scrollbar-track{background:var(--bg)}.brutal-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.time-preview-brutal{margin-top:1rem;padding:.75rem;background:var(--primary-light);border:2px solid var(--border);border-radius:var(--brutal-radius);font-weight:800;font-family:var(--font-heading);color:var(--primary);text-align:center;font-size:.9rem}.time-selectors{display:flex;gap:1rem}.hour-selector,.minute-selector{flex:1;display:flex;flex-direction:column;gap:.25rem}.sub-label{font-size:.8rem;color:var(--text-muted)}.minute-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.25rem;border:1px solid var(--border);border-radius:var(--brutal-radius);padding:.5rem;background:var(--bg)}.minute-grid button{background:var(--surface);border:1px solid transparent;border-radius:4px;padding:.5rem;cursor:pointer}.minute-grid button:hover{background:var(--bg);border-color:var(--border)}.minute-grid button.active{background:var(--primary);color:#fff}.record-relapse-overlay.settings-overlay{background:#0f172a80;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:.5rem;overflow:hidden}.record-relapse-dialog{font-family:"Inter",var(--font-body),system-ui,sans-serif;background:#fff;color:#1e293b;width:100%;max-width:42rem;max-height:calc(100vh - 1rem);max-height:calc(100dvh - 1rem);border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;display:flex;flex-direction:column;flex-shrink:1;min-height:0;margin-top:auto;margin-bottom:auto;animation:recordRelapseModalIn .25s cubic-bezier(.16,1,.3,1)}@keyframes recordRelapseModalIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.record-relapse-header{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;border-bottom:1px solid #f1f5f9;flex-shrink:0}.record-relapse-header-brand{display:flex;align-items:center;gap:.75rem}.record-relapse-header-icon-wrap{padding:.5rem;border-radius:.5rem;background:#eff6ff;display:flex;align-items:center;justify-content:center}.record-relapse-header-icon{color:#2563eb;flex-shrink:0}.record-relapse-title{margin:0;font-size:clamp(1rem,2.8vw,1.125rem);font-weight:700;line-height:1.25;letter-spacing:-.02em;color:#1e293b}.record-relapse-close{padding:.5rem;border-radius:9999px;border:none;background:transparent;cursor:pointer;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.record-relapse-close:hover{background:#f1f5f9;color:#64748b}.record-relapse-body{padding:clamp(.65rem,2dvh,1rem) clamp(.85rem,2.5vw,1.25rem);display:flex;flex-direction:column;gap:clamp(.55rem,1.5dvh,.85rem);flex:1 1 auto;min-height:0;overflow:hidden}.record-relapse-label{display:block;font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.35rem}.record-relapse-section{flex-shrink:1;min-height:0}.record-relapse-cal-wrap{border:1px solid #e2e8f0;border-radius:.6rem;padding:clamp(.45rem,1.5dvh,.65rem);background:#f8fafc4d;flex-shrink:1;min-height:0}.record-relapse-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:clamp(.35rem,1dvh,.5rem)}.record-relapse-cal-month{margin:0;font-size:clamp(.8rem,2vw,.9rem);font-weight:700;color:#1e293b}.record-relapse-cal-nav-btns{display:flex;gap:.25rem}.record-relapse-cal-nav-btn{padding:.3rem;border-radius:.375rem;border:1px solid #e2e8f0;background:transparent;color:#475569;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s;box-shadow:0 1px 2px #0f172a0d}.record-relapse-cal-nav-btn:hover{background:#fff}.record-relapse-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.15rem;text-align:center}.record-relapse-cal-dow{font-size:.62rem;font-weight:500;color:#94a3b8;padding:.12rem 0;line-height:1.2}.record-relapse-cal-ph{min-height:clamp(1.25rem,3.8dvh,1.6rem)}.record-relapse-cal-day{padding:.2rem .08rem;font-size:clamp(.65rem,1.85vw,.78rem);font-weight:500;border:none;border-radius:.35rem;background:transparent;color:#1e293b;cursor:pointer;transition:background .15s,color .15s,box-shadow .15s}.record-relapse-cal-day:hover{background:#dbeafe}.record-relapse-cal-day--today{border:2px solid #3b82f6;font-weight:700;color:#2563eb;background:#fff}.record-relapse-cal-day--selected{background:#2563eb;color:#fff;font-weight:700;box-shadow:0 4px 6px -1px #2563eb59}.record-relapse-cal-day--selected:hover{background:#1d4ed8}.record-relapse-time-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.5rem,2vw,1rem);align-items:stretch;flex-shrink:1;min-height:0}.record-relapse-time-col{min-width:0}.record-relapse-time-col--stretch{display:flex;flex-direction:column}.record-relapse-hour-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:clamp(.18rem,.6vw,.3rem)}.record-relapse-hour-btn{padding:clamp(.22rem,1dvh,.35rem) .12rem;font-size:clamp(.65rem,1.6vw,.75rem);font-weight:600;font-family:inherit;border-radius:.35rem;border:1px solid #e2e8f0;background:#fff;color:#1e293b;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.record-relapse-hour-btn:hover{border-color:#93c5fd;background:#eff6ff}.record-relapse-hour-btn--active{border-color:#2563eb;background:#2563eb;color:#fff;font-weight:700;box-shadow:0 2px 6px #2563eb66}.record-relapse-minute-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.35rem;margin-bottom:.45rem}.record-relapse-minute-btn{padding:clamp(.35rem,1.4dvh,.5rem) .45rem;font-size:clamp(.68rem,1.6vw,.8rem);font-weight:600;font-family:inherit;border-radius:.55rem;border:1px solid #e2e8f0;background:#fff;color:#1e293b;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.record-relapse-minute-btn:hover{border-color:#93c5fd;background:#eff6ff}.record-relapse-minute-btn--active{border-color:#2563eb;background:#2563eb;color:#fff;font-weight:700;box-shadow:0 2px 6px #2563eb66}.record-relapse-time-summary{margin-top:auto;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.55rem;padding:clamp(.45rem,1.5dvh,.65rem) clamp(.65rem,2vw,.85rem);display:flex;align-items:center;justify-content:space-between;gap:1rem}.record-relapse-time-summary-label{font-size:.62rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em}.record-relapse-time-summary-value{font-size:clamp(.92rem,2.8vw,1.125rem);font-weight:700;color:#1d4ed8;letter-spacing:-.02em}.record-relapse-footer{flex-shrink:0;padding:clamp(.65rem,2dvh,1rem) clamp(1rem,3vw,1.35rem);background:#f8fafc;border-top:1px solid #f1f5f9;display:flex;flex-direction:column-reverse;gap:.75rem}@media(min-width:640px){.record-relapse-footer{flex-direction:row-reverse;justify-content:flex-start}}.record-relapse-btn{font-family:inherit;font-size:.8rem;font-weight:700;padding:clamp(.52rem,2dvh,.65rem) 1.35rem;border-radius:.65rem;cursor:pointer;border:none;transition:background .15s,transform .1s;width:100%}@media(min-width:640px){.record-relapse-btn{width:auto}}.record-relapse-btn-primary{background:#2563eb;color:#fff;box-shadow:0 10px 15px -3px #2563eb40}.record-relapse-btn-primary:hover{background:#1d4ed8}.record-relapse-btn-primary:active{transform:scale(.98)}.record-relapse-btn-secondary{background:#fff;color:#475569;border:1px solid #e2e8f0;font-weight:600}.record-relapse-btn-secondary:hover{background:#f8fafc}@media(max-height:600px){.record-relapse-header{padding:.45rem .75rem}.record-relapse-header-brand{gap:.5rem}.record-relapse-body{gap:.4rem;padding:.45rem .75rem}.record-relapse-label{margin-bottom:.22rem;font-size:.62rem}.record-relapse-cal-ph{min-height:1.1rem}.record-relapse-hour-btn--active,.record-relapse-minute-btn--active{box-shadow:0 1px 3px #2563eb73}}@media(max-width:768px){.record-relapse-time-row{grid-template-columns:1fr 1fr;gap:.45rem}}.settings-section h3{font-family:var(--font-heading);font-size:1.1rem;font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.theme-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.theme-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);cursor:pointer;transition:all .15s;background:var(--surface);color:var(--text-main)}.theme-item:hover{background:var(--primary-light)}.theme-item.active{background:var(--primary);color:#fff}.theme-pill{width:24px;height:24px;border-radius:4px;border:2px solid var(--border)}.theme-item span{font-size:.875rem;font-weight:600}.drag-handle{cursor:grab;color:var(--text-muted);padding:.85rem;display:flex;align-items:center;touch-action:none;transition:all .2s ease;border-radius:4px}.drag-handle:hover{color:var(--primary);background:var(--primary-light)}.drag-handle:active{cursor:grabbing}.daily-habit-item.dragging{opacity:.5;background:var(--bg-color);border:var(--brutal-border) dashed var(--border);box-shadow:none}.daily-habit-item.drag-overlay{background:var(--surface);border:3px solid var(--primary);box-shadow:12px 12px 0 0 var(--border);transform:scale(1.02);cursor:grabbing;z-index:9999;pointer-events:none}.is-dragging .daily-habit-item,.is-dragging .category-section,.is-dragging .habit-list,.is-dragging .daily-habits-list,.is-dragging .category-droppable,.is-dragging .habits-table-container,.is-dragging *{transition:none!important;animation:none!important}.is-dragging *{user-select:none!important;-webkit-user-select:none!important}.is-dragging .drag-handle{cursor:grabbing}@media(max-width:1024px){.habits-table-container{cursor:ew-resize}}@media(max-width:640px){.features-grid{grid-template-columns:1fr;gap:1rem}.landing-content{padding:2rem 1.5rem}.logo-large h1{font-size:2.25rem}}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-muted)}.custom-input{padding:.75rem 1rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);background:var(--surface);color:var(--text-main);font-family:var(--font-body);font-size:1rem;outline:none;transition:all .15s}.custom-input:focus{box-shadow:0 0 0 3px var(--primary-light)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;flex-wrap:wrap}.primary-btn{font-family:var(--font-heading);background:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);font-weight:700;cursor:pointer;transition:all .15s;box-shadow:var(--brutal-shadow-sm) var(--border)}.primary-btn:hover{background:var(--primary-hover);transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.primary-btn:active{transform:translate(2px,2px);box-shadow:none}.secondary-btn{font-family:var(--font-heading);background:var(--surface);color:var(--text-main);padding:.75rem 1.5rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);font-weight:700;cursor:pointer;transition:all .15s;box-shadow:var(--brutal-shadow-sm) var(--border)}.secondary-btn:hover{background:var(--primary-light);transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.landing-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--bg-color)}.landing-content{max-width:560px;width:100%;text-align:center;background:var(--surface);padding:3rem;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:8px 8px 0 0 var(--border)}.logo-large{margin-bottom:2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.landing-logo{width:80px;height:80px;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow-sm) var(--border)}.logo-large h1{font-family:var(--font-heading);font-size:2.75rem;font-weight:800;letter-spacing:-.04em;color:var(--text-main);line-height:1.1}.landing-subtitle{font-family:var(--font-body);font-size:1.125rem;color:var(--text-muted);line-height:1.7;margin-bottom:2.5rem;font-weight:500}.login-btn{font-family:var(--font-heading);width:100%;max-width:320px;margin:0 auto 2.5rem;display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:1.125rem;font-weight:700;padding:1rem 2rem;border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow) var(--border)}.login-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--border)}.login-btn:active{transform:translate(2px,2px);box-shadow:none}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:2rem;border-top:var(--brutal-border) solid var(--border)}.feature-item{font-family:var(--font-heading);display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem 1rem;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);font-size:.85rem;font-weight:700;color:var(--text-main);box-shadow:var(--brutal-shadow-sm) var(--border);transition:all .15s}.feature-item:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border)}.day-details-modal{max-width:650px!important}.day-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:.5rem 0}.details-column{display:flex;flex-direction:column;gap:1rem;min-height:200px}.column-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border)}.column-header h4{font-family:var(--font-heading);font-size:.9rem;font-weight:800;margin:0;text-transform:uppercase}.column-header.not-completed{background:#fff1f2;color:#e11d48}.column-header.completed{background:#f0fdf4;color:#16a34a}.details-list{display:flex;flex-direction:column;gap:.5rem}.detail-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--surface);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);transition:all .15s;position:relative}.detail-item.completed{opacity:.8}.detail-item.clickable:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 0 var(--border);background:var(--bg)}.detail-item.clickable:active{transform:translate(1px,1px);box-shadow:none}.detail-item .habit-icon{display:flex;align-items:center;justify-content:center;color:var(--primary)}.detail-item.completed .habit-icon{color:#16a34a}.detail-item .habit-name{font-weight:600;font-size:.95rem;flex:1}.habit-cat-tag{font-size:.7rem;padding:.15rem .4rem;background:var(--primary-light);border:1px solid var(--border);border-radius:4px;font-weight:700;text-transform:uppercase}.empty-mini{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.9rem;font-style:italic;background:var(--bg);border:1px dashed var(--border);border-radius:var(--brutal-radius)}.day-col.clickable{cursor:pointer;background:var(--bg);transition:all .15s}.day-col.clickable:hover{background:var(--primary-light);color:var(--primary)}.check-col.clickable-cell{cursor:pointer;transition:background .1s}.content-header-lead{display:flex;align-items:center;gap:.65rem;min-width:0;flex:1}.section-title{min-width:0}.sidebar-backdrop,.sidebar-mobile-close,.mobile-menu-btn{display:none}.sync-error-banner{background:var(--danger, #dc3545);color:#fff;padding:10px 16px;border-radius:8px;margin:0 1rem .75rem;font-size:.9rem;display:flex;align-items:flex-start;gap:10px;line-height:1.45}.sync-error-banner code{font-size:.78rem;word-break:break-all}.check-col.clickable-cell:hover{background:rgba(var(--primary-rgb),.05)}@media(max-width:768px){body{font-size:15px}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:140;border:none;padding:0;margin:0;cursor:pointer;background:#0f172a73;opacity:0;pointer-events:none;transition:opacity .2s ease;-webkit-tap-highlight-color:transparent}.sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;padding:0;border-radius:var(--brutal-radius);border:var(--brutal-border) solid var(--border);background:var(--surface);color:var(--text-main);box-shadow:var(--brutal-shadow-sm) var(--border);cursor:pointer;-webkit-tap-highlight-color:transparent}.mobile-menu-btn:active{transform:translate(1px,1px);box-shadow:none}.app-layout{position:relative}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(300px,88vw);max-width:100%;z-index:160;transform:translate(-100%);transition:transform .22s ease;box-shadow:none;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem 1rem 1.25rem;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom,0px))}.sidebar.sidebar--open{transform:translate(0);box-shadow:8px 0 24px #0f172a2e}.sidebar-mobile-close{display:flex;align-items:center;justify-content:center;position:absolute;top:.65rem;right:.65rem;width:44px;height:44px;z-index:2;border:2px solid var(--border);border-radius:var(--brutal-radius);background:var(--surface);color:var(--text-main);cursor:pointer;-webkit-tap-highlight-color:transparent}.sidebar-top{gap:1.25rem;padding-right:2.5rem}.logo .brand-name{font-size:1.15rem}.sidebar-btn{padding:.75rem .85rem;font-size:.92rem;min-height:48px}.main-content{height:100dvh;min-height:0;padding-bottom:env(safe-area-inset-bottom,0px)}.content-header{padding:.75rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top,0px));gap:.5rem;flex-direction:column;align-items:stretch;flex-wrap:nowrap}.content-header-lead{min-width:0}.content-header-right{width:100%;margin-left:0;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:.5rem;min-width:0}.install-app-btn{min-height:40px;white-space:nowrap;padding:.45rem .55rem;font-size:.78rem}.content-header-right .tab-switcher{flex:1 1 auto;min-width:0}.content-header-right:not(:has(.tab-switcher)){justify-content:flex-end}.header-current-date{font-size:.82rem;margin-left:0;flex:0 0 auto;white-space:nowrap;line-height:1.2}.section-title h2{font-size:clamp(1rem,4.2vw,1.35rem);gap:.45rem;line-height:1.2}.section-title h2 svg{flex-shrink:0;width:22px;height:22px}.tab-switcher{flex:1;min-width:0;justify-content:center}.tab-btn{flex:1;min-width:0;padding:.55rem .65rem;font-size:.82rem;min-height:44px}.content-container{padding:1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));max-width:100%;overflow-x:hidden;box-sizing:border-box}.dashboard,.daily-view{max-width:100%;box-sizing:border-box}.content-container.streak-page{padding:.65rem 1rem 1rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px))}.daily-view.two-column-layout{gap:1rem}.daily-sidebar-right{position:static;top:auto}.daily-subtabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scrollbar-width:thin;gap:0;margin-bottom:1rem;border-bottom-width:2px}.daily-subtab{flex:0 0 auto;padding:.65rem 1rem;font-size:.85rem;white-space:nowrap;min-height:44px}.daily-habit-item{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;align-items:start;column-gap:.5rem;row-gap:.65rem;padding:.85rem .9rem}.daily-habit-item .drag-handle{grid-column:1;grid-row:1;align-self:stretch;padding:.45rem .35rem}.daily-habit-item .daily-habit-info{grid-column:2;grid-row:1;min-width:0}.daily-habit-item .check-box{grid-column:3;grid-row:1;margin-left:0;align-self:start}.daily-habit-item .habit-actions{grid-column:1 / -1;grid-row:2;width:100%;justify-content:flex-start;flex-wrap:wrap;gap:.4rem;padding-top:.15rem;border-top:1px solid color-mix(in srgb,var(--text-main) 10%,transparent)}.daily-habit-item .focus-timer{flex-wrap:wrap;row-gap:.25rem}.daily-habit-item:hover{transform:none}.daily-habit-info h4{font-size:1rem}.habit-actions{flex-wrap:wrap;gap:.35rem}.habit-action-btn{min-width:40px;min-height:40px}.drag-handle{padding:.6rem;touch-action:none}.daily-focus-total{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:.35rem .75rem;padding:.65rem 1rem}.daily-focus-total small{width:100%;text-align:center}.fab-brutal-add{bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));right:1rem;width:56px;height:56px}.category-header{min-width:0;gap:.5rem}.category-header h3{overflow-wrap:anywhere;word-break:break-word;line-height:1.25}.habits-table-container{margin-bottom:1.25rem;border-width:2px}.monthly-scroll-hint{display:block;margin:0 0 .65rem;padding:.45rem .65rem;font-size:.78rem;font-weight:700;font-family:var(--font-heading);color:var(--text-main);line-height:1.35;background:var(--primary-light);border:var(--brutal-border) solid var(--border);border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow-sm) var(--border)}.habits-table-container--monthly{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;padding-bottom:.25rem;scrollbar-width:thin}.monthly-table thead .habit-name-col{position:sticky;left:0;z-index:15;vertical-align:bottom;box-shadow:4px 0 14px -6px #0003;width:112px;max-width:112px;min-width:0!important;padding-left:.55rem!important;padding-right:.35rem!important;font-size:.65rem!important;line-height:1.2;box-sizing:border-box}.monthly-table .habit-name{z-index:11}.monthly-table thead th.stat-col:nth-last-child(2),.monthly-table tbody td.stat-val:nth-last-child(2){position:sticky;right:3.5rem;z-index:12;box-shadow:-6px 0 14px -8px #0000002e}.monthly-table thead th.stat-col:nth-last-child(1),.monthly-table tbody td.stat-val:nth-last-child(1){position:sticky;right:0;z-index:13;box-shadow:-6px 0 14px -8px #0000002e}.monthly-table thead th.stat-col:nth-last-child(2),.monthly-table thead th.stat-col:nth-last-child(1){background:var(--bg-color)}.monthly-table tbody td.stat-val:nth-last-child(2){background:var(--surface)}.monthly-table tbody td.stat-val:nth-last-child(1){background:var(--surface)}.monthly-table tbody td.stat-val.achieved:nth-last-child(1){background:var(--primary-light)}.monthly-table .day-col{min-width:46px!important;width:46px;max-width:46px;padding:.5rem .08rem!important;vertical-align:middle;box-sizing:border-box;touch-action:manipulation;font-size:.74rem!important;font-weight:800;min-height:46px}.monthly-table .check-col{min-width:46px!important;width:46px;max-width:46px;padding:.4rem .1rem!important;vertical-align:middle;box-sizing:border-box;min-height:48px;touch-action:manipulation}.monthly-table .check-box{width:34px!important;height:34px!important;min-width:34px;min-height:34px;border-radius:6px}.monthly-table .check-box svg{width:18px!important;height:18px!important}.monthly-table .habit-name-col,.monthly-table .habit-name{min-width:0!important;width:112px;max-width:112px;padding-left:.55rem!important;padding-right:.35rem!important;font-size:.76rem!important;line-height:1.25;box-sizing:border-box;box-shadow:4px 0 14px -6px #0003}.monthly-table .habit-name .habit-row-info{flex-direction:column;align-items:stretch;gap:.35rem;justify-content:flex-start}.monthly-table .habit-name .habit-row-info span:first-child{overflow-wrap:anywhere;word-break:break-word}.monthly-table .delete-habit-icon{opacity:.55;align-self:flex-end}.monthly-table .stat-col:nth-last-child(2),.monthly-table .stat-val:nth-last-child(2){min-width:2.5rem!important;max-width:2.5rem;width:2.5rem;padding:.4rem .12rem!important;font-size:.76rem!important;box-sizing:border-box}.monthly-table .stat-col:nth-last-child(1),.monthly-table .stat-val:nth-last-child(1){min-width:3.5rem!important;max-width:3.5rem;width:3.5rem;padding:.4rem .12rem!important;font-size:.76rem!important;box-sizing:border-box}.monthly-table .category-cell{padding:.6rem .85rem!important;font-size:.86rem!important}.habits-table:not(.monthly-table) .habit-name-col{min-width:130px!important;padding-left:2rem!important}.habits-table th{padding:.65rem .35rem;font-size:.62rem}.calendar-header{flex-wrap:wrap;gap:.5rem;justify-content:center}.streak-hero-card{padding:1.1rem 1.15rem 1.2rem}.streak-visual-mock-toolbar{padding:.85rem 1rem}.streak-visual-mock-actions{width:100%;justify-content:flex-end}.relapse-calendar--streak{--streak-day-cap: clamp(1.35rem, min(11vw, 9vmin), 2.85rem)}.settings-overlay{padding:max(.5rem,env(safe-area-inset-top)) max(.65rem,env(safe-area-inset-right)) max(.85rem,env(safe-area-inset-bottom)) max(.65rem,env(safe-area-inset-left))}.settings-modal,.settings-overlay .settings-modal{max-width:calc(100vw - 1rem)!important;width:100%;margin:.35rem auto 1rem;max-height:min(94dvh,calc(100dvh - 1.25rem))!important;padding:1.05rem 1rem;gap:1rem}.settings-header h3{font-size:clamp(1rem,4.5vw,1.2rem);line-height:1.25;padding-right:.35rem}.voice-transcription-container{padding:1rem!important;min-height:min(520px,calc(100dvh - 180px))!important}.voice-transcription-panel{min-height:min(360px,calc(100dvh - 260px))!important}.voice-mic-btn{width:68px!important;height:68px!important}.day-details-modal{max-width:calc(100vw - 1rem)!important}.day-details-grid{grid-template-columns:1fr;gap:1rem}.details-column{min-height:auto}.detail-item{min-height:48px;touch-action:manipulation}}@media(max-width:480px){.tab-btn{padding:.48rem .4rem;font-size:.76rem}.daily-subtab{padding:.55rem .7rem;font-size:.78rem}.daily-habit-item{padding:.72rem .65rem;column-gap:.35rem}.category-header h3{font-size:1.05rem}}.learning-path-container{height:100%;display:flex;flex-direction:column}.view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.header-content h1{font-family:var(--font-heading);font-size:2.25rem;font-weight:800}.subtitle{color:var(--text-muted);font-weight:500}.path-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.path-card{background:var(--surface);border:var(--brutal-border) solid var(--border);padding:1.5rem;border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow) var(--border);cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:.75rem}.path-card:hover{transform:translate(-4px,-4px);box-shadow:8px 8px 0 0 var(--border)}.path-card-header{display:flex;justify-content:space-between;align-items:center}.path-category{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .6rem;background:var(--primary-light);color:var(--primary);border:2px solid var(--border);border-radius:4px}.path-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;margin:0}.path-desc{color:var(--text-muted);font-size:.95rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.path-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border)}.path-meta,.path-progress-mini{display:flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:var(--text-muted)}.path-detail-view{display:flex;flex-direction:column;gap:2rem}.detail-header{display:flex;flex-direction:column;gap:1.5rem}.back-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-main);font-weight:700;cursor:pointer;padding:0;width:fit-content}.back-btn:hover{color:var(--primary)}.detail-title-section{display:flex;flex-direction:column;gap:.5rem}.category-badge{background:var(--accent);color:var(--text-main);font-weight:800;font-size:.8rem;padding:.2rem .75rem;border:2px solid var(--border);border-radius:4px;width:fit-content}.detail-tabs{display:flex;gap:1rem;border-bottom:2px solid var(--border)}.tab{padding:1rem 1.5rem;background:none;border:none;font-family:var(--font-heading);font-weight:700;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;border-bottom:4px solid transparent;transition:all .2s;color:var(--text-muted)}.tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-content{background:var(--surface);border:var(--brutal-border) solid var(--border);padding:2rem;border-radius:var(--brutal-radius);box-shadow:var(--brutal-shadow) var(--border);min-height:400px}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.items-list{display:flex;flex-direction:column;gap:1.5rem}.item-card{background:var(--bg-color);border:2px solid var(--border);padding:1.25rem;border-radius:var(--brutal-radius);transition:all .2s}.item-card:hover{transform:translate(4px);border-color:var(--primary)}.item-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.item-card-header h4{font-family:var(--font-heading);font-weight:800;font-size:1.1rem}.item-actions{display:flex;align-items:center;gap:1rem}.item-date{font-size:.8rem;font-weight:700;color:var(--text-muted)}.file-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--primary);text-decoration:none;font-weight:700;padding:.5rem 1rem;background:var(--primary-light);border:2px solid var(--border);border-radius:var(--brutal-radius);transition:all .2s}.file-link:hover{transform:translate(-2px,-2px);box-shadow:3px 3px 0 0 var(--border)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:var(--surface);border:var(--brutal-border) solid var(--border);padding:2.5rem;border-radius:var(--brutal-radius);box-shadow:10px 10px 0 0 var(--border);width:100%;max-width:500px;animation:modalPop .3s cubic-bezier(.175,.885,.32,1.275)}@keyframes modalPop{0%{transform:scale(.9) translateY(20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:800;font-size:.9rem;margin-bottom:.5rem;text-transform:uppercase}.form-group input,.form-group textarea{width:100%;padding:.8rem 1rem;border:2px solid var(--border);border-radius:var(--brutal-radius);font-family:inherit;font-size:1rem;outline:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:3px 3px 0 0 var(--primary-light)}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.btn-ghost{background:none;border:none;color:var(--text-muted);font-weight:700;cursor:pointer}.btn-ghost:hover{color:var(--text-main)}
