/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@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;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Plus Jakarta Sans", "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-lg:.5rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Fraunces", Georgia, serif}}@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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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}html{min-height:100vh}body{min-width:280px;min-height:100vh;margin:0}*,:before,:after{box-sizing:border-box}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #c86f4c73}}@layer components{.guest-shell{flex-direction:column;width:min(1240px,100% - 80px);min-height:100vh;margin:0 auto;display:flex}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:94px;display:flex}.brand-lockup{align-items:center;display:inline-flex}.brand-logo{object-fit:contain;width:146px;height:76px;display:block}.topbar-actions{align-items:center;gap:22px;display:flex}.theme-toggle{border:1px solid var(--line);background:var(--paper);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:10px;flex:none;place-items:center;padding:0;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-grid}.floating-theme-toggle{z-index:1000;background:var(--paper);border-radius:50%;width:48px;height:48px;position:fixed;bottom:24px;right:24px;box-shadow:0 5px 18px #412a1d2e}.floating-theme-toggle:hover{transform:translateY(-2px)}.theme-toggle:hover{border-color:var(--cinnamon);color:var(--cinnamon);transform:translateY(-1px)}.theme-toggle svg{width:17px;height:17px}.nav-link{color:#5e4a39;padding:8px 0;font-size:15px;font-weight:600;transition:color .16s;position:relative}.nav-link:after{background:var(--cinnamon);content:"";transform-origin:0;border-radius:2px;height:2px;transition:transform .16s;position:absolute;bottom:1px;left:0;right:0;transform:scaleX(0)}.nav-link.router-link-exact-active{color:var(--cinnamon)}.nav-link.router-link-exact-active:after{transform:scaleX(1)}.nav-link:hover,.text-link:hover,.auth-switch a:hover{color:var(--cinnamon)}.button{background:var(--coffee-dark);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:0 24px;font-size:15px;font-weight:700;transition:background .16s,transform .16s;display:inline-flex}.button:hover:not(:disabled){background:#754a30;transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.7}.button-small{min-height:42px;padding:0 17px;font-size:14px}.button-full{width:100%;margin-top:9px}.guest-content{flex:1}.home-hero{grid-template-columns:1fr .92fr;align-items:center;gap:42px;min-height:550px;padding:76px 4px 58px;display:grid}.hero-copy{padding:5px 0 0 22px}.eyebrow,.auth-kicker{color:var(--cinnamon);letter-spacing:1.8px;font-size:11px;font-weight:700}.eyebrow{align-items:center;gap:10px;display:flex}.eyebrow-line{background:var(--cinnamon);width:27px;height:1px}.hero-copy h1,.auth-card-heading h1{color:var(--coffee-dark);letter-spacing:-2.7px;margin:24px 0 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(43px,5.2vw,68px);font-weight:600;line-height:1.1}.hero-copy h1 span,.auth-card-heading h1 span{color:var(--cinnamon);font-style:italic}.hero-description{color:#786a5d;max-width:436px;margin:0;font-size:16px;line-height:1.9}.hero-actions{align-items:center;gap:22px;margin-top:28px;display:flex}.text-link{color:#76695d;font-size:13px}.text-link strong{color:var(--coffee);margin-left:4px}.hero-proof{color:#8d8072;align-items:center;gap:10px;margin-top:56px;font-size:12px;display:flex}.proof-icon{color:var(--cinnamon);font-size:17px}.hero-art{justify-content:center;align-items:center;min-height:412px;display:flex;position:relative}.art-orbit{border:1px solid #c86f4c24;border-radius:50%;width:310px;height:310px;position:absolute}.orbit-one{transform:scale(1.22)}.orbit-two{border-color:#603c2514;width:240px;height:240px;transform:scale(1.55)}.art-card{z-index:1;background:#fffdfaed;border:1px solid #603c2517;border-radius:20px;flex-direction:column;justify-content:space-between;width:min(374px,90%);height:355px;padding:21px 23px 17px;display:flex;transform:rotate(-2deg);box-shadow:0 25px 70px #5134211f}.art-card-top{color:#9a897a;letter-spacing:1.1px;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.art-card-top>span:last-child{color:var(--cinnamon);margin-left:auto;font-size:15px}.live-indicator,.status-dot{background:#8a9a6c;border-radius:50%;width:7px;height:7px;display:inline-block}.hero-logo-frame{background:#f8f5ef;border-radius:10px;justify-content:center;align-items:center;width:100%;height:238px;display:flex}.hero-logo{object-fit:contain;width:100%;height:100%}.art-card-bottom{border-top:1px solid #eee8e0;align-items:center;gap:11px;padding-top:15px;display:flex}.code-mark{width:36px;height:36px;color:var(--cinnamon);background:#f6e6dc;border-radius:10px;place-items:center;font-size:12px;font-weight:700;display:grid}.art-card-bottom strong,.art-card-bottom small{display:block}.art-card-bottom strong{color:var(--coffee-dark);font-family:Georgia,Times New Roman,serif;font-size:13px}.art-card-bottom small{color:#998b7e;margin-top:3px;font-size:11px}.floating-note{z-index:2;color:#766657;background:#fffdfa;border:1px solid #603c2512;border-radius:10px;padding:12px 16px;font-size:11px;position:absolute;box-shadow:0 12px 35px #51342117}.floating-note>svg{color:var(--cinnamon);margin-right:6px}.note-top{top:71px;right:-3px;transform:rotate(3deg)}.note-bottom{bottom:46px;left:0;transform:rotate(-3deg)}.hero-dot{background:#c98060;border-radius:50%;width:6px;height:6px;position:absolute}.hero-dot-one{top:45px;left:23px}.hero-dot-two{bottom:39px;right:32px}.feature-strip{border-top:1px solid #603c251f;border-bottom:1px solid #603c251f;grid-template-columns:repeat(3,1fr);align-items:center;min-height:130px;padding:23px 30px;display:grid}.feature-item{border-right:1px solid #e7ded3;gap:14px;min-height:67px;padding:4px 25px;display:flex}.feature-item:first-child{padding-left:0}.feature-item:last-child{border:0}.feature-number{color:var(--cinnamon);padding-top:3px;font-family:Georgia,Times New Roman,serif;font-size:13px;font-style:italic}.feature-item h2{color:#493424;margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:600}.feature-item p{color:#8a7d70;max-width:230px;margin:0;font-size:12px;line-height:1.6}.site-footer{color:#9b8e81;justify-content:space-between;align-items:center;min-height:58px;font-size:11px;display:flex}.auth-page{grid-template-columns:minmax(350px,1.1fr) minmax(250px,.9fr);align-items:center;gap:70px;width:min(920px,100%);min-height:calc(100vh - 153px);margin:0 auto;padding:40px 28px;display:grid}.auth-card{background:var(--paper);border:1px solid #eee6dc;border-radius:14px;padding:34px 35px;box-shadow:0 14px 45px #4b301e0d}.auth-card-heading h1{letter-spacing:-1.2px;margin:11px 0 7px;font-size:40px;line-height:1.15}.auth-card-heading p{color:#847668;margin:0 0 25px;font-size:14px;line-height:1.6}.auth-switch{color:#807367;text-align:center;margin:17px 0 0;font-size:13px}.auth-switch a{color:var(--cinnamon);font-weight:700}.form-security{color:#a09487;text-align:center;margin:22px 0 0;font-size:10px}.form-security span{color:#9caa83;margin-right:4px}.auth-aside{flex-direction:column;justify-content:center;min-height:290px;padding:34px 0;display:flex;position:relative}.aside-quote-mark{color:#d9a28a;font-family:Georgia,serif;font-size:50px;line-height:.8}.auth-aside>p{color:var(--coffee-dark);margin:19px 0 34px;font-family:Georgia,Times New Roman,serif;font-size:30px;line-height:1.45}.auth-aside em{color:var(--cinnamon)}.aside-credit{color:#9a8a7b;letter-spacing:1.3px;align-items:center;gap:8px;font-size:10px;font-weight:700;display:flex}.aside-credit span{background:#cd8d71;width:23px;height:1px}.google-button{justify-content:center;min-height:40px;display:flex}.google-unavailable{color:#8a7d70;text-align:center;margin:0 0 10px;font-size:11px;line-height:1.6}.form-divider{color:#a09589;white-space:nowrap;align-items:center;gap:10px;margin:15px 0 0;font-size:11px;display:flex}.form-divider:before,.form-divider:after{content:"";background:#eee7de;flex:1;height:1px}.register-page{grid-template-columns:minmax(390px,1.15fr) minmax(240px,.85fr);gap:62px;width:min(990px,100%)}.register-page .auth-card{padding:28px 35px}.register-page .auth-card-heading h1{margin-top:9px;font-size:33px}.register-page .auth-card-heading p{margin-bottom:12px}.register-page .form-security{margin-top:16px}.auth-shell{background:#f7f4ee;min-height:100vh}.sidebar{background:#fffdfa;border-right:1px solid #ebe3d9;flex-direction:column;width:242px;padding:28px 17px 18px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar-brand{color:#493222;align-items:center;gap:10px;margin:0 0 57px 4px;font-family:Georgia,Times New Roman,serif;font-size:17px;font-weight:700;display:flex}.sidebar-brand-logo{object-fit:contain;width:148px;height:72px;display:block}.sidebar-caption{color:#aa9c8e;letter-spacing:1.5px;margin:0;padding:0 12px 12px;font-size:10px;font-weight:700}.sidebar-navigation{gap:18px;display:grid}.sidebar-nav-group{min-width:0}.side-nav{gap:5px;display:grid}.side-link{color:#726254;border-radius:7px;align-items:center;gap:11px;min-height:41px;padding:0 12px;font-size:12px;font-weight:600;transition:background .16s,color .16s;display:flex}.side-link-muted{color:#918274}.side-link:hover:not(.router-link-exact-active):not(.is-active){background:#f8f5ef}.side-link.router-link-exact-active,.side-link.is-active{color:#854c31;background:#f7eee7}.side-link.router-link-exact-active:hover,.side-link.is-active:hover{background:#f2e5da}.nav-icon{text-align:center;width:16px;font-size:15px}.sidebar-note{background:#faf4ed;border:1px solid #f0e5da;border-radius:9px;margin-top:auto;padding:15px 13px 13px}.sidebar-theme{color:#8d7e6f;justify-content:space-between;align-items:center;min-height:43px;margin-top:15px;padding:0 3px;font-size:11px;display:flex}.note-icon{color:var(--cinnamon);font-size:17px}.sidebar-note strong{color:#59412e;margin-top:8px;font-family:Georgia,Times New Roman,serif;font-size:12px;display:block}.sidebar-note p{color:#8d7e6f;margin:5px 0 0;font-size:11px;line-height:1.6}.sidebar-bottom{border-top:1px solid #eee7de;align-items:center;gap:9px;margin-top:18px;padding:16px 2px 0;display:flex}.avatar,.profile-avatar{color:#714831;background:#e8c2ae;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-family:Georgia,Times New Roman,serif;font-size:14px;display:grid}.sidebar-user{flex:1;min-width:0}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user strong{color:#513d2c;font-size:11px}.sidebar-user small{color:#968779;margin-top:4px;font-size:10px}.icon-button{color:#987762;cursor:pointer;background:0 0;border:0}.signout-button{border-radius:6px;width:28px;height:28px;font-size:16px}.signout-button:hover{background:#f5e9df}.signout-button:disabled{cursor:wait;opacity:.5}.auth-main{min-height:100vh;margin-left:242px;padding:30px clamp(24px,3vw,42px) 45px}.auth-topline{color:#8a7a6c;align-items:center;gap:8px;min-height:29px;font-size:11px;display:flex}.auth-topline .status-dot{width:6px;height:6px}.auth-topline-date{color:#9b8d80;margin-left:auto}.dashboard{max-width:1320px;margin:46px auto 0}.welcome-row{justify-content:space-between;align-items:end;margin-bottom:29px;display:flex}.welcome-row h1{color:#493222;letter-spacing:-1px;margin:9px 0 5px;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3vw,39px);font-weight:600}.wave{color:#cb845f;font-family:Arial,Helvetica,sans-serif;font-size:22px}.welcome-row p{color:#897b6e;margin:0;font-size:13px}.welcome-date{color:#958778;padding-bottom:3px;font-size:11px}.dashboard-grid{grid-template-columns:minmax(240px,.93fr) minmax(310px,1.07fr);gap:18px;display:grid}.welcome-card,.profile-card{border-radius:12px;min-height:336px;position:relative;overflow:hidden}.welcome-card{color:#fffaf3;background:#523622;padding:28px 25px 20px}.welcome-card-eyebrow{color:#d8b9a3;letter-spacing:1.1px;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.welcome-card-eyebrow .status-dot{background:#c3bd82;width:6px;height:6px}.welcome-card h2{z-index:1;margin:33px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:500;line-height:1.27;position:relative}.welcome-card h2 em{color:#e5a887;font-weight:500}.welcome-card>p{z-index:1;color:#d6c5b5;max-width:285px;font-size:12px;line-height:1.8;position:relative}.welcome-card-bottom{color:#dec9b8;align-items:center;gap:8px;font-family:Georgia,Times New Roman,serif;font-size:10px;font-style:italic;display:flex;position:absolute;bottom:21px;left:25px}.welcome-card-bottom>svg{font-size:15px}.welcome-card-decoration{color:#ffffff0a;font-family:Georgia,Times New Roman,serif;font-size:120px;font-weight:700;position:absolute;bottom:1px;right:-21px}.profile-card{background:#fffdfa;border:1px solid #ebe2d8;padding:24px 23px 17px}.card-title-row{justify-content:space-between;align-items:center;display:flex}.card-title-row h2{color:#4e3928;margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:19px;font-weight:600}.profile-avatar{width:39px;height:39px;font-size:17px}.profile-details{margin:19px 0 0}.profile-details>div{border-bottom:1px solid #f0ebe4;justify-content:space-between;align-items:center;gap:12px;min-height:39px;display:flex}.profile-details dt{color:#938476;font-size:11px}.profile-details dd{color:#503c2a;text-overflow:ellipsis;white-space:nowrap;max-width:63%;margin:0;font-size:11px;font-weight:600;overflow:hidden}.verified-note{color:#8b7e71;margin-top:13px;font-size:10px}.verified-note span{color:#698355;background:#e9f0e3;border-radius:50%;place-items:center;width:13px;height:13px;margin-right:5px;font-size:9px;display:inline-grid}.dashboard-alert{margin:0 0 17px}.dashboard-bottom{background:#fcf9f4;border:1px solid #eee5da;border-radius:10px;align-items:center;gap:14px;min-height:88px;margin-top:18px;padding:15px 21px;display:flex}.dashboard-bottom strong{color:#5d452f;font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:600}.dashboard-bottom p{color:#958677;margin:4px 0 0;font-size:11px}.bottom-coffee{opacity:.8;margin-left:auto;font-size:27px}.user-management{margin-bottom:40px}.user-management-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.user-management-heading h1{color:#493222;letter-spacing:-1px;margin:8px 0 5px;font-family:Georgia,Times New Roman,serif;font-size:clamp(29px,3vw,38px);font-weight:600}.user-management-heading p{color:#897b6e;margin:0;font-size:11px}.user-management-panel{background:#fffdfa;border:1px solid #ebe2d8;border-radius:12px;overflow:hidden}.role-intro{background:#fcf9f4;border-bottom:1px solid #eee7de;padding:19px 20px}.role-intro strong{color:#513d2c;font-size:14px}.role-intro p{color:#897b6e;margin:5px 0 0;font-size:12px;line-height:1.6}.role-table{min-width:600px}.role-dialog{width:min(820px,100%)}.role-form{flex-direction:column;gap:16px;display:flex}.role-name-field{color:#5c4735;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.role-name-field input{color:#493a2d;background:#fff;border:1px solid #e8e0d7;border-radius:7px;width:100%;min-height:40px;padding:0 10px;font-size:13px}.role-name-field input:disabled{color:#8d7e6f;cursor:not-allowed;background:#f7f3ed}.role-name-field small{color:#968779;font-size:10px;font-weight:400}.permission-list,.user-role-assignment{border:1px solid #eee7de;border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;margin:0;padding:14px;display:grid}.permission-list legend,.user-role-assignment legend{color:#5c4735;padding:0 5px;font-size:12px;font-weight:700}.permission-list .user-checkbox,.user-role-assignment .user-checkbox{min-width:0}.permission-toolbar{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px 12px;display:flex}.permission-search{flex:1;min-width:min(220px,100%)}.permission-search input{color:#493a2d;background:#fff;border:1px solid #e8e0d7;border-radius:7px;width:100%;min-height:36px;padding:0 10px;font-size:12px}.permission-bulk-action{color:#854c31;cursor:pointer;background:#fffdfa;border:1px solid #e8e0d7;border-radius:7px;min-height:35px;padding:0 10px;font-size:11px;font-weight:700}.permission-bulk-action:disabled{opacity:.55;cursor:not-allowed}.permission-selection-count{color:#897b6e;white-space:nowrap;font-size:11px}.permission-groups{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;max-height:min(44vh,390px);padding-right:3px;display:grid;overflow:auto}.permission-group{background:#fffdfa;border:1px solid #eee7de;border-radius:8px;min-width:0;padding:10px}.permission-group-heading{color:#513d2c;align-items:center;gap:7px;padding-bottom:8px;font-size:12px;font-weight:700;display:flex}.permission-group-heading input{accent-color:#9a5739}.permission-group-heading small{color:#968779;margin-left:auto;font-size:10px;font-weight:400}.permission-option{align-items:flex-start;padding:5px 0}.permission-option span{gap:2px;display:grid}.permission-option small{color:#968779;font-size:9px;font-weight:400}.permission-empty{color:#968779;grid-column:1/-1;margin:0;font-size:12px}.user-filters{border-bottom:1px solid #eee7de;flex-wrap:wrap;align-items:center;gap:9px;padding:17px;display:flex}.classroom-table{min-width:720px}.material-content-preview{color:#958779;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:520px;font-size:11px;line-height:1.5;display:-webkit-box;overflow:hidden}.classroom-table th button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.classroom-table td strong,.classroom-table td small{display:block}.classroom-table td small{color:#958779;margin-top:3px;font-size:10px}.course-filters .user-search{flex:1.7}.course-table{min-width:760px}.hierarchy-chevron{transition:transform .16s}.hierarchy-chevron-open{transform:rotate(90deg)}.hierarchy-table-row>td{padding:0}.hierarchy-inline{padding:0 16px 8px 42px}.hierarchy-message{color:#958779;margin:0;padding:10px 6px;font-size:12px}.hierarchy-list{display:grid}.hierarchy-item{border-top:1px solid #eee7de;justify-content:space-between;align-items:center;gap:12px;min-width:0;min-height:52px;padding:7px 8px;display:flex}.hierarchy-module-item{background:0 0}.hierarchy-materials{background:#fffdfa;border-left:2px solid #e8d7c8;margin:0 0 4px 34px;padding:4px 8px 8px}.hierarchy-material-item{min-height:46px}.hierarchy-item-main{align-items:center;gap:8px;min-width:0;display:flex}.hierarchy-toggle,.hierarchy-toggle-spacer{flex:0 0 28px;width:28px;height:28px}.hierarchy-toggle{place-items:center;display:grid}.hierarchy-item-icon{color:#a66c4a;background:#f4eee6;border-radius:6px;flex:0 0 28px;place-items:center;width:28px;height:28px;display:grid}.hierarchy-item-icon svg{width:15px;height:15px}.hierarchy-item-title{gap:3px;min-width:0;display:grid}.hierarchy-item-title strong,.hierarchy-item-title small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hierarchy-item-title strong{color:#493a2d;font-size:12px}.hierarchy-item-title small{color:#958779;font-size:10px}.hierarchy-order{color:#958779;white-space:nowrap;font-size:10px}.course-title-cell{align-items:center;gap:11px;min-width:260px;display:flex}.course-thumbnail{object-fit:cover;border-radius:6px;flex:none;width:48px;height:40px}.course-thumbnail-placeholder{color:#a66c4a;background:#f4eee6;place-items:center;display:grid}.course-thumbnail-placeholder svg{width:19px;height:19px}.course-title-content{min-width:0}.course-title-content strong,.course-title-content small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.course-dialog{width:min(900px,100%)}.course-form{grid-template-columns:repeat(2,minmax(0,1fr))}.course-form-wide,.course-form>.form-alert,.course-form>.user-form-actions{grid-column:1/-1}.course-description-field{border:1px solid #e8e0d7;border-radius:9px;gap:12px;min-width:0;margin:0;padding:14px;display:grid}.course-description-field legend{color:#5c4735;padding:0 5px;font-size:12px;font-weight:700}.course-description-help{color:#968779;margin:0;font-size:11px;line-height:1.5}.course-paragraph-block{background:#faf8f4;border:1px solid #eee7de;border-radius:8px;gap:8px;padding:11px;display:grid}.course-paragraph-block>header{color:#5c4735;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.course-paragraph-block>header>div{gap:2px;display:flex}.course-rich-editor{background:#fff;border:1px solid #e8e0d7;border-radius:8px;overflow:hidden}.course-rich-toolbar{background:#f5f1eb;border-bottom:1px solid #e8e0d7;flex-wrap:wrap;align-items:center;gap:3px;padding:6px;display:flex}.course-rich-toolbar button{color:#5c4735;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:30px;height:29px;padding:0 7px;font-size:12px}.course-rich-toolbar button:hover{background:#e9dfd3}.course-toolbar-divider{background:#d9cfc3;width:1px;height:19px;margin:0 3px}.course-rich-content{color:#493a2d;outline:none;min-height:120px;padding:12px;font-size:12px;line-height:1.7}.course-rich-content:empty:before{color:#a29486;content:attr(data-placeholder);pointer-events:none}.course-rich-content h1,.course-rich-content h2,.course-rich-content h3,.course-rich-content h4,.course-rich-content p,.course-rich-content div{margin:0 0 8px}.course-rich-content h1{font-size:20px;font-weight:700}.course-rich-content h2{font-size:17px;font-weight:700}.course-rich-content h3,.course-rich-content h4{font-size:14px;font-weight:700}.course-rich-content ul,.course-rich-content ol{margin:0 0 8px;padding-left:24px;list-style-position:outside}.course-rich-content ul{list-style-type:disc}.course-rich-content ol{list-style-type:decimal}.course-rich-content ol[type=a]{list-style-type:lower-alpha}.course-rich-content ol[type=A]{list-style-type:upper-alpha}.course-rich-content ol[type=i]{list-style-type:lower-roman}.course-rich-content ol[type=I]{list-style-type:upper-roman}.course-rich-content ul[data-list-style=circle]{list-style-type:circle}.course-rich-content ul[data-list-style=square]{list-style-type:square}.course-rich-content li{padding-left:2px}.course-paragraph-block .user-action-link:disabled{cursor:default;opacity:.35}.course-add-paragraph{color:#854c31;cursor:pointer;background:#fffdfa;border:1px solid #d9c7b7;border-radius:7px;justify-self:start;align-items:center;gap:6px;min-height:36px;padding:0 11px;font-size:11px;font-weight:700;display:inline-flex}.course-add-paragraph:hover{background:#faf4ed;border-color:#c87a5d}.course-add-paragraph svg{width:15px;height:15px}.course-image-field{color:#5c4735;gap:7px;font-size:11px;font-weight:700;display:grid}.course-image-field>input[type=file]{color:#493a2d;background:#fff;border:1px solid #e8e0d7;border-radius:7px;min-height:40px;padding:7px;font-size:11px;font-weight:400}.course-image-field>small{color:#968779;font-size:10px;font-weight:400;line-height:1.5}.course-image-preview{align-items:center;gap:12px;display:flex}.course-image-preview img{object-fit:cover;border:1px solid #e8e0d7;border-radius:7px;width:min(220px,65%);height:120px}.user-form textarea{resize:vertical;color:#493a2d;width:100%;min-height:110px;font:inherit;background:#fff;border:1px solid #e8e0d7;border-radius:7px;padding:10px;font-size:12px}.course-publish-checkbox{align-self:center}.classroom-filters .user-search{flex:1.7}.classroom-dialog{width:min(600px,100%)}.classroom-student-dialog{width:min(700px,100%)}.classroom-notice{color:#58734a;background:#f0f6eb;border:1px solid #d9e8d1;border-radius:8px;margin:0 0 14px;padding:10px 13px;font-size:12px}.classroom-student-summary{color:#897b6e;margin:6px 0 0;font-size:11px;font-weight:400}.classroom-student-picker{gap:12px;display:grid}.classroom-student-list{border:1px solid #eee7de;border-radius:8px;max-height:min(48vh,420px);overflow-y:auto}.classroom-student-option{color:#5c4735;cursor:pointer;border-bottom:1px solid #f0ebe4;align-items:center;gap:10px;min-height:54px;padding:9px 12px;display:flex}.classroom-student-option:last-child{border-bottom:0}.classroom-student-option input{accent-color:#9a5739}.classroom-student-option span{gap:3px;min-width:0;display:grid}.classroom-student-option strong{font-size:12px}.classroom-student-option small{color:#968779;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.classroom-student-footer{color:#897b6e;justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.classroom-form{gap:15px;display:grid}.classroom-field{color:#5c4735;flex-direction:column;gap:6px;min-width:0;font-size:12px;font-weight:700;display:flex}.classroom-field>input,.instructor-picker>input{color:#493a2d;background:#fff;border:1px solid #e8e0d7;border-radius:7px;width:100%;min-height:40px;padding:0 10px;font-size:13px}.instructor-picker{position:relative}.instructor-picker>small{color:#968779;font-size:10px;font-weight:400}.selected-instructor{background:#fcf9f4;border:1px solid #e8e0d7;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:7px 10px;display:flex}.selected-instructor>span,.instructor-option{gap:3px;display:grid}.selected-instructor small,.instructor-option small{color:#968779;font-size:10px;font-weight:400}.selected-instructor button,.instructor-option-load-more{color:#854c31;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.instructor-options{background:#fffdfa;border:1px solid #e8e0d7;border-radius:7px;max-height:220px;margin-top:-2px;overflow-y:auto;box-shadow:0 12px 28px #1e16101f}.instructor-option{color:#493a2d;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #f0e9e0;width:100%;padding:9px 11px}.instructor-option:hover,.instructor-option-load-more:hover{background:#f8f3ec}.instructor-option-message{color:#968779;margin:0;padding:12px;font-size:11px;font-weight:400}.instructor-option-load-more{width:100%;min-height:36px}.user-filters label{flex:1;min-width:145px}.user-filters .user-search{flex:1.6;gap:7px;min-width:min(280px,100%);display:flex}.user-filters input,.user-filters select,.user-form input:not([type=checkbox]),.user-form select{color:#493a2d;background:#fff;border:1px solid #e8e0d7;border-radius:7px;width:100%;min-height:39px;padding:0 10px;font-size:12px}.user-filter-button{color:#654a35;cursor:pointer;white-space:nowrap;background:#fffdfa;border:1px solid #e8e0d7;border-radius:7px;min-height:36px;padding:0 12px;font-size:11px;font-weight:700}.user-filter-button:hover:not(:disabled){color:#a25738;border-color:#c87a5d}.user-filter-button:disabled{cursor:default;opacity:.5}.user-table-scroll{width:100%;overflow-x:auto}.user-table{border-collapse:collapse;text-align:left;width:100%;min-width:760px}.user-table th{color:#988879;letter-spacing:.7px;text-transform:uppercase;background:#faf7f2;padding:12px 15px;font-size:10px;font-weight:700}.user-table th button{color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;background:0 0;border:0;padding:0}.user-table td{color:#634f3e;vertical-align:middle;border-top:1px solid #f0ebe4;padding:13px 15px;font-size:11px}.user-table td strong,.user-table td small{display:block}.user-table td strong{color:#4e3928;font-size:12px}.user-table td small{color:#98897b;margin-top:4px;font-size:10px}.user-table-message{text-align:center;height:100px;color:#948576!important}.user-status{color:#617b4f;background:#edf2e7;border-radius:20px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-block}.user-status-inactive{color:#99713b;background:#f7eee3}.user-status-deleted{color:#a1533d;background:#f8e9e4}.user-actions{text-align:center;white-space:nowrap;min-width:148px}.user-action-link{color:#9c5c3d;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;margin-left:4px;padding:0;transition:background .16s,color .16s;display:inline-grid}.user-action-link svg{width:17px;height:17px}.user-action-link:hover{color:#663b29;background:#f7eee7}.user-action-danger{color:#a34939}.user-action-danger:hover{color:#873b2e;background:#f8e9e4}.user-pagination{color:#948576;border-top:1px solid #eee7de;justify-content:space-between;align-items:center;gap:12px;min-height:57px;padding:10px 16px;font-size:10px;display:flex}.user-pagination>div{align-items:center;gap:9px;display:flex}.user-dialog-backdrop{z-index:60;background:#231b157a;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.user-dialog{background:#fffdfa;border:1px solid #ebe2d8;border-radius:13px;width:min(560px,100%);max-height:min(90vh,850px);padding:24px;overflow-y:auto;box-shadow:0 24px 70px #1e16103d}.user-dialog.course-dialog{width:min(1100px,100%)}.user-dialog-heading{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.user-dialog-heading h2{color:#4e3928;margin:6px 0 0;font-family:Georgia,Times New Roman,serif;font-size:22px}.user-dialog-close{color:#71543f;cursor:pointer;background:#f7f1e9;border:0;border-radius:7px;width:32px;height:32px;font-size:22px}.user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.user-role-assignment{grid-column:1/-1}.user-form>label:not(.user-checkbox){color:#5c4735;flex-direction:column;gap:6px;font-size:11px;font-weight:700;display:flex}.user-form input:not([type=checkbox]),.user-form select{min-height:40px;font-weight:400}.user-form label small{color:#968779;font-size:10px;font-weight:400;line-height:1.5}.user-checkbox{color:#5c4735;align-items:center;gap:8px;font-size:11px;display:flex}.user-checkbox input{accent-color:#9a5739}.user-form>.form-alert,.user-form-actions{grid-column:1/-1}.user-form-actions{justify-content:flex-end;gap:9px;display:flex}@media (width>=1440px){.guest-shell{width:min(1320px,100% - 120px)}}@media (width<=900px){.guest-shell{width:min(100% - 44px,700px)}.home-hero{grid-template-columns:1fr .8fr;gap:10px;min-height:500px}.hero-copy{padding-left:0}.hero-copy h1{font-size:49px}.hero-art{transform:scale(.9)}.feature-strip{padding-left:4px;padding-right:4px}.feature-item{padding:4px 12px}.auth-page,.register-page{gap:35px;padding-left:10px;padding-right:10px}.sidebar{width:205px}.auth-main{margin-left:205px;padding-left:28px;padding-right:28px}.dashboard-grid{grid-template-columns:1fr}.welcome-card,.profile-card{min-height:300px}}@media (width<=640px){.guest-shell{width:calc(100% - 36px)}.topbar{height:72px}.brand-logo{width:116px;height:61px}.topbar-actions{gap:11px}.topbar-actions .theme-toggle{width:34px;height:34px}.nav-link{font-size:13px}.button-small{gap:7px;min-height:37px;padding:0 11px;font-size:12px}.home-hero{grid-template-columns:1fr;gap:16px;padding:55px 0 34px}.hero-copy h1{letter-spacing:-2px;margin-top:18px;font-size:clamp(43px,11vw,58px)}.hero-description{max-width:390px;font-size:14px}.hero-actions{flex-wrap:wrap;gap:13px}.hero-proof{margin-top:27px}.hero-art{min-height:345px;overflow:hidden;transform:scale(.84)}.art-card{height:320px}.hero-logo-frame{height:210px}.note-top{right:-8px}.feature-strip{grid-template-columns:1fr;padding:15px 0}.feature-item,.feature-item:first-child{border-bottom:1px solid #e7ded3;border-right:0;min-height:68px;padding:13px 4px}.feature-item:last-child{border-bottom:0}.site-footer{min-height:55px;font-size:10px}.auth-page,.register-page{grid-template-columns:1fr;gap:22px;min-height:auto;padding:32px 0 40px}.auth-card,.register-page .auth-card{padding:27px 23px}.auth-card-heading h1{font-size:36px}.auth-aside{min-height:130px;padding:10px 9px}.aside-quote-mark{font-size:34px}.auth-aside>p{margin:6px 0 16px;font-size:20px}.auth-shell{padding-bottom:68px}.sidebar{z-index:5;border-top:1px solid #ebe3d9;border-right:0;flex-direction:row;align-items:center;width:100%;height:62px;padding:0 15px;inset:auto 0 0}.sidebar-brand{margin:0 auto 0 0}.sidebar-brand-logo{width:106px;height:52px}.sidebar-caption,.sidebar-note,.sidebar-user{display:none}.sidebar-navigation,.sidebar-nav-group{align-items:center;display:flex}.sidebar-navigation{flex:1;justify-content:center;gap:0}.sidebar-nav-group .side-nav{margin-right:6px}.sidebar-theme{min-height:auto;margin:0 8px 0 0;padding:0}.sidebar-theme>span{display:none}.sidebar-theme .theme-toggle{width:33px;height:33px}.side-nav{margin-right:10px}.side-link{min-height:35px;padding:0 8px;font-size:11px}.side-nav .side-link{padding-left:9px;padding-right:9px;font-size:0}.nav-icon{font-size:13px}.sidebar-bottom{border-top:0;border-left:1px solid #eee7de;margin:0;padding:0 0 0 9px}.avatar{width:29px;height:29px;font-size:12px}.signout-button{width:25px}.auth-main{min-height:calc(100vh - 62px);margin:0;padding:19px 19px 32px}.auth-topline{font-size:8px}.auth-topline-date{text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:47%;font-size:7px;overflow:hidden}.dashboard{margin-top:32px}.welcome-row{flex-direction:column;align-items:start;gap:9px}.welcome-row h1{font-size:31px}.welcome-date{font-size:8px}.user-management{margin-top:30px}.user-management-heading{flex-direction:column;align-items:flex-start}.user-filters{flex-direction:column;align-items:stretch}.user-filters label,.user-filters .user-search{width:100%;min-width:0}.user-pagination{flex-direction:column;align-items:flex-start}.user-pagination>div{justify-content:space-between;width:100%}.user-dialog{padding:20px}.user-form,.permission-list,.user-role-assignment{grid-template-columns:1fr}.welcome-card,.profile-card{min-height:305px}.profile-card{padding:20px 17px 15px}}@media (width<=360px){.guest-shell{width:calc(100% - 24px)}.brand-logo{width:102px;height:54px}.topbar-actions{gap:6px}.topbar-actions .theme-toggle{width:30px;height:30px}.nav-link{font-size:12px}.button-small{gap:4px;min-height:33px;padding:0 8px;font-size:11px}.site-footer{gap:8px;font-size:9px}}:root[data-theme=dark] body,:root[data-theme=dark] .guest-shell,:root[data-theme=dark] .auth-shell{color:#eee6db;background:#171513}:root[data-theme=dark] .topbar,:root[data-theme=dark] .feature-strip{border-color:#39332e}:root[data-theme=dark] .nav-link,:root[data-theme=dark] .text-link,:root[data-theme=dark] .hero-description,:root[data-theme=dark] .feature-item p,:root[data-theme=dark] .site-footer,:root[data-theme=dark] .auth-card-heading p,:root[data-theme=dark] .auth-switch,:root[data-theme=dark] .form-security,:root[data-theme=dark] .form-divider,:root[data-theme=dark] .field-hint,:root[data-theme=dark] .google-unavailable,:root[data-theme=dark] .auth-topline,:root[data-theme=dark] .auth-topline-date,:root[data-theme=dark] .welcome-row p,:root[data-theme=dark] .welcome-date,:root[data-theme=dark] .verified-note,:root[data-theme=dark] .dashboard-bottom p,:root[data-theme=dark] .sidebar-note p,:root[data-theme=dark] .sidebar-theme{color:#b5a99b}:root[data-theme=dark] .nav-link.router-link-exact-active{color:var(--cinnamon)}:root[data-theme=dark] .user-management-heading h1,:root[data-theme=dark] .user-table td strong,:root[data-theme=dark] .user-dialog-heading h2{color:#eee6db}:root[data-theme=dark] .user-management-heading p,:root[data-theme=dark] .user-table td,:root[data-theme=dark] .user-pagination{color:#b5a99b}:root[data-theme=dark] .hero-copy h1,:root[data-theme=dark] .auth-card-heading h1,:root[data-theme=dark] .auth-aside>p,:root[data-theme=dark] .feature-item h2,:root[data-theme=dark] .art-card-bottom strong,:root[data-theme=dark] .sidebar-brand,:root[data-theme=dark] .sidebar-note strong,:root[data-theme=dark] .sidebar-user strong,:root[data-theme=dark] .welcome-row h1,:root[data-theme=dark] .card-title-row h2,:root[data-theme=dark] .profile-details dd,:root[data-theme=dark] .dashboard-bottom strong{color:#eee6db}:root[data-theme=dark] .button{color:#fff8ef;background:#75462f}:root[data-theme=dark] .button:hover:not(:disabled){background:#8c5639}:root[data-theme=dark] .brand-lockup,:root[data-theme=dark] .sidebar-brand{background:#efe3d4;border-radius:8px;padding:2px 7px}:root[data-theme=dark] .hero-logo-frame{background:#efe3d4}:root[data-theme=dark] .code-mark{color:#f0b18e}:root[data-theme=dark] .hero-art .art-orbit{border-color:#e39a7629}:root[data-theme=dark] .art-card,:root[data-theme=dark] .floating-note,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .profile-card,:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] .user-management-panel,:root[data-theme=dark] .user-dialog{color:#e4d9cc;background:#211e1b;border-color:#39332e}:root[data-theme=dark] .art-card{box-shadow:0 25px 70px #00000047}:root[data-theme=dark] .art-card-top,:root[data-theme=dark] .art-card-bottom small,:root[data-theme=dark] .floating-note,:root[data-theme=dark] .profile-details dt{color:#b0a294}:root[data-theme=dark] .art-card-bottom,:root[data-theme=dark] .feature-item,:root[data-theme=dark] .profile-details>div,:root[data-theme=dark] .sidebar-bottom,:root[data-theme=dark] .user-table td,:root[data-theme=dark] .user-pagination,:root[data-theme=dark] .user-filters,:root[data-theme=dark] .user-table th{border-color:#39332e}:root[data-theme=dark] .user-filters input,:root[data-theme=dark] .user-filters select,:root[data-theme=dark] .user-form input:not([type=checkbox]),:root[data-theme=dark] .user-form select,:root[data-theme=dark] .course-image-field>input[type=file],:root[data-theme=dark] .course-rich-editor,:root[data-theme=dark] .course-rich-content,:root[data-theme=dark] .user-form textarea,:root[data-theme=dark] .user-filter-button{color:#e4d9cc;background:#191715;border-color:#494038}:root[data-theme=dark] .user-table th{background:#26221e}:root[data-theme=dark] .user-form>label:not(.user-checkbox),:root[data-theme=dark] .user-checkbox,:root[data-theme=dark] .role-name-field,:root[data-theme=dark] .permission-list legend,:root[data-theme=dark] .user-role-assignment legend{color:#e3d7c8}:root[data-theme=dark] .role-intro{background:#26221e;border-color:#39332e}:root[data-theme=dark] .role-intro strong{color:#eee6db}:root[data-theme=dark] .role-intro p,:root[data-theme=dark] .role-name-field small,:root[data-theme=dark] .permission-empty{color:#b5a99b}:root[data-theme=dark] .role-name-field input{color:#eee6db;background:#191715;border-color:#494038}:root[data-theme=dark] .role-name-field input:disabled{color:#a99b8d;background:#26221e}:root[data-theme=dark] .permission-list,:root[data-theme=dark] .user-role-assignment{border-color:#39332e}:root[data-theme=dark] .permission-search input,:root[data-theme=dark] .permission-bulk-action,:root[data-theme=dark] .permission-group{color:#e3d7c8;background:#26221e;border-color:#39332e}:root[data-theme=dark] .permission-group-heading,:root[data-theme=dark] .permission-selection-count,:root[data-theme=dark] .permission-option small{color:#b5a99b}:root[data-theme=dark] .classroom-field,:root[data-theme=dark] .course-image-field,:root[data-theme=dark] .course-description-field legend,:root[data-theme=dark] .course-paragraph-block>header,:root[data-theme=dark] .classroom-table th button{color:#e3d7c8}:root[data-theme=dark] .course-description-field{border-color:#39332e}:root[data-theme=dark] .course-paragraph-block,:root[data-theme=dark] .course-rich-toolbar{background:#26221e;border-color:#39332e}:root[data-theme=dark] .course-rich-toolbar button{color:#e3d7c8}:root[data-theme=dark] .course-rich-toolbar button:hover{background:#39332e}:root[data-theme=dark] .course-toolbar-divider{background:#494038}:root[data-theme=dark] .course-rich-content{color:#e3d7c8}:root[data-theme=dark] .course-rich-content:empty:before{color:#a99b8d}:root[data-theme=dark] .course-description-help{color:#b5a99b}:root[data-theme=dark] .course-add-paragraph{color:#f0b18e;background:#26221e;border-color:#554234}:root[data-theme=dark] .classroom-field>input,:root[data-theme=dark] .instructor-picker>input,:root[data-theme=dark] .course-thumbnail-placeholder,:root[data-theme=dark] .selected-instructor,:root[data-theme=dark] .instructor-options,:root[data-theme=dark] .instructor-option{color:#e3d7c8;background:#26221e;border-color:#39332e}:root[data-theme=dark] .instructor-option{border-bottom-color:#39332e}:root[data-theme=dark] .classroom-student-list{border-color:#39332e}:root[data-theme=dark] .classroom-student-option{color:#e3d7c8;border-bottom-color:#39332e}:root[data-theme=dark] .classroom-student-summary,:root[data-theme=dark] .classroom-student-footer,:root[data-theme=dark] .classroom-student-option small{color:#b5a99b}:root[data-theme=dark] .classroom-notice{color:#b8d0a8;background:#20291d;border-color:#3d5135}:root[data-theme=dark] .instructor-option:hover,:root[data-theme=dark] .instructor-option-load-more:hover{background:#332c26}:root[data-theme=dark] .user-dialog-close,:root[data-theme=dark] .user-action-link:hover{color:#f0b18e;background:#35271f}:root[data-theme=dark] .user-action-danger:hover{color:#f1a494;background:#3b2521}:root[data-theme=dark] .code-mark{background:#2a231e;border-color:#49392d}:root[data-theme=dark] .form-divider:before,:root[data-theme=dark] .form-divider:after{background:#39332e}:root[data-theme=dark] .sidebar{background:#1e1b18;border-color:#39332e}:root[data-theme=dark] .sidebar-caption,:root[data-theme=dark] .sidebar-user small{color:#a99b8d}:root[data-theme=dark] .side-link{color:#c9b9a8}:root[data-theme=dark] .side-link.router-link-exact-active,:root[data-theme=dark] .side-link.is-active{color:#f0b18e;background:#35271f}:root[data-theme=dark] .side-link-muted:hover,:root[data-theme=dark] .signout-button:hover{background:#302820}:root[data-theme=dark] .sidebar-note,:root[data-theme=dark] .dashboard-bottom{background:#24201c;border-color:#43362c}:root[data-theme=dark] .avatar,:root[data-theme=dark] .profile-avatar{color:#f0d7c0;background:#574031}:root[data-theme=dark] .icon-button{color:#d2a184}:root[data-theme=dark] .welcome-card{color:#fff5e9;background:#30231b}:root[data-theme=dark] .welcome-card-eyebrow,:root[data-theme=dark] .welcome-card-bottom{color:#e0bea3}:root[data-theme=dark] .welcome-card>p{color:#cbb7a4}:root[data-theme=dark] .welcome-card h2 em{color:#edae8a}:root[data-theme=dark] .verified-note span{color:#c4d5a9;background:#34402e}}@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-\[42px\]{margin-top:42px}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.table{display:table}.max-w-\[1320px\]{max-width:1320px}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.underline{text-decoration-line:underline}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color:#2c2118;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--ink:#2c2118;--coffee:#5c3d2e;--coffee-dark:#3d291f;--cinnamon:#c2774e;--clay:#e8b89a;--cream:#f4f1ec;--paper:#fffcf8;--muted:#7a6d61;--line:#e6ddd2;--sidebar-width:272px;--mobile-bar-height:64px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--shadow-soft:0 10px 30px #3d291f12;--shadow-card:0 18px 48px #3d291f1a;background:#f4f1ec;font-family:Plus Jakarta Sans,Segoe UI,sans-serif;font-weight:400}*{box-sizing:border-box;scrollbar-color:#bda58f transparent;scrollbar-width:thin}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#bda58f padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#9a7154 padding-box padding-box}:root[data-theme=dark] *{scrollbar-color:#6f5a49 transparent}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:#6f5a49 padding-box padding-box}:root[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#96745b padding-box padding-box}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eee6db;--ink:#eee6db;--coffee:#d3a17f;--coffee-dark:#f0e6db;--cinnamon:#e39a76;--clay:#e9b49c;--cream:#171513;--paper:#211e1b;--muted:#b6a99b;--line:#39332e;background:#171513}@media (prefers-reduced-motion:no-preference){:root,:root body,.guest-shell,.auth-shell,.sidebar,.auth-card,.profile-card,.art-card,.floating-note,.theme-toggle{transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--surface:#fffdfa;--surface-muted:#f5f0e9;--surface-raised:#fff;--line:#e8dfd4;--muted:#796b5e;--shadow-soft:0 12px 32px #412a1d12;--shadow-card:0 18px 48px #412a1d17}body{background:radial-gradient(at 92% 2%,#c86f4c0d,#0000 34rem),#f7f4ee}button,input,select,textarea{font-family:inherit}button:not(:disabled),a,select{touch-action:manipulation}.guest-shell{width:min(1320px,100% - 96px)}.topbar{border-color:var(--line);height:88px}.brand-lockup{border-radius:14px;padding:3px 8px}.home-hero{min-height:570px;padding-top:66px;padding-bottom:66px}.hero-copy h1{letter-spacing:-2.6px;font-size:clamp(48px,5.2vw,68px);line-height:1.07}.hero-art{isolation:isolate}.art-card{border:1px solid #ffffffb3;border-radius:24px;box-shadow:0 30px 75px #432a1a2e}.floating-note{box-shadow:var(--shadow-soft);border:1px solid #e8dfd4d9;border-radius:14px}.feature-strip{border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#fffdfad1;border-radius:20px;margin-bottom:34px;padding:20px 10px}.feature-item{padding:7px 22px}.feature-item p{font-size:13px;line-height:1.65}.site-footer{color:var(--muted);font-size:12px}.button{letter-spacing:.01em;background:linear-gradient(135deg,#67432e,#4f3222);border-radius:12px;min-height:48px;padding-inline:23px;box-shadow:0 7px 18px #412a1d24}.button:hover:not(:disabled){background:linear-gradient(135deg,#795038,#5b3926);transform:translateY(-2px);box-shadow:0 10px 24px #412a1d2e}.button-small{border-radius:10px;min-height:42px}.floating-theme-toggle{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom))}.theme-toggle{border-radius:12px;width:40px;height:40px;box-shadow:0 3px 10px #412a1d0d}.nav-link{font-size:14px}.auth-card{border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:22px}.auth-card-heading h1{line-height:1.14}.auth-form{gap:16px}.auth-aside>p{line-height:1.4}.auth-shell{background:radial-gradient(at 86% 0,#c86f4c0d,#0000 36rem),#f7f4ee}.sidebar{border-right-color:var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdfaf5;width:258px;padding:24px 16px 16px;box-shadow:6px 0 30px #412a1d08}.sidebar-brand{margin-bottom:34px}.sidebar-navigation{gap:21px}.sidebar-caption{letter-spacing:1.25px;padding-bottom:9px;font-size:10px}.side-nav{gap:4px}.side-link{border-radius:10px;min-height:43px;padding-inline:12px;font-size:13px}.nav-icon{width:18px;font-size:17px}.sidebar-note{border-radius:13px}.sidebar-bottom{padding-top:14px}.auth-main{margin-left:258px;padding:25px clamp(28px,4vw,58px) 52px}.auth-topline{color:#807264;min-height:34px;font-size:12px}.welcome-row{margin-bottom:25px}.welcome-row h1,.user-management-heading h1{font-family:var(--font-sans);letter-spacing:-1.2px;font-weight:750}.welcome-row h1{font-size:clamp(30px,3vw,40px)}.welcome-row p,.user-management-heading p{color:#796b5e;max-width:680px;font-size:14px;line-height:1.65}.welcome-card,.profile-card{border:1px solid var(--line);min-height:340px;box-shadow:var(--shadow-soft);border-radius:20px}.welcome-card h2{font-size:clamp(25px,2.8vw,34px);line-height:1.25}.welcome-card>p{max-width:440px;font-size:14px;line-height:1.75}.profile-card{padding:27px}.profile-details>div{padding-block:11px}.dashboard-bottom{border-radius:15px;margin-top:22px;padding:18px 22px}.dashboard-bottom p{font-size:13px}.user-management-heading{margin-bottom:21px}.user-management-heading h1{margin-top:6px;font-size:clamp(30px,3vw,38px)}.user-management-heading p{margin-top:7px}.user-management-panel{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px}.user-filters{gap:12px;padding:17px 18px}.user-filters label,.user-form>label:not(.user-checkbox),.classroom-field,.role-name-field{color:#5e4b3b;font-size:13px}.user-filters input,.user-filters select,.user-form input:not([type=checkbox]),.user-form select,.user-form textarea,.classroom-field>input,.instructor-picker>input{color:#403126;background:#fffefa;border-color:#e3d9cd;border-radius:10px;min-height:44px;padding-inline:12px;font-size:14px;transition:border-color .15s,box-shadow .15s,background .15s}.user-form textarea{padding-block:10px}.user-filters input:hover,.user-filters select:hover,.user-form input:not([type=checkbox]):hover,.user-form select:hover,.user-form textarea:hover{border-color:#cbb7a4}.user-filters input:focus,.user-filters select:focus,.user-form input:not([type=checkbox]):focus,.user-form select:focus,.user-form textarea:focus{border-color:#bd7958;outline:0;box-shadow:0 0 0 4px #c86f4c1f}.user-filter-button{color:#614b39;background:#fffefa;border-color:#e3d9cd;border-radius:10px;min-height:40px;padding-inline:14px;font-size:12px;transition:border-color .15s,background .15s,transform .15s}.user-filter-button:hover:not(:disabled){background:#faf4ed;transform:translateY(-1px)}.user-table{min-width:800px}.user-table th{color:#786a5c;letter-spacing:.75px;background:#f7f3ed;padding:14px 17px;font-size:11px}.user-table th button{transition:color .14s}.user-table th button:hover{color:#9c5c3d}.user-table td{color:#665342;border-color:#eee8df;padding:15px 17px;font-size:13px}.user-table td strong{color:#49382a;font-size:14px;font-weight:700}.user-table td small{color:#897a6b;font-size:12px}.user-table tbody tr{transition:background-color .14s}.user-table tbody tr:hover:not(:has(.user-table-message)){background:#fcfaf6}.user-table-message{height:124px;font-size:14px!important}.user-status{background:#f1f6ec;border:1px solid #dfe8d7;border-radius:999px;padding:5px 9px;font-size:11px}.user-status-inactive{background:#fbf4e9;border-color:#eee0cc}.user-status-deleted{background:#fbefec;border-color:#efd7d0}.user-action-link{color:#84543b;border-radius:10px;width:35px;height:35px;margin-left:3px}.user-action-link:hover{color:#633d29;background:#f7eee7;transform:translateY(-1px)}.user-pagination{color:#786a5c;border-color:#eee8df;min-height:64px;padding:12px 18px;font-size:12px}.user-dialog-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1f181394;padding:24px}.user-dialog{border-color:var(--line);background:var(--surface);border-radius:20px;padding:30px;box-shadow:0 30px 90px #19120d52}.user-dialog-heading{margin-bottom:23px}.user-dialog-heading h2{font-family:var(--font-sans);letter-spacing:-.5px;font-size:25px;font-weight:750}.user-dialog-close{background:#f5eee6;border-radius:11px;width:38px;height:38px}.user-form{gap:17px}.user-form>label:not(.user-checkbox){gap:8px}.user-form-actions{gap:11px;padding-top:8px}.form-alert,.classroom-notice{border-radius:11px;font-size:13px;line-height:1.6}.course-description-field,.classroom-student-list,.permission-list,.user-role-assignment,.role-intro,.selected-instructor{border-radius:12px}.role-dialog,.classroom-dialog,.classroom-student-dialog{border-radius:20px}.auth-main .course-management,.auth-main .dashboard{padding-bottom:10px}:root[data-theme=dark]{--surface:#211e1b;--surface-muted:#29241f;--surface-raised:#26221e;--line:#403830;--muted:#b6a99b;--shadow-soft:0 12px 34px #00000030;--shadow-card:0 18px 48px #0000003d}:root[data-theme=dark] .sidebar{border-right-color:var(--line);background:#1e1b18f5}:root[data-theme=dark] .welcome-row p,:root[data-theme=dark] .user-management-heading p{color:#b5a99b}:root[data-theme=dark] .welcome-card{background:radial-gradient(circle at 90% 8%,#ffffff14,#0000 15rem),linear-gradient(145deg,#3d2c21,#2b2019)}:root[data-theme=dark] .user-filters input,:root[data-theme=dark] .user-filters select,:root[data-theme=dark] .user-form input:not([type=checkbox]),:root[data-theme=dark] .user-form select,:root[data-theme=dark] .user-form textarea,:root[data-theme=dark] .classroom-field>input,:root[data-theme=dark] .instructor-picker>input{color:#eee6db;background:#191715;border-color:#494038}:root[data-theme=dark] .user-filters label,:root[data-theme=dark] .user-form>label:not(.user-checkbox),:root[data-theme=dark] .classroom-field,:root[data-theme=dark] .role-name-field{color:#e3d7c8}:root[data-theme=dark] .user-table th{color:#b7a99a;background:#29241f}:root[data-theme=dark] .user-table td strong{color:#eee6db}:root[data-theme=dark] .user-table tbody tr:hover:not(:has(.user-table-message)){background:#28231f}:root[data-theme=dark] .user-filter-button{color:#e3d7c8;background:#26221e;border-color:#494038}:root[data-theme=dark] .user-filter-button:hover:not(:disabled){background:#332c26}:root[data-theme=dark] .user-dialog-close{color:#f0b18e;background:#35271f}:root[data-theme=dark] .user-status{color:#b8d0a8;background:#20291d;border-color:#3d5135}:root[data-theme=dark] .user-status-inactive{color:#d7b889;background:#30271d;border-color:#59472f}@media (width<=900px){.guest-shell{width:min(100% - 52px,760px)}.sidebar{width:218px}.auth-main{margin-left:218px;padding-left:28px;padding-right:28px}.welcome-card,.profile-card{min-height:315px}}@media (width<=640px){.guest-shell{width:calc(100% - 32px)}.topbar{height:72px}.home-hero{padding-top:42px}.hero-copy h1{font-size:clamp(42px,10.5vw,57px)}.hero-description{font-size:15px}.feature-strip{border-radius:16px;padding:11px 16px}.sidebar{gap:7px;height:68px;padding:0 10px}.sidebar-brand{flex:none}.sidebar-navigation{scrollbar-width:none;flex:auto;justify-content:flex-start;min-width:0;overflow-x:auto}.sidebar-navigation::-webkit-scrollbar{display:none}.sidebar-nav-group{flex:none}.sidebar-nav-group .side-nav,.side-nav{margin-right:2px}.side-nav .side-link{border-radius:11px;justify-content:center;width:38px;height:40px;padding:0;font-size:0}.side-link.router-link-exact-active,.side-link.is-active{box-shadow:inset 0 -3px #b96c49}.nav-icon{width:19px;font-size:18px}.sidebar-theme{flex:none;margin-right:0}.sidebar-theme .theme-toggle{width:36px;height:36px}.sidebar-bottom{flex:none;padding-left:7px}.auth-main{padding:18px 16px 34px}.auth-topline{min-height:29px;font-size:10px}.auth-topline-date{font-size:9px}.dashboard,.user-management{margin-top:29px}.welcome-row h1,.user-management-heading h1{font-size:30px}.welcome-row p,.user-management-heading p{font-size:13px}.user-management-heading{gap:13px}.user-management-heading>.button{align-self:stretch}.user-filters{padding:14px}.user-table th{padding:12px 13px}.user-table td{padding:13px}.user-pagination{padding:13px 14px}.user-pagination>div{gap:6px}.user-pagination>div>span{text-align:center;font-size:11px}.user-dialog-backdrop{place-items:end center;padding:12px}.user-dialog,.user-dialog.course-dialog{border-radius:20px 20px 12px 12px;width:100%;max-height:min(92dvh,900px);padding:22px 18px}.user-dialog-heading h2{font-size:22px}.user-form-actions{border-top:1px solid var(--line);background:var(--surface);margin:0 -18px -22px;padding:14px 18px;position:sticky;bottom:-22px}.welcome-card,.profile-card{min-height:auto}.welcome-card{padding:24px}.profile-card{padding:22px}}@media (width<=360px){.guest-shell{width:calc(100% - 24px)}.auth-main{padding-left:12px;padding-right:12px}.sidebar{padding-inline:7px}.sidebar-brand-logo{width:92px}.side-nav .side-link{width:34px}.sidebar-bottom{padding-left:5px}}:root[data-theme=dark] .hero-description,:root[data-theme=dark] .hero-proof,:root[data-theme=dark] .text-link,:root[data-theme=dark] .art-card-top,:root[data-theme=dark] .art-card-bottom small,:root[data-theme=dark] .floating-note,:root[data-theme=dark] .feature-item p{color:#b5a99b}:root[data-theme=dark] .feature-strip{background:#211e1b;border-color:#39332e;box-shadow:0 12px 32px #0000002e}:root[data-theme=dark] .feature-item{border-color:#39332e}:root[data-theme=dark] .feature-number{color:#edb08d}:root[data-theme=dark] .feature-item h2,:root[data-theme=dark] .art-card-bottom strong{color:#eee6db}:root{--font-display:"Fraunces", Georgia, serif;--font-sans:"Plus Jakarta Sans", "Segoe UI", sans-serif}body{font-family:var(--font-sans);background:radial-gradient(at 88% -8%,#c2774e14,#0000 42%),radial-gradient(at 8% 18%,#5c3d2e0a,#0000 36%),#f4f1ec}.hero-copy h1,.auth-card-heading h1,.auth-aside>p,.feature-item h2,.art-card-bottom strong,.sidebar-note strong,.welcome-card h2,.card-title-row h2,.dashboard-bottom strong,.user-dialog-heading h2,.user-management-heading h1,.welcome-row h1{font-family:var(--font-display)}.eyebrow,.auth-kicker,.sidebar-caption,.welcome-card-eyebrow,.aside-credit,.art-card-top{text-transform:uppercase;letter-spacing:.14em}.auth-menu-toggle{border:1px solid var(--line);background:var(--paper);width:42px;height:42px;color:var(--coffee);cursor:pointer;border-radius:12px;flex:none;place-items:center;padding:0;transition:background .16s,border-color .16s,transform .16s;display:inline-grid}.auth-menu-toggle:hover{border-color:var(--cinnamon);color:var(--cinnamon)}.auth-menu-toggle svg{width:18px;height:18px}.theme-toggle-inline{width:40px;height:40px;box-shadow:none;position:static}.floating-theme-toggle{display:none}.guest-shell{flex-direction:column;width:min(1240px,100% - 64px);min-height:100vh;margin:0 auto;display:flex;position:relative}.topbar{border-bottom:1px solid var(--line);z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f1ece0;justify-content:space-between;align-items:center;gap:16px;height:80px;display:flex;position:sticky;top:0}.brand-logo{width:138px;height:68px}.topbar-actions{align-items:center;gap:18px;display:flex}.topbar-mobile-actions{align-items:center;gap:8px;display:none}.guest-mobile-panel{display:none}.nav-link{color:#5a4a3c;font-size:14px;font-weight:600}.button{min-height:46px;font-family:var(--font-sans);background:linear-gradient(145deg,#674332,#3f2a1e);border-radius:12px;font-weight:700;box-shadow:0 8px 20px #3d291f24}.home-hero{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);align-items:center;gap:36px;min-height:min(72vh,620px);padding:56px 0 48px;display:grid}.hero-copy{padding:0}.hero-copy h1{color:var(--coffee-dark);letter-spacing:-.04em;margin:18px 0 16px;font-size:clamp(2.5rem,5vw,4.1rem);font-weight:600;line-height:1.08}.hero-copy h1 span{color:var(--cinnamon);font-style:italic}.hero-description{color:#6f6256;max-width:34rem;font-size:1.05rem;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:28px;display:flex}.feature-strip{border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);background:#fffcf8db;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:28px;padding:8px;display:grid}.feature-item{border-right:1px solid var(--line);border-bottom:0;min-height:auto;padding:22px 24px}.feature-item:last-child{border-right:0}.feature-item h2{font-size:1.05rem}.feature-item p{max-width:none;font-size:.875rem;line-height:1.65}.site-footer{min-height:64px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;display:flex}.auth-page,.register-page{grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr);align-items:center;gap:48px;width:min(960px,100%);min-height:calc(100vh - 160px);margin:0 auto;padding:36px 0 48px;display:grid}.auth-card{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-card);border-radius:22px;padding:32px}.auth-card-heading h1{letter-spacing:-.03em;margin:10px 0 8px;font-size:clamp(2rem,4vw,2.6rem)}.auth-aside>p{font-size:clamp(1.4rem,2.4vw,1.9rem)}.auth-shell{background:radial-gradient(at 92% 0,#c2774e12,#0000 38%),#f4f1ec;min-height:100vh}.auth-mobile-bar{z-index:45;height:var(--mobile-bar-height);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffcf8eb;align-items:center;gap:12px;padding:0 14px;display:none;position:sticky;top:0}.auth-mobile-brand{flex:1;gap:2px;min-width:0;display:grid}.auth-mobile-brand strong,.auth-mobile-brand small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.auth-mobile-brand strong{color:var(--coffee-dark);font-size:.95rem;font-weight:700}.auth-mobile-brand small{color:var(--muted);font-size:.75rem}.auth-backdrop{display:none}.sidebar{width:var(--sidebar-width);z-index:50;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffcf8f5;flex-direction:column;padding:22px 16px 16px;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden;box-shadow:8px 0 32px #3d291f0a}.sidebar-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px;display:flex}.sidebar-brand{border-radius:12px;margin:0;padding:4px 6px}.sidebar-brand-logo{width:142px;height:68px}.sidebar-close{display:none}.sidebar-navigation{scrollbar-width:thin;flex:1;align-content:start;gap:18px;min-height:0;padding-right:2px;display:grid;overflow-y:auto}.sidebar-caption{color:#9a8b7c;margin:0;padding:0 12px 8px;font-size:.68rem;font-weight:700}.side-nav{gap:4px;display:grid}.side-link{color:#655546;border-radius:12px;align-items:center;gap:11px;min-height:44px;padding:0 12px;font-size:.875rem;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:flex}.side-link span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.side-link:hover:not(.is-active):not(.router-link-exact-active){color:var(--coffee);background:#f7f2eb}.side-link.router-link-exact-active,.side-link.is-active{color:#75472f;background:linear-gradient(100deg,#f6ebe3,#fbf6f0);font-weight:700;box-shadow:inset 3px 0 #b96c49}.nav-icon{flex:none;width:18px;font-size:1.05rem}.sidebar-note{background:#faf5ef;border:1px solid #efe4d8;border-radius:14px;margin-top:16px;padding:14px}.sidebar-footer{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.sidebar-theme-row{min-height:44px;color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 4px;font-size:.78rem;display:flex}.sidebar-bottom{border-top:0;align-items:center;gap:10px;margin-top:0;padding:8px 2px 0;display:flex}.auth-main{min-height:100vh;margin-left:var(--sidebar-width);padding:28px clamp(20px,3.5vw,52px) 48px}.auth-topline{color:#7d6f62;align-items:center;gap:8px;min-height:32px;font-size:.8rem;display:flex}.auth-topline-date{margin-left:auto}.dashboard,.user-management{width:min(100%,1280px);margin-top:28px}.dashboard-grid{grid-template-columns:minmax(240px,.95fr) minmax(300px,1.05fr);gap:18px;display:grid}.welcome-row h1{color:var(--coffee-dark);letter-spacing:-.03em;margin:8px 0 6px;font-size:clamp(1.85rem,3vw,2.45rem);font-weight:650}.welcome-row p,.user-management-heading p{color:#6f6256;font-size:.95rem;line-height:1.65}.welcome-card,.profile-card{min-height:320px;box-shadow:var(--shadow-soft);border-radius:20px}.welcome-card{background:radial-gradient(circle at 88% 10%,#ffffff1f,#0000 14rem),linear-gradient(150deg,#63412e,#3a281d);padding:28px}.welcome-card h2{font-size:clamp(1.5rem,2.6vw,2rem)}.profile-card{border:1px solid var(--line);background:var(--paper);padding:26px}.profile-details>div{min-height:44px}.profile-details dt{font-size:.8rem}.profile-details dd{font-size:.9rem}.dashboard-bottom{border:1px solid var(--line);background:#fffcf8e0;border-radius:16px;align-items:center;gap:14px;margin-top:18px;padding:18px 20px;display:flex}.dashboard-bottom-icon{width:44px;height:44px;color:var(--cinnamon);background:#f4e7dc;border-radius:12px;flex:none;place-items:center;font-size:1.25rem;display:grid}.dashboard-bottom strong{font-size:.95rem}.dashboard-bottom p{color:#847668;margin:4px 0 0;font-size:.85rem}.user-management-panel,.user-dialog{border-radius:18px}@media (width<=1100px){.home-hero{gap:24px}.auth-page,.register-page{gap:28px}}@media (width<=960px){.guest-shell{width:calc(100% - 40px)}.topbar-desktop{display:none}.topbar-mobile-actions{display:flex}.guest-mobile-panel{z-index:35;border-bottom:1px solid var(--line);opacity:0;pointer-events:none;background:#fffcf8fa;padding:12px 0 18px;transition:opacity .16s,transform .16s;display:block;position:absolute;top:80px;left:0;right:0;transform:translateY(-8px);box-shadow:0 18px 40px #3d291f1a}.guest-mobile-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.guest-mobile-nav{gap:6px;display:grid}.guest-mobile-link{color:#5a4a3c;border-radius:12px;align-items:center;min-height:46px;padding:0 14px;font-size:.95rem;font-weight:650;display:flex}.guest-mobile-link.router-link-exact-active,.guest-mobile-link:hover{color:#75472f;background:#f6eee6}.home-hero{grid-template-columns:1fr;min-height:auto;padding-top:36px;padding-bottom:28px}.hero-art{order:-1;min-height:360px}.feature-strip{grid-template-columns:1fr;padding:6px}.feature-item,.feature-item:first-child,.feature-item:last-child{border-right:0;border-bottom:1px solid var(--line);padding:18px 16px}.feature-item:last-child{border-bottom:0}.auth-page,.register-page{grid-template-columns:1fr;gap:24px;min-height:auto;padding:28px 0 40px}.auth-aside{order:-1;min-height:auto;padding:8px 4px 0}.auth-aside>p{margin:8px 0 14px;font-size:1.45rem}.auth-mobile-bar{display:flex}.auth-backdrop{z-index:48;opacity:0;pointer-events:none;background:#1c140f6b;transition:opacity .18s;display:block;position:fixed;inset:0}.auth-backdrop.is-visible{opacity:1;pointer-events:auto}.sidebar{transition:transform .22s;transform:translate(-105%);box-shadow:16px 0 48px #1c140f2e;border-top:0!important;border-right:1px solid var(--line)!important;flex-direction:column!important;align-items:stretch!important;width:min(300px,88vw)!important;height:100%!important;max-height:none!important;padding:18px 14px 14px!important;inset:0 auto 0 0!important;overflow:hidden!important}.sidebar.is-open{transform:translate(0)}.sidebar-close{display:inline-grid}.sidebar-brand{margin:0!important}.sidebar-brand-logo{width:126px!important;height:60px!important}.sidebar-caption{display:block!important}.sidebar-note{margin-top:12px;display:block!important}.sidebar-user{display:block!important}.sidebar-theme-row{display:flex!important}.sidebar-navigation{flex:auto!important;justify-content:stretch!important;display:grid!important;overflow:hidden auto!important}.sidebar-nav-group{flex:none!important;display:block!important}.side-nav{margin:0!important;display:grid!important}.side-link,.side-nav .side-link{justify-content:flex-start!important;width:auto!important;height:auto!important;min-height:44px!important;padding:0 12px!important;font-size:.875rem!important}.side-link span{font-size:inherit!important}.side-link.router-link-exact-active,.side-link.is-active{box-shadow:inset 3px 0 #b96c49!important}.nav-icon{width:18px!important;font-size:1.05rem!important}.sidebar-bottom{border-top:0!important;border-left:0!important;margin:0!important;padding:8px 2px 0!important}.auth-main{min-height:calc(100vh - var(--mobile-bar-height));margin-left:0;padding:18px 16px 40px}.auth-topline{display:none}.dashboard-grid{grid-template-columns:1fr}.welcome-card,.profile-card{min-height:auto}}@media (width<=640px){.guest-shell{width:calc(100% - 28px)}.topbar{height:70px}.brand-logo{width:112px;height:56px}.guest-mobile-panel{top:70px}.hero-copy h1{font-size:clamp(2.2rem,10vw,3.1rem)}.hero-description{font-size:.95rem}.hero-art{min-height:320px;overflow:hidden}.art-card{width:min(320px,92%);height:auto;min-height:290px;transform:none}.floating-note{display:none}.auth-card,.register-page .auth-card{padding:24px 18px}.auth-card-heading h1{font-size:1.85rem}.welcome-row{flex-direction:column;align-items:flex-start;gap:8px}.dashboard-bottom{align-items:flex-start}.site-footer{flex-direction:column;align-items:flex-start;padding:16px 0 24px}}@media (width>=961px){.sidebar.is-open{transform:none}}:root[data-theme=dark] body,:root[data-theme=dark] .auth-shell{background:radial-gradient(at 90% 0,#c2774e1a,#0000 38%),#171513}:root[data-theme=dark] .topbar,:root[data-theme=dark] .auth-mobile-bar,:root[data-theme=dark] .guest-mobile-panel{background:#211e1beb;border-color:#3a332d}:root[data-theme=dark] .auth-menu-toggle,:root[data-theme=dark] .theme-toggle-inline{color:#e8d8c8;background:#211e1b;border-color:#3a332d}:root[data-theme=dark] .auth-mobile-brand strong{color:#eee6db}:root[data-theme=dark] .nav-link,:root[data-theme=dark] .guest-mobile-link{color:#cbb9a8}:root[data-theme=dark] .feature-strip,:root[data-theme=dark] .auth-card,:root[data-theme=dark] .profile-card,:root[data-theme=dark] .dashboard-bottom,:root[data-theme=dark] .sidebar-note{background:#211e1b;border-color:#3a332d}:root[data-theme=dark] .sidebar{background:#1e1b18fa;border-color:#3a332d}:root[data-theme=dark] .side-link{color:#c9b9a8}:root[data-theme=dark] .side-link:hover:not(.is-active):not(.router-link-exact-active){background:#2a241f}:root[data-theme=dark] .side-link.router-link-exact-active,:root[data-theme=dark] .side-link.is-active{color:#f0b18e;background:linear-gradient(100deg,#35271f,#2b231e)}:root[data-theme=dark] .dashboard-bottom-icon{color:#f0b18e;background:#35271f}:root[data-theme=dark] .hero-copy h1,:root[data-theme=dark] .welcome-row h1,:root[data-theme=dark] .auth-card-heading h1,:root[data-theme=dark] .card-title-row h2{color:#eee6db}:root[data-theme=dark] .hero-description,:root[data-theme=dark] .welcome-row p,:root[data-theme=dark] .feature-item p{color:#b5a99b}@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}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@layer auth-forms{.auth-form{flex-direction:column;display:flex}.auth-form label{color:#4e3c2c;margin:13px 0 7px;font-size:13px;font-weight:700}.input-wrap{background:#fff;border:1px solid #e4dbd0;border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:0 14px;transition:border-color .15s,box-shadow .15s;display:flex}.input-wrap:focus-within{border-color:#c2774e;box-shadow:0 0 0 4px #c2774e24}.input-icon{color:#bd8269;text-align:center;width:15px;font-size:14px}.lock-icon{font-size:17px}.input-wrap input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;padding:11px 0;font-size:14px}.input-wrap input::placeholder{color:#b5aaa0}.label-row{justify-content:space-between;align-items:center;display:flex}.label-row label{margin-top:13px}.field-hint{color:#a3978b;font-size:11px}.inline-hint{margin-left:5px;font-weight:400}.form-alert{color:#9d482d;background:#fff3ee;border:1px solid #f0c7b8;border-radius:7px;margin:13px 0 4px;padding:10px 12px;font-size:13px;line-height:1.5}.register-page .auth-form label{margin-top:10px}.register-page .input-wrap{min-height:43px}.register-page .input-wrap input{padding-top:9px;padding-bottom:9px}:root[data-theme=dark] .auth-form label{color:#e3d7c8}:root[data-theme=dark] .input-wrap{background:#191715;border-color:#494038}:root[data-theme=dark] .input-wrap input{color:#eee6db}:root[data-theme=dark] .input-wrap input::placeholder{color:#887d72}:root[data-theme=dark] .form-alert{color:#f1b19a;background:#32211c;border-color:#694235}.guest-bootstrap-alert{margin:12px 0 0}}.admin-page{width:min(100%,1280px);margin:28px auto 40px}.admin-breadcrumb{margin-bottom:18px}.admin-breadcrumb-list{flex-wrap:wrap;align-items:center;gap:6px 2px;margin:0;padding:0;list-style:none;display:flex}.admin-breadcrumb-item{color:#8a7b6d;align-items:center;gap:6px;font-size:.8rem;font-weight:600;display:inline-flex}.admin-breadcrumb-item:not(:last-child):after{color:#c0b3a5;content:"/";margin-left:6px}.admin-breadcrumb-link{color:#6d5a4a;text-decoration:none;transition:color .14s}.admin-breadcrumb-link:hover{color:#b96c49}.admin-breadcrumb-current{color:#4d3a2b;font-weight:700}.admin-page-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.admin-page-header-copy{flex:1;min-width:0}.admin-page-header h1{color:#3d291f;font-family:var(--font-display,"Fraunces", Georgia, serif);letter-spacing:-.03em;margin:8px 0 6px;font-size:clamp(1.7rem,2.8vw,2.25rem);font-weight:650;line-height:1.15}.admin-page-header p{color:#6f6256;max-width:46rem;margin:0;font-size:.95rem;line-height:1.65}.admin-page-meta{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.admin-page-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.project-submission-page-header .admin-page-actions{align-self:center}.project-submission-refresh{justify-content:center;align-items:center;gap:7px;line-height:1.2;display:inline-flex}.project-submission-refresh svg{flex:none;width:15px;height:15px;display:block}.admin-chip{color:#6a5646;background:#fffaf5;border:1px solid #e7ddd2;border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:.75rem;font-weight:650;display:inline-flex}.admin-chip-accent{color:#8a5235;background:#f8eee6;border-color:#ecd6c7}.admin-relation-bar{border:1px solid var(--line,#e6ddd2);box-shadow:var(--shadow-soft,0 10px 30px #3d291f12);background:#fffcf8e0;border-radius:16px;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:16px;padding:14px 16px;display:flex}.admin-relation-bar strong{color:#4a382a;font-size:.82rem}.admin-relation-path{color:#7a6b5d;flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;display:flex}.admin-relation-path span{color:#5c493a;background:#f5efe8;border-radius:8px;align-items:center;gap:6px;padding:4px 9px;font-weight:650;display:inline-flex}.admin-panel{border:1px solid var(--line,#e6ddd2);background:var(--paper,#fffcf8);box-shadow:var(--shadow-soft,0 10px 30px #3d291f12);border-radius:18px;overflow:hidden}.admin-panel+.admin-panel{margin-top:16px}.admin-panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 0;display:flex}.admin-panel-heading h2{color:#433124;font-family:var(--font-sans,"Plus Jakarta Sans", sans-serif);margin:0;font-size:1.05rem;font-weight:750}.admin-panel-heading p{color:#7a6b5d;margin:4px 0 0;font-size:.85rem;line-height:1.5}.admin-target-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px 18px;display:grid}.admin-target-field{color:#5c493a;gap:6px;min-width:0;font-size:.8rem;font-weight:700;display:grid}.admin-target-field select{color:#403126;background:#fffefa;border:1px solid #e3d9cd;border-radius:12px;width:100%;min-height:44px;padding:0 12px;font-size:.9rem}.admin-action-group{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.admin-action{color:#6d4a36;cursor:pointer;background:#fffdfa;border:1px solid #eadfd3;border-radius:10px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.75rem;font-weight:700;text-decoration:none;transition:background .14s,border-color .14s,color .14s,transform .14s;display:inline-flex}.admin-action:hover{color:#75472f;background:#faf3ec;border-color:#d7b49d;transform:translateY(-1px)}.admin-action svg{flex:none;width:14px;height:14px}.admin-action-danger{color:#a34939}.admin-action-danger:hover{color:#873b2e;background:#fbefec;border-color:#e3b8ae}.admin-action-icon{justify-content:center;width:34px;height:34px;padding:0}.admin-empty-state{text-align:center;align-content:center;place-items:center;gap:8px;min-height:180px;padding:36px 24px;display:grid}.admin-empty-icon{color:#b96c49;background:#f4ebe3;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:4px;font-size:1.35rem;display:grid}.admin-empty-state strong{color:#4a382a;font-size:1rem}.admin-empty-state p{color:#7a6b5d;max-width:28rem;margin:0;font-size:.875rem;line-height:1.6}.admin-empty-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.admin-review-list{gap:14px;display:grid}.admin-review-card{border:1px solid var(--line,#e6ddd2);background:var(--paper,#fffcf8);box-shadow:var(--shadow-soft,0 10px 30px #3d291f12);border-radius:18px;gap:16px;padding:20px;display:grid}.admin-review-card>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.admin-review-card h2{color:#3d291f;font-family:var(--font-display,"Fraunces", Georgia, serif);margin:6px 0 4px;font-size:1.25rem;font-weight:600}.admin-review-card header p{color:#7a6b5d;margin:0;font-size:.85rem}.admin-review-meta{flex-wrap:wrap;gap:8px;display:flex}.admin-review-section h3{color:#5c493a;margin:0 0 8px;font-size:.82rem;font-weight:750}.admin-review-content,.admin-review-instructions{color:#5a4a3c;background:#faf7f2;border:1px solid #eee5da;border-radius:12px;margin:0;padding:12px 14px;font-size:.9rem;line-height:1.65}.admin-review-content{white-space:pre-wrap}.admin-review-instructions{white-space:normal;overflow-wrap:anywhere;min-width:0}.admin-review-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-review-form label{color:#5c493a;gap:6px;font-size:.8rem;font-weight:700;display:grid}.admin-review-form input,.admin-review-form select,.admin-review-form textarea{color:#403126;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #e3d9cd;border-radius:10px;padding:8px 12px;font-size:.9rem}.admin-review-form textarea{resize:vertical;min-height:88px}.admin-review-feedback,.admin-review-form>.button{grid-column:1/-1}.admin-review-pagination{color:#7a6b5d;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;font-size:.8rem;display:flex}.user-management.course-management .user-actions{white-space:normal;min-width:0}.user-management.course-management .user-table td.user-actions{text-align:right}.question-bank-title-link{color:inherit;text-decoration:none}.question-bank-title-link:hover strong{color:#b96c49}.hierarchy-item-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}@media (width<=960px){.admin-page-header{flex-direction:column}.admin-page-actions{justify-content:stretch;width:100%}.admin-page-actions>.button,.admin-page-actions>.user-filter-button{flex:auto}.admin-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.admin-page{margin-top:18px}.admin-target-grid{grid-template-columns:1fr}.admin-review-card>header,.admin-review-form{flex-direction:column;grid-template-columns:1fr}.admin-action span{display:none}.admin-action{justify-content:center;width:34px;height:34px;padding:0}}:root[data-theme=dark] .admin-breadcrumb-item,:root[data-theme=dark] .admin-page-header p,:root[data-theme=dark] .admin-panel-heading p,:root[data-theme=dark] .admin-empty-state p,:root[data-theme=dark] .admin-review-card header p{color:#b5a99b}:root[data-theme=dark] .admin-breadcrumb-current,:root[data-theme=dark] .admin-page-header h1,:root[data-theme=dark] .admin-panel-heading h2,:root[data-theme=dark] .admin-empty-state strong,:root[data-theme=dark] .admin-review-card h2{color:#eee6db}:root[data-theme=dark] .admin-breadcrumb-link{color:#d2c2b2}:root[data-theme=dark] .admin-chip,:root[data-theme=dark] .admin-relation-path span{color:#e3d7c8;background:#2a241f;border-color:#3a332d}:root[data-theme=dark] .admin-chip-accent{color:#f0b18e;background:#35271f;border-color:#4a372c}:root[data-theme=dark] .admin-relation-bar,:root[data-theme=dark] .admin-panel,:root[data-theme=dark] .admin-review-card{background:#211e1b;border-color:#3a332d}:root[data-theme=dark] .admin-action,:root[data-theme=dark] .admin-target-field select,:root[data-theme=dark] .admin-review-form input,:root[data-theme=dark] .admin-review-form select,:root[data-theme=dark] .admin-review-form textarea{color:#eee6db;background:#191715;border-color:#494038}:root[data-theme=dark] .admin-action:hover{color:#f0b18e;background:#302820;border-color:#6a5040}:root[data-theme=dark] .admin-empty-icon{color:#f0b18e;background:#35271f}:root[data-theme=dark] .admin-review-content,:root[data-theme=dark] .admin-review-instructions{color:#e3d7c8;background:#26221e;border-color:#3a332d}
