@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}}.rdp-root{--rdp-accent-color:blue;--rdp-accent-background-color:#f0f0ff;--rdp-day-height:44px;--rdp-day-width:44px;--rdp-day_button-border-radius:100%;--rdp-day_button-border:2px solid transparent;--rdp-day_button-height:42px;--rdp-day_button-width:42px;--rdp-selected-border:2px solid var(--rdp-accent-color);--rdp-disabled-opacity:.5;--rdp-outside-opacity:.75;--rdp-today-color:var(--rdp-accent-color);--rdp-dropdown-gap:.5rem;--rdp-months-gap:2rem;--rdp-nav_button-disabled-opacity:.5;--rdp-nav_button-height:2.25rem;--rdp-nav_button-width:2.25rem;--rdp-nav-height:2.75rem;--rdp-range_middle-background-color:var(--rdp-accent-background-color);--rdp-range_middle-color:inherit;--rdp-range_start-color:white;--rdp-range_start-background:linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%);--rdp-range_start-date-background-color:var(--rdp-accent-color);--rdp-range_end-background:linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%);--rdp-range_end-color:white;--rdp-range_end-date-background-color:var(--rdp-accent-color);--rdp-week_number-border-radius:100%;--rdp-week_number-border:2px solid transparent;--rdp-week_number-height:var(--rdp-day-height);--rdp-week_number-opacity:.75;--rdp-week_number-width:var(--rdp-day-width);--rdp-weeknumber-text-align:center;--rdp-weekday-opacity:.75;--rdp-weekday-padding:.5rem 0rem;--rdp-weekday-text-align:center;--rdp-gradient-direction:90deg;--rdp-animation_duration:.3s;--rdp-animation_timing:cubic-bezier(.4, 0, .2, 1)}.rdp-root[dir=rtl]{--rdp-gradient-direction:-90deg}.rdp-root[data-broadcast-calendar=true]{--rdp-outside-opacity:unset}.rdp-root{box-sizing:border-box;position:relative}.rdp-root *{box-sizing:border-box}.rdp-day{width:var(--rdp-day-width);height:var(--rdp-day-height);text-align:center}.rdp-day_button{cursor:pointer;font:inherit;color:inherit;width:var(--rdp-day_button-width);height:var(--rdp-day_button-height);border:var(--rdp-day_button-border);border-radius:var(--rdp-day_button-border-radius);background:0 0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.rdp-day_button:disabled{cursor:revert}.rdp-caption_label{z-index:1;white-space:nowrap;border:0;align-items:center;display:inline-flex;position:relative}.rdp-dropdown:focus-visible~.rdp-caption_label{outline:5px auto highlight;outline:5px auto -webkit-focus-ring-color}.rdp-button_next,.rdp-button_previous{cursor:pointer;font:inherit;color:inherit;appearance:none;width:var(--rdp-nav_button-width);height:var(--rdp-nav_button-height);background:0 0;border:none;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex;position:relative}.rdp-button_next:disabled,.rdp-button_next[aria-disabled=true],.rdp-button_previous:disabled,.rdp-button_previous[aria-disabled=true]{cursor:revert;opacity:var(--rdp-nav_button-disabled-opacity)}.rdp-chevron{fill:var(--rdp-accent-color);display:inline-block}.rdp-root[dir=rtl] .rdp-nav .rdp-chevron{transform-origin:50%;transform:rotate(180deg)}.rdp-dropdowns{align-items:center;gap:var(--rdp-dropdown-gap);display:inline-flex;position:relative}.rdp-dropdown{z-index:2;opacity:0;appearance:none;width:100%;cursor:inherit;line-height:inherit;border:none;margin:0;padding:0;position:absolute;inset-block:0;inset-inline-start:0}.rdp-dropdown_root{align-items:center;display:inline-flex;position:relative}.rdp-dropdown_root[data-disabled=true] .rdp-chevron{opacity:var(--rdp-disabled-opacity)}.rdp-month_caption{height:var(--rdp-nav-height);align-content:center;font-size:large;font-weight:700;display:flex}.rdp-root[data-nav-layout=around] .rdp-month,.rdp-root[data-nav-layout=after] .rdp-month{position:relative}.rdp-root[data-nav-layout=around] .rdp-month_caption{justify-content:center;margin-inline-start:var(--rdp-nav_button-width);margin-inline-end:var(--rdp-nav_button-width);position:relative}.rdp-root[data-nav-layout=around] .rdp-button_previous{height:var(--rdp-nav-height);inset-inline-start:0;display:inline-flex;position:absolute;top:0}.rdp-root[data-nav-layout=around] .rdp-button_next{height:var(--rdp-nav-height);inset-inline-end:0;justify-content:center;display:inline-flex;position:absolute;top:0}.rdp-months{gap:var(--rdp-months-gap);flex-wrap:wrap;max-width:fit-content;display:flex;position:relative}.rdp-month_grid{border-collapse:collapse}.rdp-nav{height:var(--rdp-nav-height);align-items:center;display:flex;position:absolute;inset-block-start:0;inset-inline-end:0}.rdp-weekday{opacity:var(--rdp-weekday-opacity);padding:var(--rdp-weekday-padding);text-align:var(--rdp-weekday-text-align);text-transform:var(--rdp-weekday-text-transform);font-size:smaller;font-weight:500}.rdp-week_number{opacity:var(--rdp-week_number-opacity);height:var(--rdp-week_number-height);width:var(--rdp-week_number-width);border:var(--rdp-week_number-border);border-radius:var(--rdp-week_number-border-radius);text-align:var(--rdp-weeknumber-text-align);font-size:small;font-weight:400}.rdp-today:not(.rdp-outside){color:var(--rdp-today-color)}.rdp-selected{font-size:large;font-weight:700}.rdp-selected .rdp-day_button{border:var(--rdp-selected-border)}.rdp-outside{opacity:var(--rdp-outside-opacity)}.rdp-disabled:not(.rdp-selected){opacity:var(--rdp-disabled-opacity)}.rdp-hidden{visibility:hidden;color:var(--rdp-range_start-color)}.rdp-range_start{background:var(--rdp-range_start-background)}.rdp-range_start .rdp-day_button{background-color:var(--rdp-range_start-date-background-color);color:var(--rdp-range_start-color)}.rdp-range_middle{background-color:var(--rdp-range_middle-background-color)}.rdp-range_middle .rdp-day_button{border:unset;border-radius:unset;color:var(--rdp-range_middle-color)}.rdp-range_end{background:var(--rdp-range_end-background);color:var(--rdp-range_end-color)}.rdp-range_end .rdp-day_button{color:var(--rdp-range_start-color);background-color:var(--rdp-range_end-date-background-color)}.rdp-range_start.rdp-range_end{background:revert}.rdp-focusable{cursor:pointer}@keyframes rdp-slide_in_left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes rdp-slide_in_right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rdp-slide_out_left{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes rdp-slide_out_right{0%{transform:translate(0)}to{transform:translate(100%)}}.rdp-weeks_before_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_before_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-weeks_after_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_enter{animation:rdp-slide_in_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_exit{animation:rdp-slide_out_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_before_enter{animation:rdp-slide_in_right var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-root[dir=rtl] .rdp-weeks_after_exit{animation:rdp-slide_out_left var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}@keyframes rdp-fade_in{0%{opacity:0}to{opacity:1}}@keyframes rdp-fade_out{0%{opacity:1}to{opacity:0}}.rdp-caption_after_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_after_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_enter{animation:rdp-fade_in var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}.rdp-caption_before_exit{animation:rdp-fade_out var(--rdp-animation_duration) var(--rdp-animation_timing) forwards}body{-webkit-font-smoothing:antialiased;font-family:Arial,Helvetica,sans-serif}.auth-page{background:#f5f5f3;justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-wrapper{flex-direction:column;align-items:center;gap:32px;width:100%;max-width:440px;display:flex}.auth-logo-link{display:inline-block}.auth-logo{height:36px}.auth-card{background:#fff;border-radius:16px;width:100%;padding:40px 36px;box-shadow:0 2px 16px #00000014}.auth-step{flex-direction:column;gap:20px;display:flex}.auth-title{color:#111;margin:0;font-size:24px;font-weight:700}.auth-subtitle{color:#555;margin:0;font-size:15px;line-height:1.5}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-label{color:#333;font-size:13px;font-weight:600}.auth-input{color:#111;box-sizing:border-box;background:#fafafa;border:1.5px solid #ddd;border-radius:10px;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;transition:border-color .15s}.auth-input:focus{background:#fff;border-color:#111;outline:none}.auth-input--otp{letter-spacing:10px;text-align:center;font-size:24px}.auth-error{color:#c0392b;background:#fdf0ee;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.auth-btn{color:#fff;cursor:pointer;text-align:center;background:#111;border:none;border-radius:10px;width:100%;padding:14px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;transition:background .15s;display:block}.auth-btn:hover{background:#333}.auth-btn:disabled{cursor:default;background:#999}.auth-btn--outline{color:#111;background:0 0;border:1.5px solid #111}.auth-btn--outline:hover{background:#f0f0f0}.auth-footer-text{color:#666;text-align:center;margin:0;font-size:14px}.auth-link{color:#111;font-weight:600;text-decoration:underline}.auth-link-btn{color:#111;cursor:pointer;text-align:center;background:0 0;border:none;padding:0;font-family:inherit;font-size:14px;text-decoration:underline}.auth-icon{text-align:center;font-size:40px}.admin-page{background:#f5f5f3;min-height:100vh}.admin-layout{min-height:100vh;display:flex}.admin-sidebar{background:#111;flex-direction:column;flex-shrink:0;gap:32px;width:220px;min-height:100vh;padding:28px 20px;display:flex}.admin-logo-link{display:inline-block}.admin-logo{filter:invert();height:28px}.admin-nav{flex-direction:column;flex:1;gap:4px;display:flex}.admin-nav-item{color:#aaa;border-radius:8px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:block}.admin-nav-item:hover,.admin-nav-item--active{color:#fff;background:#ffffff1a}.admin-logout-btn{color:#aaa;cursor:pointer;text-align:left;background:0 0;border:1px solid #fff3;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .15s,color .15s}.admin-logout-btn:hover{color:#fff;border-color:#fff}.admin-main{flex-direction:column;flex:1;gap:24px;padding:32px 36px;display:flex;overflow-x:auto}.admin-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-header-actions{align-items:center;gap:12px;display:flex}.admin-page-title{color:#111;margin:0;font-size:24px;font-weight:700}.admin-user-badge{color:#fff;background:#555;border-radius:100px;padding:3px 10px;font-size:12px;font-weight:600}.admin-btn{color:#fff;cursor:pointer;background:#111;border:none;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s}.admin-btn:hover{background:#333}.admin-btn:disabled{cursor:default;background:#999}.admin-btn--outline{color:#111;background:0 0;border:1.5px solid #ddd}.admin-btn--outline:hover{border-color:#111}.admin-btn--secondary{color:#333;background:#f5f5f5;border:none}.admin-btn--secondary:hover{background:#e8e8e8}.admin-form-group{flex-direction:column;gap:6px;margin-top:16px;display:flex}.admin-form-label{color:#444;font-size:13px;font-weight:600}.admin-error{color:#c0392b;margin-top:8px;font-size:13px}.admin-action-btn--danger{color:#c0392b;background:#fde8e8}.admin-btn--danger{color:#fff;background:#c0392b}.admin-btn--danger:hover{background:#a93226}.admin-input{color:#111;box-sizing:border-box;background:#fafafa;border:1.5px solid #ddd;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:15px;transition:border-color .15s}.admin-input:focus{background:#fff;border-color:#111;outline:none}.admin-input:disabled{color:#555;cursor:not-allowed;background:#f5f5f3}.admin-tabs{flex-wrap:wrap;gap:8px;display:flex}.admin-tab{cursor:pointer;color:#555;background:#fff;border:1.5px solid #ddd;border-radius:100px;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s,border-color .15s,color .15s}.admin-tab:hover{color:#111;border-color:#111}.admin-tab--active{color:#fff;background:#111;border-color:#111}.admin-table{border-collapse:collapse;background:#fff;border:1px solid #e8e8e8;border-radius:12px;width:100%;font-size:14px;overflow:hidden}.admin-table thead{background:#f7f7f5}.admin-table th{text-align:left;color:#888;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-bottom:1px solid #e8e8e8;padding:12px 16px;font-size:12px;font-weight:600}.admin-table td{color:#222;vertical-align:middle;border-bottom:1px solid #f0f0f0;padding:14px 16px}.admin-table tr:last-child td{border-bottom:none}.admin-table-empty{text-align:center;color:#999;padding:40px!important}.admin-verified{color:#27ae60;font-weight:700}.admin-unverified{color:#bbb}.admin-status{border-radius:100px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.admin-status--pending{color:#856404;background:#fff3cd}.admin-status--approved{color:#155724;background:#d1f5e0}.admin-status--declined{color:#842029;background:#fde8e8}.admin-actions{flex-wrap:wrap;gap:6px;display:flex}.admin-action-btn{cursor:pointer;border:none;border-radius:7px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;text-decoration:none;transition:opacity .15s;display:inline-block}.admin-action-btn:hover{opacity:.8}.admin-action-btn:not([class*=--]){color:#333;background:#f0f0ef}.admin-action-btn--approve{color:#fff;background:#111}.admin-action-btn--decline{color:#842029;background:#fde8e8}.admin-action-btn--role{color:#1a56db;background:#e8f0fe}.admin-action-btn--delete{color:#c0392b;background:#fde8e8}.admin-pagination{justify-content:center;align-items:center;gap:16px;display:flex}.admin-pagination-btn{color:#111;cursor:pointer;background:#fff;border:1.5px solid #ddd;border-radius:8px;padding:8px 18px;font-family:inherit;font-size:14px;transition:border-color .15s}.admin-pagination-btn:hover:not(:disabled){border-color:#111}.admin-pagination-btn:disabled{color:#888;cursor:default}.admin-pagination-info{color:#333;font-size:14px}.admin-modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.admin-modal{background:#fff;border-radius:14px;flex-direction:column;gap:20px;width:100%;max-width:380px;padding:32px;display:flex}.admin-modal--wide{max-width:680px;max-height:90vh;overflow-y:auto}.admin-modal-title{color:#111;margin:0;font-size:20px;font-weight:700}.admin-modal-text{color:#444;margin:0;font-size:15px}.admin-field{flex-direction:column;gap:6px;display:flex}.admin-label{color:#333;font-size:13px;font-weight:600}.admin-select{color:#111;background:#fafafa;border:1.5px solid #ddd;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:15px}.admin-select:focus{border-color:#111;outline:none}.admin-modal-actions{gap:12px;display:flex}.admin-modal-actions .auth-btn,.admin-modal-actions .admin-btn{flex:1}.admin-toast{color:#fff;z-index:2000;pointer-events:none;background:#111;border-radius:8px;padding:12px 24px;font-size:14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.admin-toast--error{background:#c0392b}.profile-page-wrap{grid-template-columns:220px 1fr;align-items:start;gap:32px;padding:24px 32px;display:grid}.profile-avatar-col{flex-direction:column;align-items:center;gap:16px;display:flex}.profile-avatar-wrap{background:#e8e8e4;border:3px solid #d4d4ce;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative;overflow:hidden}.profile-avatar-wrap--clickable{cursor:pointer}.profile-avatar-wrap--clickable:hover .profile-avatar-overlay{opacity:1}.profile-avatar-overlay{opacity:0;background:#00000073;border-radius:50%;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:absolute;inset:0}.profile-avatar-overlay svg{color:#fff;width:32px;height:32px}.profile-avatar-img{object-fit:cover;width:100%;height:100%}.profile-avatar-initials{color:#6b6b5e;-webkit-user-select:none;user-select:none;font-size:2.2rem;font-weight:700}.profile-photo-btn{cursor:pointer;text-align:center;width:100%;font-size:.85rem}.profile-field-hint{color:#888;margin:2px 0 8px;font-size:.78rem}.sidebar-lang{position:relative}.sidebar-lang-btn{color:#aaa;cursor:pointer;text-align:left;background:0 0;border:1px solid #fff3;border-radius:8px;align-items:center;gap:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;transition:border-color .15s,color .15s;display:flex}.sidebar-lang-btn:hover{color:#fff;border-color:#ffffff80}.sidebar-lang-btn span{flex:1}.sidebar-lang-chevron{transition:transform .2s}.sidebar-lang-btn[aria-expanded=true] .sidebar-lang-chevron{transform:rotate(180deg)}.sidebar-lang-menu{z-index:200;background:#fff;border-radius:8px;animation:.15s sidebar-lang-in;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow:hidden;box-shadow:0 3px 6px -4px #0000007a,0 6px 16px #00000052,0 9px 28px 8px #0003}@keyframes sidebar-lang-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.sidebar-lang-option{color:#212121;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;transition:background .1s;display:flex}.sidebar-lang-option:hover{background:#0000000f}.sidebar-lang-option--active{font-weight:600}.profile-preset-grid{grid-template-columns:repeat(6,1fr);gap:12px;display:grid}.profile-preset-item{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:50%;padding:2px;transition:border-color .15s}.profile-preset-item:hover{border-color:#b0b0a8}.profile-preset-item--active{border-color:#1a1a1a}.profile-preset-item img{border-radius:50%;width:100%;display:block}.ap-modal{max-width:460px}.ap-current-avatar{justify-content:center;display:flex}.ap-modal .admin-tabs{justify-content:center}.ap-current-avatar .profile-avatar-wrap{width:200px;height:200px}.ap-current-avatar .profile-avatar-initials{font-size:3.8rem}.ap-header{justify-content:space-between;align-items:center;display:flex;position:relative}.ap-header .admin-modal-title{pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.ap-close{cursor:pointer;color:#555;background:0 0;border:1.5px solid #ddd;border-radius:8px;justify-content:center;align-items:center;padding:6px;transition:border-color .15s,color .15s;display:flex}.ap-close:hover{color:#111;border-color:#111}.ap-close svg{width:16px;height:16px}.ap-upload-zone{cursor:pointer;background:#fafafa;border:1.5px dashed #ddd;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:36px 20px;transition:border-color .15s,background .15s;display:flex}.ap-upload-zone:hover{background:#fff;border-color:#111}.ap-upload-icon{color:#aaa;width:36px;height:36px}.ap-upload-text{color:#333;margin:0;font-size:14px;font-weight:600}.ap-upload-hint{color:#999;margin:0;font-size:12px}.ap-camera{flex-direction:column;align-items:center;gap:16px;display:flex}.ap-camera-video{aspect-ratio:4/3;object-fit:cover;background:#111;border-radius:8px;width:100%}.ap-capture-btn{align-items:center;gap:8px;display:flex}.ap-capture-btn svg{width:17px;height:17px}.ap-camera-error{color:#c0392b;text-align:center;margin:0;padding:20px 0;font-size:14px}.profile-readonly-block{background:#f5f5f3;border-radius:10px;flex-direction:column;gap:10px;margin-bottom:24px;padding:16px 20px;display:flex}.profile-field{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.profile-field-label{color:#888;white-space:nowrap;flex-shrink:0;font-size:.78rem}.profile-field-value{color:#1a1a1a;text-align:right;word-break:break-all;font-size:.9rem;font-weight:500}.profile-form{flex-direction:column;gap:16px;display:flex}.profile-form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.profile-form-group{flex-direction:column;gap:6px;display:flex}.profile-optional{color:#aaa;font-size:.75rem;font-weight:400}.profile-bio{resize:vertical;min-height:80px}.profile-form-actions{padding-top:8px}.profile-crop-modal{width:90vw;max-width:480px}@media (max-width:700px){.profile-page-wrap{grid-template-columns:1fr;padding:16px}.profile-avatar-col{flex-flow:wrap;justify-content:center}.profile-form-row{grid-template-columns:1fr}}.admin-content{flex-direction:column;gap:20px;display:flex}.dash-content{flex-direction:column;gap:32px;display:flex}.dash-section{flex-direction:column;gap:16px;display:flex}.dash-section-title{color:#111;border-bottom:2px solid #e8e8e8;margin:0;padding-bottom:8px;font-size:18px;font-weight:700}.dash-subsection-title{color:#333;margin:0;font-size:15px;font-weight:600}.dash-placeholder-card{text-align:center;background:#fff;border:1px dashed #ddd;border-radius:12px;padding:32px 24px}.dash-placeholder-text{color:#888;margin:0;font-size:14px;line-height:1.6}.dash-stats-row{flex-wrap:wrap;gap:16px;display:flex}.dash-stat-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;flex-direction:column;flex:140px;gap:6px;min-width:120px;padding:20px 16px;display:flex}.dash-stat-card--alert{background:#fff3cd;border-color:#856404}.dash-stat-card--alert .dash-stat-value,.dash-stat-card--alert .dash-stat-label{color:#856404}.dash-stat-value{color:#111;font-size:28px;font-weight:700;line-height:1}.dash-stat-label{color:#666;font-size:13px;font-weight:500}.dash-pending-section{background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden}.dash-pending-header{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.dash-pending-list{flex-direction:column;display:flex}.dash-pending-item{border-bottom:1px solid #f5f5f5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.dash-pending-item:last-child{border-bottom:none}.dash-pending-item-info{flex-direction:column;gap:2px;min-width:0;display:flex}.dash-pending-item-name{color:#111;font-size:14px;font-weight:600}.dash-pending-item-email{color:#666;font-size:13px}.dash-pending-item-date{color:#aaa;font-size:12px}.dash-pending-item-actions{flex-shrink:0;gap:8px;display:flex}.dash-pending-more{color:#666;text-align:center;border-top:1px solid #f0f0f0;margin:0;padding:12px 20px;font-size:13px}.dash-link-btn{color:#111;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600;text-decoration:underline}.dash-link-btn:hover{color:#555}.dash-profile-card{background:#fff;border:1px solid #e8e8e8;border-radius:12px;flex-wrap:wrap;align-items:center;gap:20px;padding:24px 20px;display:flex}.dash-profile-avatar{color:#fff;background:#111;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:20px;font-weight:700;display:flex}.dash-profile-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.dash-profile-name{color:#111;margin:0;font-size:18px;font-weight:700}.dash-profile-email{color:#555;margin:0;font-size:14px}.dash-profile-meta{color:#aaa;margin:0;font-size:13px}@media (max-width:768px){.dash-stats-row{flex-direction:column}.dash-pending-item{flex-direction:column;align-items:flex-start}}.dp-root{position:relative}.dp-trigger{cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.dp-trigger--disabled{cursor:default}.dp-placeholder{color:#aaa}.dp-value{color:#111}.dp-icon{color:#666;flex-shrink:0;width:18px;height:18px}.dp-popover{z-index:200;--rdp-accent-color:#111;--rdp-accent-color-dark:#333;--rdp-background-color:#f0f0ef;--rdp-day-height:38px;--rdp-day-width:38px;--rdp-day_button-height:36px;--rdp-day_button-width:36px;--rdp-day_button-border-radius:50%;--rdp-selected-border:none;--rdp-font-family:inherit;background:#fff;border-radius:16px;min-width:300px;padding:12px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 32px #0000002e,0 2px 8px #00000014}.library-page{max-width:1200px;margin:0 auto;padding:2rem}.library-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.library-toolbar h1{margin:0;font-size:1.5rem;font-weight:700}.library-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;display:flex}.empty-state__icon{font-size:3rem;line-height:1}.empty-state__title{color:#111;margin:0;font-size:1.25rem;font-weight:600}.empty-state__hint{color:#666;max-width:360px;margin:0;font-size:.9rem;line-height:1.5}.course-card{cursor:pointer;color:inherit;background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex;overflow:hidden}.course-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.course-card__cover{object-fit:cover;background:linear-gradient(135deg,#e8e8e8,#d4d4d4);flex-shrink:0;width:100%;height:160px;display:block}.course-card__cover--placeholder{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.course-card__body{flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex}.course-card__badges{flex-wrap:wrap;gap:.375rem;display:flex}.course-card__title{color:#111;margin:0;font-size:1rem;font-weight:600;line-height:1.3}.course-card__desc{color:#666;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.875rem;line-height:1.4;display:-webkit-box;overflow:hidden}.badge{letter-spacing:.02em;border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.badge--draft{color:#854d0e;background:#fef9c3}.badge--published{color:#166534;background:#dcfce7}.badge--locale{color:#1d4ed8;background:#eff6ff}.course-detail{padding:0}.course-detail__cover{object-fit:cover;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);width:100%;height:240px;display:block}.course-detail__header{border-bottom:1px solid #e5e5e5;padding:1.5rem 2rem}.course-detail__title{margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.course-detail__meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.course-detail__desc{color:#555;margin:0;font-size:.95rem;line-height:1.6}.course-detail__toolbar{background:#fafafa;border-bottom:1px solid #f0f0f0;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem 2rem;display:flex}.course-detail__body{max-width:900px;padding:2rem}.chapter-item{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:.75rem;overflow:hidden}.chapter-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;align-items:center;gap:.875rem;padding:.875rem 1.25rem;transition:background .1s;display:flex}.chapter-header:hover{background:#fafafa}.chapter-header__thumb{object-fit:cover;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:8px;flex-shrink:0;width:40px;height:40px}.chapter-header__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden}.chapter-header__actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.chapter-header__chevron{color:#999;flex-shrink:0;transition:transform .2s}.chapter-header__chevron--open{transform:rotate(180deg)}.chapter-body{border-top:1px solid #e5e5e5;padding:.75rem 1.25rem 1rem}.lesson-row{border-bottom:1px solid #f0f0f0;align-items:center;gap:.875rem;padding:.625rem .25rem;display:flex}.lesson-row:last-of-type{border-bottom:none}.lesson-row__thumb{object-fit:cover;background:linear-gradient(135deg,#f0fdf4,#bbf7d0);border-radius:6px;flex-shrink:0;width:32px;height:32px}.lesson-row__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.875rem;font-weight:500;overflow:hidden}.lesson-row__actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.lesson-row__add{margin-top:.75rem}.lesson-canvas-page{flex-direction:column;min-height:100vh;display:flex}.lesson-canvas-header{background:#fff;border-bottom:1px solid #e5e5e5;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:1rem;padding:.875rem 1.5rem;display:flex}.lesson-canvas-breadcrumb{color:#666;align-items:center;gap:.375rem;font-size:.85rem;display:flex}.lesson-canvas-breadcrumb a{color:#666;text-decoration:none}.lesson-canvas-breadcrumb a:hover{color:#111}.lesson-canvas-title{color:#111;margin:0;font-size:1rem;font-weight:600}.lesson-canvas-layout{flex:1;display:flex;overflow:hidden}.lesson-canvas{flex-direction:column;flex:1;gap:2rem;width:100%;max-width:860px;margin:0 auto;padding:1.5rem 2rem;display:flex}.lesson-canvas__empty{text-align:center;color:#999;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.5rem;min-height:300px;font-size:.9rem;display:flex}.sections-sidebar{background:#fafafa;border-left:1px solid #e5e5e5;flex-direction:column;flex-shrink:0;gap:.375rem;width:280px;padding:1rem;display:flex;overflow-y:auto}.sections-sidebar__title{text-transform:uppercase;letter-spacing:.06em;color:#999;margin-bottom:.375rem;padding:0 .25rem;font-size:.75rem;font-weight:700}.section-item{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;transition:background .1s;display:flex}.section-item:hover{background:#f0f0f0}.section-item--active{color:#fff;background:#111}.section-item--active:hover{background:#222}.section-item__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.section-item__actions{opacity:0;flex-shrink:0;align-items:center;gap:.25rem;transition:opacity .1s;display:flex}.section-item:hover .section-item__actions,.section-item--active .section-item__actions{opacity:1}.task-card{background:#fff;border:1px solid #e5e5e5;border-radius:10px;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;display:flex}.task-card__left{flex-direction:column;flex:1;gap:.375rem;min-width:0;display:flex}.task-card__actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.task-card__preview{color:#555;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.4;display:-webkit-box;overflow:hidden}.task-type-badge{text-transform:uppercase;letter-spacing:.06em;color:#555;white-space:nowrap;background:#f5f5f5;border-radius:4px;padding:2px 7px;font-size:.68rem;font-weight:700;display:inline-block}.task-type-grid{grid-template-columns:repeat(4,1fr);gap:.625rem;margin-top:.75rem;display:grid}.task-type-card{text-align:center;cursor:pointer;background:#fff;border:1.5px solid #e5e5e5;border-radius:10px;padding:.875rem .5rem .75rem;transition:border-color .15s,background .15s}.task-type-card:hover{background:#f9f9f9;border-color:#111}.task-type-card__icon{margin-bottom:.375rem;font-size:1.5rem;line-height:1;display:block}.task-type-card__label{color:#333;font-size:.72rem;font-weight:600;line-height:1.2;display:block}.media-dropzone{text-align:center;cursor:pointer;color:#999;border:2px dashed #d4d4d4;border-radius:8px;padding:1.5rem;font-size:.875rem;transition:border-color .15s,background .15s}.media-dropzone:hover{color:#333;background:#fafafa;border-color:#111}.media-dropzone__icon{margin-bottom:.375rem;font-size:1.5rem}.media-preview{background:#fafafa;border:1px solid #e5e5e5;border-radius:8px;flex-direction:column;gap:.625rem;padding:.75rem;display:flex}.media-preview img{object-fit:contain;background:#f0f0f0;border-radius:6px;width:100%;max-height:260px}.media-preview__info{flex-direction:column;gap:.375rem;display:flex}.media-preview__name{color:#555;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.media-preview__actions{flex-direction:column;gap:.375rem;display:flex}.media-gallery{background:#fafafa;border:1px solid #e5e5e5;border-radius:8px;max-height:200px;margin-top:.5rem;padding:.75rem;overflow-y:auto}.media-gallery__empty{color:#999;text-align:center;padding:.5rem;font-size:.8rem}.media-gallery__grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.5rem;display:grid}.media-gallery__item{cursor:pointer;background:#fff;border:2px solid #0000;border-radius:6px;flex-direction:column;padding:0;transition:border-color .15s;display:flex;overflow:hidden}.media-gallery__item:hover{border-color:#111}.media-gallery__item img{object-fit:cover;flex-shrink:0;width:100%;height:72px}.media-gallery__name{color:#555;text-overflow:ellipsis;white-space:nowrap;text-align:center;background:#f5f5f5;width:100%;padding:3px 4px;font-size:.65rem;overflow:hidden}.media-gallery__file{color:#555;text-align:center;text-overflow:ellipsis;white-space:nowrap;padding:.25rem;font-size:.65rem;overflow:hidden}.icon-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .1s,color .1s;display:inline-flex}.icon-btn:hover{color:#111;background:#f0f0f0}.icon-btn--danger:hover{color:#dc2626;background:#fee2e2}.icon-btn--white{color:#ffffffb3}.icon-btn--white:hover{color:#fff;background:#ffffff26}.task-form{flex-direction:column;gap:1rem;display:flex}.task-form__field{flex-direction:column;gap:.375rem;display:flex}.task-form__label{color:#444;font-size:.85rem;font-weight:600}.task-form__hint{color:#888;font-size:.78rem}.task-form__textarea{resize:vertical;border:1px solid #e5e5e5;border-radius:8px;width:100%;min-height:80px;padding:.625rem .75rem;font-family:inherit;font-size:.9rem}.task-form__textarea:focus{border-color:#111;outline:none}.fill-blank-list{flex-direction:column;gap:.5rem;display:flex}.fill-blank-row{align-items:center;gap:.5rem;font-size:.875rem;display:flex}.fill-blank-row__id{color:#666;min-width:60px;font-weight:700}.column-editor{border:1px solid #e5e5e5;border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.column-editor__title{color:#555;font-size:.8rem;font-weight:600}.pair-row{align-items:center;gap:.5rem;display:flex}.pair-row__sep{color:#999;font-size:.8rem}.statement-row{align-items:center;gap:.5rem;display:flex}.tf-toggle{border:1px solid #e5e5e5;border-radius:6px;flex-shrink:0;display:flex;overflow:hidden}.tf-toggle__btn{cursor:pointer;background:0 0;border:none;padding:4px 10px;font-size:.78rem;font-weight:600;transition:background .1s,color .1s}.tf-toggle__btn--active-true{color:#166534;background:#dcfce7}.tf-toggle__btn--active-false{color:#dc2626;background:#fee2e2}.media-upload-pending{border:2px dashed #d4d4d4;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.media-upload-pending__preview{object-fit:contain;background:#f0f0f0;border-radius:6px;width:100%;max-height:260px}.media-upload-pending__filename{color:#888;margin:0;font-size:.8rem}.media-gallery__controls{margin-bottom:.5rem}.media-gallery__pagination{justify-content:center;align-items:center;gap:.75rem;margin-top:.5rem;font-size:.8rem;display:flex}.media-gallery__pagination button{cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:4px;padding:2px 10px;font-size:.75rem}.media-gallery__pagination button:disabled{opacity:.4;cursor:default}.lesson-section{flex-direction:column;gap:1rem;display:flex}.lesson-section__header{border-bottom:2px solid #e5e5e5;align-items:center;gap:.75rem;padding-bottom:.5rem;display:flex}.lesson-section__title{color:#111;flex:1;margin:0;font-size:1.1rem;font-weight:700}.lesson-section__actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.lesson-section__add-form{align-items:center;gap:.5rem;padding-top:.5rem;display:flex}.task-viewer{background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:1.25rem}.task-viewer__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;display:flex}.task-viewer__title-row{flex:1;align-items:center;gap:.5rem;min-width:0;display:flex}.task-viewer__title{color:#111;margin:0;font-size:1rem;font-weight:600}.task-viewer__actions{flex-shrink:0;align-items:center;gap:.375rem;display:flex}.task-viewer__description{color:#555;margin:0 0 .75rem;font-size:.875rem;line-height:1.5}.task-viewer__content{font-size:.9rem;line-height:1.5}.viewer-image__img{border-radius:8px;max-width:100%;display:block}.viewer-image__caption{color:#666;margin:.5rem 0 0;font-size:.85rem}.viewer-image-set{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.viewer-image-set__img{object-fit:cover;aspect-ratio:4/3;border-radius:8px;width:100%}.viewer-video__iframe,.viewer-video__player{aspect-ratio:16/9;border:none;border-radius:8px;width:100%;display:block}.viewer-audio__title{margin:0 0 .5rem;font-weight:600}.viewer-audio__player{width:100%}.rich-editor{border:1.5px solid #e5e5e5;border-radius:8px;overflow:hidden}.rich-editor:focus-within{border-color:#111}.rich-editor__toolbar{background:#fafafa;border-bottom:1px solid #e5e5e5;flex-wrap:wrap;align-items:center;gap:2px;padding:.375rem .5rem;display:flex}.rich-editor__btn{cursor:pointer;color:#555;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.8rem;font-weight:600;line-height:1.4}.rich-editor__btn:hover{background:#eee}.rich-editor__btn--active{color:#fff;background:#111}.rich-editor__sep{background:#ddd;width:1px;height:1.2rem;margin:0 .25rem}.rich-editor__bubble{background:#fff;border:1px solid #e5e5e5;border-radius:8px;align-items:center;gap:2px;padding:.25rem .375rem;display:flex;box-shadow:0 4px 12px #0000001f}.rich-editor__colors{align-items:center;gap:4px;display:flex}.rich-editor__color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:1.1rem;height:1.1rem;padding:0}.rich-editor__color-swatch:hover,.rich-editor__color-swatch--active{border-color:#111}.rich-editor__color-reset{color:#888;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.1rem .3rem;font-size:.75rem}.rich-editor__color-reset:hover{background:#eee}.rich-editor__content .tiptap{min-height:var(--editor-min-height,80px);outline:none;padding:.625rem .75rem;font-family:inherit;font-size:.9rem;line-height:1.6}.rich-editor__content .tiptap>:first-child{margin-top:0}.rich-editor__content .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#aaa;pointer-events:none;float:left;height:0}.rich-editor__content .tiptap h2{margin:1rem 0 .5rem;font-size:1.25rem;font-weight:700}.rich-editor__content .tiptap h3{margin:.75rem 0 .375rem;font-size:1.1rem;font-weight:600}.rich-editor__content .tiptap ul,.rich-editor__content .tiptap ol{margin:.5rem 0;padding-left:1.5rem}.rich-editor__content .tiptap a{color:#2563eb;text-decoration:underline}.viewer-reading__text{white-space:pre-wrap;line-height:1.7}.viewer-reading__text--rich{white-space:normal;line-height:1.7}.viewer-reading__text--rich h2{margin:1rem 0 .5rem;font-size:1.25rem;font-weight:700}.viewer-reading__text--rich h3{margin:.75rem 0 .375rem;font-size:1.1rem;font-weight:600}.viewer-reading__text--rich p{margin:.5rem 0}.viewer-reading__text--rich ul,.viewer-reading__text--rich ol{margin:.5rem 0;padding-left:1.5rem}.viewer-reading__text--rich a{color:#2563eb;text-decoration:underline}.viewer-writing__prompt{color:#333;margin:0 0 .75rem;font-weight:600}.viewer-writing__textarea{resize:vertical;border:1.5px solid #d4d4d4;border-radius:8px;width:100%;min-height:120px;padding:.75rem;font-family:inherit;font-size:.9rem;line-height:1.6}.viewer-writing__textarea:focus{border-color:#111;outline:none}.viewer-writing__footer{justify-content:flex-end;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.viewer-writing__autosaved{color:#16a34a;font-size:.78rem}.viewer-writing__feedback{background:#f5f5f5;border-radius:8px;margin-top:.75rem;padding:.75rem}.viewer-writing__score{margin:0 0 .5rem;font-size:.9rem;font-weight:600}.viewer-writing__teacher-feedback{color:#333;font-size:.85rem}.viewer-writing__teacher-feedback p{margin:.25rem 0 0}.viewer-fill__text{font-size:.95rem;line-height:2.2}.viewer-fill__input,.viewer-fill__select{vertical-align:baseline;border:1.5px solid #d4d4d4;border-radius:4px;min-width:100px;margin:0 2px;padding:2px 8px;font-family:inherit;font-size:.9rem;display:inline-block}.viewer-fill__input:focus,.viewer-fill__select:focus{border-color:#111;outline:none}.viewer-fill__footer{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.viewer-fill__score{font-size:.9rem;font-weight:600}.viewer-sort__unsorted{margin-bottom:1rem}.viewer-sort__unsorted-label{color:#888;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .375rem;font-size:.8rem;font-weight:600}.viewer-sort__chips{flex-wrap:wrap;gap:.375rem;display:flex}.viewer-sort__chip{cursor:pointer;background:#fff;border:1.5px solid #d4d4d4;border-radius:6px;padding:.375rem .75rem;font-size:.85rem;transition:border-color .1s,background .1s}.viewer-sort__chip:hover:not(:disabled){border-color:#111}.viewer-sort__chip--selected{background:#f0f0f0;border-color:#111}.viewer-sort__chip--used{opacity:.4;cursor:default}.viewer-sort__empty-hint{color:#aaa;font-size:.8rem;font-style:italic}.viewer-sort__chip[draggable=true]{cursor:grab}.viewer-sort__chip[draggable=true]:active{cursor:grabbing}.viewer-sort__columns{flex-wrap:wrap;gap:.75rem;display:flex}.viewer-sort__column{border:2px dashed #d4d4d4;border-radius:8px;flex:1;min-width:120px;min-height:100px;padding:.75rem;transition:border-color .1s}.viewer-sort__column--droppable{cursor:pointer;border-color:#888}.viewer-sort__column--droppable:hover{background:#fafafa;border-color:#111}.viewer-sort__column--drag-over{background:#f5f5f5;border-color:#111}.viewer-sort__unsorted--drag-over{background:#fafafa;border-radius:8px}.viewer-sort__column-title{color:#333;text-align:center;margin:0 0 .5rem;font-size:.85rem;font-weight:700}.viewer-sort__column-items{flex-direction:column;gap:.375rem;display:flex}.viewer-sort__footer{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.viewer-match__grid{gap:1.5rem;display:flex}.viewer-match__left,.viewer-match__right{flex-direction:column;flex:1;gap:.5rem;display:flex}.viewer-match__image-card{cursor:pointer;text-align:center;border:2px solid #e5e5e5;border-radius:8px;padding:.5rem;transition:border-color .1s}.viewer-match__image-card--selected{background:#f9f9f9;border-color:#111}.viewer-match__image-card--drag-over{background:#f5f5f5;border-color:#111}.viewer-match__img{object-fit:contain;border-radius:4px;max-width:100%;max-height:120px}.viewer-match__matched-word{color:#333;margin-top:.25rem;font-size:.8rem;font-weight:600;display:block}.viewer-match__word-btn{cursor:pointer;text-align:left;background:#fff;border:1.5px solid #d4d4d4;border-radius:6px;padding:.5rem .75rem;font-size:.85rem;transition:border-color .1s,background .1s}.viewer-match__word-btn:hover:not(:disabled){border-color:#111}.viewer-match__word-btn--selected{background:#f0f0f0;border-color:#111}.viewer-match__word-btn--used{opacity:.4;cursor:default}.viewer-match__word-btn[draggable=true]{cursor:grab}.viewer-match__word-btn[draggable=true]:active{cursor:grabbing}.viewer-match__word-btn--drag-over{background:#f0f0f0;border-color:#111}.viewer-match__word-btn--left{font-weight:600}.viewer-match__arrow{color:#888;font-weight:400}.viewer-match__footer{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.viewer-arrange__hint{color:#888;margin:0 0 .75rem;font-size:.85rem}.viewer-arrange__sentence{border:2px dashed #d4d4d4;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.375rem;min-height:48px;margin-bottom:.75rem;padding:.75rem;display:flex}.viewer-arrange__placeholder{color:#bbb;font-size:.9rem}.viewer-arrange__chip{cursor:pointer;background:#fff;border:1.5px solid #d4d4d4;border-radius:6px;padding:.375rem .75rem;font-size:.85rem;transition:border-color .1s,background .1s}.viewer-arrange__chip:hover:not(:disabled){border-color:#111}.viewer-arrange__chip--placed{background:#f5f5f5;border-color:#aaa}.viewer-arrange__chip--used{opacity:.3;cursor:default}.viewer-arrange__bank{flex-wrap:wrap;gap:.375rem;display:flex}.viewer-arrange__footer{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.viewer-tf{flex-direction:column;gap:.75rem;display:flex}.viewer-tf__row{border:1px solid #e5e5e5;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;transition:border-color .15s;display:flex}.viewer-tf__statement{flex:1;margin:0;font-size:.9rem}.viewer-tf__footer{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.answer-correct{background:#dcfce7!important;border-color:#16a34a!important}.answer-incorrect{background:#fee2e2!important;border-color:#dc2626!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
