*{box-sizing:border-box}h1,h2{font-family:Trebuchet MS,sans-serif}body{margin:0;font-family:Arial,sans-serif;overflow-x:hidden}html,body,#root{min-height:100%}body{color:#1f1f1f;background:#f3efe7}body.dark{color:#e8e6df;background:#1f1f1f}.pageLoading{background:inherit;min-height:100vh;color:inherit;text-align:center;align-items:center;padding:3rem}.page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.dark .page{color:#e8e6df;background:#1f1f1f}.dark .moduleCard{background:#2a2a2a}.dark .itemCard{background:#33322e}.dark .modalCard{background:#2a2a2a}.dark input,.dark textarea{color:#e8e6df;background:#2a2a2a;border:1px solid #444}.dark button{color:#e8e6df;background:#3a3935}.dark .cardLike{background:#2a2a2a}.dark .textButton{color:#e8e6df;background:#ffffff14}.headerLogo{max-width:60px;margin-right:15px}.loginPage{color:#1f1f1f;background:#f3efe7;justify-content:center;align-items:center;gap:40px;min-height:100vh;padding:32px 20px;animation:.6s both fadeIn;display:flex}.loginIntro{max-width:420px}.loginLogo{width:72px;height:auto;margin-bottom:20px}.loginIntro h1{margin:0 0 16px;font-size:clamp(2.2rem,5vw,4rem);line-height:1.05}.loginIntro p{opacity:.78;max-width:360px;margin:0;line-height:1.7}.loginCard{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff8c;border-radius:24px;width:min(100%,390px);padding:28px;box-shadow:0 18px 50px #00000014}.loginCard h2{margin:0 0 8px}.loginSmallText{opacity:.7;margin:0 0 22px;line-height:1.5}.loginForm{flex-direction:column;gap:12px;display:flex}.loginForm input{box-sizing:border-box;width:100%;color:inherit;background:#ffffffd9;border:none;border-radius:14px;outline:none;padding:13px 14px;font-family:inherit;font-size:16px}.loginForm input:focus{box-shadow:0 0 0 2px #2828281f}.loginForm button{margin-top:8px}.loginError{color:#8a3a2f;margin:16px 0 0;line-height:1.4}.loginSwitchButton{box-shadow:none;opacity:.75;background:0 0;margin-top:18px;padding:0;text-decoration:underline}.loginSwitchButton:hover{opacity:1}.dark .loginPage,body.dark .loginPage{color:#e8e6df;background:#1f1f1f}.dark .loginCard,body.dark .loginCard{background:#ffffff0f;box-shadow:0 18px 50px #00000040}.dark .loginForm input,body.dark .loginForm input{color:#e8e6df;background:#ffffff17}.dark .loginForm input::placeholder,body.dark .loginForm input::placeholder{color:#e8e6df8c}@media (width<=760px){.loginPage{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:28px;padding-top:44px}.loginIntro,.loginIntro p{max-width:100%}.loginCard{width:100%;padding:24px}}.card{background:#fff;border-radius:16px;width:100%;max-width:420px;padding:24px;box-shadow:0 8px 30px #00000014}.form{flex-direction:column;gap:12px;margin:16px 0;display:flex}input,button{font:inherit;color:inherit;border-radius:10px;padding:12px 14px;font-family:inherit}input{border:1px solid #ccc}input[type=checkbox]{accent-color:#555}.dark input[type=checkbox]{accent-color:#e8e3d8}button{cursor:pointer;color:inherit;appearance:none;background:#d6d3cd;border:none;font-family:inherit}.pageTop{align-items:flex-start}.topBar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;display:flex}.topBar h1{font-family:Trebuchet MS,sans-serif;font-size:1em;font-weight:400}.logoWrapper{flex-direction:row;align-items:center;display:flex}.topActions{margin-bottom:20px}.textButton{color:#1f1f1f;background:#0000000f;border-radius:10px;align-items:center;padding:10px 14px;text-decoration:none;display:inline-flex}a,a:visited{color:inherit;text-decoration:none}.cardLike{background:#fff;border-radius:16px;max-width:760px;padding:20px;box-shadow:0 8px 30px #0000000f}.settingsList{gap:16px;display:grid}.settingsRow{justify-content:space-between;align-items:center;display:flex}.libraryActions{margin-top:16px}.modulesGrid{scroll-snap-type:x proximity;cursor:grab;gap:16px;padding-bottom:8px;display:flex;overflow:auto hidden}.modulesGrid:active{cursor:grabbing}.modulesGrid::-webkit-scrollbar{height:10px}.moduleCard{scroll-snap-align:start;background:#fff;border-radius:16px;flex:0 0 320px;min-height:260px;padding:16px;box-shadow:0 8px 30px #0000000f}.moduleBottomActions{justify-content:right;margin:25px 0 15px;display:flex}.moduleBottomActions button{justify-content:center;align-items:center;padding:5px 12px 5px 10px;font-size:1.5em;display:flex}.buttonWrapper{justify-content:space-between;display:flex}.contentWrap{width:100%;max-width:100%}.pageTop{justify-content:flex-start;align-items:flex-start}.itemCard{background:#f7f4ef;border-radius:12px;margin-top:12px;padding:12px}.itemCard h3{margin-top:0;margin-bottom:8px;font-size:1rem}.itemCard p{white-space:pre-wrap;margin:0;line-height:1.6}.addForm{background:#fff;border-radius:16px;gap:14px;margin-bottom:24px;padding:16px;display:grid;box-shadow:0 8px 30px #0000000f}.addForm label{gap:6px;font-weight:600;display:grid}.addForm input,.addForm select,.addForm textarea{width:100%;font:inherit;border:1px solid #ccc;border-radius:10px;padding:12px 14px}.addForm textarea{resize:vertical;resize:vertical;line-height:1.6}.fieldRow{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.charCount{opacity:.55;font-size:.75rem}.topActions,.addForm{max-width:900px}.itemActions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.itemActions button{border-radius:8px;padding:8px 12px}.editForm{gap:10px;display:grid}.editForm input,.editForm textarea{width:100%;font:inherit;border:1px solid #ccc;border-radius:10px;padding:10px 12px}.editForm textarea{resize:vertical;line-height:1.6}.moduleHeader{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.moduleCount{opacity:.7;font-size:.9rem}.previewCard{flex-direction:column;justify-content:flex-start;min-height:150px;display:flex}.previewCard p{-webkit-line-clamp:7;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sliderActions{justify-content:space-between;gap:8px;margin-top:12px;display:flex}.sliderActions button{flex:1}.modulesVisible{animation:.9s cubic-bezier(.16,1,.3,1) both modulesFadeIn}@keyframes modulesFadeIn{0%{opacity:0;filter:blur(5px);transform:translateY(22px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.modalOverlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#ffffffbf;justify-content:center;align-items:center;padding:20px;animation:.35s overlayFadeIn;display:flex;position:fixed;inset:0}.dark .modalOverlay{background:#0a0a0abf}@keyframes overlayFadeIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modalCard{background:#fff;border-radius:18px;width:100%;max-width:760px;max-height:90vh;padding:24px;animation:.35s cubic-bezier(.22,1,.36,1) modalSlideIn;overflow:auto;box-shadow:0 12px 40px #0000002e}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.modalTop{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.modalTop h2{margin:0}.modalBodyText p{white-space:pre-wrap;margin:0;line-height:1.7}.modalActions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.modulesGrid{-webkit-overflow-scrolling:touch;gap:16px;padding-bottom:8px;display:flex;overflow:auto hidden}.moduleCard{background:#fff;border-radius:16px;flex:0 0 85%;max-width:85%;min-height:260px;padding:16px;animation:.7s cubic-bezier(.16,1,.3,1) both cardFadeIn;box-shadow:0 8px 30px #0000000f}@keyframes cardFadeIn{0%{opacity:0;filter:blur(4px);transform:translateY(16px)scale(.98)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.infoModalOverlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#ffffffa6;justify-content:center;align-items:center;padding:24px;animation:.3s infoModalOverlayFadeIn;display:flex;position:fixed;inset:0}.dark .infoModalOverlay{background:#00000073}.infoModal{background:#ffffffc2;border-radius:22px;width:min(560px,100%);max-height:85vh;padding:28px 28px 24px;animation:.35s infoModalFadeIn;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000059}.dark .infoModal{background:#1e1e20f5}.infoModal h2{margin:0 0 12px;font-size:2rem}.infoModal h3{margin:24px 0 8px;font-size:1.2rem}.infoModalDescription,.infoModalPurpose,.infoModalExampleText{white-space:pre-line;margin:0;line-height:1.7}.infoModalDescription{opacity:.9}.infoModalPurpose{opacity:.88}.infoModalExampleText{background:#78505014;border-left:3px solid #0003;border-radius:14px;margin-top:4px;padding:16px 18px;font-style:italic}.dark .infoModalExampleText{background:#ffffff0a;border-left:3px solid #ffffff26}.infoModalCloseButton{border-radius:12px;width:40px;height:40px;padding:0;font-size:1.4rem;line-height:1;position:absolute;top:16px;right:16px}@keyframes infoModalOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes infoModalFadeIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.confirmCard{text-align:center;max-width:420px}.confirmBody{text-align:left;margin:16px 0 8px}.modalActions .primary{color:#fff;background:#6b6a66}.dark .modalActions .primary{background:#8a897f}.topActionsInline{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.topActionsButton{min-width:55px;min-height:55px}.libraryWrapper{animation:.55s both fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.libraryGrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:stretch;gap:16px;margin-top:20px;display:grid}.libraryCard{background:#fff;border-radius:16px;flex-direction:column;gap:14px;min-height:220px;padding:18px;animation:.55s both libraryCardFadeIn;display:flex;box-shadow:0 8px 30px #0000000f}@keyframes libraryCardFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.libraryCardTop{justify-content:space-between;align-items:center;gap:12px;display:flex}.libraryCardTop h3{margin:0}.libraryCard h3{margin-top:0}.libraryCard p{line-height:1.5}.libraryCard button:disabled{opacity:.5;cursor:default}.dark .libraryCard{background:#2a2a2a}.infoButton{opacity:.75;border-radius:10px;flex-shrink:0;width:34px;min-width:34px;height:34px;padding:0}.libraryDescription{opacity:.85;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.libraryMeta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;display:flex}.moduleStatus,.itemCount{opacity:.9;border-radius:999px;align-items:center;width:fit-content;padding:6px 10px;font-size:13px;line-height:1;display:inline-flex}.moduleStatus.active{background:#5a825a29}.moduleStatus.hidden{background:#96825a29}.moduleStatus.inactive{background:#78787824}.itemCount{opacity:.75;background:#7878781f}.libraryActionButton{border-radius:10px;align-self:flex-start;margin-top:2px;padding:10px 14px}@media (width>=700px){.headerLogo{max-width:150px}.topBar h1{font-size:2em}.modulesGrid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;max-width:1600px;margin:auto;padding-bottom:0;display:grid;overflow:visible}.moduleCard{flex:unset;max-width:none;min-height:280px}}@media (width<=760px){.loginPage{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:28px;padding-top:44px}.loginIntro,.loginIntro p{max-width:100%}.loginCard{width:100%;padding:24px}}.youtubeEmbedWrap{aspect-ratio:16/9;background:#00000014;border-radius:16px;width:100%;margin-top:12px;position:relative;overflow:hidden}.youtubeEmbedWrap iframe{border:0;width:100%;height:100%}.moduleBottomActions button:disabled{opacity:.5;cursor:default}.boxLimitHint{opacity:.55;text-align:right;margin:10px 16px 0 0;font-size:.8rem}.mediaEmbedWrap{border-radius:10px;width:100%;max-width:660px;margin:0 auto;overflow:hidden}.mediaEmbedWrap iframe{border:0;border-radius:10px;width:100%;max-width:100%}.calmClipPoster{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.45rem;width:100%;min-height:140px;padding:1.5rem 1rem;display:flex}.calmClipPoster h3{margin:0;font-size:1.05rem;font-weight:600}.calmClipType{opacity:.6;text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:.75rem}.calmClipDescription{opacity:.75;max-width:34rem;margin:0;font-size:.9rem}.fieldHint,.formHint{opacity:.65;margin-top:.35rem;font-size:.8rem}.onboarding{max-width:600px;padding:0 50px}.onboardingInner{max-width:520px}.onboarding h1{margin-bottom:16px}.onboarding p{max-width:480px;margin-bottom:24px;line-height:1.7}.onboarding h2{margin-top:32px;margin-bottom:12px}.subtle{opacity:.7;font-weight:400}.onboarding button{color:#faf9f8;background:#1f1f1f;border-radius:10px;margin-top:8px;padding:14px 24px;font-size:1.1em;font-weight:500;transition:all .2s}.dark .onboarding button{color:#141414;background:#d6d3cd}.onboarding button:hover{opacity:.95;background:#353434;transform:translateY(-1px)}.dark .onboarding button:hover{opacity:.95;background:#afadaa;transform:translateY(-1px)}.miniFormWrapper{flex-direction:column;display:flex}.miniFormWrapper label{margin:20px 5px}.miniFormWrapper input{margin:0 12px}.miniFormWrapper button{max-width:220px}.checkboxRow{opacity:.8;margin:16px 0 22px;font-size:14px}.helperText{opacity:.6;margin-top:16px;font-size:13px}.onboarding{animation:.6s fadeIn}.onboardingExit{animation:.5s both fadeOut}@keyframes fadeOut{0%{opacity:1;filter:blur();transform:translateY(0)}to{opacity:0;filter:blur(4px);transform:translateY(-8px)}}@media (width<=700px){.onboarding{max-width:100%;padding:0 10px}}
