/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--sk-size:40px;--sk-color:#333;}.ajax-throbber{position:relative;width:40px;height:40px;}.ajax-progress.ajax-progress-fullscreen{position:fixed;z-index:11000;top:0;right:0;bottom:0;left:0;overflow:visible;width:2em;height:2em;margin:auto;background-color:transparent;background-image:none;}
.progress{position:relative;}.progress__track{min-width:100px;max-width:100%;height:16px;margin-top:5px;border:1px solid;background-color:#fff;}.progress__bar{width:3%;min-width:3%;max-width:100%;height:16px;background-color:#000;}.progress__description,.progress__percentage{overflow:hidden;margin-top:0.2em;color:#555;font-size:0.875em;}.progress__description{float:left;}[dir="rtl"] .progress__description{float:right;}.progress__percentage{float:right;}[dir="rtl"] .progress__percentage{float:left;}.progress--small .progress__track{height:7px;}.progress--small .progress__bar{height:7px;background-size:20px 20px;}
.ajax-progress{display:inline-block;padding:1px 5px 2px 5px;}[dir="rtl"] .ajax-progress{float:right;}.ajax-progress-throbber .throbber{display:inline;padding:1px 6px 2px;background:transparent url(/core/misc/throbber-active.gif) no-repeat 0 center;}.ajax-progress-throbber .message{display:inline;padding:1px 5px 2px;}tr .ajax-progress-throbber .throbber{margin:0 2px;}.ajax-progress-bar{width:16em;}.ajax-progress-fullscreen{position:fixed;z-index:1261;top:48.5%;left:49%;width:24px;height:24px;padding:4px;opacity:0.9;border-radius:7px;background-color:#232323;background-image:url(/core/misc/loading-small.gif);background-repeat:no-repeat;background-position:center center;}[dir="rtl"] .ajax-progress-fullscreen{right:49%;left:auto;}
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.fieldgroup{padding:0;border-width:0;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.js details:not([open]) .details-wrapper{display:none;}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.item-list__comma-list,.item-list__comma-list li{display:inline;}.item-list__comma-list{margin:0;padding:0;}.item-list__comma-list li::after{content:", ";}.item-list__comma-list li:last-child::after{content:"";}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
.nowrap{white-space:nowrap;}
.position-container{position:relative;}
.reset-appearance{margin:0;padding:0;border:0 none;background:transparent;line-height:inherit;-webkit-appearance:none;appearance:none;}
.resize-none{resize:none;}.resize-vertical{min-height:2em;resize:vertical;}.resize-horizontal{max-width:100%;resize:horizontal;}.resize-both{max-width:100%;min-height:2em;resize:both;}
.system-status-counter__status-icon{display:inline-block;width:25px;height:25px;vertical-align:middle;}.system-status-counter__status-icon::before{display:block;width:100%;height:100%;content:"";background-repeat:no-repeat;background-position:center 2px;background-size:16px;}.system-status-counter__status-icon--error::before{background-image:url(/core/misc/icons/e32700/error.svg);}.system-status-counter__status-icon--warning::before{background-image:url(/core/misc/icons/e29700/warning.svg);}.system-status-counter__status-icon--checked::before{background-image:url(/core/misc/icons/73b355/check.svg);}
.system-status-report-counters__item{width:100%;margin-bottom:0.5em;padding:0.5em 0;text-align:center;white-space:nowrap;background-color:rgba(0,0,0,0.063);}@media screen and (min-width:60em){.system-status-report-counters{display:flex;flex-wrap:wrap;justify-content:space-between;}.system-status-report-counters__item--half-width{width:49%;}.system-status-report-counters__item--third-width{width:33%;}}
.system-status-general-info__item{margin-top:1em;padding:0 1em 1em;border:1px solid #ccc;}.system-status-general-info__item-title{border-bottom:1px solid #ccc;}
.tablesort{display:inline-block;width:16px;height:16px;background-size:100%;}.tablesort--asc{background-image:url(/core/misc/icons/787878/twistie-down.svg);}.tablesort--desc{background-image:url(/core/misc/icons/787878/twistie-up.svg);}
:where([dir="rtl"] [class*="fx-"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable]),[dir="rtl"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable])[class*="fx-"],[dir="rtl"] [class*="fd-"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable]),[dir="rtl"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable])[class*="fd-"],[dir="rtl"] [class*="fetexplorer"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable]),[dir="rtl"] :is(p,div,li,dd,dt,td,figcaption,legend,blockquote,address,output,h1,h2,h3,h4,h5,h6,label,summary,input,textarea,select,[contenteditable])[class*="fetexplorer"]){unicode-bidi:plaintext;text-align:right;}:where([dir="rtl"] [class*="fx-"] :is(button,th,caption,optgroup,option),[dir="rtl"] :is(button,th,caption,optgroup,option)[class*="fx-"],[dir="rtl"] [class*="fd-"] :is(button,th,caption,optgroup,option),[dir="rtl"] :is(button,th,caption,optgroup,option)[class*="fd-"],[dir="rtl"] [class*="fetexplorer"] :is(button,th,caption,optgroup,option),[dir="rtl"] :is(button,th,caption,optgroup,option)[class*="fetexplorer"],[dir="rtl"] [class*="fx-"] :is(button,label,summary,a) > span,[dir="rtl"] [class*="fd-"] :is(button,label,summary,a) > span,[dir="rtl"] [class*="fetexplorer"] :is(button,label,summary,a) > span){unicode-bidi:plaintext;}:where([dir="rtl"] [class*="fx-"])::placeholder,:where([dir="rtl"] [class*="fd-"])::placeholder,:where([dir="rtl"] [class*="fetexplorer"])::placeholder,:where([dir="rtl"] [class*="fx-"] *)::placeholder,:where([dir="rtl"] [class*="fd-"] *)::placeholder,:where([dir="rtl"] [class*="fetexplorer"] *)::placeholder{unicode-bidi:plaintext;}
.fxdlg-ov{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:rgba(17,24,39,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .16s ease;}.fxdlg-ov.is-open{opacity:1;pointer-events:auto;}.fxdlg{--fxdlg-surface:#fff;--fxdlg-fg:#111827;--fxdlg-body:#374151;--fxdlg-x:#9ca3af;--fxdlg-x-hover:#4b5563;--fxdlg-btn-bg:#fff;--fxdlg-btn-border:#e6e8f0;--fxdlg-btn-fg:#111827;--fxdlg-btn-hover:#f8fafc;--fxdlg-ic-bg:#eef2ff;--fxdlg-ic-fg:#4338ca;--fxdlg-ic-danger-bg:#fef2f2;--fxdlg-ic-danger-fg:#dc2626;--fxdlg-ic-warn-bg:#fffbeb;--fxdlg-ic-warn-fg:#d97706;--fxdlg-shadow:0 18px 50px rgba(16,24,40,.22);width:420px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow:auto;background:var(--fxdlg-surface);color:var(--fxdlg-fg);border-radius:14px;box-shadow:var(--fxdlg-shadow);transform:translateY(8px) scale(.98);transition:transform .18s ease;font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,sans-serif;}.fxdlg-ov.is-open .fxdlg{transform:none;}.fxdlg-ov--wide .fxdlg{width:620px;}.fxdlg__head{display:flex;align-items:flex-start;gap:12px;padding:18px 20px 8px;}.fxdlg__ic{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--fxdlg-ic-bg);color:var(--fxdlg-ic-fg);}.fxdlg__ic svg{width:19px;height:19px;}.fxdlg__ic--danger{background:var(--fxdlg-ic-danger-bg);color:var(--fxdlg-ic-danger-fg);}.fxdlg__ic--warn{background:var(--fxdlg-ic-warn-bg);color:var(--fxdlg-ic-warn-fg);}.fxdlg__t{margin:0;padding-top:6px;flex:1;font-size:16px;font-weight:700;color:var(--fxdlg-fg);}.fxdlg__x{flex:none;border:none;background:none;font-size:18px;line-height:1;color:var(--fxdlg-x);cursor:pointer;padding:4px;}.fxdlg__x:hover{color:var(--fxdlg-x-hover);}.fxdlg__body{margin:0;padding:0 20px 4px 68px;color:var(--fxdlg-body);white-space:pre-line;}.fxdlg__foot{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px 18px;}.fxdlg__btn{min-height:40px;padding:0 16px;border-radius:9px;border:1px solid var(--fxdlg-btn-border);background:var(--fxdlg-btn-bg);font:inherit;font-weight:600;color:var(--fxdlg-btn-fg);cursor:pointer;transition:filter .12s,background .12s;}.fxdlg__btn:hover{background:var(--fxdlg-btn-hover);}.fxdlg__btn--primary{background:linear-gradient(180deg,#6366f1,#4f46e5);border:none;color:#fff;}.fxdlg__btn--primary:hover{filter:brightness(1.06);background:linear-gradient(180deg,#6366f1,#4f46e5);}.fxdlg__btn--danger{background:#dc2626;border:none;color:#fff;}.fxdlg__btn--danger:hover{filter:brightness(1.06);}.fxdlg__btn:focus-visible{outline:2px solid #4f46e5;outline-offset:2px;}@media (prefers-reduced-motion:reduce){.fxdlg-ov,.fxdlg{transition:none;}}.fxdlg-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(16px);background:#1e293b;color:#fff;border-radius:12px;border-left:4px solid #10b981;padding:12px 18px;display:flex;align-items:center;gap:10px;font:500 13.5px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.30);z-index:100010;max-width:min(480px,90vw);opacity:0;transition:opacity .25s ease,transform .25s ease,bottom .3s ease;}.fxdlg-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}.fxdlg-toast--error{border-left-color:#ef4444;}.fxdlg-toast--warning{border-left-color:#f59e0b;}.fxdlg-toast--info{border-left-color:#6366f1;}.fxdlg-toast__ic{width:18px;height:18px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;line-height:1;color:#fff;background:#10b981;}.fxdlg-toast--error   .fxdlg-toast__ic{background:#ef4444;}.fxdlg-toast--warning .fxdlg-toast__ic{background:#f59e0b;}.fxdlg-toast--info    .fxdlg-toast__ic{background:#6366f1;}.fxdlg-toast__msg{min-width:0;}@media (prefers-reduced-motion:reduce){.fxdlg-toast{transition:opacity .25s ease;}}:root[data-theme="dark"] .fxdlg{--fxdlg-surface:#1a2138;--fxdlg-fg:#f1f5f9;--fxdlg-body:#cbd5e1;--fxdlg-x:#94a3b8;--fxdlg-x-hover:#e2e8f0;--fxdlg-btn-bg:#232a44;--fxdlg-btn-border:#394264;--fxdlg-btn-fg:#f1f5f9;--fxdlg-btn-hover:#2c3552;--fxdlg-ic-bg:#2a2f4d;--fxdlg-ic-fg:#a5b4fc;--fxdlg-ic-danger-bg:#3b1620;--fxdlg-ic-danger-fg:#fca5a5;--fxdlg-ic-warn-bg:#3a2a0d;--fxdlg-ic-warn-fg:#fcd34d;--fxdlg-shadow:0 18px 50px rgba(0,0,0,.55);}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fxdlg{--fxdlg-surface:#1a2138;--fxdlg-fg:#f1f5f9;--fxdlg-body:#cbd5e1;--fxdlg-x:#94a3b8;--fxdlg-x-hover:#e2e8f0;--fxdlg-btn-bg:#232a44;--fxdlg-btn-border:#394264;--fxdlg-btn-fg:#f1f5f9;--fxdlg-btn-hover:#2c3552;--fxdlg-ic-bg:#2a2f4d;--fxdlg-ic-fg:#a5b4fc;--fxdlg-ic-danger-bg:#3b1620;--fxdlg-ic-danger-fg:#fca5a5;--fxdlg-ic-warn-bg:#3a2a0d;--fxdlg-ic-warn-fg:#fcd34d;--fxdlg-shadow:0 18px 50px rgba(0,0,0,.55);}}
@layer ds-components{.fx-pbadge{--c:#64748b;display:inline-grid;place-items:center;flex:none;vertical-align:middle;width:28px;height:28px;border-radius:8px;color:#fff;background:linear-gradient(135deg,color-mix(in srgb,var(--c) 86%,#fff),var(--c));}.fx-pbadge svg{width:60%;height:60%;display:block;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}.fx-pbadge--sm{width:22px;height:22px;border-radius:6px;}.fx-pbadge--lg{width:44px;height:44px;border-radius:12px;}.fx-pbadge--free{--c:#64748b;}.fx-pbadge--basic{--c:#16a34a;}.fx-pbadge--pro{--c:#6366f1;}.fx-pbadge--max{--c:#d97706;}.fx-pbadge--enterprise{--c:#7c3aed;}}@supports not (background:color-mix(in srgb,red,blue)){.fx-pbadge{background:var(--c);}}
.fx-theme-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 12px;margin-top:4px;border-top:1px solid var(--line,var(--s-200,#e2e8f0));}.fx-theme-row__t{font-size:13.5px;font-weight:550;color:var(--ink,var(--s-800,#334155));white-space:nowrap;}.fx-theme{display:inline-flex;flex:none;border:1px solid var(--line,var(--s-200,#e2e8f0));border-radius:9px;overflow:hidden;background:var(--surface,var(--card,#fff));}.fx-theme__btn{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:5px 9px;border:none;background:transparent;font:inherit;font-size:12px;font-weight:600;line-height:1;cursor:pointer;color:var(--muted,var(--s-500,#64748b));transition:background .12s ease,color .12s ease;}.fx-theme__btn + .fx-theme__btn{border-left:1px solid var(--line,var(--s-200,#e2e8f0));}.fx-theme__btn:hover{color:var(--ink,var(--s-800,#1e293b));background:var(--bg-1,var(--surface-2,rgba(127,127,127,.08)));}.fx-theme__btn.is-on{background:var(--brand,var(--b-600,#2563eb));color:#fff;}.fetexplorer-app .fx-theme__btn.is-on{background:var(--i-600,#4f46e5);}.fx-theme__btn:focus-visible{outline:2px solid var(--brand,var(--b-600,#2563eb));outline-offset:-2px;}.fx-theme__btn svg{width:14px;height:14px;flex:none;}@media (max-width:520px){.fx-theme__lbl{display:none;}.fx-theme__btn{padding:8px 11px;}}
#sliding-popup{background:url(/modules/contrib/eu_cookie_compliance/images/gradient.png) center center scroll repeat-y transparent;}.sliding-popup-bottom,.sliding-popup-top{margin:0;padding:0;width:100%;z-index:99999;left:0;text-align:center;}.sliding-popup-bottom{position:fixed;}.sliding-popup-top{position:relative;}.eu-cookie-compliance-content{margin:0 auto;max-width:80%;display:inline-block;text-align:left;width:100%;position:relative;}.eu-cookie-compliance-buttons{float:right;margin:0 0 1em 0;max-width:40%;}.eu-cookie-compliance-categories-buttons{margin:0 0 1em 0;max-width:60%;float:left;}[dir="rtl"] .eu-cookie-compliance-buttons{float:left;}[dir="rtl"] .eu-cookie-compliance-categories-buttons{float:right;}.eu-cookie-compliance-more-button{cursor:pointer;display:inline;height:auto;margin:0;padding:0;border:none;text-decoration:underline;background:none;}.eu-cookie-compliance-secondary-button{cursor:pointer;border:none;background:none;margin-top:1em;padding:0 8px;vertical-align:middle;}.disagree-button.eu-cookie-compliance-more-button,.eu-cookie-compliance-agree-button,.eu-cookie-compliance-default-button,.eu-cookie-compliance-hide-button,.eu-cookie-compliance-more-button-thank-you,.eu-cookie-withdraw-button,.eu-cookie-compliance-save-preferences-button{cursor:pointer;margin-right:5px;margin-top:1em;vertical-align:middle;overflow:visible;width:auto;-moz-box-shadow:inset 0 1px 0 0 #ffffff;-webkit-box-shadow:inset 0 1px 0 0 #ffffff;box-shadow:inset 0 1px 0 0 #ffffff;background-color:#ededed;background-image:-moz-linear-gradient(top,#ededed 5%,#dfdfdf 100%);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(5%,#ededed),color-stop(100%,#dfdfdf));background-image:-webkit-linear-gradient(top,#ededed 5%,#dfdfdf 100%);background-image:-o-linear-gradient(top,#ededed 5%,#dfdfdf 100%);background-image:-ms-linear-gradient(top,#ededed 5%,#dfdfdf 100%);background-image:linear-gradient(to bottom,#ededed 5%,#dfdfdf 100%);-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;border:1px solid #dcdcdc;color:#000;font-family:Arial,sans-serif;font-weight:bold;padding:4px 8px;text-decoration:none;text-shadow:1px 1px 0 #ffffff;}[dir="rtl"] .eu-cookie-compliance-buttons button{-moz-box-shadow:inset 0 0 0 1px #ffffff;-webkit-box-shadow:inset 0 0 0 1px #ffffff;box-shadow:inset 0 0 0 1px #ffffff;}.disagree-button.eu-cookie-compliance-more-button:hover,.eu-cookie-compliance-agree-button:hover,.eu-cookie-compliance-default-button:hover,.eu-cookie-compliance-hide-button:hover,.eu-cookie-compliance-more-button-thank-you:hover,.eu-cookie-withdraw-button:hover{background-color:#dfdfdf;background-image:-moz-linear-gradient(top,#dfdfdf 5%,#ededed 100%);background-image:-webkit-gradient(linear,left top,left bottom,color-stop(5%,#dfdfdf),color-stop(100%,#ededed));background-image:-webkit-linear-gradient(top,#dfdfdf 5%,#ededed 100%);background-image:-o-linear-gradient(top,#dfdfdf 5%,#ededed 100%);background-image:-ms-linear-gradient(top,#dfdfdf 5%,#ededed 100%);background-image:linear-gradient(to bottom,#dfdfdf 5%,#ededed 100%);}.disagree-button.eu-cookie-compliance-more-button:active,.eu-cookie-compliance-agree-button:active,.eu-cookie-compliance-default-button:active,.eu-cookie-compliance-hide-button:active,.eu-cookie-compliance-more-button-thank-you:active,.eu-cookie-withdraw-button:active{position:relative;top:1px;}.eu-cookie-compliance-message{float:left;margin:5px 0 0;max-width:60%;}.eu-cookie-compliance-banner--categories .eu-cookie-compliance-message{max-width:100%;}.eu-cookie-compliance-categories{clear:both;padding-top:1em;}.eu-cookie-compliance-categories label{display:inline;}[dir="rtl"] .eu-cookie-compliance-message{float:right;text-align:right;}.eu-cookie-compliance-message h1,.eu-cookie-compliance-message h2,.eu-cookie-compliance-message h3,.eu-cookie-compliance-message p{font-weight:bold;line-height:1.4;margin:0 0 5px 0;}.eu-cookie-compliance-message h1,.eu-cookie-compliance-message h2,.eu-cookie-compliance-message h3,.eu-cookie-compliance-message p,.eu-cookie-compliance-message button,.eu-cookie-compliance-category label{color:#fff;}.eu-cookie-compliance-message h1{font-size:24px;}.eu-cookie-compliance-message h2{font-size:16px;}.eu-cookie-compliance-message h3{font-size:12px;}.eu-cookie-compliance-message p{font-size:12px;display:inline;}.eu-cookie-withdraw-tab{padding:4px 7px;cursor:pointer;}.sliding-popup-bottom .eu-cookie-withdraw-tab{border-width:2px 2px 0;border-radius:5px 5px 0 0;}.sliding-popup-top .eu-cookie-withdraw-tab{border-width:0 2px 2px;border-radius:0 0 5px 5px;}.eu-cookie-withdraw-wrapper.sliding-popup-top,.eu-cookie-withdraw-wrapper.sliding-popup-top .eu-cookie-withdraw-banner{transform:scaleY(-1);}.eu-cookie-withdraw-tab{position:absolute;top:0;transform:translate(-50%,-100%);left:50%;}.eu-cookie-withdraw-wrapper.sliding-popup-top .eu-cookie-withdraw-tab{transform:translate(-50%,-100%) scaleY(-1);}.eu-cookie-compliance-close-button{background:url(/modules/contrib/eu_cookie_compliance/images/close.png);width:24px;height:24px;border-width:0;font-size:0;position:absolute;right:2px;top:-12px;cursor:pointer;}body:not(.eu-cookie-compliance-popup-open) .eu-cookie-compliance-close-button{display:none;}@media screen and (max-width:600px){.eu-cookie-compliance-content{max-width:95%;}.eu-cookie-compliance-categories,.eu-cookie-compliance-message{max-width:100%;}.eu-cookie-compliance-buttons{clear:both;float:none;max-width:100%;margin:5px 0 1em;}.eu-cookie-compliance-buttons.eu-cookie-compliance-has-categories{float:right;}.eu-cookie-compliance-banner--categories .eu-cookie-compliance-buttons{position:initial;bottom:unset;right:unset;}}
.ajax-throbber.sk-flow{display:flex;justify-content:space-between;width:calc(var(--sk-size) * 1.3);height:calc(var(--sk-size) * 1.3);}.ajax-throbber .sk-flow-dot{width:25%;height:25%;animation:sk-flow 1.4s cubic-bezier(0.455,0.03,0.515,0.955) 0s infinite
    both;border-radius:50%;background-color:var(--sk-color);}.ajax-throbber .sk-flow-dot:nth-child(1){animation-delay:-0.3s;}.ajax-throbber .sk-flow-dot:nth-child(2){animation-delay:-0.15s;}@keyframes sk-flow{0%,80%,100%{transform:scale(0.3);}40%{transform:scale(1);}}
.fx-pubnav{display:flex;align-items:center;}.fx-pubnav ul{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:2px;margin:0;padding:0;list-style:none;}.fx-pubnav li{margin:0;padding:0;list-style:none;}.fx-pubnav li::before{content:none;}.fx-pubnav a{display:inline-flex;align-items:center;min-height:48px;padding:0 12px;font-size:15px;font-weight:500;line-height:1;white-space:nowrap;color:inherit;text-decoration:none;border-radius:8px;transition:background-color 140ms cubic-bezier(.4,0,.2,1);}.fx-pubnav a:hover,.fx-pubnav a:focus{text-decoration:none;color:inherit;}.fx-pubnav a:focus-visible{outline:2px solid currentColor;outline-offset:-3px;}.fx-pubnav{margin-left:auto;}.fx-pubnav-toggle{display:none;}#landingpage .fx-pubnav a.fx-pubnav-login{display:none;}@media (max-width:767px){.fx-pubnav-toggle{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border-radius:10px;border:1.5px solid rgba(255,255,255,0.7);background:rgba(255,255,255,0.08);color:#fff;cursor:pointer;flex:none;}.fx-pubnav-toggle[aria-expanded="true"]{background:rgba(255,255,255,0.22);}.fx-pubnav-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px;}:is(#landingpage,.fx-public-host) .landing-header{position:relative;}:is(#landingpage,.fx-public-host) .fx-pubnav{display:none;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav{display:block;position:absolute;left:12px;right:12px;top:calc(100% + 6px);z-index:1000;margin:0;padding:6px;background:#fff;border-radius:14px;box-shadow:0 18px 40px rgba(15,23,42,0.28);}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav ul{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav li{display:block;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav li + li{border-top:1px solid #eef0f5;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a{display:flex;width:100%;min-height:48px;padding:0 14px;justify-content:flex-start;font-size:16px;font-weight:600;color:#1f2430 !important;background:transparent;border-radius:10px;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a:hover,:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a:focus{background:#f5f6fa;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a.is-active,:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a.active{background:#eef0ff;color:#4338ca !important;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a:focus-visible{outline:2px solid #4f46e5;outline-offset:-2px;}:is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a::before{filter:brightness(0.2);}#landingpage .nav-buttons > a.fx-header-login{display:none;}#landingpage .landing-header.is-nav-open .fx-pubnav a.fx-pubnav-login{display:flex;margin-top:6px;border-top:1px solid #e2e5ee;border-radius:0 0 10px 10px;color:#4338ca !important;}html[dir="rtl"] :is(#landingpage,.fx-public-host) .landing-header.is-nav-open .fx-pubnav a::before{background-position:right 0.25rem;}}.fx-public-host .landing-header.fx-fit--no-word .logo span{display:none;}.fx-public-host .landing-header.fx-fit--stack{flex-wrap:wrap;}.fx-public-host .landing-header.fx-fit--stack .fx-pubnav{flex:1 0 100%;order:3;margin-left:0;justify-content:center;background:rgba(0,0,0,0.10);border-radius:8px;}.fx-public-host .landing-header.fx-fit--stack .fx-pubnav ul{flex-wrap:wrap;justify-content:center;}.fx-public-host .landing-header.fx-fit--stack .fx-pubnav a{padding:0 10px;}@media (prefers-reduced-motion:reduce){.fx-pubnav a{transition:none;}}#landingpage .fx-pubnav a{padding:0 14px;color:#fff;}#landingpage .fx-pubnav a:hover,#landingpage .fx-pubnav a:focus{color:#fff;background:rgba(255,255,255,0.16);}.fv-brandbar .fx-pubnav a{color:#fff;}.fv-brandbar .fx-pubnav a:hover,.fv-brandbar .fx-pubnav a:focus{color:#fff;background:rgba(255,255,255,0.16);}.fx-pubnav a.is-active,.fx-pubnav a.active,.fx-pubnav li.active > a,.fx-pubnav .menu-item--active-trail > a{color:inherit !important;background:rgba(255,255,255,0.22);font-weight:600;}#landingpage .fx-pubnav a.is-active,#landingpage .fx-pubnav a.active,.fv-brandbar .fx-pubnav a.is-active,.fv-brandbar .fx-pubnav a.active{color:#fff !important;}#landingpage .fx-pubnav{margin-left:auto;}
*{margin:0;padding:0;box-sizing:border-box;}:root{--surface:#ffffff;--inverse:#1e293b;--inverse-2:#334155;--btn-ink:#ffffff;--orange-strong:#c2410c;--s-50:#f8fafc;--s-100:#f1f5f9;--s-200:#e2e8f0;--s-300:#cbd5e1;--s-400:#94a3b8;--s-500:#64748b;--s-600:#475569;--s-700:#334155;--s-800:#1e293b;--s-900:#0f172a;--b-50:#eff6ff;--b-100:#dbeafe;--b-200:#bfdbfe;--b-300:#93c5fd;--b-400:#60a5fa;--b-500:#3b82f6;--b-600:#2563eb;--b-700:#1d4ed8;--b-800:#1e40af;--b-900:#1e3a8a;--i-50:#eef2ff;--i-100:#e0e7ff;--i-200:#c7d2fe;--i-500:#6366f1;--i-600:#4f46e5;--i-700:#4338ca;--i-800:#3730a3;--v-50:#f3e8ff;--v-100:#e9d5ff;--v-300:#c4b5fd;--v-400:#7a5fff;--v-500:#8b5cf6;--v-600:#7c3aed;--r-50:#fef2f2;--r-100:#fee2e2;--r-200:#fecaca;--r-300:#fca5a5;--r-400:#f87171;--r-500:#ef4444;--r-600:#dc2626;--r-700:#b91c1c;--r-800:#991b1b;--g-50:#f0fdf4;--g-100:#dcfce7;--g-200:#bbf7d0;--g-300:#86efac;--g-500:#22c55e;--g-600:#16a34a;--g-700:#15803d;--g-800:#166534;--em-500:#10b981;--em-600:#059669;--em-700:#047857;--info-500:#06b6d4;--info-600:#0891b2;--info-700:#0e7490;--a-50:#fffbeb;--a-100:#fef3c7;--a-200:#fde68a;--a-300:#fcd34d;--a-400:#fbbf24;--a-500:#f59e0b;--a-600:#d97706;--a-700:#b45309;--a-800:#92400e;--a-900:#78350f;--orange:#f97316;--yellow:#ffdd00;--bg:var(--surface);--fg:var(--s-900);--muted:var(--s-500);--brand:var(--b-600);--brand-weak:var(--s-200);--ring:var(--s-300);--shadow:0 4px 12px rgba(2,6,23,.1);--radius:12px;--sk-size:40px;--sk-color:#f6a712;--tt-cell-min-width:160px;--tt-cell-min-height:80px;--tt-cell-padding:8px;--tt-th-padding:16px;--tt-pill-font-size:12px;--tt-pill-padding-y:6px;--tt-pill-padding-r:32px;--tt-pill-padding-l:14px;--tt-density-tint-opacity:0;--tt-heat-lo:var(--i-50);--tt-heat-hi:var(--i-500);--tt-heat-flat:var(--i-200);}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{color:var(--brand);}.cta-section .cta-title,.cta-section h2,#helppage .cta-section .cta-title,#helppage .cta-section h2{color:white !important;-webkit-text-fill-color:white !important;background:none !important;}body.path-timetable #main-wrapper,body.path-timetable #page{background:linear-gradient(135deg,var(--i-500) 0%,var(--i-600) 100%) !important;}body.path-manage #main-wrapper,body.manage #page{background:linear-gradient(135deg,var(--i-500) 0%,var(--i-600) 100%) !important;padding-top:0px;}.fetexplorer-app{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;}.fetexplorer-app h1{font-size:28px !important;color:var(--s-800) !important;font-weight:700 !important;line-height:1.2 !important;}.fetexplorer-app h2{font-size:24px !important;color:var(--s-800) !important;font-weight:600 !important;line-height:1.3 !important;}.fetexplorer-app h3{font-size:18px !important;color:#ffffff !important;font-weight:600 !important;line-height:1.4 !important;}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:linear-gradient(135deg,var(--s-50) 0%,var(--s-200) 100%);min-height:100vh;}.fetexplorer-app .container{max-width:1600px;margin:0 auto;}.fetexplorer-app .header{background:var(--surface);position:relative;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);padding:24px;margin-bottom:24px;}.fetexplorer-app .header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:0px;}.fetexplorer-app .header-title{display:flex;align-items:center;gap:12px;flex:1;}.fetexplorer-app .header-title h1{font-size:28px;color:var(--s-800);}.fetexplorer-app .header-right{display:flex;align-items:center;gap:20px;margin-left:auto;flex:1;justify-content:flex-end;}.fetexplorer-app .btn-group{margin-bottom:12px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;}.fetexplorer-app .btn{min-height:48px !important;padding:10px 16px !important;border:none !important;border-radius:8px !important;cursor:pointer !important;font-size:14px !important;font-weight:500 !important;display:flex !important;align-items:center !important;gap:8px !important;transition:all 0.2s !important;}.fetexplorer-app .btn:hover:not(:disabled){transform:translateY(-2px) !important;box-shadow:0 4px 12px rgba(0,0,0,0.2) !important;}.fetexplorer-app .btn:disabled{opacity:0.5 !important;cursor:not-allowed !important;pointer-events:none !important;}.fetexplorer-app .btn-primary{background:var(--b-600) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-success{background:var(--em-700) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-purple{background:var(--v-600) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-orange{background:var(--orange-strong) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-secondary{background:var(--s-500) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-delete{background:var(--r-600) !important;color:var(--btn-ink) !important;}.fetexplorer-app .btn-warning{background:var(--a-50) !important;color:var(--a-800) !important;box-shadow:inset 0 0 0 1px var(--a-200) !important;}.fetexplorer-app .btn-sm{padding:6px 12px !important;font-size:12px !important;}.dropdown{position:relative;display:inline-block;}.dropdown-content{display:none;position:absolute;background:var(--surface);min-width:180px;box-shadow:0 8px 16px rgba(0,0,0,0.2);border-radius:8px;z-index:10001;overflow:hidden;top:100%;left:0;margin-top:2px;transition:opacity 0.2s,visibility 0.2s;opacity:0;visibility:hidden;}.dropdown:hover .dropdown-content,.dropdown-content:hover{display:block;opacity:1;visibility:visible;}.dropdown-content button{width:100%;padding:12px 16px;border:none;background:var(--surface);text-align:left;cursor:pointer;font-size:14px;font-weight:500;color:var(--s-700);display:flex;align-items:center;gap:8px;transition:background 0.2s;}.dropdown-content button:hover{background:var(--s-100);color:var(--b-500);}.dropdown .btn::after{content:' \0025BC';font-size:10px;margin-left:4px;}.back-to-top{position:fixed;bottom:20px;right:20px;width:50px;height:50px;background:var(--b-500);color:white;border:none;border-radius:50%;font-size:24px;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(59,130,246,0.4);transition:all 0.3s ease;z-index:999;}.back-to-top.visible{display:flex;}.back-to-top:hover{background:var(--b-600);transform:translateY(-5px);box-shadow:0 6px 16px rgba(59,130,246,0.6);}.back-to-top:active{transform:translateY(-2px);}.zoom-controls{position:fixed;bottom:220px;right:20px;display:flex;flex-direction:column;gap:10px;z-index:999;opacity:0;transform:translateX(100px);pointer-events:none;transition:opacity 0.4s ease,transform 0.4s ease;}.zoom-controls.visible{opacity:1;transform:translateX(0);pointer-events:auto;}.zoom-btn{width:50px;height:50px;background:var(--em-700);color:white;border:none;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(16,185,129,0.4);transition:all 0.3s ease;line-height:1;}.zoom-controls.visible .zoom-btn:nth-child(1){animation:slideInFade 0.4s ease forwards;}.zoom-controls.visible .zoom-btn:nth-child(2){animation:slideInFade 0.4s ease 0.1s forwards;}.zoom-controls.visible .zoom-btn:nth-child(3){animation:slideInFade 0.4s ease 0.2s forwards;}@keyframes slideInFade{from{opacity:0;transform:translateX(30px) scale(0.8);}to{opacity:1;transform:translateX(0) scale(1);}}.zoom-btn:hover{background:#065f46;transform:scale(1.1);box-shadow:0 6px 16px rgba(16,185,129,0.6);}.zoom-btn:active{transform:scale(0.95);}.zoom-btn:disabled{background:var(--s-400);cursor:not-allowed;opacity:0.5;}.zoom-btn:disabled:hover{transform:none;box-shadow:0 4px 12px rgba(156,163,175,0.4);}.settings-panel{position:fixed;top:0;right:-500px;width:500px;height:100vh;background:var(--surface);box-shadow:-4px 0 20px rgba(0,0,0,0.15);transition:right 0.3s ease;z-index:10000;overflow-y:auto;}.settings-panel.open{right:0;}.settings-header{padding:14px 16px 12px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;background:var(--surface);border-bottom:1px solid var(--s-200);}.settings-header h2{margin:0;display:flex;align-items:center;gap:9px;font-size:15.5px;font-weight:700;letter-spacing:-0.01em;color:var(--s-800) !important;}.settings-header h2 .ep-ic{color:var(--i-600);}.settings-close{background:none;border:none;color:var(--s-500);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:background 0.2s,color 0.2s;}.settings-close:hover{background:var(--s-100);color:var(--s-800);}.ep-ic{width:17px;height:17px;flex:none;display:block;}.ep-ic-sm{width:14px;height:14px;}.settings-content{padding:20px;}.entity-tabs{display:flex;gap:6px;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--s-200);overflow-x:auto;overflow-y:hidden;scrollbar-width:none;}.entity-tabs::-webkit-scrollbar{display:none;}.entity-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--surface);border:1px solid var(--s-200);border-radius:999px;cursor:pointer;font-size:13px;font-weight:600;color:var(--s-600);transition:all 0.15s;white-space:nowrap;}.entity-tab:hover{border-color:var(--s-300);color:var(--s-800);}.entity-tab.active{background:var(--i-600);border-color:var(--i-600);color:#fff;}.entity-tab-n{font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--s-100);color:var(--s-500);font-variant-numeric:tabular-nums;}.entity-tab.active .entity-tab-n{background:rgba(255,255,255,0.22);color:#fff;}.entity-tab-n:empty{display:none;}.entity-list{display:flex;flex-direction:column;gap:1px;}.entity-item{display:flex;align-items:center;gap:10px;padding:8px 10px;min-height:46px;background:transparent;border:none;border-radius:10px;transition:background 0.12s;}.entity-item:hover{background:var(--s-50);}.entity-item.reordered{animation:reorderPulse 0.6s ease;}@keyframes reorderPulse{0%,100%{transform:scale(1);background:transparent;box-shadow:none;}50%{transform:scale(1.03);background:var(--i-50);box-shadow:0 4px 12px rgba(99,102,241,0.3);}}.entity-item-name{flex:1;min-width:0;font-size:14px;color:var(--s-800);font-weight:600;line-height:1.3;}.ep-nm{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;border-radius:6px;padding:1px 6px;margin-left:-6px;}.ep-nm--editable{cursor:text;}.ep-nm--editable:hover{background:var(--i-50);box-shadow:inset 0 0 0 1px var(--i-100);}.ep-nm--editing{overflow:visible;}.ep-nm-input{width:100%;min-width:120px;border:none;outline:none;background:var(--surface);font:inherit;font-weight:600;color:var(--s-800);border-radius:6px;box-shadow:0 0 0 2px var(--i-500);padding:1px 6px;margin:-1px -6px;}.ep-sub{display:block;font-weight:500;color:var(--s-400);font-size:11.5px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.entity-item-actions{display:flex;gap:2px;opacity:0;transition:opacity 0.12s;}.entity-item:hover .entity-item-actions,.entity-item:focus-within .entity-item-actions{opacity:1;}@media (hover:none){.entity-item-actions{opacity:1;}}.entity-item-btn{width:30px;height:30px;display:grid;place-items:center;padding:0;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:all 0.15s;}.entity-item-btn.edit{color:var(--s-500);}.entity-item-btn.edit:hover{background:var(--i-50);color:var(--i-600);}.entity-item-btn.delete{color:var(--s-500);}.entity-item-btn.delete:hover{background:var(--r-50);color:var(--r-600);}.entity-item-count{font-size:11px;color:var(--s-500);margin-left:8px;}.ep-uses{font-size:11.5px;font-weight:650;color:var(--s-500);background:var(--s-100);padding:2px 8px;border-radius:999px;white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;}.ep-uses--zero{color:var(--s-400);background:transparent;border:1px dashed var(--s-200);}.ep-dot{width:12px;height:12px;border-radius:4px;flex:none;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.08);}.ep-lvl{font-size:10.5px;font-weight:700;letter-spacing:0.05em;text-transform:uppercase;padding:2px 7px;border-radius:5px;flex:none;}.ep-lvl--year{background:var(--i-50);color:var(--i-600);}.ep-lvl--group{background:var(--g-100,#dcfce7);color:var(--g-700,#15803d);}.ep-lvl--subgroup{background:var(--a-100,#fef3c7);color:var(--a-700,#b45309);}.ep-toolbar{display:flex;gap:8px;margin-bottom:12px;}.ep-search{flex:1;display:flex;align-items:center;gap:8px;padding:0 11px;height:38px;background:var(--s-50);border:1px solid var(--s-200);border-radius:10px;color:var(--s-400);}.ep-search:focus-within{border-color:var(--i-500);background:var(--surface);box-shadow:0 0 0 3px rgba(99,102,241,0.12);}.ep-new{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:10px;background:var(--i-600);color:#fff;border:none;font-family:inherit;font-weight:650;font-size:13.5px;cursor:pointer;flex:none;}.ep-new:hover{background:var(--i-500);}.ep-empty{padding:36px 16px;text-align:center;}.ep-empty-title{font-size:15px;font-weight:650;color:var(--s-600);margin-bottom:4px;}.ep-empty-sub{font-size:13px;color:var(--s-400);}.ep-del-overlay{display:none;position:fixed;inset:0;background:rgba(15,23,42,0.5);z-index:100005;align-items:center;justify-content:center;padding:16px;}.ep-del-overlay.active{display:flex;}.ep-del-card{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--s-200);border-radius:16px;box-shadow:0 24px 48px -12px rgba(16,24,40,0.28);overflow:hidden;}.ep-del-hd{display:flex;gap:10px;align-items:center;padding:14px 16px 0;font-weight:700;font-size:15px;color:var(--s-800);}.ep-del-hd .ep-ic{color:var(--r-600);}.ep-del-bd{padding:8px 16px 14px;color:var(--s-600);font-size:13.5px;}.ep-del-bd p{margin:0;}.ep-del-refs{display:flex;gap:8px;margin-top:10px;}.ep-del-ref{flex:1;text-align:center;background:var(--a-50);border:1px solid var(--a-200);border-radius:10px;padding:8px 6px;}.ep-del-ref b{display:block;font-size:17px;color:var(--a-600);font-variant-numeric:tabular-nums;}.ep-del-ref span{font-size:11.5px;color:var(--s-500);}.ep-del-ft{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:var(--s-50);border-top:1px solid var(--s-200);}.ep-del-btn{min-height:38px;padding:0 14px;border-radius:9px;font-family:inherit;font-size:13.5px;font-weight:650;cursor:pointer;border:1px solid var(--s-200);background:var(--surface);color:var(--s-600);}.ep-del-btn:hover{border-color:var(--s-300);color:var(--s-800);}.ep-del-btn--danger{background:var(--r-600);border-color:var(--r-600);color:#fff;}.ep-del-btn--danger:hover{background:var(--r-500);border-color:var(--r-500);color:#fff;}.entity-item-reorder{display:flex;flex-direction:column;gap:2px;opacity:0;transition:opacity 0.12s;}.entity-item:hover .entity-item-reorder,.entity-item:focus-within .entity-item-reorder{opacity:1;}@media (hover:none){.entity-item-reorder{opacity:1;}}.reorder-btn{width:26px;height:19px;padding:0;border:1px solid var(--s-200);background:var(--surface);color:var(--s-500);border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s;}.reorder-btn .ep-ic-sm{width:12px;height:12px;}.reorder-btn:hover:not(:disabled){background:var(--i-600);color:white;border-color:var(--i-600);}.reorder-btn:disabled{opacity:0.3;cursor:not-allowed;pointer-events:none;}.order-number{flex:none;font-size:11px;font-weight:700;color:var(--s-400);min-width:24px;text-align:right;font-variant-numeric:tabular-nums;}.reorder-handle{flex:0 0 auto;align-self:stretch;display:flex;align-items:center;justify-content:center;width:24px;min-height:44px;margin-right:0;color:var(--s-300);line-height:1;border-radius:6px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;transition:color 0.15s,background 0.15s;}.reorder-handle .ep-ic{width:15px;height:15px;}.reorder-handle:hover{color:var(--i-600);background:var(--i-50);}.reorder-handle:active{cursor:grabbing;}.orderable-item{position:relative;}.orderable-item.dragging{opacity:0.92;background:var(--i-50);box-shadow:0 8px 20px rgba(99,102,241,0.28);z-index:5;}body.reorder-dragging,body.reorder-dragging *{user-select:none !important;-webkit-user-select:none !important;}body.reorder-dragging{cursor:grabbing;}@media (prefers-reduced-motion:reduce){.reorder-handle{transition:none;}}.settings-btn{position:fixed;bottom:160px;right:20px;width:50px;height:50px;background:var(--v-500);color:white;border:none;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(139,92,246,0.4);transition:all 0.3s ease;z-index:998;border:solid 2px var(--v-600);}.settings-btn:hover:not(:disabled){background:var(--v-600);transform:translateY(-5px);box-shadow:0 6px 16px rgba(139,92,246,0.6);border:solid 2px var(--s-800);}.settings-btn:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.hero-section.active ~ * .settings-btn,.hero-section.active ~ .settings-btn,.hero-section.active ~ .privacy-reopen-btn{display:none;}.entity-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}.entity-section-header h3{margin:0;font-size:16px;color:var(--s-800);}.entity-search-input{flex:1;min-width:0;border:none;background:transparent;font-size:14px;font-family:inherit;color:var(--s-800);}.entity-search-input:focus{outline:none;}.entity-search-input::placeholder{color:var(--s-400);}.entity-warning{background:var(--a-100);border:1px solid var(--a-400);border-radius:8px;padding:12px;margin-bottom:16px;font-size:13px;color:var(--a-800);position:relative;padding-right:40px;}.entity-warning strong{display:block;margin-bottom:4px;}.entity-warning-dismiss{position:absolute;top:8px;right:8px;background:rgba(146,64,14,0.1);border:1px solid var(--a-400);border-radius:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--a-800);font-size:16px;font-weight:bold;transition:all 0.2s;}.entity-warning-dismiss:hover{background:rgba(146,64,14,0.2);transform:scale(1.1);}.entity-edit-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:100005;align-items:center;justify-content:center;}.entity-edit-modal.active{display:flex;}.entity-edit-modal-content{background:var(--surface);border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,0.3);overflow:hidden;animation:modalSlideIn 0.3s ease;}.entity-edit-modal-header{background:linear-gradient(135deg,var(--b-500) 0%,var(--b-600) 100%);color:white;padding:20px;display:flex;justify-content:space-between;align-items:center;}.entity-edit-modal-header h3{margin:0;font-size:18px;font-weight:600;}.entity-edit-modal-close{background:none;border:none;color:white;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background 0.2s;}.entity-edit-modal-close:hover{background:rgba(255,255,255,0.2);}.entity-edit-modal-body{padding:24px;}.entity-edit-form-group{margin-bottom:20px;}.entity-edit-form-group label{display:block;font-size:14px;font-weight:600;color:var(--s-700);margin-bottom:8px;}.entity-edit-form-group input{width:100%;padding:12px;font-size:14px;border:2px solid var(--s-200);border-radius:8px;box-sizing:border-box;transition:border-color 0.2s;}.entity-edit-form-group input:focus{outline:none;border-color:var(--b-500);}.entity-edit-info{background:var(--s-100);padding:12px;border-radius:8px;font-size:13px;color:var(--s-600);margin-bottom:20px;}.entity-edit-info strong{color:var(--s-800);}.entity-edit-modal-footer{display:flex;gap:12px;justify-content:flex-end;}.entity-edit-modal-btn{padding:10px 20px;font-size:14px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all 0.2s;}.entity-edit-modal-btn.cancel{background:var(--s-100);color:var(--s-600);}.entity-edit-modal-btn.cancel:hover{background:var(--s-200);}.entity-edit-modal-btn.save{background:var(--b-500);color:white;}.entity-edit-modal-btn.save:hover{background:var(--b-600);}.fetexplorer-app .controls{display:flex;flex-direction:column;gap:16px;}.fetexplorer-app .tabs{display:flex;gap:8px;border-bottom:2px solid var(--s-200);flex-wrap:wrap;}.fetexplorer-app .tab{padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:var(--s-500);transition:all 0.2s;position:relative;bottom:-2px;display:flex;align-items:center;gap:6px;}.tab .badge{background:var(--s-200);color:var(--s-600);font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px;min-width:24px;text-align:center;}.tab.active .badge{background:var(--b-100);color:var(--b-800);}.tab:hover:not(:disabled) .badge{background:var(--b-100);color:var(--b-600);}.tab:hover:not(:disabled){color:var(--b-500);background:var(--s-100);}.tab:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.tab.active{color:var(--b-500);border-bottom-color:var(--b-500);}.fetexplorer-app .tab-content{display:none;padding:16px 0;}.fetexplorer-app .tab-content.active{display:block;}.filter-search{width:100%;padding:10px 12px;border:2px solid var(--s-300);border-radius:8px;font-size:14px;margin-bottom:12px;}.filter-search:focus{outline:none;border-color:var(--b-500);}.selected-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;min-height:40px;padding:8px;background:var(--s-50);border-radius:8px;border:2px dashed var(--s-300);}.tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--b-500);color:white;border-radius:6px;font-size:13px;font-weight:500;}.tag button{background:none;border:none;color:white;cursor:pointer;font-size:16px;line-height:1;padding:0;margin-left:4px;}.tag button:hover{transform:scale(1.2);}.filter-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;max-height:200px;overflow-y:auto;padding:8px;background:var(--s-50);border-radius:8px;border:1px solid var(--s-200);}.filter-option{padding:10px 12px;background:var(--surface);border-radius:6px;cursor:pointer;transition:all 0.2s;font-size:13px;border:1px solid var(--s-200);text-align:center;}.filter-option:hover{background:var(--b-50);border-color:var(--b-500);transform:translateY(-2px);box-shadow:0 2px 8px rgba(59,130,246,0.2);}.filter-option.selected{background:var(--b-100);border-color:var(--b-500);font-weight:600;}.room-select{width:100%;padding:10px 12px;border:2px solid var(--s-300);border-radius:8px;font-size:14px;background:var(--surface);cursor:pointer;}.room-select:focus{outline:none;border-color:var(--g-500);}.filter-actions{display:flex;gap:8px;margin-top:12px;margin-bottom:16px;}.no-results{padding:12px;text-align:center;color:var(--s-400);font-size:13px;}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:0;border-radius:0;background:transparent;border:none;transition:all 0.2s;font-size:13px;font-weight:500;color:var(--s-700);white-space:nowrap;}.checkbox-label:hover{color:var(--b-500);}.checkbox-label input[type="checkbox"]{width:17px;height:17px;cursor:pointer;accent-color:var(--b-500);flex-shrink:0;}.loader-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);display:none;justify-content:center;align-items:center;z-index:19000;backdrop-filter:blur(4px);}.loader-overlay.active{display:flex;}.loader-content{background:var(--surface);padding:40px 60px;border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,0.3);text-align:center;}.spinner{width:72px;height:72px;border:6px solid var(--s-200);border-top-color:var(--b-500);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px;}.spinner-wrap{position:relative;display:inline-block;}.spinner-logo{position:absolute;top:36px;left:50%;width:44px;height:44px;transform:translate(-50%,-50%);object-fit:contain;pointer-events:none;}@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.loader-text{font-size:18px;font-weight:600;color:var(--s-700);margin:0;}.loader-subtext{font-size:14px;font-weight:400;color:var(--s-500);margin:8px 0 0 0;font-style:italic;min-height:20px;opacity:1;transition:opacity 0.4s ease,transform 0.4s ease;}.loader-subtext.fade-out{opacity:0;transform:translateY(-5px);}.loader-subtext.fade-in{animation:fadeInSlide 0.5s ease forwards;}@keyframes fadeInSlide{from{opacity:0;transform:translateY(5px);}to{opacity:1;transform:translateY(0);}}.fetexplorer-app .loader-overlay,.fetexplorer-demo .loader-overlay{background:color-mix(in srgb,var(--s-50) 88%,transparent);backdrop-filter:blur(7px) saturate(1.1);flex-direction:column;}.loader-halo{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center;}.loader-halo::before,.loader-halo::after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--i-500);animation:fx-loader-ring 2.4s cubic-bezier(0.2,0.6,0.35,1) infinite;}.loader-halo::after{animation-delay:1.2s;}@keyframes fx-loader-ring{0%{transform:scale(0.55);opacity:0;}18%{opacity:0.65;}100%{transform:scale(1.22);opacity:0;}}.loader-core{width:68px;height:68px;border-radius:20px;background:var(--surface);box-shadow:0 6px 24px rgba(79,70,229,0.18),0 0 0 1px var(--i-100);display:flex;align-items:center;justify-content:center;animation:fx-loader-float 2.4s ease-in-out infinite;}@keyframes fx-loader-float{0%,100%{transform:translateY(0);}50%{transform:translateY(-4px);}}.loader-core img{width:38px;height:38px;object-fit:contain;}.fetexplorer-app .loader-text,.fetexplorer-demo .loader-text{margin-top:22px;font-size:15.5px;font-style:normal;font-weight:650;color:var(--s-800);letter-spacing:-0.01em;}.fetexplorer-app .loader-subtext,.fetexplorer-demo .loader-subtext{font-style:normal;font-size:13px;color:var(--s-500);}.loader-track{margin-top:18px;width:210px;height:3px;border-radius:99px;background:var(--s-200);overflow:hidden;}.loader-fill{width:34%;height:100%;border-radius:99px;background:var(--i-500);animation:fx-loader-slide 1.5s ease-in-out infinite;}@keyframes fx-loader-slide{0%{transform:translateX(-110%);}100%{transform:translateX(720%);}}.fx-skel{position:relative;padding:18px 16px;}.fx-skel-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}.fx-skel-center::before{content:'';position:absolute;width:440px;height:440px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--surface) 94%,transparent) 0%,color-mix(in srgb,var(--surface) 72%,transparent) 55%,transparent 78%);}.fx-skel-center > *{position:relative;}.fx-skel-title{margin:22px 0 0;font-size:15.5px;font-style:normal;font-weight:650;color:var(--s-800);letter-spacing:-0.01em;}.fx-skel-sub{margin:6px 0 0;font-size:13px;color:var(--s-500);min-height:18px;}.fx-skel-grid{display:grid;grid-template-columns:70px repeat(5,1fr);gap:7px;}.fx-skel-h{height:30px;border-radius:7px;background:var(--s-200);}.fx-skel-cell{min-height:64px;border-radius:8px;background:var(--surface);border:1px solid var(--s-200);padding:6px;display:flex;flex-direction:column;gap:5px;}.fx-skel-cell.t{background:var(--s-100);border:none;}.fx-skel-pill{border-radius:5px;height:16px;background:var(--i-100);opacity:0;animation:fx-skel-pop 0.45s ease forwards,fx-skel-shimmer 1.5s ease-in-out infinite 0.5s;}.fx-skel-pill.t{height:22px;}@keyframes fx-skel-pop{from{opacity:0;transform:translateY(4px) scale(0.96);}to{opacity:1;transform:none;}}@keyframes fx-skel-shimmer{0%,100%{background:var(--i-100);}50%{background:var(--i-200);}}@media (prefers-reduced-motion:reduce){.loader-halo::before,.loader-halo::after,.loader-core,.loader-fill,.fx-skel-pill{animation:none !important;opacity:1;}}.fx-toast{position:fixed;left:50%;bottom:calc(var(--fx-toast-stack,24px) + env(safe-area-inset-bottom,0px));transform:translateX(-50%) translateY(16px);background:#1e293b;color:#fff;border-radius:12px;padding:12px 18px;font-size:13.5px;font-weight:500;display:flex;align-items:center;gap:10px;box-shadow:0 10px 30px rgba(0,0,0,0.30);z-index:100010;max-width:min(480px,90vw);opacity:0;transition:opacity 0.25s ease,transform 0.25s ease,bottom 0.3s ease;}.fx-toast.show{opacity:1;transform:translateX(-50%) translateY(0);}.fx-toast-ic{width:18px;height:18px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;line-height:1;color:#fff;background:#10b981;}.fx-toast--error   .fx-toast-ic{background:#ef4444;}.fx-toast--warning .fx-toast-ic{background:#f59e0b;}.fx-toast--info    .fx-toast-ic{background:#6366f1;}.fx-toast-msg{min-width:0;}.fx-av-bar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:10px;padding:10px 14px;background:var(--s-50,#f8fafc);border:1px solid var(--s-200);border-radius:12px;}.fx-av-bar[hidden]{display:none !important;}.fx-av-grp{display:flex;align-items:center;gap:8px;}.fx-av-grp[hidden]{display:none !important;}.fx-av-grp-lbl{font-size:10px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--s-400);}.fx-av-seg{display:inline-flex;background:var(--surface,#fff);border:1px solid var(--s-200);border-radius:9px;padding:2px;gap:2px;}.fx-av-seg button{border:0;background:none;border-radius:7px;padding:6px 12px;font-size:12.5px;font-weight:650;color:var(--s-500);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px;}.fx-av-svg{width:14px;height:14px;flex:none;}.fx-av-seg button.on{background:var(--i-600);color:#fff;}.fx-av-seg button:not(.on):hover{color:var(--s-700);}.fx-av-step{display:inline-flex;align-items:center;background:var(--surface,#fff);border:1px solid var(--s-200);border-radius:9px;overflow:hidden;}.fx-av-step button{border:0;background:none;width:30px;height:32px;font-size:15px;color:var(--i-600);cursor:pointer;font-weight:800;font-family:inherit;}.fx-av-step button:disabled{color:var(--s-300);cursor:default;}.fx-av-step button:not(:disabled):hover{background:var(--i-50);}.fx-av-step .n{min-width:28px;text-align:center;font-size:14px;font-weight:800;color:var(--s-800);font-variant-numeric:tabular-nums;}.fx-av-hint{font-size:11.5px;color:var(--s-400);}.fx-av-cap{width:66px;padding:6px 8px;border:1px solid var(--s-200);border-radius:7px;font-size:12.5px;font-family:inherit;background:var(--surface,#fff);color:var(--s-800);}.fx-av-cap:focus{outline:none;border-color:var(--i-500);}.fx-av-cap:disabled{background:var(--s-100);color:var(--s-400);cursor:not-allowed;}.fx-av-grp--disabled .fx-av-grp-lbl{color:var(--s-300);}.fx-av-capnote{font-size:11px;color:var(--s-500);font-style:italic;cursor:help;}.fx-av-capnote[hidden]{display:none !important;}.fx-av-help{margin-left:auto;background:none;border:0;color:var(--i-600);font-size:12px;font-weight:650;cursor:pointer;font-family:inherit;text-decoration:underline;text-underline-offset:2px;padding:6px 4px;}.fx-av-reset{background:none;border:0;color:var(--s-500);font-size:12px;font-weight:650;cursor:pointer;font-family:inherit;padding:6px 9px;border-radius:7px;}.fx-av-reset:hover{background:var(--s-200);color:var(--s-700);}.fx-av-chip{display:inline-flex;align-items:center;gap:5px;margin:2px;padding:4px 8px;border-radius:7px;font-size:11px;font-weight:650;line-height:1.3;cursor:pointer;background:color-mix(in srgb,var(--fx-bcolor,#94a3b8) 10%,#fff);border:1px solid color-mix(in srgb,var(--fx-bcolor,#94a3b8) 35%,#fff);color:var(--s-700);transition:transform 0.12s,box-shadow 0.12s,opacity 0.15s;}.fx-av-chip:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(15,23,42,0.14);}.fx-av-chip.is-dim{opacity:0.2;}.fx-av-chip.is-focus{box-shadow:0 0 0 2px var(--fx-bcolor,#94a3b8);}.fx-av-focustag{display:inline-flex;align-items:center;gap:6px;margin-left:8px;padding:4px 9px 4px 10px;border-radius:999px;font-size:11px;font-weight:650;line-height:1.3;cursor:pointer;color:var(--s-700);background:color-mix(in srgb,var(--fx-bcolor,#94a3b8) 12%,#fff);border:1px solid color-mix(in srgb,var(--fx-bcolor,#94a3b8) 45%,#fff);transition:background 0.12s;}.fx-av-focustag:hover{background:color-mix(in srgb,var(--fx-bcolor,#94a3b8) 22%,#fff);}.fx-av-focustag-x{color:var(--s-500);font-size:12px;}.fx-av-focustag:hover .fx-av-focustag-x{color:var(--s-700);}.fx-av-bdot{width:7px;height:7px;border-radius:50%;background:var(--fx-bcolor,#94a3b8);flex:none;}.fx-av-name{min-width:0;overflow:hidden;text-overflow:ellipsis;}.fx-av-ccap{font-size:9.5px;font-weight:700;color:var(--s-400);}.fx-av-run{font-size:9.5px;font-weight:800;color:var(--fx-bcolor,#94a3b8);}td.fx-av-heat{cursor:pointer;vertical-align:top;}td.fx-av-heat:hover{box-shadow:inset 0 0 0 2px var(--i-200);}.fx-av-heatwrap{padding:3px;}.fx-av-count{display:flex;align-items:baseline;gap:4px;margin-bottom:4px;}.fx-av-count b{font-size:15px;font-weight:800;color:var(--s-800);font-variant-numeric:tabular-nums;}.fx-av-count span{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--s-500);}.fx-av-hdots{display:flex;gap:3px;flex-wrap:wrap;}.fx-av-hdot{width:10px;height:10px;border-radius:3px;border:1px solid rgba(15,23,42,0.12);}td.fx-av-coverca{background:repeating-linear-gradient(135deg,#f8fafc,#f8fafc 6px,#f1f5f9 6px,#f1f5f9 12px) !important;}.fx-av-cont{font-size:10px;font-style:italic;color:var(--s-400);padding:4px;}.fx-av-card{position:fixed;z-index:100015;width:244px;background:var(--surface,#fff);border:1px solid var(--s-200);border-radius:13px;box-shadow:0 18px 48px rgba(15,23,42,0.22);padding:13px 14px;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity 0.12s,transform 0.12s;}.fx-av-card.show{opacity:1;transform:none;}.fx-av-card h5{margin:0;font-size:13.5px;font-weight:750;color:var(--s-900);display:flex;align-items:center;gap:7px;}.fx-av-card h5 .fx-av-bdot{width:9px;height:9px;}.fx-av-card-meta{display:flex;gap:6px;margin:7px 0 9px;flex-wrap:wrap;}.fx-av-pill{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--s-100);color:var(--s-600);}.fx-av-pill--run{background:var(--i-50);color:var(--i-700);}.fx-av-card-stat{font-size:11.5px;color:var(--s-600);line-height:1.5;}.fx-av-card-stat b{color:var(--s-800);}.fx-av-card-sub{font-size:10.5px;color:var(--s-400);}.fx-av-load{height:5px;background:var(--s-100);border-radius:999px;margin:7px 0 4px;overflow:hidden;}.fx-av-load i{display:block;height:100%;border-radius:999px;}.fx-av-card-hint{font-size:10px;color:var(--s-400);margin-top:8px;border-top:1px dashed var(--s-200);padding-top:7px;}.fx-av-pop{position:fixed;z-index:100015;width:256px;background:var(--surface,#fff);border:1px solid var(--s-200);border-radius:13px;box-shadow:0 18px 48px rgba(15,23,42,0.22);padding:8px;display:none;}.fx-av-pop.show{display:block;}.fx-av-pop h6{margin:0;font-size:10.5px;font-weight:800;letter-spacing:0.06em;text-transform:uppercase;color:var(--s-400);padding:6px 8px 4px;}.fx-av-prow{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;font-size:12.5px;color:var(--s-700);}.fx-av-prow:hover{background:var(--s-100);}.fx-av-prow .fx-av-bdot{width:8px;height:8px;}.fx-av-pnm{flex:1;font-weight:650;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.fx-av-pcp{font-size:10.5px;color:var(--s-400);flex:none;}.fx-av-pempty{padding:14px;text-align:center;color:var(--s-400);font-size:12px;}.fx-drag-column{position:fixed;z-index:100020;pointer-events:none;transform:translate(-50%,-8px);display:flex;flex-direction:column;gap:4px;will-change:left,top;}.fx-pdrag-count{position:absolute;top:-8px;right:-8px;background:var(--brand-600,#4f46e5);color:#fff;font-size:10px;font-weight:800;line-height:1;padding:3px 6px;border-radius:999px;border:1.5px solid #fff;box-shadow:0 2px 6px rgba(15,23,42,0.28);pointer-events:none;}.fx-drag-column--horizontal{flex-direction:row;width:auto !important;}.fx-drag-column--horizontal .fx-drag-column__pill{width:var(--fx-dc-pill-w,132px) !important;flex:0 0 auto;}.fx-drag-column__pill{position:relative !important;top:auto !important;left:auto !important;margin:0 !important;width:100% !important;height:auto !important;box-shadow:0 8px 20px rgba(79,70,229,0.28) !important;transform:none;opacity:1;}.fx-drag-column__pill--mini{box-sizing:border-box;display:flex;align-items:center;gap:7px;min-height:30px;padding:7px 12px;border-radius:10px;font-size:13px;line-height:1.25;overflow:hidden;}.fx-drag-column__pill--mini .grip-icon{opacity:0.45;font-size:11px;flex:0 0 auto;}.fx-drag-column__pill--mini .activity-subject{font-weight:700;white-space:nowrap;}.fx-drag-column__pill--mini .activity-teacher,.fx-drag-column__pill--mini .activity-room{font-size:12px;opacity:0.92;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;}.fx-drag-column__pill + .fx-drag-column__pill{transform:scale(0.97);opacity:0.92;}.fx-drag-column__pill + .fx-drag-column__pill + .fx-drag-column__pill{transform:scale(0.94);opacity:0.84;}.fx-drag-column__pill + .fx-drag-column__pill + .fx-drag-column__pill ~ .fx-drag-column__pill{transform:scale(0.91);opacity:0.78;}.fx-drag-column__count{position:absolute;top:-8px;right:-8px;background:var(--i-600,#4f46e5);color:#fff;font-size:11px;font-weight:800;min-width:22px;height:22px;padding:0 5px;border-radius:999px;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(79,70,229,0.4);}@media (prefers-reduced-motion:reduce){.fx-drag-column__pill{transition:none !important;}}.hero-section{display:none;min-height:100vh;justify-content:center;align-items:center;padding:40px 20px;background:linear-gradient(135deg,rgba(59,130,246,0.5) 0%,rgba(139,92,246,0.5) 50%,rgba(236,72,153,0.5) 100%);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);position:fixed;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:100;}.hero-section::before{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%);top:-150px;right:-150px;animation:fx-hero-float 8s ease-in-out infinite;}.hero-section::after{content:'';position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,0.08) 0%,transparent 70%);bottom:-100px;left:-100px;animation:fx-hero-float 6s ease-in-out infinite reverse;}@media (prefers-reduced-motion:reduce){.hero-section::before,.hero-section::after{animation:none;}}@keyframes fx-hero-float{0%,100%{transform:translateY(0px);}50%{transform:translateY(-30px);}}.hero-section.active{display:flex;}.hero-section-demo.active{display:flex;align-items:center;justify-content:center;}.hero-content{text-align:center;max-width:480px;background:rgba(255,255,255,0.15);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:48px 40px;border-radius:24px;border:1px solid rgba(255,255,255,0.3);box-shadow:0 8px 32px rgba(0,0,0,0.2),inset 0 0 0 1px rgba(255,255,255,0.2);position:relative;z-index:1;}.hero-icon{font-size:64px;margin-bottom:24px;opacity:1;filter:drop-shadow(0 4px 6px rgba(0,0,0,0.2));}.hero-title{font-size:28px;font-weight:700;color:#ffffff;margin:0 0 12px 0;line-height:1.3;text-shadow:0 2px 8px rgba(0,0,0,0.15);}.hero-description{font-size:15px;color:rgba(255,255,255,0.95);margin:0 0 32px 0;line-height:1.6;text-shadow:0 1px 4px rgba(0,0,0,0.1);}.hero-description strong{color:#ffffff;font-weight:700;}.hero-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}.hero-upload-btn,.hero-demo-btn,.hero-template-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;background:rgba(255,255,255,0.25);color:white;border:2px solid rgba(255,255,255,0.4);border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all 0.3s;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 16px rgba(0,0,0,0.15);text-shadow:0 1px 3px rgba(0,0,0,0.2);}.hero-demo-btn,.hero-template-btn{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.3);}.hero-upload-btn:hover,.hero-demo-btn:hover,.hero-template-btn:hover{background:rgba(255,255,255,0.35);border-color:rgba(255,255,255,0.6);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,0.2);}.hero-upload-btn:active,.hero-demo-btn:active,.hero-template-btn:active{transform:translateY(0);box-shadow:0 4px 12px rgba(0,0,0,0.15);}.hero-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--s-200);}.coffee-link{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--yellow);color:var(--s-900);text-decoration:none;border-radius:8px;font-size:14px;font-weight:600;transition:all 0.2s;box-shadow:0 2px 8px rgba(0,0,0,0.1);}.coffee-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.15);}.hero-watermark{position:absolute;bottom:20px;right:20px;font-size:12px;color:rgba(255,255,255,0.5);font-weight:500;}.available-room{padding:10px 14px;border-radius:8px;background:var(--g-100);color:var(--g-800);font-weight:600;font-size:12px;border:2px dashed var(--g-500);display:inline-flex;align-items:center;gap:6px;transition:all 0.2s;}.available-room:hover{transform:scale(1.08);box-shadow:0 6px 16px rgba(34,197,94,0.25);background:var(--g-200);}.control-group{flex:1;min-width:250px;}.control-group label{display:block;font-size:14px;font-weight:500;color:var(--s-600);margin-bottom:8px;}select,input[type="file"],input[type="text"],textarea{width:100%;padding:10px 12px;border:1px solid var(--s-300);border-radius:8px;font-size:14px;background:var(--surface);}textarea{resize:vertical;font-family:inherit;}.filter-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--b-100);color:var(--b-800);border-radius:8px;font-weight:500;animation:pulse 2s infinite;}.filter-badge button{background:none;border:none;cursor:pointer;color:var(--b-800);font-size:20px;line-height:1;padding:0 4px;}.timetable-wrapper{background:var(--surface);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);overflow:hidden;max-width:100%;padding:0px 5px;position:relative;}.table-container{overflow:auto;max-width:100vw;max-height:calc(100vh - 50px);position:relative;}body.fx-tt-full .table-container{position:fixed;inset:0;z-index:9000;width:100vw;height:100vh;max-width:none;max-height:none;margin:0;background:var(--surface);display:flex;flex-direction:column;}body.fx-tt-full #timetable{flex:1 0 auto;}body.fx-tt-full .landing-footer{z-index:0;}.fx-tt-full-exit{display:none;}body.fx-tt-full .fx-tt-full-exit{display:flex;align-items:center;justify-content:center;position:fixed;top:12px;right:16px;z-index:9100;width:48px;height:48px;border-radius:999px;border:1px solid var(--s-300);background:var(--surface);color:var(--s-600);font-size:18px;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,0.18);}body.fx-tt-full .fx-tt-full-exit:hover{color:var(--s-900);border-color:var(--s-400);}body.fx-tt-full .planner-panel{z-index:9200;}body.fx-tt-full .zoom-controls,body.fx-tt-full .settings-btn,body.fx-tt-full .unassigned-toggle-floating-btn{z-index:9200;}body.fx-tt-full .unassigned-panel.open{z-index:9200;}body.fx-tt-full .table-container{transition:left 0.3s ease;}body.fx-tt-full:has(.unassigned-panel.open:not(.hidden)) .table-container{left:340px;width:auto;}@media (max-width:1400px){body.fx-tt-full:has(.unassigned-panel.open:not(.hidden)) .table-container{left:280px;}}@media (max-width:1024px){body.fx-tt-full:has(.unassigned-panel.open:not(.hidden)) .table-container{left:260px;}}.table-container::-webkit-scrollbar{width:12px;height:12px;}.table-container::-webkit-scrollbar-track{background:var(--s-100);border-radius:6px;}.table-container::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:6px;border:2px solid var(--s-100);}.table-container::-webkit-scrollbar-thumb:hover{background:var(--s-400);}.table-container::-webkit-scrollbar-corner{background:var(--s-100);}.fetexplorer-app table{width:auto;border-collapse:collapse;min-width:100%;}.fetexplorer-app thead{background:linear-gradient(135deg,var(--inverse-2) 0%,var(--inverse) 100%);}.fetexplorer-app th{padding:var(--tt-th-padding);text-align:center;color:white;font-weight:600;border-right:1px solid var(--s-600);min-width:var(--tt-cell-min-width);position:sticky;top:-1px;z-index:5;background:linear-gradient(135deg,var(--inverse-2) 0%,var(--inverse) 100%);transition:min-width 0.3s ease,padding 0.3s ease;}.fetexplorer-app th:first-child{text-align:left;position:sticky;left:0;top:0;background:var(--inverse);z-index:15;min-width:100px;max-width:100px;width:100px;}#timetable tbody tr:nth-child(even){background:var(--s-50);}#timetable tbody tr:nth-child(odd){background:var(--surface);}#timetable td:not(:first-child){padding:var(--tt-cell-padding);border:1px solid var(--s-200);vertical-align:top;position:relative;min-height:var(--tt-cell-min-height);min-width:var(--tt-cell-min-width);overflow:visible;word-wrap:break-word;transition:min-width 0.3s ease,min-height 0.3s ease,padding 0.3s ease;}#timetable td:not(:first-child)::before{content:'';position:absolute;inset:0;background-color:var(--tt-density-color,transparent);opacity:var(--tt-density-tint-opacity,0);pointer-events:none;z-index:0;transition:opacity 0.3s ease;}td:not(:first-child) > .activity,td:not(:first-child) > .activity-container{position:relative;z-index:1;}:root[data-tt-level="2"] .activity{width:26px;height:12px;padding:0;overflow:hidden;color:transparent;box-shadow:0 1px 2px rgba(0,0,0,0.18);}:root[data-tt-level="2"] .activity > *{display:none !important;}:root[data-tt-level="1"] .activity,:root[data-tt-level="1"] .activity-container{display:none !important;}:root[data-tt-level="1"] td:not(:first-child)::before{inset:1px;border-radius:2px;}:root[data-tt-level="3"] .activity{box-shadow:none;background-image:none;}:root[data-tt-level="1"] .table-container,:root[data-tt-level="2"] .table-container,:root[data-tt-level="3"] .table-container,:root[data-tt-level="4"] .table-container{max-height:calc(100vh - 100px);overflow:auto;cursor:grab;}:root[data-tt-level="1"] .table-container:active,:root[data-tt-level="2"] .table-container:active,:root[data-tt-level="3"] .table-container:active,:root[data-tt-level="4"] .table-container:active{cursor:grabbing;}:root[data-tt-level="4"] .activity-action-menu{font-size:12px;width:16px;height:18px;right:6px;}:root[data-tt-level="4"] .grip-icon{font-size:11px;}:root[data-tt-level="3"] .activity-action-menu,:root[data-tt-level="3"] .grip-icon,:root[data-tt-level="2"] .activity-action-menu,:root[data-tt-level="2"] .grip-icon,:root[data-tt-level="1"] .activity-action-menu,:root[data-tt-level="1"] .grip-icon{display:none !important;}.view-mode-section{display:flex;flex-direction:column;gap:4px;}.view-mode-header{display:flex;align-items:baseline;gap:8px;font-weight:600;color:var(--s-800);flex-wrap:wrap;}.view-mode-title{flex-shrink:0;font-size:13px;}.view-mode-label{font-weight:400;opacity:0.75;font-size:11px;color:var(--s-600);white-space:nowrap;}.view-slider-wrap{padding:4px 2px 0;}.view-level-slider{width:100%;cursor:pointer;accent-color:var(--b-500);margin:0;}.view-level-ticks{display:flex;justify-content:space-between;align-items:center;margin-top:4px;user-select:none;}.view-tick{font-size:13px;line-height:1;color:var(--s-600);opacity:0.55;cursor:pointer;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;transition:opacity 0.15s ease,background 0.15s ease,transform 0.1s ease;}.view-tick:hover{opacity:1;background:rgba(59,130,246,0.10);transform:translateY(-1px);}.view-tick.is-active{opacity:1;background:rgba(59,130,246,0.18);color:var(--i-700);}.view-tick .fx-pv-svg{width:16px;height:16px;display:block;}.view-refit-btn{margin-top:8px;display:none;align-items:center;gap:5px;font-size:11px;padding:5px 10px;background:var(--surface);border:1px solid var(--s-300);border-radius:6px;color:var(--s-600);cursor:pointer;transition:background 0.15s ease,border-color 0.15s ease,color 0.15s ease;white-space:nowrap;font-family:inherit;}.view-refit-btn.is-visible{display:inline-flex;}.view-refit-btn:hover{background:var(--s-100);border-color:var(--s-400);color:var(--s-800);}.view-refit-icon{font-size:13px;line-height:1;}.app-tooltip{position:fixed;z-index:100000;background:var(--inverse);color:var(--s-50);padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;line-height:1.4;max-width:260px;box-shadow:0 4px 12px rgba(0,0,0,0.18);pointer-events:none;opacity:0;transform:translateY(2px);transition:opacity 0.12s ease,transform 0.12s ease;white-space:normal;}.app-tooltip[data-visible="true"]{opacity:1;transform:translateY(0);}.app-tooltip::before{content:'';position:absolute;left:50%;width:8px;height:8px;background:inherit;transform:translateX(-50%) rotate(45deg);}.app-tooltip[data-pos="top"]::before{bottom:-3px;}.app-tooltip[data-pos="bottom"]::before{top:-3px;}.fx-display-bar{position:relative;display:flex;justify-content:flex-end;align-items:center;padding:6px 0;margin-top:16px;background:transparent;}.fx-upgrade-link{color:inherit;text-decoration:underline;font-weight:600;}.fx-tb-btn{height:36px;padding:0 12px;background:var(--surface);border:1px solid var(--s-300);border-radius:8px;color:var(--s-800);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background 0.15s ease,border-color 0.15s ease,color 0.15s ease;white-space:nowrap;}.fx-tb-btn:hover{background:var(--s-50);border-color:var(--s-400);}.fx-tb-btn[aria-expanded="true"]{background:rgba(59,130,246,0.08);border-color:var(--ds-color-primary,var(--b-500));color:var(--b-700);}.fx-tb-btn .fx-tb-icon{font-size:14px;line-height:1;}.fx-tb-btn .fx-tb-label{font-weight:600;}.fx-tb-btn .fx-tb-value{color:var(--s-500);font-weight:400;}.fx-tb-btn[aria-expanded="true"] .fx-tb-value{color:var(--b-700);}.fx-tb-btn .fx-tb-caret{font-size:9px;opacity:0.6;}.fx-tb-btn.has-filters{background:var(--b-50,#eef2ff);border-color:var(--b-500,#6366f1);color:var(--b-700,#4f46e5);}.fx-tb-btn .fx-tb-filtercount{display:inline-flex;align-items:center;gap:3px;background:var(--b-600,#4f46e5);color:#fff;border-radius:999px;padding:0 3px 0 8px;height:18px;font-size:11px;font-weight:800;}.fx-tb-btn .fx-tb-filtercount .ffc-n{font-variant-numeric:tabular-nums;}.fx-tb-btn .fx-tb-filtercount .ffc-clear{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;background:rgba(255,255,255,0.25);font-size:13px;line-height:1;cursor:pointer;}.fx-tb-btn .fx-tb-filtercount .ffc-clear:hover{background:rgba(255,255,255,0.45);}.fx-toolbar .fx-tb-btn:disabled,.fx-toolbar .fx-tb-btn[disabled]{opacity:0.4;cursor:not-allowed;pointer-events:none;}.fx-tb-btn-undo .fx-tb-icon,.fx-tb-btn-redo .fx-tb-icon{font-size:17px;font-weight:700;}.fx-popover{position:fixed;z-index:10500;background:var(--surface);border:1px solid var(--s-200);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,0.18);animation:fxPopIn 0.14s ease-out;color:var(--s-900);font-size:13px;}body.fx-popover-open .timetable-minimap{display:none !important;}.fx-popover[hidden]{display:none !important;}@keyframes fxPopIn{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}.fx-lens-popover{width:430px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:12px;display:flex;flex-direction:column;gap:8px;}.fx-lens-popover .fx-fp-rail{width:104px;}.fx-lens-vals{max-height:350px;overflow-y:auto;padding:2px 2px 4px;}.fx-lens-tab[hidden]{display:none !important;}.fx-lens-tab .fx-pv-section:first-child{margin-top:2px;}.fx-lens-popover .fx-fp-actions .view-refit-btn{margin-top:0;}.fx-pv-section + .fx-pv-section{margin-top:18px;}.fx-pv-heading{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--s-500);font-weight:600;}.fx-lens-popover .view-slider-wrap{padding:0;}.fx-lens-popover .view-level-ticks{margin-top:6px;}.fx-pv-level-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;gap:12px;}.fx-pv-level-row .view-mode-label{display:inline-block;font-size:12px;opacity:0.85;}.fx-pv-level-row .view-refit-btn{margin-top:0;}.fx-pv-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;}.fx-pv-style{display:flex;flex-direction:column;gap:4px;}.fx-pv-toggle{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:var(--s-800);cursor:pointer;user-select:none;line-height:1.3;}.fx-pv-toggle input[type="checkbox"],.fx-pv-toggle input[type="radio"]{margin:0;cursor:pointer;flex-shrink:0;width:14px;height:14px;}.fx-pv-hint{margin-top:6px;font-size:11.5px;line-height:1.4;color:var(--s-500,#6b7280);}.fx-pv-pill-layout{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;}.fx-pv-sublabel{font-size:11px;text-transform:uppercase;letter-spacing:0.05em;color:var(--s-500,#64748b);font-weight:600;}.fx-pv-palette .fx-pv-sublabel{white-space:nowrap;flex-shrink:0;}.fx-pill-layout-seg{display:inline-flex;background:var(--s-100,#f1f5f9);border-radius:9px;padding:3px;gap:3px;}.fx-pill-layout-seg button{appearance:none;border:none;background:transparent;font-size:12px;font-weight:700;color:var(--s-500,#64748b);padding:5px 12px;min-height:30px;border-radius:7px;cursor:pointer;transition:background 120ms ease,color 120ms ease;}.fx-pill-layout-seg button:hover{color:var(--i-600,#4f46e5);}.fx-pill-layout-seg button.is-active{background:#fff;color:var(--i-600,#4f46e5);box-shadow:0 1px 3px rgba(0,0,0,0.1);}.fx-pv-heading:has(> .fx-pv-typo-reset){display:flex;align-items:center;justify-content:space-between;gap:8px;}.fx-pv-typo-reset{background:transparent;border:1px solid var(--s-200);border-radius:6px;padding:3px 8px;font-size:11px;color:var(--s-500);cursor:pointer;font-family:inherit;transition:border-color 0.12s,color 0.12s,background 0.12s;}.fx-pv-typo-reset:hover{border-color:var(--s-400);color:var(--s-800);background:var(--s-50);}.fx-pv-typo-rows{margin-top:8px;}.fx-pv-typo-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:12px;color:var(--s-800);}.fx-stepper{display:inline-flex;align-items:center;border:1px solid var(--s-200);border-radius:6px;overflow:hidden;background:var(--surface);}.fx-stepper button{width:24px;height:24px;background:var(--surface);border:0;cursor:pointer;color:var(--s-500);font-family:inherit;font-size:13px;transition:background 0.12s,color 0.12s;}.fx-stepper button:hover{background:var(--s-100);color:var(--s-800);}.fx-stepper > span{min-width:40px;text-align:center;font-size:11px;color:var(--s-500);border-left:1px solid var(--s-200);border-right:1px solid var(--s-200);padding:4px 6px;}.fx-legacy-tabs{display:none !important;}.fx-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--surface);border:1px solid var(--s-200);border-radius:10px;box-shadow:var(--ds-shadow-sm,0 1px 2px rgba(0,0,0,0.05));flex-wrap:nowrap;overflow:hidden;}.fx-tb-btn.tb-icon-only .fx-tb-label{display:none;}.fx-tb-btn.tb-icon-only{padding-left:9px;padding-right:9px;}.fx-tb-btn.tb-icon-only .fx-tb-caret{display:none;}.fx-tb-btn[data-tb-overflowed],.fx-tb-divider[data-tb-overflowed]{display:none !important;}.fx-tb-btn .fx-tb-svg{width:15px;height:15px;display:block;}.fx-tb-btn .fx-tb-icon{display:inline-flex;align-items:center;}.fx-tb-sw{width:24px;height:14px;flex:none;border-radius:999px;background:var(--s-300,#cbd5e1);position:relative;transition:background var(--ds-duration-fast,120ms) ease;}.fx-tb-sw::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:left var(--ds-duration-fast,120ms) ease;}.fx-tb-btn[aria-pressed="true"] .fx-tb-sw{background:var(--em-500,#10b981);}.fx-tb-btn[aria-pressed="true"] .fx-tb-sw::after{left:12px;}#fxTodayToggle[aria-pressed="true"] .fx-tb-sw{background:var(--a-500,#f59e0b);}.fx-toolbar [data-tb-mode-member]{display:none !important;}.fx-tb-mode--on{border-color:var(--b-500,#6366f1);}.fx-tb-mode--avail{background:rgba(16,185,129,0.10);border-color:var(--em-500,#10b981);color:var(--em-700,#047857);}.fx-tb-mode--resched{background:rgba(59,130,246,0.10);border-color:var(--b-500,#6366f1);color:var(--b-700,#4338ca);}.fx-tb-mode--today{background:rgba(245,158,11,0.12);border-color:var(--a-500,#f59e0b);color:var(--a-700,#b45309);}.fx-tb-mode--on .fx-tb-value{color:inherit;font-weight:600;}.fx-mode-popover{min-width:244px;padding:6px;}.fx-mode-hint{margin:6px 4px 2px;font-size:11px;line-height:1.45;color:var(--s-400,#94a3b8);}.fx-tb-overflow{margin-left:auto;}.fx-overflow-popover{min-width:208px;padding:6px;}.fx-ov-list{display:flex;flex-direction:column;gap:2px;}.fx-ov-row{display:flex;align-items:center;gap:9px;width:100%;border:none;background:none;padding:9px 10px;border-radius:8px;font:inherit;font-size:13px;font-weight:600;color:var(--s-700,#334155);text-align:left;cursor:pointer;}.fx-ov-row:hover{background:var(--b-50,#eef2ff);color:var(--b-700,#4338ca);}.fx-ov-row[disabled]{opacity:0.45;cursor:not-allowed;}.fx-ov-row .fx-tb-svg{width:15px;height:15px;flex:none;}.fx-ov-row .fx-ov-val{margin-left:auto;font-weight:500;color:var(--s-500,#64748b);font-size:12px;}.fx-ov-row .fx-ov-on{margin-left:auto;font-size:11px;font-weight:800;color:var(--em-700,#047857);}.fx-ov-row.is-current{background:var(--i-50);color:var(--i-700);font-weight:700;}.fx-ov-row .fx-ov-check{margin-left:auto;font-size:12px;font-weight:800;color:var(--i-600);}body.planner-arming .activity{cursor:crosshair;}body.planner-arming .activity:hover{outline:2px solid var(--i-600);outline-offset:1px;}.fx-toolbar .fx-tb-divider{width:1px;height:24px;background:var(--s-200);margin:0 4px;}.fx-toolbar .fx-tb-btn-view{margin-left:auto;}.fx-toolbar .fx-tb-btn[aria-pressed="true"]{background:rgba(16,185,129,0.10);border-color:var(--em-500);color:var(--em-700);}.fx-toolbar #fxTodayToggle[aria-pressed="true"]{background:rgba(245,158,11,0.12);border-color:var(--a-500,#f59e0b);color:var(--a-700,#b45309);}.fx-tb-btn--loading{opacity:0.6;pointer-events:none;}.fx-cover-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0 6px;padding:10px 16px;background:var(--surface,#fff);border:1px solid var(--ring,#cbd5e1);border-left:4px solid var(--a-500,#f59e0b);border-radius:var(--radius,12px);box-shadow:var(--shadow,0 4px 12px rgba(2,6,23,0.1));font-size:13px;color:var(--fg,#0f172a);}.fx-cover-strip[hidden]{display:none;}.fx-cover-strip--muted{border-left-color:var(--s-400,#94a3b8);}.fx-cover-strip--ok{border-left-color:var(--em-500,#10b981);}.fx-cover-strip--active{border-left-color:var(--a-500,#f59e0b);}.fx-cs-h{font-weight:700;white-space:nowrap;color:var(--fg,#0f172a);}.fx-cs-msg{color:var(--muted,#64748b);}.fx-cs-lbl{font-weight:600;color:var(--muted,#64748b);}.fx-cs-abs{display:inline-flex;align-items:baseline;gap:4px;padding:2px 10px;border-radius:999px;background:rgba(120,120,120,0.14);font-weight:600;}.fx-cs-abs small{font-weight:400;color:var(--muted,#64748b);}.fx-cs-count{margin-left:auto;font-weight:700;color:var(--a-700,#b45309);white-space:nowrap;}.fx-cs-hidden{font-weight:500;color:var(--muted,#6b7280);}td.cover-today-col{background-image:linear-gradient(rgba(245,158,11,0.05),rgba(245,158,11,0.05));}th.cover-today-col{box-shadow:inset 0 -3px 0 var(--a-500,#f59e0b);}.cover-badge{display:block;margin-top:4px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:700;line-height:1.5;letter-spacing:0.2px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.cover-badge--substitute{background:#059669;}.cover-badge--room_change{background:#2563eb;}.cover-badge--cancel{background:#b91c1c;}.cover-badge--uncovered{background:#d97706;}.activity--cover{outline:2px solid transparent;}.cover--cancel .activity-subject,.cover--cancel .pill-subject{text-decoration:line-through;}.activity--cover.cover--cancel{opacity:0.7;}.activity--cover.cover--uncovered{outline-color:#d97706;}.fx-chip-rail{margin-top:8px;padding:6px 12px;background:var(--s-50);border:1px solid var(--s-200);border-radius:8px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:36px;}.fx-chip-rail[hidden]{display:none !important;}.fx-chip-rail-label{font-size:11px;color:var(--s-500);text-transform:uppercase;letter-spacing:0.04em;flex-shrink:0;}.fx-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 6px 3px 10px;background:var(--surface);border:1px solid var(--s-300);border-radius:9999px;font-size:12px;color:var(--s-800);line-height:1.4;}.fx-chip-key{color:var(--s-500);font-size:10px;text-transform:uppercase;letter-spacing:0.04em;}.fx-chip-value{font-weight:500;}.fx-chip-x{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--s-400);cursor:pointer;border:0;background:transparent;font-family:inherit;font-size:13px;line-height:1;transition:background 0.12s,color 0.12s;padding:0;}.fx-chip-x:hover{background:var(--r-500);color:#fff;}.fx-chip-rail .fx-chip-clear-all{margin-left:auto;background:transparent;border:0;color:var(--s-500);font-size:12px;cursor:pointer;font-family:inherit;padding:4px 8px;border-radius:4px;transition:background 0.12s,color 0.12s;}.fx-chip-rail .fx-chip-clear-all:hover{color:var(--r-500);background:rgba(239,68,68,0.08);}.fx-filter-popover{width:400px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:12px;display:flex;flex-direction:column;gap:8px;}.fx-fp-pane{display:flex;min-height:232px;gap:0;}.fx-fp-rail{width:122px;flex:none;border-right:1px solid var(--s-100);padding-right:7px;margin-right:8px;display:flex;flex-direction:column;gap:2px;}.fx-fp-rr{display:flex;align-items:center;gap:6px;min-height:32px;padding:0 8px;border:0;border-radius:8px;background:transparent;font-family:inherit;font-size:12px;font-weight:600;color:var(--s-600);cursor:pointer;text-align:left;line-height:1.25;transition:background 0.12s,color 0.12s;}.fx-fp-rr:hover{background:var(--s-100);color:var(--s-800);}.fx-fp-rr.is-active{background:var(--i-600);color:#fff;}.fx-fp-rr-n{margin-left:auto;font-size:10.5px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--i-700);background:var(--i-100);border-radius:999px;padding:0 5px;min-width:15px;text-align:center;}.fx-fp-rr.is-active .fx-fp-rr-n{background:rgba(255,255,255,0.25);color:#fff;}.fx-fp-rr-n:empty{display:none;}.fx-fp-rr.is-muted:not(.is-active){color:var(--s-400);}.fx-fp-vals{flex:1;min-width:0;display:flex;flex-direction:column;}.fx-fp-valsbox[hidden],.fx-fp-slots[hidden]{display:none !important;}.fx-fp-valsbox{flex:1;min-height:0;display:flex;flex-direction:column;}.fx-fp-slots{flex:1;min-height:0;max-height:300px;overflow-y:auto;padding:2px 2px 4px;}.fx-fp-slots .fx-pv-section:first-child{margin-top:2px;}.fx-fp-extras{border-top:1px solid var(--s-100);padding-top:6px;}.fx-fp-xrow{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:5px 8px;border:0;border-radius:9px;background:transparent;font-family:inherit;cursor:pointer;text-align:left;}.fx-fp-xrow:hover{background:var(--s-100);}.fx-fp-xrow-text{display:flex;flex-direction:column;gap:1px;min-width:0;}.fx-fp-xrow-label{font-size:12.5px;font-weight:650;color:var(--s-700);}.fx-fp-xrow-meta{font-size:10.5px;color:var(--s-400);line-height:1.3;}.fx-fp-xrow[aria-pressed="true"] .fx-fp-xrow-label{color:var(--i-700);}.fx-fp-sw{margin-left:auto;flex:none;width:34px;height:19px;border-radius:999px;background:var(--s-300);position:relative;transition:background 0.15s;}.fx-fp-sw::after{content:"";position:absolute;top:2.5px;left:2.5px;width:14px;height:14px;border-radius:50%;background:#fff;transition:left 0.15s;}.fx-fp-xrow[aria-pressed="true"] .fx-fp-sw{background:var(--i-600);}.fx-fp-xrow[aria-pressed="true"] .fx-fp-sw::after{left:17px;}@media (max-width:480px){.fx-fp-pane{flex-direction:column;min-height:0;}.fx-fp-rail,.fx-lens-popover .fx-fp-rail{width:auto;flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--s-100);padding:0 0 6px;margin:0 0 6px;}.fx-fp-rr{flex:none;white-space:nowrap;}.fx-fp-actions{flex-direction:column;align-items:stretch;gap:6px;}.fx-fp-foot-acts{justify-content:flex-end;}}.fx-pp-head{display:flex;align-items:center;gap:9px;padding:2px 0 8px;}.fx-pp-ico{width:28px;height:28px;border-radius:8px;background:var(--i-50);color:var(--i-600);display:flex;align-items:center;justify-content:center;font-size:14px;flex:none;}.fx-pp-head h4{margin:0;font-size:13.5px;font-weight:700;color:var(--s-800);flex:1;}.fx-pp-hint{font-size:10.5px;color:var(--s-400);}.fx-pp-svg{width:15px;height:15px;display:block;}.fx-fp-searchwrap{position:relative;margin-bottom:6px;}.fx-fp-searchwrap .fx-fp-mag{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--s-400);font-size:12px;pointer-events:none;display:flex;align-items:center;}.fx-fp-searchwrap .fx-fp-mag .fx-pp-svg{width:13px;height:13px;}.fx-fp-search{width:100%;padding:7px 10px 7px 30px;border:1.5px solid var(--s-200);border-radius:9px;font-size:13px;font-family:inherit;box-sizing:border-box;background:var(--s-50,#f8fafc);color:var(--s-800);transition:border-color 0.12s,background 0.12s;}.fx-fp-search:focus{outline:none;border-color:var(--i-500);background:var(--surface);}.fx-fp-match{display:flex;align-items:center;gap:8px;padding:2px 0;font-size:10px;color:var(--s-500);}.fx-fp-match[hidden]{display:none !important;}.fx-fp-match-label{text-transform:uppercase;letter-spacing:0.04em;font-weight:600;font-size:9px;}.fx-fp-match-control{display:inline-flex;background:var(--s-100);border:1px solid var(--s-200);border-radius:5px;padding:1px;gap:1px;}.fx-fp-match-btn{padding:1px 7px;background:transparent;border:0;border-radius:3px;color:var(--s-500);font-family:inherit;font-size:10px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:0.04em;line-height:1.4;transition:background 0.12s,color 0.12s,box-shadow 0.12s;}.fx-fp-match-btn:hover{color:var(--s-800);}.fx-fp-match-btn.is-active{background:var(--surface);color:var(--b-700);box-shadow:0 1px 2px rgba(0,0,0,0.06);}.fx-fp-match-hint{flex:1;text-align:right;color:var(--s-400);font-size:10px;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.fx-fp-options{flex:1;overflow-y:auto;max-height:300px;min-height:0;display:flex;flex-direction:column;gap:2px;padding:4px 0;}.fx-fp-option{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--s-700);line-height:1.3;user-select:none;}.fx-fp-option:hover{background:var(--s-100);}.fx-fp-option input[type="checkbox"]{margin:0;cursor:pointer;flex-shrink:0;accent-color:var(--i-600);}.fx-fp-option.is-selected{background:var(--i-50);color:var(--i-700);font-weight:600;}.fx-fp-opt-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.fx-fp-opt-meta{font-size:10.5px;color:var(--s-400);flex:none;font-variant-numeric:tabular-nums;}.fx-fp-option.is-selected .fx-fp-opt-meta{color:var(--i-500);}.fx-fp-empty{padding:16px;text-align:center;color:var(--s-400);font-size:13px;}.fx-fp-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:8px;margin-top:2px;border-top:1px solid var(--s-100);font-size:11px;color:var(--s-500);}.fx-fp-count{color:var(--s-500);font-size:11.5px;font-weight:600;}.fx-fp-foot-acts{display:flex;gap:6px;align-items:center;}.fx-fp-clear{background:transparent;border:0;color:var(--s-500);font-size:12px;font-weight:650;cursor:pointer;font-family:inherit;padding:5px 8px;border-radius:7px;}.fx-fp-clear:hover{background:var(--s-100);color:var(--r-500);}.fx-fp-done{background:var(--i-600);border:0;color:#fff;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;padding:5px 13px;border-radius:7px;}.fx-fp-done:hover{background:var(--i-700);}.fx-sp-veil{position:fixed;inset:0;z-index:100000;background:rgba(15,23,42,0.38);backdrop-filter:blur(2px);display:flex;align-items:flex-start;justify-content:center;padding-top:9vh;opacity:0;pointer-events:none;transition:opacity 0.16s ease;}.fx-sp-veil.open{opacity:1;pointer-events:auto;}.fx-sp{width:560px;max-width:calc(100vw - 32px);max-height:76vh;background:var(--surface,#fff);border-radius:16px;box-shadow:0 30px 80px rgba(0,0,0,0.35);overflow:hidden;display:flex;flex-direction:column;transform:translateY(-8px) scale(0.98);transition:transform 0.16s ease;}.fx-sp-veil.open .fx-sp{transform:none;}.fx-sp-inputrow{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--s-100);}.fx-sp-inputrow .fx-sp-mag{font-size:15px;color:var(--s-400);flex:none;display:flex;align-items:center;}.fx-sp-inputrow .fx-sp-mag .fx-sp-svg{width:16px;height:16px;}.fx-sp-input{flex:1;border:0;font-size:15px;font-family:inherit;color:var(--s-800);background:none;min-width:0;}.fx-sp-input:focus{outline:none;}.fx-sp-input::placeholder{color:var(--s-400);}.fx-sp-esc{font-size:10px;color:var(--s-400);border:1px solid var(--s-200);border-radius:5px;padding:2px 6px;font-weight:700;flex:none;}.fx-sp-body{overflow-y:auto;padding:4px 8px 8px;flex:1;}.fx-sp-ghead{font-size:10px;font-weight:800;letter-spacing:0.08em;text-transform:uppercase;color:var(--s-400);padding:10px 10px 4px;}.fx-sp-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px;cursor:pointer;}.fx-sp-row:hover,.fx-sp-row.is-active{background:var(--i-50);}.fx-sp-row.is-active{box-shadow:inset 0 0 0 1.5px var(--i-200);}.fx-sp-ic{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:13px;flex:none;background:var(--s-100);color:var(--s-600);}.fx-sp-svg{width:14px;height:14px;display:block;}.fx-sp-lbl{flex:1;min-width:0;}.fx-sp-lbl .fx-sp-t{display:block;font-size:13.5px;font-weight:600;color:var(--s-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.fx-sp-lbl .fx-sp-m{display:block;font-size:11px;color:var(--s-400);margin-top:1px;}.fx-sp-kbd{font-size:10px;color:var(--s-400);flex:none;opacity:0;}.fx-sp-row.is-active .fx-sp-kbd{opacity:1;}.fx-sp-empty{padding:26px;text-align:center;color:var(--s-400);font-size:13px;}.fx-sp-foot{display:flex;gap:14px;padding:9px 16px;border-top:1px solid var(--s-100);background:var(--s-50,#f8fafc);font-size:10.5px;color:var(--s-400);}.fx-sp-foot b{color:var(--s-500);font-weight:700;}.fxrh-head{display:flex;gap:13px;align-items:center;margin-bottom:14px;}.fxrh-disc{width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,var(--i-500),var(--i-700));color:#fff;display:flex;align-items:center;justify-content:center;font-size:21px;flex:none;box-shadow:0 6px 16px rgba(79,70,229,0.35);}.fetexplorer-app .fxrh-head h3,.fxrh-head h3{margin:0;font-size:16px !important;font-weight:750;color:var(--s-900) !important;}.fxrh-head .fxrh-sub{font-size:12px;color:var(--s-400);margin-top:1px;}.fxrh-steps{display:flex;flex-direction:column;gap:12px;text-align:left;}.fxrh-step{display:flex;gap:12px;align-items:flex-start;}.fxrh-num{width:22px;height:22px;border-radius:50%;background:var(--i-50);color:var(--i-600);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none;margin-top:1px;}.fxrh-step p{margin:0;font-size:13px;line-height:1.5;color:var(--s-600);}.fxrh-step b{color:var(--s-800);font-weight:650;}.fxrh-tip{margin-top:14px;padding:11px 13px;background:linear-gradient(135deg,var(--i-50),#f5f3ff);border:1px solid var(--i-200);border-radius:11px;font-size:12.5px;line-height:1.5;color:var(--i-700);display:flex;gap:9px;text-align:left;}.activity-picker{min-width:200px;}.activity-picker-header{padding:8px 12px 6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.04em;color:var(--s-500);border-bottom:1px solid var(--s-200);margin-bottom:4px;}.activity-picker-slot{display:block;margin-top:3px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--s-700);}.activity-picker-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;display:inline-block;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.12);}.activity-picker-subject{font-weight:600;color:var(--s-800);}.activity-picker-teacher{color:var(--s-500);font-weight:400;}td.drag-over-target{background:rgba(59,130,246,0.05);border:2px solid var(--b-500);box-shadow:0 0 20px rgba(59,130,246,0.2);}td.drag-over-block{background:rgba(59,130,246,0.04);border:2px dashed var(--b-500);}.fetexplorer-app .drag-mode-switch{display:flex;align-items:center;gap:8px;}.fetexplorer-app .help-icon-btn{background:var(--b-100);border:1px solid var(--b-300);color:var(--b-800);cursor:pointer;padding:6px 8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all 0.2s ease;box-shadow:0 2px 4px rgba(0,0,0,0.1);}.fetexplorer-app .help-icon-btn:hover{background:var(--b-200);border-color:var(--b-400);color:var(--b-900);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,0.15)}.fetexplorer-app .help-icon-btn svg{display:block;}.fetexplorer-app .switch-label{display:flex;align-items:center;gap:5px;cursor:pointer;user-select:none;}.fetexplorer-app .switch-label input[type="checkbox"]{position:relative;width:48px;height:24px;appearance:none;background:var(--r-500);border-radius:12px;cursor:pointer;transition:background 0.3s ease;outline:none;}.fetexplorer-app .switch-label input[type="checkbox"]:focus-visible{outline:2px solid var(--i-500,#6366f1);outline-offset:2px;}.fetexplorer-app .switch-label input[type="checkbox"]:checked{background:var(--g-500);}.fetexplorer-app .switch-label input[type="checkbox"]::before{content:'';position:absolute;width:20px;height:20px;border-radius:50%;background:var(--surface);top:2px;left:2px;transition:transform 0.3s ease;box-shadow:0 2px 4px rgba(0,0,0,0.2);}.fetexplorer-app .switch-label input[type="checkbox"]:checked::before{transform:translateX(24px);}.fetexplorer-app .switch-text{font-size:13px;font-weight:600;color:var(--s-800);min-width:100px;}td.drag-preview-valid{background:rgba(34,197,94,0.09) !important;border-color:var(--g-300) !important;transition:background 0.2s ease,border-color 0.2s ease;}td.drag-preview-conflict{background:rgba(239,68,68,0.08) !important;border-color:var(--r-300) !important;transition:background 0.2s ease,border-color 0.2s ease;}td.drag-preview-conflict.no-drop{cursor:not-allowed !important;}td.drag-preview-warn{background:rgba(217,119,6,0.10) !important;border-color:var(--am-300,#fbbf24) !important;transition:background 0.2s ease,border-color 0.2s ease;}.conflict-popover{position:fixed;background:var(--surface);border:1px solid var(--r-500);border-left:4px solid var(--r-500);border-radius:10px;padding:11px 13px;box-shadow:0 10px 30px rgba(15,23,42,0.16);z-index:10000;min-width:200px;max-width:270px;pointer-events:none;}.conflict-popover-title{font-size:12.5px;font-weight:800;color:var(--r-500);margin-bottom:9px;display:flex;align-items:center;gap:6px;}.conflict-popover-content{font-size:12px;color:var(--s-600);}.conflict-popover-slot{font-size:11px;font-weight:600;color:var(--s-500);margin-bottom:8px;font-variant-numeric:tabular-nums;}.conflict-popover-clash{font-size:12px;color:var(--s-700);margin-bottom:6px;}.conflict-popover-clash b{color:var(--r-600,#dc2626);font-weight:700;}.conflict-popover-clash.cp-warn b{color:var(--am-600,#d97706);}.conflict-popover-rooms{margin-top:8px;font-size:11.5px;color:var(--g-800);background:var(--g-50);border-radius:7px;padding:7px 9px;line-height:1.5;}.conflict-popover-rooms.cp-none{color:var(--s-400);}.conflict-popover-rooms .cp-rooms-lbl{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--g-700,#15803d);margin-bottom:2px;}.conflict-popover-rooms .cp-more{color:var(--s-400);font-style:italic;}.conflict-popover-item.conflict-popover-timeslot .conflict-popover-label{color:var(--b-900);}.toast{position:fixed;bottom:24px;right:24px;background:var(--surface);color:var(--s-800);padding:16px 20px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);font-size:14px;font-weight:500;z-index:10001;opacity:0;transform:translateY(20px);transition:opacity 0.3s ease,transform 0.3s ease;max-width:400px;border-left:4px solid var(--b-500);}.toast.show{opacity:1;transform:translateY(0);}.toast.toast-success{border-left-color:var(--g-500);}.toast.toast-error{border-left-color:var(--r-500);}.toast.toast-warning{border-left-color:var(--a-500);}.toast.toast-info{border-left-color:var(--b-500);}.activity.hide-on-drag{opacity:0;pointer-events:none;height:0;margin:0;padding:0;overflow:hidden;transition:none;}.activity-container{min-height:50px;}tbody tr{position:relative;}#timetable td:first-child{font-weight:600;color:white;background:linear-gradient(135deg,var(--inverse-2) 0%,var(--inverse) 100%);position:sticky;left:0;z-index:5;font-size:13px;min-width:100px;max-width:100px;width:100px;white-space:nowrap;}#timetable tbody tr td:first-child{position:sticky;left:0;z-index:5;background:linear-gradient(135deg,var(--inverse-2) 0%,var(--inverse) 100%) !important;font-weight:600;color:white;text-align:center;vertical-align:top;padding:12px 8px;font-size:13px;min-width:100px;max-width:100px;width:100px;white-space:nowrap;}.time-content{display:block;position:sticky;top:50px;z-index:10;width:100%;text-align:center;color:white;font-weight:600;background:linear-gradient(135deg,var(--inverse-2) 0%,var(--inverse) 100%);padding:8px;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,0.3);}.activity-container{display:flex;flex-wrap:wrap;gap:6px;min-height:50px;}.activity{padding:var(--tt-pill-padding-y) var(--tt-pill-padding-r) var(--tt-pill-padding-y) var(--tt-pill-padding-l);border-radius:8px;color:white;font-weight:600;font-size:var(--tt-pill-font-size);cursor:move;transition:padding 0.3s ease,font-size 0.3s ease,transform 0.2s,box-shadow 0.2s,opacity 0.12s ease;box-shadow:0 2px 6px rgba(0,0,0,0.15);user-select:none;display:inline-flex;align-items:center;gap:6px;position:relative;}.activity:hover{transform:scale(1.08);box-shadow:0 6px 16px rgba(0,0,0,0.25);z-index:10;}.activity .activity-subject,.activity .activity-teacher,.activity .activity-room,.activity .activity-groups,.activity .activity-tags,.activity .activity-comments{overflow-wrap:anywhere !important;min-width:0;}.activity-code{display:inline-block;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:0.92em;font-weight:800;line-height:1.3;padding:0 4px;margin-right:5px;border-radius:4px;background:rgba(0,0,0,0.16);color:inherit;letter-spacing:0.03em;vertical-align:middle;}.activity-code--solo{background:none;padding:0;margin-right:0;border-radius:0;font-family:inherit;font-size:1em;font-weight:inherit;letter-spacing:normal;line-height:inherit;vertical-align:baseline;}.pill-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:1px;}.pill-chip{display:inline-block;max-width:24ch;font-size:0.82em;font-weight:600;line-height:1.4;padding:1px 7px;border-radius:999px;background:rgba(0,0,0,0.14);color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.pill-chip--comment{font-style:italic;opacity:0.92;}.activity-period-marker{flex:none;margin-left:4px;padding:0 5px;border-radius:5px;background:rgba(0,0,0,0.16);color:inherit;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:0.8em;font-weight:800;line-height:1.4;letter-spacing:0.02em;white-space:nowrap;}:root[data-tt-level="3"] .activity-period-marker{font-size:0.76em;padding:0 3px;margin-left:3px;}:root[data-tt-level="2"] .activity-period-marker,:root[data-tt-level="1"] .activity-period-marker{display:none;}.activity.fx-pill-ink .activity-period-marker{background:rgba(255,255,255,0.55);}#fx-trace-spine{position:absolute;top:0;left:0;pointer-events:none;overflow:visible;z-index:3;}.table-container.fx-tracing .activity{opacity:0.28;transition:opacity 0.12s ease;}.table-container.fx-tracing .activity.fx-trace-lit{opacity:1;box-shadow:0 0 0 3px #6366f1,0 4px 12px rgba(0,0,0,0.28);z-index:6;}.table-container.fx-card-hide .activity:not(.fx-trace-lit){display:none !important;}.activity.fx-hover-lit{box-shadow:0 0 0 2px #a5b4fc;}@media (prefers-reduced-motion:reduce){.table-container.fx-tracing .activity{transition:none;}}.activity.activity--span{align-items:flex-start;justify-content:flex-start;overflow:hidden;z-index:4;}.activity.activity--span:hover{transform:none;box-shadow:0 6px 18px rgba(0,0,0,0.28);z-index:11;}.split-dialog{text-align:left;}.split-dialog .split-sub{font-weight:600;margin:0 0 12px;}.split-dialog .split-label{display:block;font-size:13px;font-weight:600;color:var(--s-600);margin:10px 0 4px;}.split-dialog .split-n{width:96px;padding:6px 8px;border:2px solid var(--s-200);border-radius:8px;font-size:15px;}.split-dialog .split-fields{display:flex;flex-wrap:wrap;gap:8px;}.split-dialog .split-d{width:64px;padding:6px 8px;border:2px solid var(--s-200);border-radius:8px;font-size:15px;text-align:center;}.split-dialog .split-sum{margin-top:8px;font-size:13px;color:var(--s-500);}.split-dialog .split-ok{color:var(--em-600);font-weight:700;}.split-dialog .split-bad{color:var(--r-600);font-weight:600;}.split-dialog .split-note{margin:12px 0 0;font-size:12px;line-height:1.5;color:var(--s-500);}.merge-dialog{text-align:left;}.merge-dialog .merge-sub{font-weight:600;margin:0 0 4px;}.merge-dialog .merge-hint{margin:0 0 12px;font-size:12.5px;color:var(--s-500);}.merge-dialog .merge-cands{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow:auto;margin-bottom:14px;}.merge-dialog .merge-cand{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--s-200);border-radius:8px;cursor:pointer;}.merge-dialog .merge-cand:hover{background:var(--s-50);}.merge-dialog .merge-c{width:18px;height:18px;flex:none;}.merge-dialog .merge-c-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;}.merge-dialog .merge-c-row{display:flex;align-items:baseline;gap:10px;}.merge-dialog .merge-c-main{font-weight:600;flex:1;}.merge-dialog .merge-c-place{font-size:12px;color:var(--s-500);white-space:nowrap;}.merge-dialog .merge-c-def,.merge-dialog .merge-anchor-def{font-size:12px;color:var(--s-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.merge-dialog .merge-anchor-def{margin:0 0 10px;}.merge-dialog .merge-c-adj{font-size:11px;font-weight:700;color:var(--i-700);background:var(--i-50);border-radius:9999px;padding:2px 8px;}.merge-dialog .merge-modes{display:flex;flex-direction:column;gap:8px;}.merge-dialog .merge-mode{display:block;padding:10px 12px;border:2px solid var(--s-200);border-radius:10px;cursor:pointer;}.merge-dialog .merge-mode b{display:block;font-size:14px;}.merge-dialog .merge-mode > span{display:block;font-size:12px;color:var(--s-500);margin-top:2px;line-height:1.45;}.merge-dialog .merge-mode.on{border-color:var(--i-500);background:var(--i-50);}.merge-dialog .merge-mode.disabled{opacity:0.5;cursor:not-allowed;}.merge-dialog .merge-why{margin-top:6px;font-size:12px;font-weight:600;}.merge-dialog .merge-why.ok{color:var(--em-600);}.merge-dialog .merge-why.bad{color:var(--r-600);}.activity-clash-badge{position:absolute;top:-6px;right:-6px;width:17px;height:17px;min-width:17px;padding:0;border:2px solid #fff;border-radius:50%;background:var(--r-500);color:#fff;font-size:10px;font-weight:800;line-height:1;cursor:pointer;z-index:12;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px rgba(0,0,0,0.35);transition:transform 0.12s ease;}.activity-clash-badge::before{content:"!";}.activity-clash-badge[data-clash="room"]::before{content:"R";}.activity-clash-badge[data-clash="teacher"]::before{content:"T";}.activity-clash-badge[data-clash="group"]::before{content:"G";}.activity-clash-badge[data-clash="multi"]::before{content:"!";}.activity-clash-badge[data-clash="room"]{background:var(--b-600);}.activity-clash-badge[data-clash="teacher"]{background:var(--a-500);}.activity-clash-badge[data-clash="group"]{background:var(--v-500);}.activity-clash-badge[data-clash="multi"]{background:var(--r-500);}.activity-clash-badge:hover{transform:scale(1.18);}.activity-clash-badge:focus-visible{outline:2px solid var(--s-800);outline-offset:1px;}@keyframes fx-clash-pulse{0%{transform:scale(1);box-shadow:0 1px 3px rgba(0,0,0,0.35),0 0 0 0 rgba(255,255,255,0.75);}70%{transform:scale(1.18);box-shadow:0 1px 3px rgba(0,0,0,0.35),0 0 0 6px rgba(255,255,255,0);}100%{transform:scale(1);box-shadow:0 1px 3px rgba(0,0,0,0.35),0 0 0 0 rgba(255,255,255,0);}}body.clash-blink .activity-clash-badge{animation:fx-clash-pulse 1.1s ease-in-out infinite;}body.clash-blink .activity-clash-badge:hover{animation-play-state:paused;}@media (prefers-reduced-motion:reduce){body.clash-blink .activity-clash-badge{animation:none;}}body.fx-drag-fade #timetable .activity{opacity:0;pointer-events:none;transition:opacity 0.08s ease;}body.fx-drag-compact #timetable{--tt-cell-min-height:36px;--tt-cell-padding:2px;}body.fx-drag-compact #timetable .activity{display:none;}body.fx-drag-compact #timetable .activity-container{min-height:30px;gap:0;}body.fx-drag-fade #timetable td:not(:first-child),body.fx-drag-compact #timetable td:not(:first-child){transition:none;}.fx-ghost-clone{opacity:0.42;box-shadow:none !important;border:1.5px dashed rgba(0,0,0,0.4) !important;pointer-events:none;}.fx-ghost-clone:hover{transform:none;}:root[data-theme="dark"] .fx-ghost-clone{border-color:rgba(255,255,255,0.45) !important;}:root[data-theme="dark"] .fetexplorer-app.fx-palette-okabe .activity{filter:brightness(1.10) saturate(1.06);}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app.fx-palette-okabe .activity{filter:brightness(1.10) saturate(1.06);}}.fx-limit-banner{display:flex;align-items:flex-start;gap:14px;margin:16px 0;padding:15px 18px;background:linear-gradient(180deg,#fffdf7 0%,#fff6e3 100%);border:1px solid #f3d68a;border-left:4px solid #f59e0b;border-radius:12px;box-shadow:0 6px 20px rgba(245,158,11,0.14);}.fx-limit-banner__icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fef0c7;font-size:20px;line-height:1;box-shadow:inset 0 0 0 1px #fadf9b;}.fx-limit-banner__body{flex:1 1 auto;min-width:0;}.fetexplorer-app .fx-limit-banner__title,.fx-limit-banner__title{margin:0 0 3px;font-size:15px;font-weight:700;line-height:1.3;color:#92400e !important;}.fx-limit-banner__msg{margin:0;font-size:13.5px;line-height:1.55;color:#7a5a18;}.fx-limit-banner__msg strong{color:#92400e;font-weight:700;}.fx-limit-banner__close{flex:0 0 auto;align-self:flex-start;background:transparent;border:none;font-size:22px;line-height:1;cursor:pointer;color:#b45309;padding:2px 6px;border-radius:6px;transition:background 0.15s ease;}.fx-limit-banner__close:hover{background:rgba(180,83,9,0.12);}.fx-limit-banner__close:focus-visible{outline:2px solid #b45309;outline-offset:1px;}.fx-upgrade-link{font-weight:700;color:#047857;text-decoration:underline;text-underline-offset:2px;white-space:nowrap;}.fx-upgrade-link:hover{color:#065f46;}:root[data-theme="dark"] .fx-limit-banner{background:linear-gradient(180deg,rgba(245,158,11,0.10) 0%,rgba(245,158,11,0.06) 100%);border-color:rgba(245,158,11,0.45);border-left-color:#f59e0b;box-shadow:0 6px 20px rgba(0,0,0,0.30);}:root[data-theme="dark"] .fx-limit-banner__icon{background:rgba(245,158,11,0.18);box-shadow:inset 0 0 0 1px rgba(245,158,11,0.4);}:root[data-theme="dark"] .fx-limit-banner__title{color:#fcd34d !important;}:root[data-theme="dark"] .fx-limit-banner__msg{color:#e7dcc4;}:root[data-theme="dark"] .fx-limit-banner__msg strong{color:#fde68a;}:root[data-theme="dark"] .fx-limit-banner__close{color:#fcd34d;}:root[data-theme="dark"] .fx-limit-banner__close:hover{background:rgba(252,211,77,0.16);}:root[data-theme="dark"] .fx-upgrade-link{color:#6ee7b7;}:root[data-theme="dark"] .fx-upgrade-link:hover{color:#a7f3d0;}.validation-badge-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 20px;background:var(--s-50);border-bottom:1px solid var(--s-200);}.vbt-switch{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:600;color:var(--s-800);user-select:none;}.vbt-switch input{width:18px;height:18px;cursor:pointer;}.vbt-legend{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--s-500);flex-wrap:wrap;}.vbt-legend > span{display:inline-flex;align-items:center;}.vbt-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px;border:1px solid rgba(0,0,0,0.12);}.vbt-dot--room{background:var(--b-600);}.vbt-dot--teacher{background:var(--a-500);}.vbt-dot--group{background:var(--v-500);}.vbt-dot--multi{background:var(--r-500);}.fx-pv-vis-count{font-size:11px;font-weight:400;color:var(--s-500);}.fx-pv-visibility .fx-pv-fields{max-height:168px;overflow-y:auto;padding-right:4px;}.fx-pv-toggle--locked{opacity:0.65;}.fx-pv-toggle--locked input{cursor:not-allowed;}.fx-pv-showall{margin-top:10px;width:100%;padding:8px 10px;font-size:13px;font-weight:600;color:var(--i-600);background:var(--i-50);border:1px solid var(--i-200);border-radius:8px;cursor:pointer;}.fx-pv-showall:hover{background:var(--i-100);}.dt-hide-menu{min-width:184px;}.fx-persp-list{display:flex;flex-direction:column;gap:4px;}.fx-persp-opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:8px;background:transparent;cursor:pointer;font-size:14px;font-weight:600;color:var(--s-800);}.fx-persp-opt:hover{background:var(--s-100);}.fx-persp-opt.active{background:var(--i-50);border-color:var(--i-200);color:var(--i-600);}.fx-persp-hint{margin:10px 4px 2px;font-size:11px;color:var(--s-400);line-height:1.45;}#timetable thead th.dt-col{white-space:nowrap;}.dt-th-day{display:block;font-weight:700;}.dt-th-time{display:block;font-size:11px;opacity:0.85;font-weight:400;}#timetable thead th.dt-col-start,#timetable td.dt-col-start{border-left:2px solid var(--s-400);}#timetable tr.dt-row-start td,#timetable tr.dt-row-start .fx-dt-label{border-top:2px solid var(--s-400);}.fx-dt-label .time-content{white-space:nowrap;}.fx-dt-label .dt-th-time{opacity:0.85;}#timetable td.fx-res-label,#timetable tbody tr td.fx-res-label{width:172px;min-width:172px;max-width:172px;white-space:normal;word-break:break-word;overflow-wrap:anywhere;text-align:left;}#timetable td.fx-res-label .time-content{white-space:normal;text-align:left;}#timetable thead th.fx-corner{width:172px;min-width:172px;max-width:172px;}.activity-action-menu{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:16px;font-weight:700;opacity:0;transition:opacity 0.2s;cursor:pointer;background:rgba(0,0,0,0.2);width:20px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:white;}.activity:hover .activity-action-menu{opacity:1;}.activity-action-menu:hover{background:rgba(0,0,0,0.4);}.activity-action-dropdown{position:fixed;background:var(--surface);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,0.15);padding:4px 0;z-index:10000;min-width:160px;animation:dropdownFadeIn 0.15s ease-out;}@keyframes dropdownFadeIn{from{opacity:0;transform:translateY(-4px);}to{opacity:1;transform:translateY(0);}}.action-menu-item{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background 0.15s;user-select:none;}.action-menu-item:hover{background:var(--s-100);}.action-menu-item-danger:hover{background:var(--r-100);}.action-menu-icon{font-size:14px;width:16px;text-align:center;}.action-menu-text{font-size:14px;color:var(--s-700);flex:1;}.action-menu-item-danger .action-menu-text{color:var(--r-600);}.action-menu-item-disabled{opacity:0.4;cursor:not-allowed !important;}.fetexplorer-app .fx-help-badge{color:var(--b-700);background:var(--b-100);}:root[data-theme="dark"] .fetexplorer-app .fx-help-badge{color:var(--b-800);}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app .fx-help-badge{color:var(--b-800);}}.action-menu-tail{font-size:11.5px;color:var(--s-500);font-variant-numeric:tabular-nums;white-space:nowrap;}.fx-lockm-ov{position:fixed;inset:0;z-index:2600;background:rgba(15,23,42,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px;}.fx-lockm{width:100%;max-width:480px;max-height:88vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line,var(--s-200));border-radius:16px;box-shadow:0 24px 60px rgba(15,23,42,.28);animation:modalSlideIn .22s ease-out;overflow:hidden;}.fx-lockm-head{display:flex;gap:12px;align-items:flex-start;padding:18px 20px 12px;}.fx-lockm-ic{width:38px;height:38px;border-radius:10px;flex:0 0 auto;background:var(--i-50);display:grid;place-items:center;font-size:17px;}.fx-lockm-ht{flex:1;min-width:0;}.fx-lockm-ht h3{margin:0;font-size:16.5px;color:var(--s-900);}.fx-lockm-ht p{margin:2px 0 0;font-size:12.5px;color:var(--s-500);}.fx-lockm-x{width:34px;height:34px;flex:0 0 auto;border:1px solid var(--s-200);border-radius:9px;background:var(--surface);color:var(--s-500);cursor:pointer;font-size:15px;}.fx-lockm-x:hover{background:var(--s-100);}.fx-lockm-body{padding:4px 20px 16px;overflow-y:auto;}.fx-lockm-foot{display:flex;align-items:center;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--s-100);background:var(--s-50);}.fx-lockm-grow{flex:1;}.fx-lockm-btn{min-height:40px;padding:0 15px;border-radius:9px;border:1px solid var(--s-300);background:var(--surface);font-size:13.5px;font-weight:600;color:var(--s-700);cursor:pointer;}.fx-lockm-btn:hover{background:var(--s-100);}.fx-lockm-btn.primary{background:var(--i-600);border-color:var(--i-600);color:#fff;}.fx-lockm-btn.primary:hover{filter:brightness(1.08);}.fx-lockm-btn[disabled]{opacity:.5;cursor:not-allowed;}.fx-lockm-seg{display:flex;gap:6px;padding:4px;background:var(--s-100);border-radius:10px;margin:0 0 14px;}.fx-lockm-seg button{flex:1;min-height:36px;border:none;border-radius:7px;background:transparent;font-size:13px;font-weight:650;color:var(--s-500);cursor:pointer;}.fx-lockm-seg button.on{background:var(--surface);color:var(--i-600);box-shadow:0 1px 3px rgba(0,0,0,.09);}.fx-lockm-seg button.on.unlock{color:var(--a-600,#b45309);}.fx-lockm-card{display:flex;align-items:center;gap:11px;width:100%;text-align:left;min-height:56px;padding:10px 12px;margin:0 0 8px;border:1px solid var(--s-200);border-radius:11px;background:var(--surface);cursor:pointer;}.fx-lockm-card:hover{border-color:var(--i-500);background:var(--i-50);}.fx-lockm-card:last-child{margin-bottom:0;}.fx-lockm-dot{width:30px;height:30px;border-radius:8px;flex:0 0 auto;background:var(--s-100);display:grid;place-items:center;font-size:14px;}.fx-lockm-ct{flex:1;min-width:0;}.fx-lockm-ct b{display:block;font-size:13.5px;color:var(--s-800);}.fx-lockm-ct small{font-size:12px;color:var(--s-500);}.fx-lockm-need{font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--s-400);font-weight:700;}.fx-lockm-go{color:var(--s-400);font-size:16px;}.fx-lockm-lbl{display:block;font-size:13px;font-weight:650;color:var(--s-700);margin:10px 0 6px;}.fx-lockm-fet{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.05em;padding:2px 6px;border-radius:5px;background:var(--s-100);color:var(--s-500);margin-left:6px;}.fx-lockm-sel{width:100%;min-height:44px;padding:0 12px;font-size:14px;border:1.5px solid var(--s-300);border-radius:10px;background:var(--surface);color:var(--s-800);}.fx-lockm-axes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:4px 0 12px;}.fx-lockm-axis{display:flex;gap:9px;align-items:center;text-align:left;min-height:56px;padding:10px;cursor:pointer;border:1.5px solid var(--s-200);border-radius:10px;background:var(--surface);}.fx-lockm-axis.on{border-color:var(--i-500);background:var(--i-50);}.fx-lockm-axis b{display:block;font-size:13px;color:var(--s-800);}.fx-lockm-axis small{font-size:11.5px;color:var(--s-500);}.fx-lockm-box{width:19px;height:19px;border-radius:5px;flex:0 0 auto;display:grid;place-items:center;font-size:12px;background:var(--s-200);color:transparent;}.fx-lockm-axis.on .fx-lockm-box{background:var(--i-600);color:#fff;}.fx-lockm-preview{padding:10px 12px;border-radius:9px;font-size:12.5px;background:var(--s-50);color:var(--s-500);border:1px solid var(--s-200);}.fx-lockm-preview.ok{background:var(--g-50,#f0fdf4);color:var(--g-700,#15803d);border-color:var(--g-200,#bbf7d0);}.fx-lockm-preview.warn{background:var(--a-50,#fffbeb);color:var(--a-700,#b45309);border-color:var(--a-200,#fde68a);}@media (max-width:520px){.fx-lockm-axes{grid-template-columns:1fr;}}.action-menu-item-disabled:hover{background:transparent !important;}.action-menu-divider{height:1px;background:var(--s-200);margin:4px 0;}.activity-locked{border:2px dashed rgba(255,255,255,0.7) !important;box-shadow:0 0 0 2px rgba(0,0,0,0.2),0 2px 8px rgba(0,0,0,0.2) !important;}.activity-locked:hover{box-shadow:0 0 0 2px rgba(0,0,0,0.3),0 6px 16px rgba(0,0,0,0.25) !important;}.activity-locked-room{border:2px dotted rgba(255,255,255,0.75) !important;box-shadow:0 0 0 1px rgba(0,0,0,0.15) !important;}.unassigned-planner-warning.is-info{background:var(--b-50,#eef2ff);border-color:var(--b-100,#e0e7ff);color:var(--s-700,#334155);}.activity.dragging{opacity:0.5;transform:rotate(3deg);}.activity.just-dropped{animation:dropBounce 0.6s ease-out;}@keyframes dropBounce{0%{transform:scale(1);}30%{transform:scale(1.2);}50%{transform:scale(1.1);}100%{transform:scale(1);}}.grip-icon{opacity:0.6;font-size:14px;}body.fx-view-only-link .grip-icon,body.fx-view-only-link .unassigned-toggle-floating-btn,body.fx-view-only-link .unassigned-panel{display:none !important;}.drop-indicator{padding:10px 14px;border-radius:8px;border:3px dashed var(--b-500);background:rgba(59,130,246,0.15);display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:12px;color:white;animation:indicatorPulse 1s infinite;}@keyframes indicatorPulse{0%,100%{opacity:0.6;}50%{opacity:1;}}.fetexplorer-app .popover{position:fixed !important;background:linear-gradient(135deg,white 0%,var(--s-50) 100%) !important;border-radius:12px !important;box-shadow:0 12px 32px rgba(0,0,0,0.2) !important;border:1.5px solid var(--s-200) !important;padding:13px !important;max-width:320px !important;min-width:240px !important;z-index:1112 !important;pointer-events:none !important;animation:popoverFadeIn 0.2s ease-out !important;}@keyframes popoverFadeIn{from{opacity:0;transform:translateY(-10px) scale(0.95);}to{opacity:1;transform:translateY(0) scale(1);}}.fetexplorer-app .popover-header{display:flex;align-items:center;gap:9px;margin-bottom:10px;}.fetexplorer-app .popover-icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:17px;flex:0 0 auto;box-shadow:0 3px 9px rgba(0,0,0,0.13);}.fetexplorer-app .popover-title{flex:1;}.fetexplorer-app .popover-title h3{font-size:13px !important;color:var(--s-800) !important;margin-bottom:4px;line-height:1.25 !important;}.fetexplorer-app .popover-tag{display:inline-block;padding:2px 8px;border-radius:5px;font-size:10px;font-weight:700;color:white;}.popover-tag--prefix{vertical-align:middle;margin-right:5px;position:relative;top:-1px;}.fetexplorer-app .popover-info{background:var(--surface);border-radius:8px;padding:9px 10px;box-shadow:inset 0 1px 4px rgba(0,0,0,0.05);margin-bottom:8px;}.fetexplorer-app .popover-row{display:flex;align-items:center;gap:7px;margin-bottom:5px;font-size:11.5px;}.fetexplorer-app .popover-row:last-child{margin-bottom:0;}.fetexplorer-app .popover-emoji{font-size:14px;}.fetexplorer-app .popover-label{color:var(--s-500);font-weight:500;}.fetexplorer-app .popover-value{color:var(--s-800);font-weight:600;overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;text-overflow:ellipsis;}.fetexplorer-app .popover-comment{margin-top:8px;padding-top:8px;border-top:1px solid var(--s-200);}.fetexplorer-app .popover-comment-text{color:var(--s-600);font-size:11px;line-height:1.45;margin-top:4px;}.fetexplorer-app .popover-footer{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid var(--s-200);font-size:11px;color:var(--s-400);}.popover.popover--v2{display:block;padding:0 !important;width:460px !important;max-width:92vw !important;min-width:0 !important;overflow:hidden !important;pointer-events:auto !important;background:var(--surface) !important;box-shadow:0 20px 50px -16px rgba(20,22,45,0.42),0 6px 16px -8px rgba(20,22,45,0.22),0 0 0 1px rgba(20,22,45,0.05) !important;}.popover.popover--v2.fxp-peek{pointer-events:none !important;}.popover.popover--v2.fxp-peek .fxp-iconbtn{pointer-events:auto !important;}.popover--v2 .fxp-head{display:flex;flex-direction:column;gap:8px;padding:11px 14px;background:var(--s-50);border-bottom:1px solid var(--s-200);cursor:grab;user-select:none;}.popover--v2 .fxp-head.fxp-grabbing{cursor:grabbing;}.popover--v2 .fxp-head-top{display:flex;align-items:center;gap:10px;}.popover--v2 .fxp-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 16px;}.popover--v2 .fxp-hm{display:flex;align-items:center;gap:7px;min-width:0;max-width:100%;font-size:12.5px;color:var(--s-700);}.popover--v2 .fxp-hm .ic{color:var(--b-600);flex:none;}.popover--v2 .fxp-hm .fxp-nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;}.popover--v2 .fxp-hm .fxp-none{font-weight:400;}.popover--v2 .fxp-code{font:700 11px/1 var(--ds-font-num,ui-monospace,Menlo,Consolas,monospace);letter-spacing:0.01em;padding:4px 8px;border-radius:5px;flex:none;}.popover--v2 .fxp-title{flex:1;min-width:0;font-size:16px;font-weight:700;letter-spacing:-0.015em;color:var(--s-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.popover--v2 .fxp-iconbtn{flex:none;width:26px;height:26px;display:grid;place-items:center;border-radius:7px;border:1px solid var(--s-200);background:var(--surface);color:var(--s-500);font-size:12px;line-height:1;cursor:pointer;transition:background 0.12s,color 0.12s,border-color 0.12s;}.popover--v2 .fxp-iconbtn:hover{background:var(--s-100);color:var(--s-800);}.popover--v2 [data-fxp="edit"]:hover{background:var(--b-50);color:var(--b-600);border-color:var(--b-200);}.popover--v2 .fxp-body{display:flex;align-items:stretch;}.popover--v2 .fxp-colwhen{flex:1;min-width:0;padding:13px 15px;}.popover--v2 .fxp-colwho{width:232px;flex:none;padding:13px 15px;border-left:1px solid var(--s-100);}:root[data-theme="dark"] .popover--v2 .fxp-colwho{border-left-color:var(--s-200);}:root[data-theme="dark"] .popover--v2 .fxp-div{background:var(--s-200);}:root[data-theme="dark"] .popover--v2 .fxp-tabs{border-bottom-color:var(--s-200);}.popover--v2 .fxp-mrow{display:flex;align-items:center;gap:9px;padding:2px 0;min-width:0;}.popover--v2 .fxp-mrow .ic{color:var(--s-400);flex:none;}.popover--v2 .fxp-mrow span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.popover--v2 .fxp-mrow--lead{font-size:13px;font-weight:600;color:var(--s-800);}.popover--v2 .fxp-mrow--sub{font-size:12px;font-weight:500;color:var(--s-600);}.popover--v2 .fxp-mrow--sub .ic{color:var(--s-300);}.popover--v2 .fxp-none{color:var(--s-400);font-weight:400;}.popover--v2 .fxp-div{height:1px;background:var(--s-100);margin:10px 0;}.popover--v2 .fxp-sec + .fxp-sec{margin-top:18px;}.popover--v2 .fxp-sh{display:flex;align-items:center;gap:6px;margin-bottom:6px;}.popover--v2 .fxp-sh .ic{color:var(--s-400);flex:none;}.popover--v2 .fxp-lb{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--s-500);}.popover--v2 .fxp-ct{font-size:10px;font-weight:800;color:#fff;background:var(--b-500);border-radius:20px;padding:1px 7px;min-width:16px;line-height:1.5;text-align:center;box-shadow:0 1px 2px rgba(79,70,229,0.35);}.popover--v2 .fxp-ct--clash{background:#e8590c;color:#fff;}.popover--v2 .fxp-pills{display:flex;flex-wrap:wrap;gap:4px;}.popover--v2 .fxp-pills--scroll{max-height:70px;overflow-y:auto;overflow-x:hidden;align-content:flex-start;scrollbar-width:thin;scrollbar-color:var(--s-300) transparent;}.popover--v2 .fxp-pills--scroll::-webkit-scrollbar{width:5px;}.popover--v2 .fxp-pills--scroll::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:6px;}.popover--v2 .fxp-pills--scroll::-webkit-scrollbar-track{background:transparent;}.popover--v2 .fxp-pill{font-size:11px;font-weight:500;background:var(--s-100);color:var(--s-700);border:0;border-radius:5px;padding:1px 7px;white-space:normal;overflow-wrap:anywhere;max-width:100%;}.popover--v2 .fxp-pill--clash{background:#fff0e6;border-color:#ffc599;color:#c2410c;font-weight:700;}.popover--v2 .fxp-more{background:none;color:var(--b-600);border:0;padding:1px 2px;cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:2px;}.popover--v2 .fxp-more:hover{color:var(--b-700);background:none;}.popover--v2 .fxp-sched{display:flex;align-items:center;gap:8px;margin-bottom:8px;}.popover--v2 .fxp-sched .ic{color:var(--b-600);flex:none;}.popover--v2 .fxp-d{font-size:14px;font-weight:700;color:var(--s-900);}.popover--v2 .fxp-n{margin-left:auto;font-size:10.5px;font-weight:800;color:var(--b-700);background:var(--b-50);border:1px solid var(--b-200);border-radius:20px;padding:2px 9px;}.popover--v2 .fxp-slots{display:flex;flex-direction:column;gap:1px;max-height:168px;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--s-300) transparent;}.popover--v2 .fxp-slots::-webkit-scrollbar{width:5px;}.popover--v2 .fxp-slots::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:6px;}.popover--v2 .fxp-slots::-webkit-scrollbar-track{background:transparent;}.popover--v2 .fxp-slot{display:flex;align-items:center;gap:9px;padding:5px 7px;border-radius:7px;transition:background 0.1s ease;}.popover--v2 .fxp-slot[data-jump]{cursor:pointer;}.popover--v2 .fxp-slot[data-jump]:hover{background:var(--s-50);}.popover--v2 .fxp-dot{width:8px;height:8px;border-radius:50%;flex:none;border:2px solid var(--b-400);background:var(--surface);}.popover--v2 .fxp-slot.cur{background:var(--b-50);}.popover--v2 .fxp-slot.cur .fxp-dot{background:var(--b-500);border-color:var(--b-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--b-500) 22%,transparent);}.popover--v2 .fxp-t{font-size:13px;font-weight:600;color:var(--s-700);font-variant-numeric:tabular-nums;white-space:nowrap;}.popover--v2 .fxp-slot.cur .fxp-t{color:var(--b-600);font-weight:700;}.popover--v2 .fxp-here{margin-left:auto;font-size:10.5px;font-weight:700;color:var(--b-600);white-space:nowrap;}.popover--v2 .fxp-slot.off{opacity:0.55;}.popover--v2 .fxp-slot.off .fxp-t{font-weight:500;}.popover--v2 .fxp-offm{margin-left:auto;display:flex;align-items:center;gap:3px;color:var(--s-400);font-size:10px;font-weight:600;}.popover--v2 .fxp-unplaced{font-size:12px;color:var(--s-400);padding:5px 0;}.popover--v2 .fxp-empty{font-size:12px;color:var(--s-400);padding:6px 0;}.popover--v2 .fxp-csum{margin-top:10px;}.popover--v2 .fxp-lkrow{display:grid;grid-template-columns:1fr 1fr;gap:6px;}.popover--v2 .fxp-lk{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;border-radius:8px;padding:6px 9px;cursor:pointer;user-select:none;transition:filter 0.1s;}.popover--v2 .fxp-lk:hover{filter:brightness(0.97);}.popover--v2 .fxp-lk .ic{flex:none;}.popover--v2 .fxp-lk.on{background:#fdeede;border:1px solid #f3c89a;color:#9a5a16;}.popover--v2 .fxp-lk.off{background:var(--s-50);border:1px solid var(--s-200);color:var(--s-500);}.popover--v2 .fxp-lkt{margin-left:auto;font-weight:800;font-size:9.5px;text-transform:uppercase;letter-spacing:0.04em;}.popover--v2 .fxp-lk--na{cursor:default;opacity:0.5;}.popover--v2 .fxp-lk--na:hover{filter:none;}.popover--v2 .fxp-cmeta{margin-top:7px;font-size:10.5px;color:var(--s-500);}.popover--v2 .fxp-foot{border-top:1px solid var(--s-100);padding:10px 14px;}.popover--v2 .fxp-cmth{display:flex;align-items:center;gap:6px;cursor:pointer;}.popover--v2 .fxp-cmth .ic{color:var(--s-400);flex:none;}.popover--v2 .fxp-cmth > .ic:last-child{margin-left:auto;transition:transform 0.15s ease;}.popover--v2 .fxp-cmth.open > .ic:last-child{transform:rotate(180deg);}.popover--v2 .fxp-cmtb{display:none;font-size:12px;color:var(--s-600);line-height:1.5;margin-top:7px;overflow-wrap:anywhere;word-break:break-word;}.popover--v2 .fxp-cmtb.show{display:block;max-height:54px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--s-300) transparent;}.popover--v2 .fxp-cmtb.show::-webkit-scrollbar{width:5px;}.popover--v2 .fxp-cmtb.show::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:6px;}.popover--v2 .fxp-tabs{display:flex;gap:2px;padding:0 12px;border-bottom:1px solid var(--s-100);background:var(--s-50);}.popover--v2 .fxp-tab{appearance:none;border:0;background:none;font:inherit;font-size:12.5px;font-weight:600;color:var(--s-500);padding:9px 10px 8px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color 0.12s ease,border-color 0.12s ease;}.popover--v2 .fxp-tab:hover{color:var(--s-700);}.popover--v2 .fxp-tab.on{color:var(--b-600);border-bottom-color:var(--b-600);}.popover--v2 .fxp-tabct{font-size:10px;font-weight:800;color:#fff;background:var(--s-400);border-radius:20px;min-width:16px;height:16px;line-height:16px;text-align:center;padding:0 5px;}.popover--v2 .fxp-tab.on .fxp-tabct{background:var(--b-600);}.popover--v2 .fxp-pane{display:none;}.popover--v2 .fxp-pane.on{display:block;}.popover--v2 .fxp-acts{display:flex;gap:6px;padding:0 12px 11px;}.popover--v2 .fxp-actbtn{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:1;min-height:34px;padding:0 12px;border:1px solid var(--s-200);border-radius:9px;background:var(--s-50);color:var(--s-700);font-size:12.5px;font-weight:700;cursor:pointer;}.popover--v2 .fxp-actbtn:hover{background:var(--b-50);border-color:var(--b-200);color:var(--b-700);}.popover--v2 .fxp-actbtn .ic{flex:none;}.popover--v2 .fxp-cpane{max-height:320px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--s-300) transparent;}.popover--v2 .fxp-cpane::-webkit-scrollbar{width:5px;}.popover--v2 .fxp-cpane::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:6px;}.popover--v2 .fxp-clist{display:flex;flex-direction:column;gap:4px;padding:8px 12px;}.popover--v2 .fxp-crow{display:flex;align-items:flex-start;gap:8px;padding:5px 8px;border:1px solid var(--s-200);border-radius:8px;background:var(--s-50);}.popover--v2 .fxp-crow--off{opacity:0.55;}.popover--v2 .fxp-cic{flex:none;width:21px;height:21px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--s-100);color:var(--s-500);}.popover--v2 .fxp-cic .ic{flex:none;}.popover--v2 .fxp-cic--time{background:var(--b-50);color:var(--b-600);}.popover--v2 .fxp-cic--space{background:#e9f7f0;color:#0f9d6b;}.popover--v2 .fxp-cic--via{background:#fdf1e3;color:#b4690c;}.popover--v2 .fxp-via{font-size:9.5px;font-weight:700;color:var(--s-500);background:var(--s-100);border:1px solid var(--s-200);border-radius:5px;padding:0 5px;line-height:1.7;white-space:nowrap;}.popover--v2 .fxp-cmain{flex:1;min-width:0;}.popover--v2 .fxp-ctitle{font-size:12px;font-weight:700;color:var(--s-900);display:flex;align-items:center;gap:6px;flex-wrap:wrap;line-height:1.3;}.popover--v2 .fxp-cdet{font-size:11px;color:var(--s-600);margin-top:1px;overflow-wrap:anywhere;line-height:1.35;}.popover--v2 .fxp-cw{flex:none;align-self:center;font-size:10.5px;font-weight:800;color:var(--b-600);font-variant-numeric:tabular-nums;}.popover--v2 .fxp-pinbadge{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:800;color:#9a5a16;background:#fdeede;border:1px solid #f3c89a;border-radius:5px;padding:1px 5px;}.popover--v2 .fxp-crow--sk .fxp-cic,.popover--v2 .fxp-crow--sk .fxp-ctitle,.popover--v2 .fxp-crow--sk .fxp-cdet,.popover--v2 .fxp-crow--sk .fxp-cw{background:var(--s-100);border-radius:5px;color:transparent;animation:fxp-sk-shimmer 1.4s ease-in-out infinite;}.popover--v2 .fxp-crow--sk .fxp-ctitle{height:12px;width:62%;}.popover--v2 .fxp-crow--sk .fxp-cdet{height:10px;width:84%;margin-top:5px;}.popover--v2 .fxp-crow--sk .fxp-cw{width:26px;height:12px;}@keyframes fxp-sk-shimmer{0%,100%{opacity:1;}50%{opacity:0.5;}}@media (prefers-reduced-motion:reduce){.popover--v2 .fxp-crow--sk *{animation:none !important;}}.popover--v2 .fxp-cerr{padding:16px 14px;text-align:center;}.popover--v2 .fxp-cerr-msg{font-size:12px;color:var(--s-600);margin-bottom:9px;}.popover--v2 .fxp-cretry{appearance:none;border:1px solid var(--b-200);background:var(--b-50);color:var(--b-700);font:inherit;font-size:12px;font-weight:700;border-radius:8px;padding:6px 13px;cursor:pointer;}.popover--v2 .fxp-cretry:hover{background:var(--b-100);}.popover--v2 .fxp-empty--pane{padding:18px 14px;text-align:center;color:var(--s-400);font-size:12px;}.popover--v2 .fxp-cmtbody{padding:12px 14px;font-size:12px;color:var(--s-600);line-height:1.55;overflow-wrap:anywhere;word-break:break-word;max-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--s-300) transparent;}@media (max-width:768px){.fetexplorer-app .popover.popover--v2,.fetexplorer-demo .popover.popover--v2{max-width:94vw !important;width:auto !important;padding:0 !important;}.popover--v2 .fxp-body{flex-direction:column;}.popover--v2 .fxp-colwho{width:auto;border-left:none;border-top:1px solid var(--s-100);}:root[data-theme="dark"] .popover--v2 .fxp-colwho{border-top-color:var(--s-200);}}@keyframes fx-pill-flash{0%,100%{box-shadow:0 2px 6px rgba(0,0,0,0.15);}30%{box-shadow:0 0 0 4px #facc15,0 0 16px #facc15;}}.activity.fx-flash{animation:fx-pill-flash 0.8s ease 2;z-index:7;}@keyframes fx-cell-flash{0%,100%{box-shadow:none;}30%{box-shadow:inset 0 0 0 3px #facc15;}}td.fx-flash-cell{animation:fx-cell-flash 0.8s ease 2;}@media (prefers-reduced-motion:reduce){.activity.fx-flash{animation:none;box-shadow:0 0 0 3px #facc15;}td.fx-flash-cell{animation:none;box-shadow:inset 0 0 0 3px #facc15;}}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);z-index:2000;align-items:center;justify-content:center;padding:20px;}.modal.active{display:flex;}.modal-content{background:var(--surface);border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn 0.3s ease-out;}@keyframes modalSlideIn{from{opacity:0;transform:scale(0.9) translateY(-20px);}to{opacity:1;transform:scale(1) translateY(0);}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--s-200);}.modal-title{display:flex;align-items:center;gap:12px;}.modal-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 4px 12px rgba(0,0,0,0.15);}.modal-header h2{font-size:22px;color:var(--s-800);}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:var(--s-500);line-height:1;padding:4px 8px;border-radius:6px;transition:all 0.2s;}.close-btn:hover{background:var(--s-100);color:var(--s-800);}.modal-body{padding:24px;}.form-group{margin-bottom:18px;}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--s-600);margin-bottom:8px;}.required-asterisk{color:var(--r-500);font-weight:700;margin-left:2px;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}#editDay,#editHour{width:100%;padding:10px 12px;border:1px solid var(--s-300);border-radius:8px;font-size:14px;color:var(--s-800);background-color:var(--s-50);cursor:pointer;transition:all 0.2s ease;}#editDay:focus,#editHour:focus{outline:none;border-color:var(--b-500);background-color:var(--surface);box-shadow:0 0 0 3px rgba(59,130,246,0.1);}#editDay:hover,#editHour:hover{border-color:var(--s-400);}.modal-actions{display:flex;gap:12px;margin-top:24px;}.modal-actions .btn{flex:1;justify-content:center;}.guide{background:var(--surface);border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);padding:20px;margin-top:24px;}.guide h3{font-size:16px;color:var(--s-800) !important;margin-bottom:14px;display:flex;align-items:center;gap:8px;}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;font-size:14px;color:var(--s-500);align-items:center;justify-items:start;}.guide-grid strong{color:var(--s-800);}#fileInput{display:none;}.validation-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);z-index:9999;overflow-y:auto;padding:20px;}.validation-modal.active{display:flex;align-items:flex-start;justify-content:center;}.validation-modal-content{background:var(--surface);border-radius:16px;max-width:880px;width:100%;margin:40px auto;box-shadow:0 24px 60px rgba(15,23,42,0.28);overflow:hidden;animation:modalSlideIn 0.3s ease;}.val-ico{width:18px;height:18px;flex-shrink:0;vertical-align:-3px;}.validation-modal-header{background:var(--surface);color:var(--s-800);padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--s-200);}.validation-modal-header h2{margin:0;font-size:18px;font-weight:700;color:var(--s-800);display:flex;align-items:center;gap:10px;}.val-ico--title{width:22px;height:22px;color:var(--a-500);vertical-align:middle;}.validation-header-right{display:flex;align-items:center;gap:12px;}.validation-status-pill{font-size:12px;font-weight:600;padding:4px 12px;border-radius:999px;white-space:nowrap;}.validation-status-pill.is-issues{background:var(--a-100);color:var(--a-800);}.validation-status-pill.is-clear{background:var(--g-100);color:var(--g-700);}.validation-status-pill:empty{display:none;}.validation-modal-header .close-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;color:var(--s-500);border-radius:8px;cursor:pointer;transition:background 0.15s,color 0.15s;}.validation-modal-header .close-btn:hover{background:var(--s-100);color:var(--s-800);}.validation-modal-header .close-btn .val-ico{width:20px;height:20px;vertical-align:middle;}.validation-tabs{display:flex;gap:4px;background:var(--surface);border-bottom:1px solid var(--s-200);padding:0 16px;overflow-x:auto;}.validation-tab{display:inline-flex;align-items:center;gap:7px;padding:12px 14px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:14px;font-weight:600;color:var(--s-500);white-space:nowrap;transition:color 0.15s,border-color 0.15s;}.validation-tab .val-ico{color:var(--s-400);transition:color 0.15s;}.validation-tab:hover:not(.active){color:var(--s-700);}.validation-tab.active{color:var(--i-600);border-bottom-color:var(--i-600);}.validation-tab.active .val-ico{color:var(--i-600);}.vtab-count{min-width:18px;height:18px;padding:0 6px;border-radius:999px;background:var(--r-100);color:var(--r-700);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;}.validation-modal-body{padding:24px;max-height:60vh;overflow-y:auto;}.validation-tab-content{display:none;}.validation-tab-content.active{display:block;}.validation-section{margin-bottom:24px;}.validation-section:last-child{margin-bottom:0;}.validation-section-title{font-size:14px;font-weight:600;color:var(--s-800);margin-bottom:14px;display:flex;align-items:center;gap:8px;}.validation-section-title .val-ico{color:var(--s-500);}.validation-section-title .badge{background:var(--r-100);color:var(--r-700);padding:2px 9px;border-radius:999px;font-size:12px;font-weight:700;}.val-dismiss-all{margin-left:auto;padding:6px 12px;font-size:12px;font-weight:600;color:var(--r-700);background:var(--surface);border:1px solid var(--r-200);border-radius:8px;cursor:pointer;transition:background 0.15s;}.val-dismiss-all:hover{background:var(--r-50);}.validation-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:4px;}.validation-summary-card{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon count" "icon label" "more more";gap:2px 14px;text-align:left;padding:16px;background:var(--surface);border:1px solid var(--s-200);border-radius:12px;cursor:pointer;box-shadow:0 1px 2px rgba(15,23,42,0.04);transition:box-shadow 0.15s,transform 0.15s,border-color 0.15s;}.validation-summary-card:hover{box-shadow:0 8px 20px rgba(15,23,42,0.10);transform:translateY(-2px);}.vsc-icon{grid-area:icon;align-self:center;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;}.vsc-icon .val-ico{width:22px;height:22px;}.vsc-count{grid-area:count;font-size:26px;font-weight:700;color:var(--s-800);line-height:1.1;}.vsc-label{grid-area:label;font-size:13px;font-weight:600;color:var(--s-600);}.vsc-more{grid-area:more;margin-top:10px;font-size:12px;color:var(--s-400);font-weight:500;}.validation-summary-card.vsc--missing  .vsc-icon{background:var(--a-100);color:var(--a-700);}.validation-summary-card.vsc--conflict .vsc-icon{background:var(--r-100);color:var(--r-600);}.validation-summary-card.vsc--missing:hover{border-color:var(--a-300);}.validation-summary-card.vsc--conflict:hover{border-color:var(--r-300);}.validation-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}.validation-item{display:flex;align-items:flex-start;gap:12px;padding:14px 14px 14px 16px;background:var(--surface);border:1px solid var(--s-200);border-left:4px solid var(--a-500);border-radius:10px;font-size:14px;color:var(--s-700);box-shadow:0 1px 2px rgba(15,23,42,0.04);transition:box-shadow 0.15s,transform 0.12s;}.validation-item:hover{box-shadow:0 6px 16px rgba(15,23,42,0.08);transform:translateX(2px);}.validation-item.error{border-left-color:var(--a-500);}.validation-item.conflict{border-left-color:var(--r-600);}.validation-item strong{font-weight:700;color:var(--s-800);}.validation-item-details{margin-top:6px;font-size:13px;color:var(--s-500);}.val-edit-btn{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:7px 12px;font-size:13px;font-weight:600;color:var(--i-600);background:var(--i-50);border:1px solid var(--i-200);border-radius:8px;cursor:pointer;transition:background 0.15s;}.val-edit-btn:hover{background:var(--i-100);}.val-edit-btn .val-ico{width:15px;height:15px;}.dismiss-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:transparent;border:none;border-radius:8px;color:var(--s-400);cursor:pointer;flex-shrink:0;transition:background 0.15s,color 0.15s;}.dismiss-btn:hover{background:var(--s-100);color:var(--s-600);}.dismiss-btn .val-ico{width:16px;height:16px;pointer-events:none;}.validation-success{text-align:center;padding:44px 20px;}.validation-success-icon{width:64px;height:64px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--g-100);color:var(--g-600);}.validation-success-icon .val-ico{width:34px;height:34px;}.validation-partial{display:flex;gap:12px;align-items:flex-start;margin:0 0 16px;padding:12px 14px;border:1px solid var(--a-200);border-radius:10px;background:var(--a-50);color:var(--a-800);text-align:left;}.validation-partial .val-ico{width:20px;height:20px;flex:none;margin-top:2px;}.validation-partial p{margin:0 0 4px;font-size:14px;line-height:1.45;}.validation-partial p:last-child{margin-bottom:0;}.validation-partial__link{font-weight:600;white-space:nowrap;color:inherit;text-decoration:underline;}.validation-success-icon--partial{background:var(--s-100);color:var(--s-600);}.validation-success h3{font-size:20px;margin:0 0 6px;color:var(--g-700);font-weight:700;}.validation-success p{font-size:14px;color:var(--s-500);margin:0;}.custom-select,.custom-multiselect{position:relative;width:100%;}.select-trigger,.multiselect-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:var(--surface);border:2px solid var(--s-300);border-radius:8px;cursor:pointer;transition:all 0.2s;min-height:42px;}.select-trigger.availability-available{background:var(--g-50);border-color:var(--g-300);cursor:help;}.select-trigger.availability-busy{background:var(--r-50);border-color:var(--r-300);cursor:help;}.select-trigger.availability-restricted{background:var(--a-50);border-color:var(--a-300);cursor:help;}.select-trigger.availability-not-preferred{background:var(--b-50);border-color:var(--b-300);cursor:help;}.select-indicator{font-size:14px;flex-shrink:0;}.select-value{flex:1;}.select-trigger:hover,.multiselect-trigger:hover{border-color:var(--b-500);}.custom-select.open .select-trigger,.custom-multiselect.open .multiselect-trigger{border-color:var(--b-500);box-shadow:0 0 0 3px rgba(59,130,246,0.1);}.select-value{flex:1;color:var(--s-400);font-size:14px;}.select-value.has-value{color:var(--s-800);font-weight:500;}.multiselect-tags{flex:1;display:flex;flex-wrap:wrap;gap:6px;min-height:20px;}.multiselect-placeholder{color:var(--s-400);font-size:14px;}.multiselect-tag{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--b-100);color:var(--b-800);border-radius:6px;font-size:12px;font-weight:500;}.multiselect-tag span{line-height:1;}.tag-remove{background:none;border:none;color:var(--b-800);font-size:16px;line-height:1;cursor:pointer;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:background 0.2s;}.tag-remove:hover{background:rgba(30,64,175,0.2);}.select-arrow{color:var(--s-500);font-size:12px;transition:transform 0.2s;margin-left:8px;}.custom-select.open .select-arrow,.custom-multiselect.open .select-arrow{transform:rotate(180deg);}.cs-locked{position:relative;}.cs-locked .custom-select,.cs-locked .custom-multiselect{pointer-events:none;opacity:0.78;}.cs-locked .select-arrow{visibility:hidden;}.cs-locked::after{content:"\01F512";position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;line-height:1;pointer-events:none;z-index:2;}.fx-empty-grid-hint{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-top:84px;pointer-events:none;z-index:6;}.fx-egh-card{pointer-events:auto;background:var(--surface,#ffffff);border:1px solid var(--s-200,#e2e8f0);border-radius:14px;padding:22px 26px;box-shadow:0 10px 30px rgba(15,23,42,0.12);display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;max-width:340px;}.fx-egh-ic{font-size:30px;opacity:0.85;}.fx-egh-t{font-size:16px;font-weight:700;color:var(--s-700,#334155);}.fx-egh-sub{font-size:13px;color:var(--s-500,#64748b);}.fx-egh-btn{margin-top:4px;background:var(--brand,#6366f1);color:#fff;border:none;border-radius:9px;padding:9px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:filter 0.15s;}.fx-egh-btn:hover{filter:brightness(1.08);}.select-dropdown{display:none;position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--surface);border:2px solid var(--b-500);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,0.15);z-index:1000;overflow:hidden;}.select-search{width:100%;padding:10px 12px;border:none;border-bottom:1px solid var(--s-200);font-size:14px;outline:none;}.select-search:focus{background:var(--s-50);}.select-options{max-height:250px;overflow-y:auto;padding:4px 4px 24px 4px;}.select-options::-webkit-scrollbar{width:8px;}.select-options::-webkit-scrollbar-track{background:var(--s-100);border-radius:4px;}.select-options::-webkit-scrollbar-thumb{background:var(--s-300);border-radius:4px;}.select-options::-webkit-scrollbar-thumb:hover{background:var(--s-400);}.select-option{padding:10px 12px;cursor:pointer;transition:all 0.2s;border-radius:6px;font-size:14px;color:var(--s-700);}.select-option:hover{background:var(--s-100);color:var(--s-800);}.select-option.selected{background:var(--b-100);color:var(--b-800);font-weight:500;}.select-option.no-results{cursor:default;text-align:center;color:var(--s-400);font-style:italic;}.select-option.no-results:hover{background:transparent;}.select-option{display:flex;align-items:center;justify-content:space-between;gap:8px;}.select-option-text{flex:1;}.availability-indicator{font-size:14px;flex-shrink:0;}.select-option.availability-available{background:var(--g-50);cursor:help;}.select-option.availability-available:hover{background:var(--g-100);}.select-option.availability-busy{background:var(--r-50);cursor:help;}.select-option.availability-busy:hover{background:var(--r-100);}.select-option.availability-restricted{background:var(--a-50);cursor:help;}.select-option.availability-restricted:hover{background:var(--a-100);}.select-option.availability-not-preferred{background:var(--b-50);cursor:help;}.select-option.availability-not-preferred:hover{background:var(--b-100);}.select-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:12px;}.loader-spinner{width:24px;height:24px;border:3px solid var(--s-200);border-top-color:var(--b-500);border-radius:50%;animation:spin 0.6s linear infinite;}@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.loader-text{font-size:13px;color:var(--s-500);font-style:italic;}.custom-select-tooltip{position:fixed;background:linear-gradient(135deg,var(--inverse) 0%,var(--inverse-2) 100%) !important;color:white;padding:8px 12px;border-radius:8px;font-size:13px;font-weight:500;line-height:1.4;box-shadow:0 4px 12px rgba(0,0,0,0.3),0 0 0 1px rgba(255,255,255,0.1);z-index:10000;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity 0.2s ease,transform 0.2s ease;max-width:280px;white-space:normal;word-wrap:break-word;word-break:break-word;}.custom-select-tooltip.visible{opacity:1;transform:translateY(0);}.custom-select-tooltip::after{content:'';position:absolute;bottom:-6px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid var(--s-800);}.multiselect-option{display:flex;align-items:center;gap:10px;}.multiselect-option input[type="checkbox"]{width:18px;height:18px;cursor:pointer;accent-color:var(--b-500);}.multiselect-option span{flex:1;}.multiselect-option.selected{background:var(--b-100);color:var(--b-800);font-weight:500;}@media (max-width:768px){.fetexplorer-app .header-title{flex-wrap:wrap;}.fetexplorer-app .header-right{justify-content:center;width:100%;}.header-top{flex-direction:column;align-items:stretch;}.btn-group{justify-content:stretch;}.btn{flex:1;justify-content:center;}.form-row{grid-template-columns:1fr;}.validation-modal-content{margin:20px auto;}.select-dropdown{position:fixed;left:10px;right:10px;top:auto;max-width:calc(100vw - 20px);}.settings-panel{right:-100%;width:100%;max-width:100%;}.settings-panel.open{right:0;}.settings-header{padding:14px 16px;}.settings-content{padding:16px;}.entity-tabs{gap:5px;margin-bottom:12px;}.entity-item{min-height:48px;gap:8px;}.orderable-item .reorder-handle{min-height:48px;}.entity-item-btn{width:38px;height:38px;}.reorder-btn{width:32px;height:23px;}.add-entity-form{padding:12px;}.add-entity-form input,.add-entity-form select,.add-entity-form button{font-size:14px;}.entity-edit-modal-content{width:95%;max-width:95%;margin:10px;}.entity-edit-modal-header{padding:16px;}.entity-edit-modal-header h3{font-size:16px;}.entity-edit-modal-body{padding:16px;}.entity-edit-modal-footer{flex-direction:column;gap:8px;}.entity-edit-modal-btn{width:100%;}}.privacy-reopen-btn{position:fixed;left:16px;bottom:16px;background:var(--surface);border:1px solid var(--s-300);box-shadow:0 4px 12px rgba(0,0,0,0.1);border-radius:999px;padding:10px 14px;font-weight:600;font-size:13px;cursor:pointer;z-index:9998;opacity:0.6;transition:all 0.3s ease;}.privacy-reopen-btn:hover{background:var(--s-50);box-shadow:0 6px 16px rgba(0,0,0,0.15);transform:translateY(-2px);opacity:1;}.consent-overlay{position:fixed;inset:0;background:rgba(2,6,23,0.42);display:none;align-items:center;justify-content:center;z-index:9999;}.consent-modal{width:min(720px,92vw);background:var(--surface);border-radius:16px;box-shadow:0 10px 30px rgba(2,6,23,0.15);overflow:hidden;border:1px solid var(--s-300);}.consent-head{padding:20px 22px;background:linear-gradient(180deg,var(--s-50),#fff);border-bottom:1px solid var(--s-300);}.consent-title{margin:0;font-size:18px;font-weight:700;}.consent-sub{margin:6px 0 0;color:var(--s-500);font-size:14px;line-height:1.5;}.consent-sub a{color:var(--b-600);text-decoration:none;font-weight:500;}.consent-sub a:hover{text-decoration:underline;}.consent-body{padding:18px 22px 4px;}.consent-row{display:flex;gap:16px;align-items:flex-start;padding:12px 0;border-bottom:1px dashed var(--s-200);}.consent-row:last-child{border-bottom:0;}.consent-row h3{margin:0 0 4px;font-size:15px;}.consent-desc{margin:0;color:var(--s-500);font-size:13px;line-height:1.5;}.consent-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;background:var(--s-200);padding:4px 8px;border-radius:999px;}.consent-lock{font-size:12px;opacity:0.8;}.consent-switch{margin-left:auto;display:flex;align-items:center;gap:10px;}.consent-switch input{display:none;}.consent-toggle{width:44px;height:26px;background:var(--s-200);border-radius:999px;position:relative;transition:0.2s ease;cursor:pointer;}.consent-toggle::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--surface);border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,0.25);transition:0.2s ease;}.consent-switch input:checked + .consent-toggle{background:var(--b-600);}.consent-switch input:checked + .consent-toggle::after{left:21px;}.consent-switch input:disabled + .consent-toggle{cursor:not-allowed;opacity:0.6;}.consent-foot{padding:14px 22px 18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;border-top:1px solid var(--s-300);background:var(--s-50);}.consent-actions{display:flex;flex-wrap:wrap;gap:8px;}@media (max-width:768px){.privacy-reopen-btn{left:10px;bottom:10px;padding:8px 12px;font-size:12px;}.consent-modal{width:95vw;}.consent-head{padding:16px 18px;}.consent-body{padding:14px 18px 4px;}.consent-foot{padding:12px 18px 14px;}.consent-actions{width:100%;}.consent-actions .btn{flex:1;min-width:0;}}.custom-modal-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);z-index:10001;justify-content:center;align-items:center;animation:fx-fade-in 0.2s ease-out;}.custom-modal-overlay.active{display:flex;}.custom-modal{background:var(--surface);border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,0.2);min-width:400px;max-width:500px;animation:slideDown 0.3s ease-out;}.custom-modal-header{padding:20px 24px;border-bottom:1px solid var(--s-200);}.custom-modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--s-800) !important;}.custom-modal-body{padding:24px;}.custom-modal-body p{margin:0;font-size:15px;line-height:1.6;color:var(--s-600);}.custom-modal-footer{padding:16px 24px;border-top:1px solid var(--s-200);display:flex;justify-content:flex-end;gap:12px;}.custom-modal-footer .btn{min-width:80px;}@keyframes fx-fade-in{from{opacity:0;}to{opacity:1;}}@keyframes slideDown{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}@media (max-width:768px){.custom-modal{min-width:300px;max-width:90%;margin:20px;}}.fetexplorer-app .user-menu{position:relative;margin-inline-start:16px;}.fetexplorer-app .user-icon-btn{background:linear-gradient(135deg,var(--i-500) 0%,var(--i-600) 100%);border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;color:white;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(99,102,241,0.3);overflow:hidden;}.fetexplorer-app .user-icon-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(99,102,241,0.4);}.fetexplorer-app .user-icon-btn:active{transform:translateY(0);}.fetexplorer-app .user-icon-btn.has-photo{background:none;box-shadow:0 2px 8px rgba(0,0,0,0.15);padding:0;}.fetexplorer-app .user-icon-btn.has-photo:hover{box-shadow:0 4px 12px rgba(0,0,0,0.2);}.fetexplorer-app .user-icon-btn .user-photo{width:100%;height:100%;object-fit:cover;border-radius:50%;}.fetexplorer-app .user-dropdown{position:absolute;top:calc(100% + 8px);inset-inline-end:0;background:var(--surface);border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,0.15);min-width:220px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.3s ease;z-index:1000;}.fetexplorer-app .user-dropdown.active{opacity:1;visibility:visible;transform:translateY(0);}.fetexplorer-app .user-info{padding:16px;border-bottom:1px solid var(--s-200);}.fetexplorer-app .user-name{font-weight:600;color:var(--s-800);font-size:14px;margin-bottom:4px;}.fetexplorer-app .user-status{font-size:12px;color:var(--s-500);}.fetexplorer-app .user-menu-items{padding:8px;}.fetexplorer-app .user-menu-item{width:100%;padding:10px 12px;background:none;border:none;text-align:left;cursor:pointer;border-radius:6px;transition:background 0.2s ease;display:flex;align-items:center;gap:10px;color:var(--s-600);font-size:14px;text-decoration:none;}.fetexplorer-app .user-menu-item:hover{background:var(--s-100);color:var(--s-800);}.fetexplorer-app .user-menu-item.logout{color:var(--r-600);}.fetexplorer-app .user-menu-item.logout:hover{background:var(--r-100);}.fetexplorer-app .user-menu-item svg{flex-shrink:0;}.fetexplorer-app .auth-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);display:none;align-items:center;justify-content:center;z-index:10000;}.fetexplorer-app .auth-modal.active{display:flex;}.fetexplorer-app .auth-modal-content{background:var(--surface);border-radius:12px;width:90%;max-width:450px;box-shadow:0 20px 60px rgba(0,0,0,0.3);animation:fadeInScale 0.3s ease;}.fetexplorer-app .auth-modal-header{padding:24px 24px 16px;border-bottom:1px solid var(--s-200);display:flex;justify-content:space-between;align-items:center;}.fetexplorer-app .auth-modal-header h3{margin:0;font-size:20px !important;color:var(--s-800) !important;}.fetexplorer-app .auth-modal-body{padding:24px;}.fetexplorer-app .auth-modal-body .form-group{margin-bottom:20px;}.fetexplorer-app .auth-modal-body label{display:block;margin-bottom:8px;font-weight:500;color:var(--s-600);font-size:14px;}.fetexplorer-app .auth-modal-body input[type="text"],.fetexplorer-app .auth-modal-body input[type="password"]{width:100%;padding:10px 12px;border:1px solid var(--s-300);border-radius:6px;font-size:14px;transition:border-color 0.2s ease;}.fetexplorer-app .auth-modal-body input[type="text"]:focus,.fetexplorer-app .auth-modal-body input[type="password"]:focus{outline:none;border-color:var(--i-500);box-shadow:0 0 0 3px rgba(99,102,241,0.1);}.fetexplorer-app .password-help{display:block;margin-top:6px;font-size:12px;color:var(--s-500);}.fetexplorer-app .auth-error{background:var(--r-100);color:var(--r-600);padding:12px;border-radius:6px;font-size:14px;margin-bottom:16px;}.fetexplorer-app .auth-success{background:var(--g-100);color:var(--em-600);padding:12px;border-radius:6px;font-size:14px;margin-bottom:16px;}.fetexplorer-app .auth-modal-footer{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;}.fetexplorer-app .auth-modal-footer .btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all 0.2s ease;}@keyframes fadeInScale{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}.fetexplorer-app #timetable td{overflow:visible;}@keyframes activityFadeIn{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}.filter-transition .activity{animation:activityFadeIn 0.25s ease both;}.filter-transition .activity:nth-child(1){animation-delay:0.02s;}.filter-transition .activity:nth-child(2){animation-delay:0.04s;}.filter-transition .activity:nth-child(3){animation-delay:0.06s;}.filter-transition .activity:nth-child(4){animation-delay:0.08s;}.filter-transition .activity:nth-child(5){animation-delay:0.10s;}.filter-transition .activity:nth-child(6){animation-delay:0.12s;}.filter-transition .activity:nth-child(7){animation-delay:0.14s;}.filter-transition .activity:nth-child(8){animation-delay:0.16s;}.filter-transition .activity:nth-child(9){animation-delay:0.18s;}.filter-transition .activity:nth-child(10){animation-delay:0.20s;}.filter-transition .activity:nth-child(n+11){animation-delay:0.22s;}.btn-import-empty{padding:14px 32px !important;font-size:16px !important;background:linear-gradient(135deg,var(--i-500) 0%,var(--i-600) 100%) !important;color:white !important;border:none !important;border-radius:8px !important;cursor:pointer !important;font-weight:600 !important;box-shadow:0 4px 12px rgba(99,102,241,0.3) !important;transition:all 0.3s ease !important;}.btn-import-empty:hover{transform:translateY(-2px) !important;box-shadow:0 6px 20px rgba(99,102,241,0.4) !important;}.landing-footer{position:relative;z-index:10;background:var(--inverse);text-align:center;padding:40px 20px;color:var(--s-400);margin-top:40px;}.footer-links{display:flex;justify-content:center;gap:30px;margin-bottom:20px;flex-wrap:wrap;}.footer-links a{color:var(--s-400);text-decoration:none;font-size:14px;transition:color 0.3s ease;}.footer-links a:hover{color:white;}.unassigned-panel{position:fixed;left:-340px;top:0;bottom:0;width:340px;background:var(--surface);border-right:2px solid var(--s-200);box-shadow:4px 0 12px rgba(0,0,0,0.08);z-index:900;display:flex;flex-direction:column;transition:left 0.3s ease;}.unassigned-panel.open{left:0;z-index:1111;}.unassigned-panel.hidden{display:none;}.unassigned-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--i-600);color:white;border-bottom:1px solid var(--i-700);box-shadow:0 2px 4px rgba(0,0,0,0.1);}.unassigned-panel-title{font-size:16px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px;}.unassigned-icon{font-size:20px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:rgba(255,255,255,0.15);border-radius:6px;transition:all 0.3s ease;}.unassigned-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;background:var(--r-500);border-radius:12px;font-size:12px;font-weight:700;box-shadow:0 2px 4px rgba(0,0,0,0.2);}.unassigned-toggle-btn{background:transparent;border:none;width:32px;height:32px;border-radius:4px;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s ease;font-size:28px;line-height:1;}.unassigned-toggle-btn:hover{background:rgba(255,255,255,0.2);}.unassigned-panel-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;}.unassigned-activities-container{display:flex;flex-direction:column;gap:12px;}.unassigned-planner-warning{display:flex;align-items:center;gap:12px;padding:12px 16px;background:linear-gradient(135deg,var(--a-100) 0%,var(--a-200) 100%);border:2px solid var(--a-500);border-radius:8px;margin-bottom:8px;animation:warningPulse 2s ease-in-out infinite;}.planner-warning-icon{font-size:24px;flex-shrink:0;animation:warningShake 0.5s ease-in-out;}.planner-warning-content{flex:1;}.planner-warning-content strong{display:block;font-size:13px;font-weight:700;color:var(--a-800);margin-bottom:4px;}.planner-warning-content p{font-size:12px;color:var(--a-900);margin:0;line-height:1.4;}@keyframes warningPulse{0%,100%{box-shadow:0 2px 8px rgba(245,158,11,0.2);}50%{box-shadow:0 2px 12px rgba(245,158,11,0.4);}}@keyframes warningShake{0%,100%{transform:rotate(0deg);}25%{transform:rotate(-10deg);}75%{transform:rotate(10deg);}}.unassigned-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--s-400);}.unassigned-empty-state .empty-icon{font-size:48px;margin-bottom:16px;opacity:0.5;}.unassigned-empty-state p{margin:0;font-size:14px;line-height:1.5;}.unassigned-otheraxis-note{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 12px 12px;padding:10px 12px;border:1px solid var(--s-200,#e2e8f0);border-radius:8px;background:var(--s-50,#f8fafc);color:var(--s-500,#64748b);font-size:12.5px;line-height:1.45;}.unassigned-otheraxis-link{min-height:32px;padding:4px 10px;border:1px solid var(--i-600,#6366f1);border-radius:6px;background:transparent;color:var(--i-600,#6366f1);font-size:12.5px;font-weight:600;cursor:pointer;}.unassigned-otheraxis-link:hover{background:var(--i-600,#6366f1);color:#fff;}.fx-unsolved{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:0 0 14px;padding:14px 18px;border:1px solid var(--i-200,#c7d2fe);border-radius:12px;background:var(--i-50,#eef2ff);color:var(--s-700,#334155);font-size:14px;line-height:1.5;}.fx-unsolved__text{flex:1 1 360px;}.fx-unsolved__title{display:block;margin-bottom:2px;color:var(--s-900,#0f172a);font-size:15px;}.fx-unsolved__actions{display:flex;flex-wrap:wrap;gap:8px;}.fx-unsolved__btn{display:inline-flex;align-items:center;min-height:48px;padding:0 16px;border:1px solid var(--i-600,#4f46e5);border-radius:10px;background:var(--i-600,#4f46e5);color:var(--btn-ink,#fff);font:inherit;font-weight:600;text-decoration:none;cursor:pointer;}.fx-unsolved__btn--ghost{background:transparent;color:var(--i-700,#4338ca);}.fx-unsolved__btn:focus-visible{outline:2px solid var(--i-600,#4f46e5);outline-offset:2px;}.unassigned-toggle-floating-btn{position:fixed;bottom:245px;left:20px;width:50px;height:50px;background:var(--i-600);color:white;border:none;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(79,70,229,0.4);transition:all 0.3s ease;z-index:998;}.unassigned-toggle-floating-btn:hover:not(:disabled){background:var(--i-700);transform:translateY(-5px);box-shadow:0 6px 16px rgba(79,70,229,0.6);}.unassigned-toggle-floating-btn:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.unassigned-panel.open ~ .unassigned-toggle-floating-btn{display:none;}.unassigned-btn-badge{position:absolute;top:-4px;right:-4px;min-width:24px;height:24px;padding:0 6px;background:var(--r-500);color:white;border-radius:12px;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,0.2);}.unassigned-btn-badge[hidden]{display:none;}body:has(.unassigned-panel.open:not(.hidden)) .container{margin-left:340px;transition:margin-left 0.3s ease;}.unassigned-panel .activity{width:100%;margin:0;cursor:move;}@media (max-width:1400px){.unassigned-panel{width:280px;}.unassigned-panel.collapsed{width:48px;}body:has(.unassigned-panel.open:not(.collapsed):not(.hidden)) .container{margin-left:280px;}}@media (max-width:1024px){.unassigned-panel{width:260px;}.unassigned-panel.collapsed{width:48px;}body:has(.unassigned-panel.open:not(.collapsed):not(.hidden)) .container{margin-left:260px;}}.unassigned-panel-body.drag-over{background:linear-gradient(135deg,rgba(99,102,241,0.1) 0%,rgba(79,70,229,0.1) 100%);border:2px dashed var(--i-500);border-radius:8px;}.unassigned-panel-body.drag-over::after{content:'\01F4CB  Drop here to unassign';display:flex;align-items:center;justify-content:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:16px;font-weight:600;color:var(--i-500);background:rgba(255,255,255,0.95);padding:12px 24px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);pointer-events:none;z-index:10;}.unassigned-search-box{position:relative;padding:12px 16px;border-bottom:1px solid var(--s-200);}.unassigned-search-input{width:100%;padding:10px 36px 10px 12px;border:1px solid var(--s-300);border-radius:8px;font-size:14px;outline:none;transition:border-color 0.2s ease,box-shadow 0.2s ease;}.unassigned-search-input:focus{border-color:var(--i-500);box-shadow:0 0 0 3px rgba(99,102,241,0.1);}.unassigned-search-clear{position:absolute;right:24px;top:50%;transform:translateY(-50%);background:var(--s-400);border:none;width:20px;height:20px;border-radius:50%;color:white;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s ease;}.unassigned-search-clear:hover{background:var(--s-500);}.unassigned-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--s-400);}.unassigned-no-results .empty-icon{font-size:48px;margin-bottom:16px;opacity:0.5;}.unassigned-no-results p{margin:0;font-size:14px;line-height:1.5;}.display-options-content{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:12px 0;}.display-option-group{display:flex;flex-direction:column;gap:0;background:linear-gradient(135deg,var(--surface) 0%,var(--s-50) 100%);border:1px solid var(--s-200);border-radius:6px;padding:8px 8px 6px 8px;transition:all 0.2s;}.display-option-group:hover{border-color:var(--s-300);box-shadow:0 1px 3px rgba(0,0,0,0.05);}.font-size-control{display:flex;align-items:center;justify-content:center;gap:3px;padding:6px 4px 4px 4px;background:rgba(241,245,249,0.6);border-top:1px solid var(--s-200);border-radius:0 0 4px 4px;margin:4px -8px -6px -8px;transition:all 0.2s;}.font-size-control:hover{background:rgba(59,130,246,0.05);}.font-size-label{font-size:10px;color:var(--s-500);min-width:40px;flex-shrink:0;}.zoom-control{display:flex;align-items:center;gap:4px;}.zoom-btn-sm{width:24px;height:24px;border:1px solid var(--s-300);background:var(--surface);border-radius:4px;cursor:pointer;font-size:14px;font-weight:700;color:var(--s-500);transition:all 0.2s;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1;}.zoom-btn-sm:hover{background:var(--b-500);border-color:var(--b-500);color:white;transform:translateY(-1px);box-shadow:0 2px 4px rgba(59,130,246,0.2);}.zoom-value-sm{text-align:center;font-size:11px;font-weight:600;color:var(--s-600);min-width:32px;flex-shrink:0;background:var(--surface);padding:2px 6px;border-radius:3px;border:1px solid var(--s-200);}.ui-widget-overlay{background:rgba(0,0,0,0.4) !important;}div.ui-dialog.ui-widget[aria-describedby="drupal-modal"]{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:var(--surface);border-radius:16px;border:none;box-shadow:0 10px 30px rgba(41,51,61,0.15);padding:0;overflow:hidden;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-titlebar.ui-widget-header{background:var(--surface);border:none;border-bottom:1px solid var(--s-200);border-radius:16px 16px 0 0;padding:20px 24px;position:relative;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-title{font-size:1.3rem;font-weight:600;color:var(--s-800);float:none;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-titlebar-close{background:var(--s-100);border:none;border-radius:50%;color:var(--s-500);font-size:1.2rem;font-weight:700;position:absolute;right:20px;top:50%;transform:translateY(-50%);cursor:pointer;height:32px;width:32px;line-height:32px;text-align:center;transition:all 0.2s ease;padding:0;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-titlebar-close::before{content:'\00d7';display:block;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-titlebar-close .ui-icon{display:none;}div.ui-dialog[aria-describedby="drupal-modal"] .ui-dialog-titlebar-close:hover{background:var(--s-200);color:var(--s-600);}#drupal-modal.ui-dialog-content{padding:24px;background:var(--surface);border-radius:0 0 16px 16px;color:var(--s-700);}#drupal-modal .js-form-item{margin-bottom:1.25rem;}#drupal-modal label{display:block;font-weight:500;font-size:0.9rem;color:var(--s-600);margin-bottom:0.5rem;}#drupal-modal label.form-required::after{content:' *';color:var(--r-500);font-weight:700;}#drupal-modal .form-control{width:100%;padding:12px 16px;border:1px solid var(--s-300);border-radius:8px;font-size:1rem;color:var(--s-800);background-color:var(--surface);transition:border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;box-sizing:border-box;}#drupal-modal .form-control:focus{border-color:var(--v-400);box-shadow:0 0 0 3px rgba(122,95,255,0.2);outline:0;background-color:var(--surface);}#drupal-modal textarea.form-control{min-height:120px;resize:vertical;}#drupal-modal .form-actions{text-align:right;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--s-200);}#drupal-modal .webform-button--submit.btn-outline-primary{background-color:var(--b-600);color:#ffffff;border:1px solid var(--b-600);border-radius:8px;padding:12px 24px;font-size:0.95rem;font-weight:600;cursor:pointer;transition:all 0.2s ease-in-out;text-transform:none;background-image:none !important;}#drupal-modal .webform-button--submit.btn-outline-primary:hover{background-color:var(--b-700);border-color:var(--b-700);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,0.05);background-image:none !important;}.landing-header .logo-icon,.dashboard-header .logo-icon{animation:pulse-glow 2s ease-in-out infinite;}@keyframes pulse-glow{0%,100%{filter:drop-shadow(0 0 2px rgba(255,255,255,0.3));}50%{filter:drop-shadow(0 0 8px rgba(255,255,255,0.6));}}@media (prefers-reduced-motion:reduce){.landing-header .logo-icon,.dashboard-header .logo-icon,.filter-badge,.unassigned-planner-warning{animation:none;}}@media (max-width:480px){.landing-header,.dashboard-header{padding:12px 16px !important;gap:12px !important;display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:center !important;}.landing-header .logo,.dashboard-header .logo{gap:8px !important;flex-shrink:0 !important;display:flex !important;align-items:center !important;}.landing-header .logo-icon,.dashboard-header .logo-icon{height:50px !important;width:50px !important;object-fit:contain !important;}.landing-header .logo span,.dashboard-header .logo span{display:none !important;}.landing-header .header-right,.landing-header .nav-buttons,.dashboard-header .nav-buttons{display:flex !important;flex-direction:row !important;align-items:center !important;gap:8px !important;flex-shrink:0 !important;}.language-switcher{position:relative !important;}.language-switcher-btn .language-code{display:none !important;}.language-switcher-btn{min-width:auto !important;padding:8px !important;}.language-dropdown{position:fixed !important;left:50% !important;top:60px !important;transform:translateX(-50%) !important;min-width:280px !important;max-width:90vw !important;width:min(360px,calc(100vw - 32px)) !important;max-height:calc(100vh - 80px) !important;margin-top:0 !important;z-index:99999 !important;overflow-y:auto !important;overflow-x:hidden !important;}.language-dropdown *,.language-dropdown > *,.language-switcher .dropdown-menu,.language-switcher .dropdown-menu *{overflow-x:hidden !important;}.language-dropdown::-webkit-scrollbar,.user-dropdown::-webkit-scrollbar,.language-dropdown *::-webkit-scrollbar,.user-dropdown *::-webkit-scrollbar,.language-switcher .dropdown-menu::-webkit-scrollbar,.user-menu .dropdown-menu::-webkit-scrollbar{width:8px !important;}.language-dropdown::-webkit-scrollbar-track,.user-dropdown::-webkit-scrollbar-track,.language-dropdown *::-webkit-scrollbar-track,.user-dropdown *::-webkit-scrollbar-track,.language-switcher .dropdown-menu::-webkit-scrollbar-track,.user-menu .dropdown-menu::-webkit-scrollbar-track{background:var(--s-100) !important;border-radius:4px !important;}.language-dropdown::-webkit-scrollbar-thumb,.user-dropdown::-webkit-scrollbar-thumb,.language-dropdown *::-webkit-scrollbar-thumb,.user-dropdown *::-webkit-scrollbar-thumb,.language-switcher .dropdown-menu::-webkit-scrollbar-thumb,.user-menu .dropdown-menu::-webkit-scrollbar-thumb{background:var(--s-500) !important;border-radius:4px !important;}.language-dropdown::-webkit-scrollbar-thumb:hover,.user-dropdown::-webkit-scrollbar-thumb:hover,.language-dropdown *::-webkit-scrollbar-thumb:hover,.user-dropdown *::-webkit-scrollbar-thumb:hover,.language-switcher .dropdown-menu::-webkit-scrollbar-thumb:hover,.user-menu .dropdown-menu::-webkit-scrollbar-thumb:hover{background:var(--s-600) !important;}.user-menu{position:relative !important;}.user-icon-btn svg{width:20px !important;height:20px !important;}.user-dropdown{position:fixed !important;left:50% !important;top:60px !important;transform:translateX(-50%) !important;min-width:280px !important;max-width:90vw !important;max-height:calc(100vh - 80px) !important;margin-top:0 !important;z-index:99999 !important;overflow-y:auto !important;overflow-x:hidden !important;}.user-dropdown *,.user-dropdown > *,.user-menu .dropdown-menu,.user-menu .dropdown-menu *{overflow-x:hidden !important;}.fetexplorer-app .header .header-top > div:first-child,.fetexplorer-demo .header .header-top > div:first-child{flex-direction:column !important;align-items:flex-start !important;padding:12px 16px !important;gap:12px !important;}.fetexplorer-app .header .header-top img,.fetexplorer-demo .header .header-top img{height:40px !important;max-width:80px !important;}.fetexplorer-app .header .header-top h2,.fetexplorer-demo .header .header-top h2{font-size:18px !important;line-height:1.2 !important;}.fetexplorer-app .header .header-top span,.fetexplorer-demo .header .header-top span{font-size:14px !important;}.drag-mode-switch{width:100% !important;position:static !important;display:flex !important;justify-content:space-between !important;align-items:center !important;}.fetexplorer-app .header .header-top > .fx-hdr-band,.fetexplorer-demo .header .header-top > .fx-hdr-band{padding:8px 10px !important;}.fetexplorer-app .btn,.fetexplorer-demo .btn{font-size:11px !important;padding:8px 6px !important;min-width:auto !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;}.dropdown{grid-column:1 / -1 !important;}.dropdown button{width:100% !important;}.dropdown-content{left:0 !important;right:0 !important;width:100% !important;}.landing-header .nav-buttons{flex-wrap:wrap !important;gap:8px !important;width:auto !important;}.landing-header .nav-buttons .btn{font-size:12px !important;padding:8px 14px !important;white-space:nowrap !important;}.static-page-header{padding:12px 16px !important;display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;justify-content:space-between !important;align-items:center !important;gap:12px !important;}.static-page-header .logo{flex-shrink:0 !important;}.static-page-header .logo-icon{height:50px !important;width:50px !important;object-fit:contain !important;}.static-page-header .logo span{display:none !important;}.static-page-header .nav-buttons{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:center !important;gap:8px !important;flex-shrink:0 !important;}.fetexplorer-static-page .container,.node-page .container{padding:16px !important;}.fetexplorer-static-page .content,.node-page .content{padding:20px 16px !important;}.cta-section{padding:32px 20px !important;}.cta-section .cta-title,.cta-section h2{font-size:28px !important;}.cta-section .cta-buttons{display:flex !important;flex-direction:column !important;gap:12px !important;width:100% !important;}.cta-section .cta-buttons .btn{width:100% !important;justify-content:center !important;}article.node{padding:20px !important;}.fetexplorer-dashboard .dashboard-header{flex-direction:column !important;align-items:stretch !important;gap:16px !important;}.fetexplorer-dashboard .dashboard-header-text{width:100% !important;}.dashboard-actions{flex-direction:column !important;width:100% !important;gap:12px !important;display:flex !important;}.dashboard-actions .btn{width:100% !important;justify-content:center !important;font-size:14px !important;padding:12px 16px !important;display:flex !important;align-items:center !important;gap:8px !important;}.feature-highlight{padding:20px !important;}.unassigned-panel{position:fixed !important;left:-100% !important;top:0 !important;bottom:0 !important;width:90vw !important;max-width:400px !important;height:100vh !important;transform:none !important;transition:left 0.3s ease !important;z-index:99998 !important;border-radius:0 !important;box-shadow:4px 0 12px rgba(0,0,0,0.15) !important;}.unassigned-panel.open{left:0 !important;display:flex !important;}.unassigned-panel.collapsed{left:-100% !important;}.unassigned-panel.hidden{display:none !important;}body:has(.unassigned-panel) .container,body:has(.unassigned-panel.open) .container,body:has(.unassigned-panel:not(.collapsed)) .container,body:has(.unassigned-panel:not(.hidden)) .container{margin-left:0 !important;margin-top:0 !important;}.timetable-wrapper,.table-container{overflow-x:auto !important;-webkit-overflow-scrolling:touch !important;width:100% !important;}.timetable-wrapper table,.table-container table,#timetable{min-width:800px !important;}#timetable td:not(:first-child){position:relative !important;vertical-align:top !important;padding:4px !important;min-height:60px !important;}#timetable .activity{position:relative !important;margin-bottom:4px !important;font-size:10px !important;padding:4px 6px !important;line-height:1.3 !important;max-width:100% !important;white-space:normal !important;word-wrap:break-word !important;}#timetable .activity[style*="position: absolute"]{position:relative !important;top:auto !important;left:auto !important;transform:none !important;}.fetexplorer-app .popover,.fetexplorer-demo .popover{min-width:280px !important;max-width:90vw !important;padding:16px !important;font-size:12px !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;animation:popoverFadeIn 0.2s ease-out !important;}.fetexplorer-app .popover-header,.fetexplorer-demo .popover-header{gap:8px !important;margin-bottom:12px !important;}.fetexplorer-app .popover-icon,.fetexplorer-demo .popover-icon{width:36px !important;height:36px !important;font-size:18px !important;}.fetexplorer-app .popover-title h3,.fetexplorer-demo .popover-title h3{font-size:13px !important;}.fetexplorer-app .popover-row,.fetexplorer-demo .popover-row{font-size:11px !important;gap:6px !important;}.fetexplorer-app .popover-info,.fetexplorer-demo .popover-info{padding:10px !important;}}@media (min-width:481px) and (max-width:768px){.landing-header,.dashboard-header{padding:14px 20px !important;}.landing-header .logo-icon,.dashboard-header .logo-icon{height:50px !important;}.landing-header .logo span,.dashboard-header .logo span{font-size:16px !important;display:inline !important;}.language-dropdown{right:0 !important;min-width:250px !important;}.static-page-header .logo-icon{height:50px !important;}.static-page-header .logo span{font-size:16px !important;display:inline !important;}.unassigned-panel{position:fixed !important;left:-100% !important;top:0 !important;bottom:0 !important;width:80vw !important;max-width:400px !important;height:100vh !important;transform:none !important;transition:left 0.3s ease !important;z-index:99998 !important;border-radius:0 !important;box-shadow:4px 0 12px rgba(0,0,0,0.15) !important;}.unassigned-panel.open{left:0 !important;display:flex !important;}.unassigned-panel.collapsed{left:-100% !important;}.unassigned-panel.hidden{display:none !important;}body:has(.unassigned-panel) .container,body:has(.unassigned-panel.open) .container,body:has(.unassigned-panel:not(.collapsed)) .container,body:has(.unassigned-panel:not(.hidden)) .container{margin-left:0 !important;margin-top:0 !important;}.fetexplorer-app .header .header-top > div:first-child,.fetexplorer-demo .header .header-top > div:first-child{padding:16px 20px !important;flex-wrap:wrap !important;}.fetexplorer-app .header .header-top img,.fetexplorer-demo .header .header-top img{height:48px !important;}.fetexplorer-app .header .header-top h2,.fetexplorer-demo .header .header-top h2{font-size:22px !important;}.fetexplorer-app .header .header-top span,.fetexplorer-demo .header .header-top span{font-size:16px !important;}.drag-mode-switch{flex-shrink:1 !important;}.fetexplorer-app .header .header-top > .fx-hdr-band,.fetexplorer-demo .header .header-top > .fx-hdr-band{padding:8px 12px !important;}.fetexplorer-app .btn,.fetexplorer-demo .btn{font-size:13px !important;padding:10px 12px !important;white-space:nowrap !important;}.dashboard-actions{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;}.dashboard-actions .btn{width:100% !important;}}@media (min-width:769px) and (max-width:992px){.landing-header{padding:16px 24px !important;}.fetexplorer-app .header .header-top > .fx-hdr-band,.fetexplorer-demo .header .header-top > .fx-hdr-band{padding:8px 14px !important;}.fetexplorer-app .btn,.fetexplorer-demo .btn{font-size:14px !important;padding:10px 14px !important;}}@media (hover:none) and (pointer:coarse){.language-switcher-btn,.user-icon-btn,.btn,.dropdown button{min-height:44px !important;min-width:44px !important;}.dropdown-content button{padding:14px 16px !important;font-size:16px !important;}.language-dropdown-item{padding:10px 8px !important;font-size:14px !important;min-height:44px;}}.activity.quick-filter-source{transform:rotate(-2deg) scale(1.05);background-color:var(--selected-bg-color,var(--b-500)) !important;border:solid 3px var(--selected-border-color,var(--b-800)) !important;box-shadow:0 8px 24px rgba(0,0,0,0.25);z-index:100;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1),box-shadow 0.3s ease,background-color 0.3s ease,border 0.3s ease;}.activity.quick-filter-source.activity-locked{border:2px dashed rgba(255,255,255,0.7) !important;box-shadow:0 0 0 2px rgba(0,0,0,0.2),0 2px 8px rgba(0,0,0,0.2),0 8px 24px rgba(0,0,0,0.25) !important;}.activity.quick-filter-source.activity-locked:hover{box-shadow:0 0 0 2px rgba(0,0,0,0.3),0 6px 16px rgba(0,0,0,0.25),0 8px 24px rgba(0,0,0,0.25) !important;}.timetable-minimap{position:fixed;bottom:20px;left:20px;background:linear-gradient(135deg,rgba(31,41,55,0.95) 0%,rgba(17,24,39,0.97) 100%);backdrop-filter:blur(16px) saturate(120%);-webkit-backdrop-filter:blur(16px) saturate(120%);border-radius:12px;padding:0px;box-shadow:0 10px 40px rgba(0,0,0,0.3),0 2px 12px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.1);z-index:999;border:1px solid rgba(255,255,255,0.1);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);width:120px;max-height:220px;overflow:hidden;}.timetable-minimap:hover{transform:translateY(-2px);box-shadow:0 14px 50px rgba(0,0,0,0.35),0 4px 16px rgba(0,0,0,0.25),inset 0 1px 0 rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.15);}.minimap-title{font-size:9px;font-weight:600;color:var(--s-200);padding:7px 6px 6px 8px;letter-spacing:0.5px;text-transform:uppercase;background:linear-gradient(180deg,rgba(55,65,81,0.5) 0%,transparent 100%);border-radius:12px 12px 0 0;border-bottom:1px solid rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:space-between;gap:4px;cursor:move;touch-action:none;user-select:none;}.minimap-title-text{pointer-events:none;}.minimap-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;flex-shrink:0;background:transparent;border:none;border-radius:4px;color:var(--s-300);cursor:pointer;transition:transform 0.2s ease,background 0.15s,color 0.15s;}.minimap-collapse-btn:hover{background:rgba(255,255,255,0.12);color:#fff;}.timetable-minimap.minimap-collapsed{max-height:none;}.timetable-minimap.minimap-collapsed .minimap-grid{display:none;}.timetable-minimap.minimap-collapsed .minimap-title{border-bottom:none;border-radius:12px;}.timetable-minimap.minimap-collapsed .minimap-collapse-btn{transform:rotate(180deg);}.timetable-minimap.is-dragging{transition:none;}.timetable-minimap.is-dragging:hover{transform:none;}.minimap-grid{display:grid;gap:0px;background:rgba(17,24,39,0.4);padding:4px;border-radius:0 0 6px 6px;position:relative;overflow:hidden;height:170px;width:100%;cursor:grab;contain:layout style paint;}.minimap-grid:active{cursor:grabbing;}.minimap-cell{width:100%;height:100%;border-radius:1px;transition:transform 0.1s ease,box-shadow 0.1s ease;cursor:pointer;border:0.5px solid rgba(0,0,0,0.15);}.minimap-cell:hover{transform:scale(1.02);box-shadow:0 0 6px rgba(255,255,255,0.2);z-index:1;}.minimap-viewport{position:absolute;border:2px solid rgba(251,146,60,0.95);background:rgba(251,146,60,0.15);border-radius:3px;pointer-events:none;z-index:10;transition:none;box-shadow:0 0 8px rgba(251,146,60,0.5),0 0 0 1px rgba(251,146,60,0.4),inset 0 0 0 1px rgba(255,255,255,0.3);will-change:transform;box-sizing:border-box;overflow:hidden;}.fetexplorer-app #timetable td.planner-fit,.fetexplorer-demo #timetable td.planner-fit{background:var(--g-50,#f0fdf4) !important;box-shadow:inset 0 0 0 1.5px var(--g-300,#86efac);cursor:pointer;}.fetexplorer-app #timetable td.planner-alt,.fetexplorer-demo #timetable td.planner-alt{background:rgba(253,230,138,0.16) !important;box-shadow:inset 0 0 0 1px var(--a-200,#fde68a);cursor:pointer;}.fetexplorer-app #timetable td.planner-fit--swap,.fetexplorer-demo #timetable td.planner-fit--swap{position:relative;}.fetexplorer-app #timetable td.planner-fit--swap::after,.fetexplorer-demo #timetable td.planner-fit--swap::after{content:"\0021C4";position:absolute;top:2px;right:5px;font-size:11px;font-weight:800;line-height:1.2;color:var(--a-700,#b45309);pointer-events:none;z-index:2;}.fetexplorer-app #timetable td.planner-fit:hover,.fetexplorer-demo #timetable td.planner-fit:hover{background:var(--g-100,#dcfce7) !important;}.fetexplorer-app #timetable td.planner-alt:hover,.fetexplorer-demo #timetable td.planner-alt:hover{background:rgba(253,230,138,0.30) !important;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app #timetable td.planner-fit{background:rgba(52,211,94,0.15) !important;box-shadow:inset 0 0 0 1.5px var(--g-500,#34d15e);}:root:not([data-theme="light"]) .fetexplorer-app #timetable td.planner-alt{background:rgba(245,158,11,0.17) !important;box-shadow:inset 0 0 0 1px var(--a-400,#fbbf24);}:root:not([data-theme="light"]) .fetexplorer-app #timetable td.planner-fit:hover{background:rgba(52,211,94,0.26) !important;}:root:not([data-theme="light"]) .fetexplorer-app #timetable td.planner-alt:hover{background:rgba(245,158,11,0.30) !important;}}:root[data-theme="dark"] .fetexplorer-app #timetable td.planner-fit{background:rgba(52,211,94,0.15) !important;box-shadow:inset 0 0 0 1.5px var(--g-500,#34d15e);}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app #timetable td.planner-fit--swap::after{color:var(--a-400,#fbbf24);}}:root[data-theme="dark"] .fetexplorer-app #timetable td.planner-fit--swap::after{color:var(--a-400,#fbbf24);}:root[data-theme="dark"] .fetexplorer-app #timetable td.planner-alt{background:rgba(245,158,11,0.17) !important;box-shadow:inset 0 0 0 1px var(--a-400,#fbbf24);}:root[data-theme="dark"] .fetexplorer-app #timetable td.planner-fit:hover{background:rgba(52,211,94,0.26) !important;}:root[data-theme="dark"] .fetexplorer-app #timetable td.planner-alt:hover{background:rgba(245,158,11,0.30) !important;}body.planner-active .fetexplorer-app .table-container,body.planner-active .fetexplorer-demo .table-container{margin-right:var(--fx-planner-reserve,332px);}.fetexplorer-app #timetable td .planner-altdot,.fetexplorer-demo #timetable td .planner-altdot{position:absolute;top:4px;right:5px;font-size:10px;font-weight:800;line-height:15px;color:var(--a-700,#b45309);background:var(--a-50,#fffbeb);border:1px solid var(--a-300,#fcd34d);border-radius:999px;padding:0 7px;pointer-events:none;z-index:2;}body.planner-xray .fetexplorer-app #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost),body.planner-xray .fetexplorer-demo #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost){height:7px;min-height:7px;max-height:7px;padding:0 6px;margin-bottom:2px;overflow:hidden;opacity:0.4;filter:saturate(0.55);font-size:0;line-height:0;pointer-events:none;box-shadow:none;}body.planner-xray .fetexplorer-app #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost) > *,body.planner-xray .fetexplorer-demo #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost) > *{display:none !important;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body.planner-xray .fetexplorer-app #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost){opacity:0.6;}}:root[data-theme="dark"] body.planner-xray .fetexplorer-app #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost),:root[data-theme="dark"] body.planner-xray .fetexplorer-demo #timetable .activity:not(.quick-filter-source):not(.planner-rel):not(.planner-src-ghost){opacity:0.6;}body.planner-clean .fetexplorer-app #timetable .activity:not(.quick-filter-source):not(.planner-src-ghost),body.planner-clean .fetexplorer-demo #timetable .activity:not(.quick-filter-source):not(.planner-src-ghost){display:none;}.fetexplorer-app #timetable .activity.planner-rel,.fetexplorer-demo #timetable .activity.planner-rel{box-shadow:0 0 0 2px var(--a-500,#f59e0b);}.planner-chip{position:absolute;inset:auto 4px 4px 4px;display:flex;justify-content:center;z-index:3;animation:pc-in 0.12s ease;}@keyframes pc-in{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:none;}}.planner-chip button{border:none;border-radius:8px;font-weight:800;font-size:11.5px;padding:5px 14px;cursor:pointer;display:inline-flex;gap:5px;align-items:center;max-width:100%;white-space:nowrap;}.planner-chip .pc-place{background:var(--b-600,#4f46e5);color:#fff;box-shadow:0 2px 6px rgba(79,70,229,0.4);}.planner-chip .pc-place:hover{filter:brightness(1.08);}.planner-chip .pc-pick{background:var(--surface,#fff);color:var(--a-700,#b45309);border:1px solid var(--a-300,#fcd34d);box-shadow:0 1px 3px rgba(15,23,42,0.12);}.planner-chip .pc-pick:hover{background:var(--a-50,#fffbeb);}.planner-chip .pp-ic{width:13px;height:13px;}.planner-panel{position:fixed;top:var(--pp-top,74px);right:14px;bottom:14px;width:308px;display:flex;flex-direction:column;background:var(--surface,#fff);border:1px solid var(--s-200,#e2e8f0);border-radius:14px;box-shadow:0 14px 36px rgba(15,23,42,0.18);z-index:900;overflow:hidden;}.pp-ic{width:13px;height:13px;flex:none;vertical-align:-2px;}.pp-head{padding:12px 14px 10px;border-bottom:1px solid var(--s-200,#e2e8f0);background:linear-gradient(180deg,var(--b-50,#eef2ff),var(--surface,#fff));}.pp-eyebrow{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:0.08em;color:var(--b-700,#4338ca);margin-bottom:7px;}.pp-x{border:none;background:none;font-size:15px;line-height:1;color:var(--s-400,#94a3b8);cursor:pointer;padding:2px 4px;border-radius:6px;}.pp-x:hover{color:var(--s-700,#334155);background:var(--s-100,#f1f5f9);}.pp-lesson{display:flex;gap:9px;align-items:flex-start;}.pp-swatch{width:12px;height:32px;border-radius:5px;flex:none;margin-top:2px;background:var(--b-500,#6366f1);}.pp-title b{font-size:14px;letter-spacing:-0.01em;color:var(--s-800,#1e293b);font-weight:700;}.pp-sub{color:var(--s-500,#64748b);font-size:13px;font-weight:500;}.pp-meta{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:12px;color:var(--s-600,#475569);font-weight:500;}.pp-meta > span{display:inline-flex;gap:5px;align-items:center;min-width:0;}.pp-chip2{background:var(--s-100,#f1f5f9);border:1px solid var(--s-200,#e2e8f0);border-radius:999px;padding:0 8px;font-size:11px;font-weight:700;}.pp-hint{margin-top:8px;font-size:12px;color:var(--s-400,#94a3b8);font-weight:500;}.pp-hidden-note{display:flex;align-items:center;gap:8px;margin-top:8px;padding:7px 9px;font-size:12px;line-height:1.35;background:var(--a-50,#fffbeb);border:1px solid var(--a-200,#fde68a);border-radius:7px;color:var(--a-900,#78350f);font-weight:500;}.pp-hidden-note[hidden]{display:none;}.pp-hidden-clear{flex:0 0 auto;margin-left:auto;padding:4px 8px;font-size:12px;font-weight:600;background:var(--surface,#fff);border:1px solid var(--a-300,#fcd34d);border-radius:6px;cursor:pointer;color:var(--a-900,#78350f);}.pp-hidden-clear:hover{background:var(--a-100,#fef3c7);}.pp-scroll{overflow:auto;flex:1;}.pp-sec{padding:10px 14px;}.pp-sec.pp-flash{animation:pp-flash 0.9s ease;}@keyframes pp-flash{0%,100%{background:transparent;}25%{background:var(--a-50,#fffbeb);}}.pp-sec-h{font-size:11px;font-weight:700;letter-spacing:0.07em;color:var(--s-500,#64748b);margin-bottom:7px;}.pp-fitline{font-size:13px;color:var(--s-600,#475569);margin-bottom:9px;line-height:1.45;font-weight:500;}.pp-fitline .pp-ok{color:var(--g-600,#15803d);font-weight:600;}.pp-fitline .pp-bad{color:var(--a-800,#92400e);font-weight:600;}.pp-tabs{display:flex;gap:6px;margin-bottom:8px;}.pp-tab{flex:1;border:1px solid var(--s-200,#e2e8f0);background:var(--s-50,#f8fafc);border-radius:9px;padding:6px 0;text-align:center;font-weight:600;font-size:12px;color:var(--s-600,#475569);cursor:pointer;}.pp-tab.on{background:var(--b-50,#eef2ff);border-color:var(--b-100,#e0e7ff);color:var(--b-700,#4338ca);}.pp-search{display:flex;gap:7px;align-items:center;border:1.5px solid var(--s-200,#e2e8f0);border-radius:9px;padding:6px 9px;margin-bottom:8px;color:var(--s-400,#94a3b8);}.pp-search input{border:none;outline:none;flex:1;font:inherit;font-size:13px;color:var(--s-700,#334155);background:none;min-width:0;}.pp-search:focus-within{border-color:var(--b-500,#6366f1);}.pp-list{display:flex;flex-direction:column;gap:2px;}.pp-res{display:flex;align-items:center;gap:7px;border:none;background:none;width:100%;text-align:left;padding:7px 8px;border-radius:8px;font-size:13px;font-weight:500;color:var(--s-700,#334155);cursor:pointer;}.pp-res:hover{background:var(--b-50,#eef2ff);color:var(--b-700,#4338ca);}.pp-res{flex-wrap:nowrap;}.pp-res .nm{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.pp-res .tag{white-space:nowrap;}.pp-res .tag{flex:none;font-size:11px;font-weight:700;border-radius:5px;padding:1px 6px;}.pp-res .tag.pref{background:var(--g-100,#dcfce7);color:var(--g-700,#166534);}.pp-res .tag.teaches{background:var(--b-100,#e0e7ff);color:var(--b-700,#4338ca);}.pp-res .cap{margin-left:auto;flex:none;font-size:12px;color:var(--s-400,#94a3b8);font-weight:600;}.pp-res.small{opacity:0.55;}.pp-res.on{background:var(--b-50,#eef2ff);color:var(--b-700,#4338ca);font-weight:600;}.pp-unp{border-top:1px solid var(--s-100,#f1f5f9);}.pp-empty,.pp-note{font-size:12px;color:var(--s-500,#64748b);padding:8px 4px;font-weight:500;}.pp-note{background:var(--a-50,#fffbeb);border:1px solid var(--a-100,#fef3c7);border-radius:8px;padding:7px 9px;margin-bottom:6px;}.pp-foot{padding:10px 14px;border-top:1px solid var(--s-200,#e2e8f0);background:var(--s-50,#f8fafc);}.pp-lbl{font-size:11px;font-weight:700;letter-spacing:0.06em;color:var(--s-400,#94a3b8);margin-bottom:5px;}.pp-seg{display:flex;border:1px solid var(--s-200,#e2e8f0);border-radius:9px;overflow:hidden;}.pp-seg button{flex:1;border:none;background:var(--surface,#fff);padding:6px 0;font-weight:600;font-size:12px;color:var(--s-500,#64748b);cursor:pointer;}.pp-seg button.on{background:var(--b-600,#4f46e5);color:#fff;}button.pp-sec-h{display:flex;align-items:center;gap:7px;width:100%;padding:0;border:none;background:none;font-family:inherit;text-align:left;cursor:pointer;color:var(--s-500,#64748b);}.pp-count{background:var(--s-100,#f1f5f9);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700;letter-spacing:0;color:var(--s-600,#475569);}.pp-chev{margin-left:auto;transition:transform 0.15s var(--ds-ease,ease);color:var(--s-400,#94a3b8);}.pp-sec.closed .pp-chev{transform:rotate(-90deg);}.pp-sec.closed .pp-sec-body{display:none;}.pp-slot{display:flex;align-items:stretch;gap:2px;border:1px solid var(--s-200,#e2e8f0);border-radius:10px;margin-bottom:6px;background:var(--surface,#fff);transition:border-color 0.12s var(--ds-ease,ease),box-shadow 0.12s var(--ds-ease,ease),background 0.12s var(--ds-ease,ease);}.pp-slot:hover{border-color:var(--b-500,#6366f1);box-shadow:0 1px 4px rgba(15,23,42,0.12);}.pp-slot.on{border-color:var(--b-500,#6366f1);background:var(--b-50,#eef2ff);}.pp-slot-main{flex:1;min-width:0;display:flex;gap:8px;align-items:flex-start;border:none;background:none;padding:7px 4px 7px 9px;text-align:left;font:inherit;cursor:pointer;}.pp-slot .dot{width:9px;height:9px;border-radius:50%;margin-top:4px;flex:none;background:var(--s-300,#cbd5e1);}.pp-slot.t1 .dot{background:var(--g-500,#22c55e);}.pp-slot.t2 .dot{background:var(--a-500,#f59e0b);}.pp-slot-txt{min-width:0;}.pp-slot b{display:block;font-size:13px;color:var(--s-800,#1e293b);font-weight:600;}.pp-slot .why2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;font-weight:500;line-height:1.35;color:var(--s-500,#64748b);overflow:hidden;}.pp-go{align-self:center;flex:none;margin-right:7px;border:1px solid var(--s-200,#e2e8f0);background:var(--s-50,#f8fafc);border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600;color:var(--b-700,#4338ca);cursor:pointer;}.pp-go:hover{background:var(--b-50,#eef2ff);border-color:var(--b-100,#e0e7ff);}.pp-nearlbl{margin:9px 0 5px;font-size:11px;font-weight:700;letter-spacing:0.06em;color:var(--s-400,#94a3b8);}.pp-note2{margin-top:6px;font-size:12px;line-height:1.45;color:var(--s-400,#94a3b8);font-weight:500;}.pp-verdict{margin:10px 14px 0;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.45;font-weight:500;}.pp-verdict:empty{display:none;}.pp-verdict b{font-weight:600;}.pp-v-ok{background:var(--g-50,#f0fdf4);color:var(--g-800,#166534);}.pp-v-warn{background:var(--a-50,#fffbeb);color:var(--a-900,#78350f);}.pp-v-bad{background:var(--r-50,#fef2f2);color:var(--r-800,#991b1b);}.pp-vact{display:flex;gap:7px;margin:8px 14px 0;flex-wrap:wrap;}.pp-vact:empty{display:none;}.pp-vbtn{border:1px solid var(--s-200,#e2e8f0);background:var(--s-50,#f8fafc);color:var(--s-600,#475569);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;}.pp-vbtn.primary{background:var(--b-600,#2563eb);border-color:var(--b-600,#2563eb);color:#fff;}.pp-vbtn:hover{filter:brightness(1.05);}.pp-intents{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px 4px;}.pp-intents button{border:1px solid var(--s-200,#e2e8f0);background:var(--surface,#fff);color:var(--s-600,#475569);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:600;cursor:pointer;}.pp-intents button.on{background:var(--b-600,#2563eb);border-color:var(--b-600,#2563eb);color:#fff;}.pp-intents button[hidden]{display:none;}@media (pointer:coarse){.pp-vbtn,.pp-tab,.pp-intents button{min-height:44px;}.pp-intents button{padding-inline:14px;}.pp-vbtn{padding-inline:16px;}}.pp-scroll .pp-sec{display:none;}.pp-scroll .pp-sec.pp-on{display:block;}.pp-sec-hrow{display:flex;align-items:center;gap:6px;}.pp-sec-hrow .pp-sec-h{flex:1;}.pp-why{flex:none;width:18px;height:18px;border-radius:50%;border:1px solid var(--s-200,#e2e8f0);background:var(--surface,#fff);color:var(--s-400,#94a3b8);font-size:11px;font-weight:700;cursor:pointer;}#planner-panel .pp-methodology{display:none;}#planner-panel.pp-showwhy .pp-methodology{display:block;}.pp-chain{display:flex;align-items:center;gap:8px;margin:-2px 0 6px;padding:7px 9px;border:1px dashed var(--a-200,#fde68a);background:var(--a-50,#fffbeb);border-radius:9px;font-size:12px;line-height:1.4;color:var(--a-900,#78350f);font-weight:500;}.pp-chain b{font-weight:600;}.pp-chain-go{margin-left:auto;flex:none;border:1px solid var(--a-300,#fcd34d);background:var(--surface,#fff);color:var(--a-900,#78350f);border-radius:7px;padding:4px 9px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;}.pp-chain-go:hover{background:var(--a-100,#fef3c7);}.planner-resmark{display:inline-block;margin-right:5px;font-size:11px;font-weight:800;line-height:1;}.planner-resmark.is-ok{color:var(--g-600,#15803d);}.planner-resmark.is-self{color:var(--b-500,#6366f1);}.pp-chip2.pp-view{background:var(--b-50,#eef2ff);border-color:var(--b-100,#e0e7ff);color:var(--b-700,#4338ca);}.fetexplorer-app #timetable td.planner-preview,.fetexplorer-demo #timetable td.planner-preview{box-shadow:inset 0 0 0 2px var(--b-500,#6366f1);}body.planner-active .back-to-top,body.planner-active .zoom-controls,body.planner-active .settings-btn{right:336px;}@media (max-width:900px){body.planner-active .fetexplorer-app .table-container,body.planner-active .fetexplorer-demo .table-container{margin-right:0;}.planner-panel{top:auto;left:10px;right:10px;bottom:10px;width:auto;max-height:46vh;z-index:1000;}body.planner-active .back-to-top,body.planner-active .zoom-controls,body.planner-active .settings-btn{right:20px;}}@keyframes spin{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}@keyframes popIn{0%{transform:scale(0.5);opacity:0;}50%{transform:scale(1.2);}100%{transform:scale(1);opacity:1;}}.conflict-icon{font-size:16px;animation:pulse 2s ease-in-out infinite;}@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.6;}}.select-option.multiselect-option.has-conflict{background:var(--r-50);border-left:3px solid var(--r-500);cursor:help;}.select-option.multiselect-option.has-conflict:hover{background:var(--r-100);}.conflict-indicator{margin-left:auto;font-size:14px;animation:pulse 2s ease-in-out infinite;}.multiselect-tag.has-conflict{background:linear-gradient(135deg,var(--r-100) 0%,var(--r-200) 100%);border:1px solid var(--r-500);color:var(--r-800);}.select-option.multiselect-option.has-conflict--restricted{background:var(--a-50);border-left-color:var(--a-500);}.select-option.multiselect-option.has-conflict--restricted:hover{background:var(--a-100);}.multiselect-tag.has-conflict--restricted{background:linear-gradient(135deg,var(--a-100) 0%,var(--a-200) 100%);border-color:var(--a-500);color:var(--a-800);}.tag-conflict-icon{margin-left:4px;font-size:12px;animation:pulse 2s ease-in-out infinite;}.select-option.multiselect-option{display:flex;align-items:center;gap:8px;}.select-option.multiselect-option .select-option-text{flex:1;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app{--surface:#161b2c;--inverse:#222a40;--inverse-2:#2d3650;--btn-ink:var(--s-50);--s-50:#0e1322;--s-100:#161b2c;--s-200:#28304a;--s-300:#3a4560;--s-400:#6b7694;--s-500:#9aa6c4;--s-600:#aab2c8;--s-700:#c7cee0;--s-800:#e5e9f5;--s-900:#f1f4fb;--b-50:#15233a;--b-100:#1b3050;--b-200:#24406b;--b-300:#4a78c0;--b-400:#5f9af0;--b-500:#4f8ef7;--b-600:#3b82f6;--b-700:#6ea8f8;--b-800:#93c5fd;--b-900:#bcd7fb;--i-50:#1e2440;--i-100:#2b3358;--i-200:#3a4170;--i-500:#818cf8;--i-600:#6366f1;--i-700:#c7d0ff;--i-800:#a5b4fc;--v-50:#241a3a;--v-100:#33244d;--v-300:#a78bfa;--v-400:#9b7cf5;--v-500:#a78bfa;--v-600:#b794f6;--r-50:#2c1618;--r-100:#3a1c1f;--r-200:#4a2226;--r-300:#7a3a3e;--r-400:#e06666;--r-500:#ef4444;--r-600:#f0584f;--r-700:#fca5a5;--r-800:#fca5a5;--g-50:#0e2a20;--g-100:#103a2c;--g-200:#1f5a45;--g-300:#3a8a6c;--g-500:#34d15e;--g-600:#34d399;--g-700:#6ee7b7;--g-800:#86efac;--em-500:#34d399;--em-600:#34d399;--em-700:#6ee7b7;--info-500:#22d3ee;--info-600:#22d3ee;--info-700:#67e8f9;--a-50:#2a2410;--a-100:#3a2e10;--a-200:#4a3a14;--a-300:#fcd34d;--a-400:#fbbf24;--a-500:#f59e0b;--a-600:#fbbf24;--a-700:#fcd34d;--a-800:#fde68a;--a-900:#fde68a;--orange:#fb923c;--yellow:#ffe44d;--orange-strong:var(--orange);--bg:var(--surface);--fg:var(--s-900);--muted:var(--s-500);--brand:var(--b-600);--brand-weak:var(--s-200);--ring:var(--s-300);color-scheme:dark;}}:root[data-theme="dark"] .fetexplorer-app{--surface:#161b2c;--inverse:#222a40;--inverse-2:#2d3650;--btn-ink:var(--s-50);--s-50:#0e1322;--s-100:#161b2c;--s-200:#28304a;--s-300:#3a4560;--s-400:#6b7694;--s-500:#9aa6c4;--s-600:#aab2c8;--s-700:#c7cee0;--s-800:#e5e9f5;--s-900:#f1f4fb;--b-50:#15233a;--b-100:#1b3050;--b-200:#24406b;--b-300:#4a78c0;--b-400:#5f9af0;--b-500:#4f8ef7;--b-600:#3b82f6;--b-700:#6ea8f8;--b-800:#93c5fd;--b-900:#bcd7fb;--i-50:#1e2440;--i-100:#2b3358;--i-200:#3a4170;--i-500:#818cf8;--i-600:#6366f1;--i-700:#c7d0ff;--i-800:#a5b4fc;--v-50:#241a3a;--v-100:#33244d;--v-300:#a78bfa;--v-400:#9b7cf5;--v-500:#a78bfa;--v-600:#b794f6;--r-50:#2c1618;--r-100:#3a1c1f;--r-200:#4a2226;--r-300:#7a3a3e;--r-400:#e06666;--r-500:#ef4444;--r-600:#f0584f;--r-700:#fca5a5;--r-800:#fca5a5;--g-50:#0e2a20;--g-100:#103a2c;--g-200:#1f5a45;--g-300:#3a8a6c;--g-500:#34d15e;--g-600:#34d399;--g-700:#6ee7b7;--g-800:#86efac;--em-500:#34d399;--em-600:#34d399;--em-700:#6ee7b7;--info-500:#22d3ee;--info-600:#22d3ee;--info-700:#67e8f9;--a-50:#2a2410;--a-100:#3a2e10;--a-200:#4a3a14;--a-300:#fcd34d;--a-400:#fbbf24;--a-500:#f59e0b;--a-600:#fbbf24;--a-700:#fcd34d;--a-800:#fde68a;--a-900:#fde68a;--orange:#fb923c;--yellow:#ffe44d;--orange-strong:var(--orange);--bg:var(--surface);--fg:var(--s-900);--muted:var(--s-500);--brand:var(--b-600);--brand-weak:var(--s-200);--ring:var(--s-300);color-scheme:dark;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body:has(.fetexplorer-app){background:linear-gradient(135deg,#1e1b3a 0%,#14122a 100%) !important;}}:root[data-theme="dark"] body:has(.fetexplorer-app){background:linear-gradient(135deg,#1e1b3a 0%,#14122a 100%) !important;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-app .form-control,:root:not([data-theme="light"]) .fetexplorer-app .form-select,:root:not([data-theme="light"]) .fetexplorer-app textarea{background-color:var(--surface);color:var(--s-800);border-color:var(--s-300);}:root:not([data-theme="light"]) .fetexplorer-app .modal-content,:root:not([data-theme="light"]) .fetexplorer-app .modal-header,:root:not([data-theme="light"]) .fetexplorer-app .modal-footer,:root:not([data-theme="light"]) .fetexplorer-app .dropdown-menu,:root:not([data-theme="light"]) .fetexplorer-app .card,:root:not([data-theme="light"]) .fetexplorer-app .list-group-item,:root:not([data-theme="light"]) .fetexplorer-app .popover{background-color:var(--surface);color:var(--s-800);border-color:var(--s-200);}}:root[data-theme="dark"] .fetexplorer-app .form-control,:root[data-theme="dark"] .fetexplorer-app .form-select,:root[data-theme="dark"] .fetexplorer-app textarea{background-color:var(--surface);color:var(--s-800);border-color:var(--s-300);}:root[data-theme="dark"] .fetexplorer-app .modal-content,:root[data-theme="dark"] .fetexplorer-app .modal-header,:root[data-theme="dark"] .fetexplorer-app .modal-footer,:root[data-theme="dark"] .fetexplorer-app .dropdown-menu,:root[data-theme="dark"] .fetexplorer-app .card,:root[data-theme="dark"] .fetexplorer-app .list-group-item,:root[data-theme="dark"] .fetexplorer-app .popover{background-color:var(--surface);color:var(--s-800);border-color:var(--s-200);}.fetexplorer-app .settings-modal-body{color:var(--s-700);}.fetexplorer-app .settings-section-title{color:var(--s-800);}.fetexplorer-app .settings-modal-body .setting-description,.fetexplorer-app .settings-modal-body small,.fetexplorer-app .settings-modal-body .form-hint{color:var(--s-500);}.fx-cal-guard{display:flex;align-items:flex-start;gap:14px;margin:16px 0;padding:15px 18px;background:linear-gradient(180deg,#fbfbff 0%,#f1f2ff 100%);border:1px solid #dcdffa;border-radius:12px;box-shadow:0 6px 20px rgba(99,102,241,0.10);}.fx-cal-guard[hidden]{display:none;}.fx-cal-guard .fx-cal-guard__icon{flex:0 0 auto;font-size:20px;line-height:1.2;}.fx-cal-guard .fx-cal-guard__body{flex:1 1 auto;min-width:0;}.fetexplorer-app .fx-cal-guard .fx-cal-guard__title,.fx-cal-guard .fx-cal-guard__title{margin:0 0 3px;font-size:14px !important;font-weight:700 !important;color:#312e81 !important;line-height:1.4 !important;}.fx-cal-guard .fx-cal-guard__msg{margin:0;font-size:12.5px;line-height:1.5;color:#4b5563;}.fx-cal-guard .fx-cal-guard__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}.fx-cal-guard .fx-cal-guard__btn{display:inline-flex;align-items:center;min-height:36px;padding:0 13px;font-size:12.5px;font-weight:600;color:#312e81;text-decoration:none;background:#fff;border:1px solid #cdd0f3;border-radius:9px;cursor:pointer;}.fx-cal-guard .fx-cal-guard__btn:hover{background:#f5f6ff;border-color:#a5b4fc;text-decoration:none;}.fx-cal-guard .fx-cal-guard__btn--primary{background:linear-gradient(180deg,#6366f1,#4f46e5);border-color:transparent;color:#fff;}.fx-cal-guard .fx-cal-guard__btn--primary:hover{filter:brightness(1.06);background:linear-gradient(180deg,#6366f1,#4f46e5);}.fx-cal-guard .fx-cal-guard__close{flex:0 0 auto;width:28px;height:28px;padding:0;font-size:18px;line-height:1;color:#9ca3af;background:none;border:none;border-radius:7px;cursor:pointer;}.fx-cal-guard .fx-cal-guard__close:hover{color:#4b5563;background:rgba(99,102,241,0.08);}:root[data-theme="dark"] .fx-cal-guard{background:linear-gradient(180deg,rgba(99,102,241,0.12) 0%,rgba(99,102,241,0.06) 100%);border-color:rgba(129,140,248,0.35);box-shadow:none;}:root[data-theme="dark"] .fetexplorer-app .fx-cal-guard .fx-cal-guard__title,:root[data-theme="dark"] .fx-cal-guard .fx-cal-guard__title{color:#c7d2fe !important;}:root[data-theme="dark"] .fx-cal-guard .fx-cal-guard__msg{color:#cbd5e1;}:root[data-theme="dark"] .fx-cal-guard .fx-cal-guard__btn{background:rgba(255,255,255,0.06);border-color:rgba(129,140,248,0.4);color:#e0e7ff;}@media (max-width:600px){.timetable-minimap{display:none !important;}.back-to-top{bottom:14px !important;right:8px !important;width:40px;height:40px;font-size:18px;box-shadow:0 2px 8px rgba(15,23,42,0.25);}.zoom-controls{top:auto !important;bottom:62px !important;right:8px !important;left:auto !important;gap:8px;}.settings-btn{top:auto !important;bottom:206px !important;right:8px !important;left:auto !important;}.unassigned-toggle-floating-btn{top:auto !important;bottom:254px !important;right:8px !important;left:auto !important;}body:has(.zoom-controls.visible) .landing-footer{padding-inline:56px;}.zoom-btn,.settings-btn,.unassigned-toggle-floating-btn{width:40px;height:40px;box-shadow:0 2px 8px rgba(15,23,42,0.25);}.zoom-btn{position:relative;font-size:14px;}.settings-btn,.unassigned-toggle-floating-btn{font-size:19px;}.zoom-btn::after,.settings-btn::after,.unassigned-toggle-floating-btn::after{content:"";position:absolute;inset:-4px;border-radius:50%;}.unassigned-btn-badge{min-width:20px;height:20px;top:-6px;right:-6px;font-size:11px;padding:0 5px;}.fetexplorer-app #mainContainer.container{padding-left:0;padding-right:0;}}.fx-legacy-actions{display:none !important;}.fetexplorer-app .header.fx-hdr,.fetexplorer-demo .header.fx-hdr{background:transparent;box-shadow:none;padding:0;border-radius:0;margin-bottom:24px;}.fetexplorer-app .fx-hdr-card,.fetexplorer-demo .fx-hdr-card{background:var(--surface,#fff);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);overflow:visible;display:block;margin-bottom:0;}.fx-hdr-title{display:flex;align-items:center;gap:16px;padding:16px 24px;width:100%;border-bottom:1px solid var(--s-200);}.fx-hdr-titletext{flex:1;min-width:0;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;}.fx-hdr-acts{display:flex;align-items:center;gap:8px;flex-shrink:0;}.fx-cbadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;background:rgba(255,255,255,0.28);font-size:11px;font-weight:800;line-height:1;}.fx-hdr-acts .fx-hdr-ico{width:16px;height:16px;flex:none;}.fx-hdr-acts #btnAdd{background:var(--b-600) !important;color:var(--btn-ink) !important;font-weight:600 !important;}.fx-hdr-acts #btnAdd:hover:not(:disabled){background:var(--b-700) !important;}.fx-hdr-acts #btnValidate,.fx-hdr-acts #btnValidate.btn-success{background:var(--surface) !important;color:var(--s-700) !important;border:1px solid var(--s-200) !important;font-weight:600 !important;box-shadow:none !important;}.fx-hdr-acts #btnValidate.btn-success .fx-hdr-ico{color:var(--em-600);}.fx-hdr-acts #btnValidate.btn-info .fx-hdr-ico{color:var(--b-600);}.fx-hdr-acts #btnValidate.btn-warning{background:var(--a-50) !important;color:var(--a-800) !important;border:1px solid var(--a-200) !important;}.fx-hdr-acts #btnValidate:hover:not(:disabled){transform:none !important;box-shadow:none !important;color:var(--s-700) !important;background:var(--s-50) !important;}.fx-hdr-acts #btnValidate.btn-warning:hover:not(:disabled){color:var(--a-800) !important;background:var(--a-100) !important;}.fx-hdr-acts #btnValidate.btn-success:hover:not(:disabled){color:var(--s-700) !important;}.fx-hdr-acts .fx-cbadge{background:var(--a-800);color:var(--a-50);}.fx-hdr-acts .fx-cbadge.fx-cbadge--muted,.fx-cbadge.fx-cbadge--muted{background:#e2e8f0;color:#334155;font-weight:700;}body:not(.fx-tt-full) .header.fx-hdr{position:sticky;top:calc(-1 * var(--fx-hdr-title-h,89px));z-index:20;}.fx-hdr-band{padding:8px 14px;background:rgba(122,137,235,0.08);border-top:1px solid var(--s-100);border-radius:0 0 12px 12px;}.fx-hdr-band > .fx-toolbar-wrap{margin-top:0 !important;}.fx-hdr-band .fx-toolbar{background:transparent;border:0;box-shadow:none;padding:0;border-radius:0;}:root[data-theme="dark"] .fx-hdr-band{background:rgba(122,137,235,0.10);}.fx-hmenu-btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 12px;border-radius:9px;background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.28);color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background 0.15s ease;}.fx-hmenu-btn:hover{background:rgba(255,255,255,0.26);}.fx-hmenu-btn[aria-expanded="true"]{background:rgba(255,255,255,0.3);}.fx-hmenu-btn svg{width:16px;height:16px;flex:none;}.fx-hmenu-caret{font-size:10px;opacity:0.85;}.fetexplorer-app a.fx-help-link{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 12px;border-radius:9px;background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.28);color:#fff;font-size:13px;font-weight:600;text-decoration:none;transition:background 0.15s ease;}.fetexplorer-app a.fx-help-link:hover{background:rgba(255,255,255,0.26);color:#fff;}.fetexplorer-app a.fx-help-link:focus-visible{outline:2px solid #fff;outline-offset:2px;}.fetexplorer-app a.fx-help-link svg{width:16px;height:16px;flex:none;}.fetexplorer-dashboard a.fx-help-link{height:34px;padding:0 12px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;color:#334155;font-size:14px;font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,0.1);}.fetexplorer-dashboard a.fx-help-link:hover{background:#fff;border-color:#cbd5e1;color:#334155;box-shadow:0 2px 6px rgba(0,0,0,0.15);}.fetexplorer-dashboard a.fx-help-link:focus-visible{outline-color:#4f46e5;}@media (max-width:700px){.fetexplorer-app a.fx-help-link{padding:0 10px;}.fetexplorer-app a.fx-help-link .fx-help-label{display:none;}}.fx-hmenu-pop{min-width:300px;padding:6px;}.fx-hm-lbl{font-size:10px;font-weight:800;letter-spacing:0.07em;text-transform:uppercase;color:var(--s-400);padding:7px 10px 3px;}.fx-hm-sep{height:1px;background:var(--s-100);margin:5px 2px;}.fx-hmenu-pop .fx-ov-row{gap:10px;}.fx-hmenu-pop .fx-ov-row .fx-ov-val{font-size:11px;}.fx-hmenu-pop .fx-ov-row--danger .fx-ov-val{color:var(--r-700);}.fx-hmenu-pop .fx-ov-row[hidden]{display:none !important;}.fx-hm-subrows{display:flex;flex-direction:column;gap:2px;}.fx-hm-subrows[hidden]{display:none !important;}.fx-hm-subrows .fx-ov-row{padding-left:36px;font-size:12.5px;}.fx-hm-chev{margin-left:auto;font-size:10px;color:var(--s-400);transition:transform 0.15s ease;}.fx-ov-row[aria-expanded="true"] .fx-hm-chev{transform:rotate(180deg);}@media (max-width:992px){.fx-hdr-title{flex-wrap:wrap;}.fx-hdr-titletext{flex:1 1 60%;}.fx-hdr-acts{margin-left:auto;}}@media (max-width:768px){.fx-hdr-title{flex-wrap:wrap;padding:12px 16px;}.fx-hdr-acts{width:100%;}.fx-hdr-band{padding:8px 10px;}}@media (max-width:700px){.fetexplorer-app .landing-header > .logo > span,.fetexplorer-demo .landing-header > .logo > span{display:none !important;}.fx-hmenu-btn{padding:0 10px;}.fx-hmenu-btn .fx-hmenu-label,.fx-hmenu-btn .fx-hmenu-caret{display:none;}}.fxdlg .fx-dlist{margin:10px 0 0;padding-left:18px;max-height:260px;overflow-y:auto;font-size:13px;line-height:1.6;color:var(--s-700,#334155);}.fxdlg .fx-dlist li{margin-bottom:4px;}.pp-search input{padding:0;min-height:22px;}body.planner-active .zoom-btn,body.planner-active .settings-btn,body.planner-active .back-to-top{width:38px;height:38px;font-size:15px;}body.planner-active .settings-btn{font-size:18px;}body.planner-active .zoom-controls{gap:7px;}body.planner-active .settings-btn:hover:not(:disabled){transform:translateY(-3px);}.fx-browse{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 10px;padding:8px 12px;border:1px solid var(--s-200,#e2e8f0);border-radius:12px;background:var(--surface,#fff);box-shadow:0 4px 14px rgba(15,23,42,0.08);}.fx-browse__tag{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--b-600,#2563eb);color:#fff;font-size:12px;font-weight:600;letter-spacing:0.01em;}.fx-browse__seg{display:inline-flex;border:1px solid var(--s-200,#e2e8f0);border-radius:9px;overflow:hidden;}.fx-browse__seg[hidden]{display:none;}.fx-browse__seg button{min-height:34px;padding:0 12px;border:0;border-right:1px solid var(--s-200,#e2e8f0);background:var(--surface,#fff);color:var(--s-600,#475569);font-size:12px;font-weight:600;cursor:pointer;}.fx-browse__seg button:last-child{border-right:0;}.fx-browse__seg button:hover{background:var(--s-50,#f8fafc);}.fx-browse__seg button[aria-pressed="true"]{background:var(--b-600,#2563eb);color:#fff;}.fx-browse__seg--level button[aria-pressed="true"]{background:var(--s-600,#475569);}.fx-browse__combo{position:relative;flex:0 1 300px;min-width:170px;}.fx-browse__input{width:100%;min-height:36px;padding:6px 10px;border:1px solid var(--s-200,#e2e8f0);border-radius:9px;background:var(--surface,#fff);color:var(--s-800,#1e293b);font-size:14px;font-weight:500;}.fx-browse__list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;min-width:260px;max-height:280px;overflow-y:auto;margin:0;padding:4px;list-style:none;border:1px solid var(--s-200,#e2e8f0);border-radius:10px;background:var(--surface,#fff);box-shadow:0 12px 28px rgba(15,23,42,0.16);}.fx-browse__list[hidden]{display:none;}.fx-browse__opt{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:7px;font-size:12.5px;color:var(--s-800,#1e293b);cursor:pointer;}.fx-browse__opt em{margin-left:auto;font-style:normal;font-size:10.5px;font-weight:700;color:var(--s-400,#94a3b8);}.fx-browse__opt:hover,.fx-browse__opt[aria-selected="true"]{background:var(--s-100,#f1f5f9);}.fx-browse__empty,.fx-browse__more{padding:8px 9px;font-size:11.5px;color:var(--s-400,#94a3b8);}.fx-browse__nav{display:inline-flex;align-items:center;gap:4px;}.fx-browse__arrow{width:34px;height:34px;border:1px solid var(--s-200,#e2e8f0);border-radius:9px;background:var(--surface,#fff);color:var(--s-600,#475569);font-size:18px;line-height:1;cursor:pointer;}.fx-browse__arrow:hover:not(:disabled){background:var(--s-100,#f1f5f9);}.fx-browse__arrow:disabled{opacity:0.4;cursor:not-allowed;}.fx-browse__count{min-width:72px;text-align:center;font-size:13px;font-weight:500;color:var(--s-600,#475569);font-variant-numeric:tabular-nums;}.fx-browse__lessons{font-size:13px;font-weight:500;color:var(--s-400,#94a3b8);}.fx-browse__lessons--zero{color:var(--a-900,#78350f);}.fx-browse__exit{margin-left:auto;min-height:34px;padding:0 12px;border:1px solid var(--s-200,#e2e8f0);border-radius:9px;background:var(--surface,#fff);color:var(--s-600,#475569);font-size:12px;font-weight:600;cursor:pointer;}.fx-browse__exit:hover{background:var(--s-100,#f1f5f9);}.fx-browse__sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}@media (pointer:coarse){.fx-browse__seg button,.fx-browse__arrow,.fx-browse__exit{min-height:44px;}.fx-browse__arrow{width:44px;}}@media (max-width:700px){.fx-browse{gap:6px;padding:8px;}.fx-browse__tag span{display:none;}.fx-browse__lessons{order:9;width:100%;}}.fetexplorer-app.fetexplorer-app :focus-visible,.fetexplorer-dashboard.fetexplorer-dashboard :focus-visible{outline:2px solid var(--i-500,#6366f1);outline-offset:2px;}
:root{--dash-surface:#ffffff;--dash-brand:#6366f1;--dash-line:#e8eaf0;--dash-bg-2:#f1f2f7;--dash-ink-4:#64748b;--dash-ink:#111827;--dash-brand-600:#4f46e5;--dash-btn-fill:#4f46e5;--dash-ink-2:#374151;--dash-brand-100:#e0e4ff;--dash-brand-700:#4338ca;--dash-line-3:#cbd0dc;--dash-bg-1:#fafbfe;--dash-line-2:#eef0f5;--dash-ink-3:#4b5563;--dash-faint:#6b7280;--dash-brand-50:#eef2ff;--dash-brand-150:#e0e7ff;--dash-err:#dc2626;--dash-err-700:#b91c1c;--dash-err-bg:#fef2f2;--dash-err-100:#fee2e2;--dash-ok:#059669;--dash-ok-700:#15803d;--dash-ok-bg:#dcfce7;--dash-warn-bg:#fffbeb;--dash-warn-100:#fef3c7;--dash-warn-700:#b45309;--dash-warn-800:#92400e;--dash-amber:#f59e0b;--dash-slate-800:#1e293b;--dash-slate-600:#475569;--dash-slate-300:#cbd5e1;--dash-slate-200:#e2e8f0;--dash-slate-100:#f1f5f9;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]):has(.fetexplorer-dashboard){--dash-surface:#161b2c;--dash-brand:#818cf8;--dash-line:#28304a;--dash-bg-2:#232b44;--dash-ink-4:#8b94ad;--dash-ink:#e5e9f5;--dash-brand-600:#6366f1;--dash-btn-fill:#4f46e5;--dash-ink-2:#c7cee0;--dash-brand-100:#2b3358;--dash-brand-700:#c7d0ff;--dash-line-3:#323a54;--dash-bg-1:#1a2034;--dash-line-2:#222842;--dash-ink-3:#aab2c8;--dash-faint:#8b93b0;--dash-brand-50:#222a44;--dash-brand-150:#2b3358;--dash-err:#f87171;--dash-err-700:#fca5a5;--dash-err-bg:#2c1618;--dash-err-100:#3a1c1f;--dash-ok:#34d399;--dash-ok-700:#6ee7b7;--dash-ok-bg:#0e2a20;--dash-warn-bg:#2a2410;--dash-warn-100:#3a2e10;--dash-warn-700:#fcd34d;--dash-warn-800:#fcd34d;--dash-amber:#fbbf24;--dash-slate-800:#cbd5e1;--dash-slate-600:#94a3b8;--dash-slate-300:#475569;--dash-slate-200:#334155;--dash-slate-100:#1e293b;}}:root[data-theme="dark"]:has(.fetexplorer-dashboard){--dash-surface:#161b2c;--dash-brand:#818cf8;--dash-line:#28304a;--dash-bg-2:#232b44;--dash-ink-4:#8b94ad;--dash-ink:#e5e9f5;--dash-brand-600:#6366f1;--dash-btn-fill:#4f46e5;--dash-ink-2:#c7cee0;--dash-brand-100:#2b3358;--dash-brand-700:#c7d0ff;--dash-line-3:#323a54;--dash-bg-1:#1a2034;--dash-line-2:#222842;--dash-ink-3:#aab2c8;--dash-faint:#8b93b0;--dash-brand-50:#222a44;--dash-brand-150:#2b3358;--dash-err:#f87171;--dash-err-700:#fca5a5;--dash-err-bg:#2c1618;--dash-err-100:#3a1c1f;--dash-ok:#34d399;--dash-ok-700:#6ee7b7;--dash-ok-bg:#0e2a20;--dash-warn-bg:#2a2410;--dash-warn-100:#3a2e10;--dash-warn-700:#fcd34d;--dash-warn-800:#fcd34d;--dash-amber:#fbbf24;--dash-slate-800:#cbd5e1;--dash-slate-600:#94a3b8;--dash-slate-300:#475569;--dash-slate-200:#334155;--dash-slate-100:#1e293b;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fetexplorer-dashboard,:root:not([data-theme="light"]) .fetexplorer-dashboard :is(h1,h2,h3,h4,h5,p,li,td,th,label,small,strong,dt,dd){color:var(--dash-ink);}}:root[data-theme="dark"] .fetexplorer-dashboard,:root[data-theme="dark"] .fetexplorer-dashboard :is(h1,h2,h3,h4,h5,p,li,td,th,label,small,strong,dt,dd){color:var(--dash-ink);}:root{--sk-size:40px;--sk-color:#f6a712;}body.path-timetables{background:var(--dash-bg-2) !important;padding:0;min-height:100vh;overflow-x:hidden;}.fetexplorer-dashboard .animated-bg{display:none;}.fetexplorer-dashboard .animated-bg::before,.fetexplorer-dashboard .animated-bg::after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,0.1);animation:float 20s infinite ease-in-out;}.fetexplorer-dashboard .animated-bg::before{top:-200px;left:-200px;animation-delay:0s;}.fetexplorer-dashboard .animated-bg::after{bottom:-200px;right:-200px;animation-delay:10s;}@keyframes float{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(100px,-100px) scale(1.1);}66%{transform:translate(-100px,100px) scale(0.9);}}@media (prefers-reduced-motion:reduce){.fetexplorer-dashboard .animated-bg::before,.fetexplorer-dashboard .animated-bg::after{animation:none;}}.fetexplorer-dashboard .landing-header{padding:14px 24px;background:var(--dash-surface);border-bottom:1px solid var(--dash-line);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;position:relative;z-index:100;}.fetexplorer-dashboard .logo{font-size:16px;font-weight:700;letter-spacing:-0.02em;color:var(--dash-ink);display:flex;align-items:center;gap:10px;text-decoration:none;}.fetexplorer-dashboard .logo:hover{color:var(--dash-ink);text-decoration:none;}.fetexplorer-dashboard .logo-icon{width:36px;height:36px;padding:6px;border-radius:9px;background:linear-gradient(135deg,var(--dash-brand) 0%,var(--dash-brand-600) 100%);box-shadow:0 2px 6px rgba(79,70,229,0.35);object-fit:contain;}.fetexplorer-dashboard .landing-header .logo .logo-word{font-weight:800;letter-spacing:-0.01em;color:var(--dash-ink,#111827);}.fetexplorer-dashboard .landing-header .logo .logo-word b{font-weight:800;color:var(--dash-brand-700,#4338ca);}#newTimetableModal .form-help-cols{display:block;margin-top:4px;}#newTimetableModal .form-help-cols .cols{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;padding:2px 7px;border-radius:4px;background:var(--dash-slate-100,#f1f5f9);color:var(--dash-slate-700,#334155);white-space:nowrap;}#newTimetableModal.fxio-wide .settings-modal-container{max-width:980px;}#newTimetableModal .fxio,#newTimetableModal .fxio-foot{--dash-surface:#ffffff;--dash-brand:#6366f1;--dash-line:#e8eaf0;--dash-bg-1:#fafbfe;--dash-bg-2:#f1f2f7;--dash-ink:#111827;--dash-ink-2:#374151;--dash-ink-3:#4b5563;--dash-ink-4:#64748b;--dash-brand-50:#eef2ff;--dash-brand-150:#e0e7ff;--dash-brand-700:#4338ca;--dash-slate-800:#1e293b;--dash-ok-bg:#dcfce7;--dash-ok-700:#15803d;--dash-err-700:#b91c1c;--dash-warn-800:#92400e;--dash-warn-bg:#fffbeb;--dash-warn-100:#fef3c7;color-scheme:light;}#newTimetableModal .fxio{display:grid;gap:14px;}#newTimetableModal .fxio-steps{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;}#newTimetableModal .fxio-steps li{font-size:12.5px;font-weight:600;line-height:1;padding:8px 12px;border-radius:999px;background:var(--dash-bg-2);color:var(--dash-ink-3);}#newTimetableModal .fxio-steps li.done{background:var(--dash-ok-bg);color:var(--dash-ok-700);}#newTimetableModal .fxio-steps li.now{background:var(--dash-brand-150);color:var(--dash-brand-700);}#newTimetableModal .fxio-steps small{font-weight:500;}#newTimetableModal .fxio-head h3{margin:0;font-size:19px;color:var(--dash-slate-800);}#newTimetableModal .fxio-head h3:focus{outline:none;}#newTimetableModal .fxio-lead{margin:6px 0 0;color:var(--dash-ink-3);font-size:14.5px;}#newTimetableModal .fxio-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;}#newTimetableModal .fxio-body--dates{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);}#newTimetableModal .fxio-col{display:grid;gap:8px;align-content:start;min-width:0;}#newTimetableModal .fxio-lhead{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;min-height:40px;}#newTimetableModal .fxio-lhead h4{margin:0;font-size:14px;color:var(--dash-ink-2);display:flex;gap:8px;align-items:center;flex-wrap:wrap;}#newTimetableModal .fxio-cnt{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:5px 7px;border-radius:999px;background:var(--dash-bg-2);color:var(--dash-ink-3);}#newTimetableModal .fxio-tag{font-size:11.5px;font-weight:600;line-height:1;padding:5px 8px;border-radius:999px;background:var(--dash-ok-bg);color:var(--dash-ok-700);}#newTimetableModal .fxio-mini{min-height:40px;padding:0 12px;border:1px solid var(--dash-line);border-radius:8px;background:var(--dash-surface);color:var(--dash-brand-700);font-size:13px;font-weight:600;cursor:pointer;}#newTimetableModal .fxio-week{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13.5px;color:var(--dash-ink-3);min-height:44px;}#newTimetableModal .fxio-week label{display:inline;margin:0;font-weight:500;}#newTimetableModal .fxio-week select{width:auto;min-width:150px;font:inherit;min-height:44px;padding:0 10px;border:1px solid var(--dash-line);border-radius:8px;background:var(--dash-surface);color:var(--dash-ink);}#newTimetableModal .fxio-rows{list-style:none;margin:0;padding:2px 8px 2px 2px;display:grid;gap:6px;align-content:start;max-height:min(46vh,404px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}#newTimetableModal .fxio-rows:focus-visible,#newTimetableModal .fxio-bells:focus-visible{outline:2px solid var(--dash-brand);outline-offset:2px;border-radius:10px;}#newTimetableModal .fxio-row{display:grid;grid-template-columns:26px 18px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:0 6px 0 8px;border:1px solid var(--dash-line);border-radius:10px;background:var(--dash-surface);}#newTimetableModal .fxio-row.is-drag{opacity:.55;}#newTimetableModal .fxio-row.is-over{border-color:var(--dash-brand);box-shadow:0 0 0 2px var(--dash-brand-150);}#newTimetableModal .fxio-n{font:600 12.5px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--dash-ink-4);text-align:center;}#newTimetableModal .fxio-grip{color:var(--dash-ink-4);cursor:grab;font-size:13px;letter-spacing:-2px;}#newTimetableModal .fxio-t{font-size:14.5px;color:var(--dash-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}#newTimetableModal .fxio-t,#newTimetableModal .fxio-bn{unicode-bidi:plaintext;}#newTimetableModal .fxio-mv{display:flex;gap:4px;}#newTimetableModal .fxio-mv button{width:40px;height:40px;display:grid;place-items:center;padding:0;border:1px solid var(--dash-line);border-radius:8px;background:var(--dash-bg-1);color:var(--dash-ink-3);cursor:pointer;}#newTimetableModal .fxio-mv button:disabled{opacity:.35;cursor:default;}#newTimetableModal .fxio-later{margin:0;padding:12px 14px;border-radius:10px;background:var(--dash-brand-50);color:var(--dash-ink-2);font-size:13.5px;}#newTimetableModal .fxio-later b{color:var(--dash-ink);}#newTimetableModal .fxio-warn{display:grid;gap:4px;margin:0;padding:12px 14px;border-radius:10px;background:var(--dash-warn-bg);border:1px solid var(--dash-warn-100);color:var(--dash-warn-800);font-size:13.5px;}#newTimetableModal .fxio-warn p{margin:0;overflow-wrap:anywhere;}#newTimetableModal .fxio-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}#newTimetableModal .fxio-tabs{display:none;}#newTimetableModal .fxio-fld{display:grid;gap:6px;font-size:13.5px;color:var(--dash-ink-3);}#newTimetableModal .fxio-fld input,#newTimetableModal .fxio-bell input{font:inherit;min-height:44px;padding:0 10px;border:1px solid var(--dash-line);border-radius:8px;background:var(--dash-surface);color:var(--dash-ink);}#newTimetableModal .fxio-hint{margin:0;font-size:13px;color:var(--dash-ink-4);}#newTimetableModal .fxio-err{margin:0;font-size:13px;font-weight:600;color:var(--dash-err-700);}#newTimetableModal .fxio-bells{display:grid;gap:6px;align-content:start;max-height:min(46vh,404px);overflow:auto;overscroll-behavior:contain;padding:2px 8px 2px 2px;scrollbar-gutter:stable;}#newTimetableModal .fxio-bell{display:grid;grid-template-columns:minmax(0,1fr) 140px 10px 140px;align-items:center;gap:8px;min-height:54px;padding:4px 8px;border:1px solid var(--dash-line);border-radius:10px;background:var(--dash-surface);}#newTimetableModal .fxio-bell--empty{border-style:dashed;}#newTimetableModal .fxio-bn{font-size:14px;color:var(--dash-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}#newTimetableModal .fxio-bn em{display:block;font-style:normal;font-size:12px;color:var(--dash-warn-800);}#newTimetableModal .fxio-foot{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;}#newTimetableModal .fxio-foot[hidden],#newTimetableModal .settings-modal-footer[hidden],#newTimetableModal form[hidden]{display:none;}@media (pointer:coarse){#newTimetableModal .fxio-mv button{width:48px;height:48px;}#newTimetableModal .fxio-mini{min-height:48px;}}@media (max-width:640px){#newTimetableModal .fxio-body,#newTimetableModal .fxio-body--dates{grid-template-columns:minmax(0,1fr);}#newTimetableModal .fxio-tabs{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--dash-bg-2);}#newTimetableModal .fxio-tabs button{flex:1;min-height:48px;border:0;border-radius:9px;background:transparent;font-size:14px;font-weight:600;color:var(--dash-ink-3);display:flex;gap:6px;align-items:center;justify-content:center;}#newTimetableModal .fxio-tabs button[aria-selected="true"]{background:var(--dash-surface);color:var(--dash-ink);box-shadow:0 1px 3px rgba(15,23,42,.08);}#newTimetableModal .fxio-body[data-tab="days"] .fxio-col[data-col="hours"],#newTimetableModal .fxio-body[data-tab="hours"] .fxio-col[data-col="days"]{display:none;}#newTimetableModal .fxio-week--ghost{display:none;}#newTimetableModal .fxio-row{gap:6px;grid-template-columns:22px 16px minmax(0,1fr) auto;}#newTimetableModal .fxio-t{white-space:normal;line-height:1.3;padding-block:6px;overflow-wrap:anywhere;}#newTimetableModal .fxio-mv button{width:48px;height:48px;}#newTimetableModal .fxio-mini,#newTimetableModal .fxio-foot .btn{min-height:48px;}#newTimetableModal .fxio-bell{grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr);}#newTimetableModal .fxio-bn{grid-column:1 / -1;}}.fetexplorer-dashboard .nav-buttons{display:flex;gap:16px;align-items:center;}.fetexplorer-dashboard .container{position:relative;z-index:1;padding:0px !important}.fetexplorer-dashboard .dashboard-content{background:transparent;border-radius:0;box-shadow:none;padding:24px;margin-top:0;border:none;max-width:1600px;margin-left:auto;margin-right:auto;}body.path-timetables #page-wrapper,body.path-timetables #page,body.path-timetables #main-wrapper,body.path-timetables #main.container-fluid,body.path-timetables #main .row-offcanvas,body.path-timetables main#content,body.path-timetables main#content > .section,body.path-timetables .block-system-main-block,body.path-timetables .block-system-main-block > .content{display:flex;flex-direction:column;}body.path-timetables #page,body.path-timetables #main-wrapper,body.path-timetables #main.container-fluid,body.path-timetables #main .row-offcanvas,body.path-timetables main#content,body.path-timetables main#content > .section,body.path-timetables .block-system-main-block,body.path-timetables .block-system-main-block > .content{flex:1 0 auto;}body.path-timetables .fetexplorer-dashboard{flex:1 0 auto;}body.path-timetables footer.landing-footer{width:100%;}.fetexplorer-dashboard .dashboard-header{margin-bottom:40px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:24px;}.fetexplorer-dashboard .dashboard-header-text{flex:1;}.fetexplorer-dashboard .dashboard-title{font-size:32px !important;font-weight:700 !important;color:var(--dash-slate-800) !important;margin:0 0 8px 0 !important;}.fetexplorer-dashboard .dashboard-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;}.fetexplorer-dashboard .dashboard-title-row .dashboard-title{margin-bottom:0 !important;}.fetexplorer-dashboard .fx-planchip{display:inline-flex;align-items:center;gap:8px;padding:5px 6px 5px 8px;border:1px solid var(--dash-line,#e4e7ec);border-radius:999px;background:var(--dash-surface,#fff);font-size:13px;line-height:1.4;white-space:nowrap;}.fetexplorer-dashboard .fx-planchip .fx-pbadge{width:22px;height:22px;border-radius:6px;}.fetexplorer-dashboard .fx-planchip__name{font-weight:700;}.fetexplorer-dashboard .fx-planchip__quota{font-variant-numeric:tabular-nums;color:var(--dash-ink-4,#475467);}.fetexplorer-dashboard .fx-planchip__meta{color:var(--dash-ink-4,#475467);}.fetexplorer-dashboard .fx-planchip__cap{font-size:11.5px;font-weight:700;padding:2px 9px;border-radius:999px;background:#fffbeb;color:#b45309;}.fetexplorer-dashboard .fx-planchip.is-at-cap{border-color:#fcd34d;background:#fffbeb;}.fetexplorer-dashboard .fx-planchip__cta{text-decoration:none;font-weight:700;color:var(--dash-brand-700,#4338ca);padding:4px 12px;border-radius:999px;background:var(--dash-brand-50,#eef2ff);}.fetexplorer-dashboard .fx-planchip__cta:hover{background:var(--dash-brand,#4f46e5);color:#fff;}.fetexplorer-dashboard .dashboard-subtitle{font-size:16px;color:var(--dash-ink-3);margin:0;}.fetexplorer-dashboard .fx-notice{display:flex;align-items:center;gap:14px;margin:-16px 0 24px;padding:14px 16px;background:var(--dash-brand-50);border:1px solid var(--dash-brand-150);border-radius:12px;}.fetexplorer-dashboard .fx-notice__icon{width:20px;height:20px;flex-shrink:0;color:var(--dash-brand-700);}.fetexplorer-dashboard .fx-notice__text{flex:1;min-width:0;}.fetexplorer-dashboard .fx-notice__title{margin:0 !important;font-size:14px;font-weight:600;line-height:1.4;color:var(--dash-ink) !important;}.fetexplorer-dashboard .fx-notice__body{margin:2px 0 0 !important;font-size:13px;line-height:1.5;color:var(--dash-ink-3) !important;}.fetexplorer-dashboard .fx-notice__cta{flex-shrink:0;display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid var(--dash-brand-150);border-radius:9px;background:var(--dash-surface);color:var(--dash-brand-700);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;transition:border-color .12s ease,background .12s ease;}.fetexplorer-dashboard .fx-notice__cta:hover{border-color:var(--dash-brand-600);background:var(--dash-brand-100);}@media (max-width:767px){.fetexplorer-dashboard .fx-notice{flex-wrap:wrap;margin-top:0;}.fetexplorer-dashboard .fx-notice__text{flex:1 1 auto;min-width:180px;}.fetexplorer-dashboard .fx-notice__cta{flex:1 0 100%;justify-content:center;min-height:48px;}}.fetexplorer-dashboard .dashboard-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}.fetexplorer-dashboard .dashboard-actions .btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:10px;font-size:15px;font-weight:600;text-decoration:none;transition:all 0.2s ease;cursor:pointer;white-space:nowrap;}.fetexplorer-dashboard .btn-new-timetable{background:var(--dash-brand-600);color:white;border:1px solid var(--dash-brand-600);box-shadow:0 1px 2px rgba(16,24,40,0.08);}.fetexplorer-dashboard .btn-new-timetable:hover{background:var(--dash-brand-700);border-color:var(--dash-brand-700);}.fetexplorer-dashboard .btn-new-timetable.is-at-cap{background:var(--dash-warn-bg);color:var(--dash-warn-700);border-color:#fcd34d;box-shadow:none;}.fetexplorer-dashboard .btn-new-timetable.is-at-cap:hover{background:var(--dash-warn-100);border-color:var(--dash-amber);}.fetexplorer-dashboard .btn-ghost{background:var(--dash-surface);color:var(--dash-ink-2);border:1px solid var(--dash-line);}.fetexplorer-dashboard .btn-ghost:hover{border-color:var(--dash-line-3);color:var(--dash-ink);background:var(--dash-bg-1);}.fetexplorer-dashboard .btn-ghost svg{flex-shrink:0;}.fetexplorer-dashboard .dashboard-actions .btn svg{flex-shrink:0;}.fetexplorer-dashboard .empty-state{text-align:center;padding:60px 20px;}.fetexplorer-dashboard .empty-state-icon{font-size:72px;margin-bottom:20px;opacity:0.6;}.fetexplorer-dashboard .empty-state h2{font-size:24px !important;font-weight:600 !important;color:var(--dash-slate-800) !important;margin:0 0 12px 0 !important;}.fetexplorer-dashboard .empty-state p{font-size:16px;color:var(--dash-ink-4);margin:0;}.fetexplorer-dashboard .empty-state--onboard{padding:48px 20px 64px;}.fetexplorer-dashboard .onboard-hero{width:72px;height:72px;margin:0 auto 18px;display:grid;place-items:center;border-radius:20px;background:var(--dash-brand-50);color:var(--dash-brand-600);box-shadow:inset 0 0 0 1px var(--dash-brand-150);}.fetexplorer-dashboard .onboard-hero svg{width:36px;height:36px;}.fetexplorer-dashboard .empty-state--onboard p.empty-state-lead{max-width:460px;margin:0 auto 32px;font-size:15px;color:var(--dash-ink-4);}.fetexplorer-dashboard .onboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,232px));gap:16px;justify-content:center;max-width:760px;margin:0 auto;}.fetexplorer-dashboard .onboard-card{display:flex;flex-direction:column;align-items:center;gap:6px;min-height:168px;padding:24px 18px 22px;background:var(--dash-surface);border:1px solid var(--dash-line);border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04);font:inherit;text-align:center;text-decoration:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;}.fetexplorer-dashboard .onboard-card:hover{transform:translateY(-2px);border-color:var(--dash-brand-150);box-shadow:0 8px 20px rgba(79,70,229,.12);}.fetexplorer-dashboard .onboard-card:focus-visible{outline:2px solid var(--dash-brand);outline-offset:2px;}.fetexplorer-dashboard .onboard-card--primary{border-color:var(--dash-brand-150);box-shadow:0 4px 14px rgba(79,70,229,.10);}.fetexplorer-dashboard .onboard-card__ic{width:48px;height:48px;margin-bottom:8px;display:grid;place-items:center;flex:none;border-radius:12px;background:var(--dash-brand-50);color:var(--dash-brand-600);}.fetexplorer-dashboard .onboard-card--primary .onboard-card__ic{background:var(--dash-brand-600);color:#fff;}.fetexplorer-dashboard .onboard-card__ic svg{width:24px;height:24px;}.fetexplorer-dashboard .onboard-card__t{font-size:16px;font-weight:600;color:var(--dash-slate-800);}.fetexplorer-dashboard .onboard-card__d{font-size:13px;line-height:1.45;color:var(--dash-ink-4);}.fetexplorer-dashboard .empty-state--onboard p.empty-state-note{margin:28px auto 0;font-size:13px;color:var(--dash-faint);}@media (max-width:575px){.fetexplorer-dashboard .empty-state--onboard{padding:32px 0 48px;}.fetexplorer-dashboard .onboard-cards{grid-template-columns:1fr;}.fetexplorer-dashboard .onboard-card{min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:14px;row-gap:2px;padding:16px;text-align:left;}.fetexplorer-dashboard .onboard-card__ic{margin:0;}.fetexplorer-dashboard .onboard-card__t{flex:1;}.fetexplorer-dashboard .onboard-card__d{flex-basis:100%;padding-left:62px;}}.fetexplorer-dashboard .onboard-cards--lead{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);max-width:720px;justify-content:stretch;}.fetexplorer-dashboard .onboard-card--lead{min-height:200px;justify-content:center;padding:28px 24px;}.fetexplorer-dashboard .onboard-card--lead .onboard-card__t{font-size:19px;}.fetexplorer-dashboard .onboard-card--lead .onboard-card__d{font-size:14px;max-width:34ch;}.fetexplorer-dashboard .onboard-btn{margin-top:10px;display:inline-flex;align-items:center;min-height:48px;padding:0 20px;border-radius:10px;background:var(--dash-btn-fill);color:#fff;font-weight:600;font-size:15px;}.fetexplorer-dashboard .empty-state--onboard p.onboard-alt{margin:22px auto 0;font-size:14px;color:var(--dash-ink-4);}.fetexplorer-dashboard .onboard-alt__link{min-height:48px;padding:0 6px;background:none;border:0;font:inherit;font-weight:600;color:var(--dash-brand-700);text-decoration:underline;text-underline-offset:3px;cursor:pointer;}.fetexplorer-dashboard .onboard-alt__link:focus-visible{outline:2px solid var(--dash-brand);outline-offset:2px;border-radius:6px;}@media (max-width:575px){.fetexplorer-dashboard .onboard-cards--lead{grid-template-columns:1fr;}.fetexplorer-dashboard .onboard-card--lead{min-height:0;padding:18px 16px;}.fetexplorer-dashboard .onboard-card--lead .onboard-btn{margin-inline-start:62px;}}.fetexplorer-dashboard .fx-steps{margin:0 0 24px;padding:18px 20px;display:grid;gap:14px;background:var(--dash-surface);border:1px solid var(--dash-brand-150);border-radius:14px;box-shadow:0 4px 14px rgba(79,70,229,.10);}.fetexplorer-dashboard .fx-steps__head{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;}.fetexplorer-dashboard .fx-steps__title{margin:0;font-size:17px !important;font-weight:600;color:var(--dash-slate-800);}.fetexplorer-dashboard .fx-steps__count{font-size:13px;color:var(--dash-ink-4);font-variant-numeric:tabular-nums;}.fetexplorer-dashboard .fx-steps__hide{margin-inline-start:auto;min-height:48px;padding:0 8px;background:none;border:0;font:inherit;font-size:13px;color:var(--dash-ink-4);text-decoration:underline;text-underline-offset:3px;cursor:pointer;}.fetexplorer-dashboard .fx-steps__bar{height:6px;border-radius:99px;background:var(--dash-bg-2);overflow:hidden;}.fetexplorer-dashboard .fx-steps__bar > span{display:block;height:100%;background:var(--dash-btn-fill);border-radius:99px;}.fetexplorer-dashboard .fx-steps__list{list-style:none;margin:0;padding:0;display:grid;}.fetexplorer-dashboard .fx-step{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:4px 14px;align-items:center;padding:12px 4px;border-top:1px solid var(--dash-line-2);}.fetexplorer-dashboard .fx-step:first-child{border-top:0;}.fetexplorer-dashboard .fx-step__dot{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:2px solid var(--dash-brand-150);color:var(--dash-brand-700);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;}.fetexplorer-dashboard .fx-step--done .fx-step__dot{background:var(--dash-ok-bg);border-color:transparent;color:var(--dash-ok-700);}.fetexplorer-dashboard .fx-step__t{font-size:15px;font-weight:600;color:var(--dash-ink);}.fetexplorer-dashboard .fx-step--done .fx-step__t{color:var(--dash-ink-4);}.fetexplorer-dashboard .fx-step__d{grid-column:2;font-size:13.5px;line-height:1.45;color:var(--dash-ink-4);}.fetexplorer-dashboard .fx-step__go{grid-row:1 / span 2;grid-column:3;display:inline-flex;align-items:center;min-height:48px;padding:0 16px;border-radius:10px;border:1px solid var(--dash-brand-150);color:var(--dash-brand-700);font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap;}.fetexplorer-dashboard .fx-step__go:hover{border-color:var(--dash-brand);}.fetexplorer-dashboard .fx-step__go--next{background:var(--dash-btn-fill);border-color:var(--dash-btn-fill);color:#fff;}.fetexplorer-dashboard .fx-step__go:focus-visible,.fetexplorer-dashboard .fx-steps__hide:focus-visible{outline:2px solid var(--dash-brand);outline-offset:2px;}.fetexplorer-dashboard .fx-step__ok{grid-row:1 / span 2;grid-column:3;font-size:13px;font-weight:600;color:var(--dash-ok-700);}@media (max-width:575px){.fetexplorer-dashboard .fx-steps{padding:16px 14px;}.fetexplorer-dashboard .fx-step{grid-template-columns:32px minmax(0,1fr);}.fetexplorer-dashboard .fx-step__go,.fetexplorer-dashboard .fx-step__ok{grid-row:auto;grid-column:2;justify-self:start;}}.fetexplorer-dashboard .timetables-block{width:100%;}.fetexplorer-dashboard .timetables-summary{color:var(--dash-ink-4);font-size:14px;margin:0 0 12px 0;}.fetexplorer-dashboard .timetables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(264px,calc((100% - 3 * 14px) / 4)),1fr));grid-auto-rows:1fr;gap:14px;}.fetexplorer-dashboard .timetables-grid.is-compact{grid-template-columns:repeat(auto-fill,minmax(max(244px,calc((100% - 3 * 13px) / 4)),1fr));gap:13px;}.fetexplorer-dashboard .timetables-grid.is-compact .timetable-card{padding:13px;}.fetexplorer-dashboard .timetables-grid.is-compact .timetable-card-icon{width:36px;height:36px;border-radius:10px;}.fetexplorer-dashboard .timetables-grid.is-compact .timetable-card-title{font-size:14px !important;}.fetexplorer-dashboard .timetables-pager{margin:24px 0 0 0;display:flex;justify-content:center;}.fetexplorer-dashboard .timetables-pager nav.pager,.fetexplorer-dashboard .timetables-pager .pager{display:flex;gap:8px;}.fetexplorer-dashboard .timetables-pager .pager__items{display:flex;gap:6px;list-style:none;padding:0;margin:0;}.fetexplorer-dashboard .timetables-pager .pager__item{display:inline-flex;}.fetexplorer-dashboard .timetables-pager .pager__item a,.fetexplorer-dashboard .timetables-pager .pager__item.is-active{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid var(--dash-slate-200);border-radius:8px;color:var(--dash-slate-600);font-weight:500;text-decoration:none;background:var(--dash-surface);transition:all 0.15s ease;}.fetexplorer-dashboard .timetables-pager .pager__item a:hover{border-color:var(--dash-brand);color:var(--dash-brand);background:rgba(99,102,241,0.04);}.fetexplorer-dashboard .timetables-pager .pager__item.is-active{background:linear-gradient(135deg,var(--dash-brand) 0%,var(--dash-brand-600) 100%);border-color:transparent;color:var(--dash-surface);cursor:default;}.fetexplorer-dashboard .timetables-block.is-loading{opacity:0.6;pointer-events:none;}.fetexplorer-dashboard .timetable-card-wrapper{position:relative;display:flex;}.fetexplorer-dashboard .timetable-card{display:flex;flex-direction:column;flex:1;min-width:0;padding:15px;background:var(--dash-surface);border:1px solid var(--dash-line);border-radius:14px;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;position:relative;box-shadow:0 1px 2px rgba(16,24,40,.06),0 1px 3px rgba(16,24,40,.04);}.fetexplorer-dashboard .timetable-card:hover{border-color:var(--dash-brand-100);box-shadow:0 12px 30px rgba(16,24,40,.13),0 4px 9px rgba(16,24,40,.06);transform:translateY(-2px);}.fetexplorer-dashboard .timetable-card.menu-open{z-index:40;}.fetexplorer-dashboard .timetable-card-header{display:flex;align-items:flex-start;gap:10px;padding:0;background:none;border-bottom:none;margin-bottom:12px;}.fetexplorer-dashboard .timetable-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:11px;font-weight:800;font-size:14px;flex-shrink:0;overflow:hidden;}.fetexplorer-dashboard .timetable-card-icon.has-logo{background:var(--dash-bg-2);border:1px solid var(--dash-line);}.fetexplorer-dashboard .timetable-card-icon.ico-c1{background:var(--dash-brand-150);color:var(--dash-brand-700);}.fetexplorer-dashboard .timetable-card-icon.ico-c2{background:var(--dash-ok-bg);color:var(--dash-ok-700);}.fetexplorer-dashboard .timetable-card-icon.ico-c3{background:var(--dash-warn-100);color:var(--dash-warn-800);}.fetexplorer-dashboard .timetable-card-icon.ico-c4{background:var(--dash-err-100);color:var(--dash-err-700);}.fetexplorer-dashboard .timetable-logo{width:100%;height:100%;object-fit:contain;padding:6px;}.fetexplorer-dashboard .timetable-card-title{flex:1;min-width:0;font-size:14.5px !important;font-weight:600 !important;color:var(--dash-ink) !important;margin:1px 0 0 !important;line-height:1.25 !important;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;}.fetexplorer-dashboard .timetable-card-actions-top{position:relative;flex-shrink:0;margin-left:auto;}.fetexplorer-dashboard .btn-card-menu{width:30px;height:30px;display:grid;place-items:center;border:none;background:none;border-radius:8px;color:var(--dash-faint);cursor:pointer;padding:0;transition:background .12s ease,color .12s ease;}.fetexplorer-dashboard .btn-card-menu:hover{background:var(--dash-bg-2);color:var(--dash-ink-2);}.fetexplorer-dashboard .card-menu{position:absolute;top:34px;right:0;background:var(--dash-surface);border:1px solid var(--dash-line);border-radius:11px;box-shadow:0 12px 30px rgba(16,24,40,.13),0 4px 9px rgba(16,24,40,.06);padding:6px;min-width:196px;z-index:30;display:none;}body.path-features,body.path-pricing,body.path-subscription,body.path-webform,body.node--type-page{--fx-band-bleed:12px;}main .fetexplorer-app.fx-public-host:not(.fx-order__public-host){margin-inline:calc(-1 * var(--fx-band-bleed,0px));}.fx-public-host .container{max-width:var(--fx-rail,1360px);margin:0 auto;padding:10px 24px !important;z-index:30;}.fx-public-host .landing-header{background:transparent;border:0;border-radius:0;padding:0;margin:0 !important;min-height:0;display:flex;justify-content:space-between;align-items:center;}.fx-public-host .logo{color:#fff;font-size:20px;font-weight:700;gap:12px;text-decoration:none;display:inline-flex;align-items:center;}.fx-public-host .logo:hover{color:#fff;opacity:0.92;}.fx-public-host .logo-icon{width:32px;height:32px;padding:0;background:none;box-shadow:none;border-radius:0;animation:none;}.fx-public-host .logo span{white-space:nowrap;}@media (min-width:769px) and (max-width:1279px){.fx-public-host .logo span{display:none;}}.fx-public-host .fx-pubnav a.nav-link--::before{width:16px;height:16px;background-position:0 0;background-size:16px 16px;margin-right:3px;}.fx-public-host .nav-buttons{gap:12px;}.fx-public-host .fx-pubnav{color:#fff;}.fx-public-host .fx-pubnav a:hover{background:rgba(255,255,255,0.16);}.fetexplorer-app.fx-onbrand__public-host{position:relative;z-index:2;margin:0;background:rgba(0,0,0,0.14);}.fetexplorer-app.fx-page__public-host{background:transparent;}.fetexplorer-dashboard .card-menu.open{display:block;}.fetexplorer-dashboard .card-menu.drop-up{top:auto;bottom:34px;}.fetexplorer-dashboard .card-menu button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:none;font:inherit;font-size:13px;color:var(--dash-ink-2);padding:8px 10px;border-radius:7px;cursor:pointer;}.fetexplorer-dashboard .card-menu button:hover{background:var(--dash-bg-2);}.fetexplorer-dashboard .card-menu button.danger{color:var(--dash-err);}.fetexplorer-dashboard .card-menu button.danger:hover{background:var(--dash-err-bg);}.fetexplorer-dashboard .card-menu button svg{width:16px;height:16px;flex-shrink:0;}.fetexplorer-dashboard .card-menu-div{height:1px;background:var(--dash-line-2);margin:5px 4px;}.fetexplorer-dashboard .timetable-card-content{flex:1;padding:0;display:flex;flex-direction:column;margin-bottom:13px;}.fetexplorer-dashboard .timetable-card-meta{display:flex;flex-wrap:wrap;gap:6px;}.fetexplorer-dashboard .meta-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--dash-ink-3);background:var(--dash-bg-2);border-radius:6px;padding:3px 8px;}.fetexplorer-dashboard .meta-chip svg{width:12px;height:12px;opacity:.7;flex-shrink:0;}.fetexplorer-dashboard .meta-chip--retention.is-soon{color:var(--dash-warn-800);background:var(--dash-warn-100);}.fetexplorer-dashboard .meta-chip--retention.is-due{color:var(--dash-err-700);background:var(--dash-err-100);}.fetexplorer-dashboard .meta-chip--retention svg{opacity:.85;}.fetexplorer-dashboard .meta-dot{width:6px;height:6px;border-radius:50%;background:var(--dash-ok);flex-shrink:0;}.fetexplorer-dashboard .timetable-card-footer{padding:0;background:none;border-top:none;display:flex;gap:8px;margin-top:auto;}.fetexplorer-dashboard .btn-card-open{flex:1;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;background:var(--dash-brand-50);border:1px solid var(--dash-brand-100);color:var(--dash-brand-700);font-size:13px;font-weight:650;cursor:pointer;transition:background .12s ease;}.fetexplorer-dashboard .btn-card-open:hover{background:var(--dash-brand-100);}.fetexplorer-dashboard .btn-card-data{height:36px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;border-radius:9px;background:var(--dash-surface);border:1px solid var(--dash-line);color:var(--dash-ink-2);font-size:12.5px;font-weight:600;cursor:pointer;transition:border-color .12s ease,color .12s ease;}.fetexplorer-dashboard .btn-card-data:hover{border-color:var(--dash-brand-100);color:var(--dash-brand-700);}.fetexplorer-dashboard .btn-card-open svg,.fetexplorer-dashboard .btn-card-data svg{flex-shrink:0;}.fetexplorer-dashboard .btn-settings-timetable,.fetexplorer-dashboard .btn-delete-timetable,.fetexplorer-dashboard .btn-icon-action{display:none;}@media (max-width:1200px){.fetexplorer-dashboard .timetables-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}}@media (max-width:768px){body.path-timetables{padding:12px;}.fetexplorer-dashboard .landing-header{padding:12px 16px !important;flex-direction:row !important;flex-wrap:wrap !important;gap:12px !important;justify-content:space-between !important;align-items:center !important;}.fetexplorer-dashboard .landing-header .logo{flex-shrink:0 !important;}.fetexplorer-dashboard .landing-header .logo-icon{width:36px !important;height:36px !important;}.fetexplorer-dashboard .landing-header .logo span{display:none !important;}.fetexplorer-dashboard .nav-buttons{flex-shrink:0 !important;gap:8px !important;}.fetexplorer-dashboard .language-dropdown,.fetexplorer-dashboard .user-dropdown,.fetexplorer-dashboard .dropdown-menu{overflow-x:hidden !important;overflow-y:auto !important;}.fetexplorer-dashboard .language-dropdown *,.fetexplorer-dashboard .user-dropdown *,.fetexplorer-dashboard .dropdown-menu *{overflow-x:hidden !important;}.fetexplorer-dashboard .header{padding:20px;}.fetexplorer-dashboard .dashboard-content{padding:16px;}.fetexplorer-dashboard .dashboard-header{flex-direction:column;align-items:flex-start;gap:16px;}.fetexplorer-dashboard .btn-new-timetable{width:100%;justify-content:center;}.fetexplorer-dashboard .dashboard-title{font-size:24px !important;}.fetexplorer-dashboard .dashboard-subtitle{font-size:14px;}.fetexplorer-dashboard .timetables-grid{grid-template-columns:1fr;gap:12px;}}@media (max-width:480px){.fetexplorer-dashboard .timetable-card-icon{width:38px;height:38px;}}.confirm-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:10002;align-items:center;justify-content:center;}.confirm-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);}.confirm-modal-content{position:relative;background:white;border-radius:16px;padding:32px;max-width:480px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,0.3);animation:fx-dash-modal-in 0.3s ease-out;z-index:1;}@keyframes fx-dash-modal-in{from{opacity:0;transform:scale(0.9) translateY(20px);}to{opacity:1;transform:scale(1) translateY(0);}}.confirm-modal-header{text-align:center;margin-bottom:24px;}.confirm-modal-icon{font-size:48px;margin-bottom:12px;}.confirm-modal-title{font-size:24px;font-weight:600;color:var(--dash-slate-800);margin:0;}.confirm-modal-body{font-size:16px;color:var(--dash-ink-4);line-height:1.6;margin-bottom:24px;text-align:center;}.confirm-modal-actions{display:flex;gap:12px;justify-content:center;}.confirm-modal-actions .btn{padding:12px 24px;font-size:15px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all 0.2s;min-width:120px;}.confirm-modal-actions .btn-cancel{background:var(--dash-slate-100);color:var(--dash-ink-4);}.confirm-modal-actions .btn-cancel:hover{background:var(--dash-slate-200);color:var(--dash-slate-600);}.confirm-modal-actions .btn-confirm{background:var(--dash-brand);color:white;}.confirm-modal-actions .btn-confirm:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(99,102,241,0.4);}.confirm-modal-actions .btn-danger{background:var(--dash-err);color:white;}.confirm-modal-actions .btn-danger:hover{background:var(--dash-err-700);transform:translateY(-1px);box-shadow:0 4px 12px rgba(220,38,38,0.4);}.landing-footer{position:relative;z-index:10;background:var(--dash-slate-800);text-align:center;padding:40px 20px;color:var(--dash-slate-300);margin-top:40px;}body.fx-cardmenu-open .landing-footer{z-index:0;}.footer-links{display:flex;justify-content:center;gap:30px;margin-bottom:20px;flex-wrap:wrap;}.footer-links a{color:var(--dash-slate-300);text-decoration:none;font-size:14px;transition:color 0.3s ease;}.footer-links a:hover{color:white;}:root[data-theme="dark"] .landing-footer{background:var(--dash-slate-100);}:root[data-theme="dark"] .landing-footer .footer-links a{color:var(--dash-slate-800);}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .landing-footer{background:var(--dash-slate-100);}:root:not([data-theme="light"]) .landing-footer .footer-links a{color:var(--dash-slate-800);}}@media (max-width:600px){body.path-timetables{padding-left:0;padding-right:0;}.fetexplorer-dashboard .dashboard-content{padding-left:4px;padding-right:4px;}.fx-public-host .container{padding-left:4px !important;padding-right:4px !important;}}
:root{--set-surface:#ffffff;--set-line:#e8eaf0;--set-ink:#111827;--set-faint:#9ca3af;--set-ink-2:#374151;--set-brand:#6366f1;--set-muted:#6b7280;--set-brand-700:#4338ca;--set-bg-1:#fbfbfe;--set-brand-50:#eef2ff;--set-line-3:#cbd0dc;--set-brand-100:#e0e4ff;--set-line-2:#eef0f5;--set-err:#dc2626;--set-brand-600:#4f46e5;--set-ink-3:#4b5563;--set-ink-4:#64748b;--set-surface-2:#fafbff;--set-bg-2:#f1f2f7;--set-ok:#059669;--set-violet:#7c3aed;--set-warn-700:#b45309;--set-warn-bg:#fffbeb;--set-warn-200:#fde68a;--set-err-700:#b91c1c;--set-err-bg:#fef2f2;}@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .fd-app,:root:not([data-theme="light"]) .fetexplorer-app{--set-surface:#161b2c;--set-line:#28304a;--set-ink:#e5e9f5;--set-faint:#8b93b0;--set-ink-2:#c7cee0;--set-brand:#818cf8;--set-muted:#9aa6c4;--set-brand-700:#c7d0ff;--set-bg-1:#1a2034;--set-brand-50:#222a44;--set-line-3:#323a54;--set-brand-100:#2b3358;--set-line-2:#222842;--set-err:#f87171;--set-brand-600:#6366f1;--set-ink-3:#aab2c8;--set-ink-4:#8b94ad;--set-surface-2:#1c2236;--set-bg-2:#232b44;--set-ok:#34d399;--set-violet:#a78bfa;--set-warn-700:#fcd34d;--set-warn-bg:#2a2410;--set-warn-200:#3a2e10;--set-err-700:#fca5a5;--set-err-bg:#2c1618;}}:root[data-theme="dark"] .fd-app,:root[data-theme="dark"] .fetexplorer-app{--set-surface:#161b2c;--set-line:#28304a;--set-ink:#e5e9f5;--set-faint:#8b93b0;--set-ink-2:#c7cee0;--set-brand:#818cf8;--set-muted:#9aa6c4;--set-brand-700:#c7d0ff;--set-bg-1:#1a2034;--set-brand-50:#222a44;--set-line-3:#323a54;--set-brand-100:#2b3358;--set-line-2:#222842;--set-err:#f87171;--set-brand-600:#6366f1;--set-ink-3:#aab2c8;--set-ink-4:#8b94ad;--set-surface-2:#1c2236;--set-bg-2:#232b44;--set-ok:#34d399;--set-violet:#a78bfa;--set-warn-700:#fcd34d;--set-warn-bg:#2a2410;--set-warn-200:#3a2e10;--set-err-700:#fca5a5;--set-err-bg:#2c1618;}.settings-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.3s ease,visibility 0.3s ease;}.settings-modal.active{opacity:1;visibility:visible;}.settings-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);opacity:0;transition:opacity 0.3s ease;}.settings-modal.active .settings-modal-overlay{opacity:1;}.settings-modal-container{position:relative;background:var(--surface);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-width:900px;width:90%;height:95vh;max-height:95vh;display:flex;flex-direction:column;z-index:10001;transform:scale(0.9) translateY(-20px);opacity:0;transition:transform 0.3s cubic-bezier(0.34,1.56,0.64,1),opacity 0.3s ease;}.settings-modal.active .settings-modal-container{transform:scale(1) translateY(0);opacity:1;}.settings-modal.closing{opacity:1;visibility:visible;}.settings-modal.closing .settings-modal-overlay{opacity:0;}.settings-modal.closing .settings-modal-container{transform:scale(0.9) translateY(-20px);opacity:0;}.settings-modal-header{padding:24px 32px;border-bottom:2px solid var(--s-200);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--s-50) 0%,var(--surface) 100%);border-radius:12px 12px 0 0;}.settings-modal-header h2{margin:0;font-size:24px;font-weight:700;color:var(--s-800);display:flex;align-items:center;gap:8px;}.settings-modal-close{background:none;border:none;font-size:32px;line-height:1;color:var(--s-500);cursor:pointer;transition:color 0.2s,transform 0.2s;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;}.settings-modal-close:hover{color:var(--r-500);transform:rotate(90deg);}.settings-tabs{display:flex;border-bottom:2px solid var(--s-200);background:var(--s-50);overflow-x:auto;min-height:50px;height:50px;}.settings-tab{flex:1;min-width:150px;padding:14px 20px;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;transition:all 0.3s;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;color:var(--s-500);font-weight:500;}.settings-tab .tab-icon{font-size:18px;transition:transform 0.3s;}.settings-tab .tab-label{font-size:14px;}.settings-tab:hover{background:rgba(59,130,246,0.05);color:var(--b-500);}.settings-tab:hover .tab-icon{transform:scale(1.1);}.settings-tab.active{background:var(--surface);color:var(--b-500);border-bottom-color:var(--b-500);font-weight:600;}.settings-tab.active .tab-icon{transform:scale(1.1);}.settings-modal-body{padding:32px;overflow-y:auto;flex:1;}.settings-tab-content{display:none;animation:fadeIn 0.3s ease;}.settings-tab-content.active{display:block;}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}.settings-section-title{margin:0 0 24px 0;padding-bottom:12px;font-size:20px;font-weight:700;color:var(--s-800);border-bottom:2px solid var(--s-200);display:flex;align-items:center;gap:8px;}.form-group{margin-bottom:20px;}.form-group:last-child{margin-bottom:0;}.form-group label{display:block;font-size:14px;font-weight:600;color:var(--s-700);margin-bottom:8px;}.form-group.required label{position:relative;}.required-indicator{color:var(--r-500);margin-left:4px;}.form-control{width:100%;padding:10px 12px;border:1px solid var(--s-300);border-radius:6px;font-size:14px;color:var(--s-800);background:var(--surface);transition:border-color 0.2s,box-shadow 0.2s;}.form-control:focus{outline:none;border-color:var(--b-500);box-shadow:0 0 0 3px rgba(59,130,246,0.1);}.form-control:read-only{background:var(--s-50);color:var(--s-500);}.form-control::placeholder{color:var(--s-400);}.file-input-wrapper{display:flex;flex-direction:column;gap:8px;}.file-input-text{font-size:13px;color:var(--s-500);margin-top:4px;}.form-control-file{padding:8px;border:2px dashed var(--s-300);border-radius:6px;cursor:pointer;}.form-control-file:hover{border-color:var(--b-500);background:var(--s-50);}.logo-preview{margin-top:12px;padding:12px;border:1px solid var(--s-200);border-radius:6px;background:var(--s-50);display:flex;align-items:center;gap:12px;}.logo-preview img{max-width:100px;max-height:100px;border-radius:4px;border:1px solid var(--s-300);}.btn-remove-logo{padding:6px 12px;font-size:13px;background:var(--r-500);color:white;border:none;border-radius:4px;cursor:pointer;transition:background 0.2s;}.btn-remove-logo:hover{background:var(--r-600);}.toggle-label{display:inline-flex;align-items:center;gap:16px;cursor:pointer;user-select:none;padding:4px 0;vertical-align:middle;}.toggle-input{position:absolute;opacity:0;pointer-events:none;}.toggle-slider{position:relative;display:inline-block;width:40px;height:22px;background:var(--s-300);border-radius:22px;transition:background 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:inset 0 2px 4px rgba(0,0,0,0.1);flex-shrink:0;vertical-align:middle;}.toggle-slider::before{content:'';position:absolute;width:18px;height:18px;left:2px;top:2px;background:var(--surface);border-radius:50%;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);box-shadow:0 2px 6px rgba(0,0,0,0.2);}.toggle-input:checked + .toggle-slider{background:linear-gradient(135deg,var(--b-500) 0%,var(--b-600) 100%);box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 0 8px rgba(59,130,246,0.3);}.toggle-input:checked + .toggle-slider::before{transform:translateX(18px);box-shadow:0 2px 8px rgba(0,0,0,0.25);}.toggle-input:focus + .toggle-slider{outline:2px solid var(--b-500);outline-offset:2px;}.toggle-label:hover .toggle-slider{box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 0 8px rgba(0,0,0,0.1);}.toggle-text{font-size:14px;font-weight:500;color:var(--s-700);flex:1;line-height:28px;vertical-align:middle;}.nested-options{margin-top:16px;padding:16px;border-left:3px solid var(--b-500);background:var(--s-50);border-radius:6px;overflow:hidden;max-height:0;opacity:0;transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1),opacity 0.3s ease,padding 0.4s ease,margin-top 0.4s ease;}.nested-options.show{max-height:2000px;opacity:1;}.input-with-button{display:flex;gap:8px;}.input-with-button .form-control{flex:1;}.btn-copy{padding:10px 16px;background:var(--b-500);color:white;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background 0.2s;white-space:nowrap;}.btn-copy:hover{background:var(--b-600);}.form-help{display:block;margin-top:6px;font-size:13px;color:var(--s-500);}.form-help.warning{color:var(--a-500);font-weight:500;}.private-tokens-list{margin-top:16px;}.fd-defer-box{display:flex;gap:11px;background:var(--set-brand-50);border:1px solid #d7dcff;border-radius:11px;padding:13px 15px;margin-bottom:16px;}.fd-defer-box .ic{width:30px;height:30px;border-radius:8px;background:var(--set-surface);color:var(--set-brand-700);display:grid;place-items:center;flex:none;}.fd-defer-box .ic svg{width:17px;height:17px;}.fd-defer-box .tx{font-size:12.5px;color:var(--set-ink-2);line-height:1.5;}.fd-defer-box .tx b{color:var(--set-ink);}.fd-defer-listhead{display:flex;align-items:center;margin:0 0 9px;}.fd-defer-listhead .t{font-weight:700;font-size:13px;color:var(--set-ink);}.fd-defer-listhead .n{margin-left:7px;color:var(--set-faint);font-size:12px;}.fd-defer-list{border:1px solid var(--set-line);border-radius:11px;overflow:hidden;}.fd-defer-empty{padding:22px 14px;text-align:center;color:var(--set-faint);font-size:13px;border:1px dashed var(--set-line);border-radius:11px;}.fd-defer-li{display:flex;align-items:center;gap:10px;width:100%;padding:11px 13px;border:none;border-bottom:1px solid var(--set-line-2);background:var(--set-surface);cursor:pointer;text-align:left;font:inherit;}.fd-defer-li:last-child{border-bottom:none;}.fd-defer-li:hover{background:var(--set-surface-2);}.fd-defer-dot{width:8px;height:8px;border-radius:999px;background:var(--set-ok);flex:none;}.fd-defer-dot.off{background:var(--set-faint);}.fd-defer-nm{font-weight:600;font-size:13px;color:var(--set-ink);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.fd-defer-pill{font-size:9px;font-weight:800;text-transform:uppercase;border-radius:9px;padding:1px 6px;letter-spacing:.02em;white-space:nowrap;flex:none;}.fd-defer-pill.view{color:var(--set-muted);background:var(--set-line-2);}.fd-defer-pill.set{color:var(--set-violet);background:#f3e8ff;}.fd-defer-pill.edit{color:#0288d1;background:#e1f5fe;}.fd-defer-pill.manage{color:var(--set-brand-700);background:var(--set-brand-50);}.fd-defer-pill.custom{color:var(--set-warn-700);background:#fef3c7;}.fd-defer-scope{margin-left:auto;color:var(--set-muted);font-size:11.5px;white-space:nowrap;flex:none;}.fd-defer-go{width:15px;height:15px;color:var(--set-line-3);flex:none;}.fd-defer-li:hover .fd-defer-go{color:var(--set-brand);}.fd-defer-foot{display:flex;gap:9px;margin-top:16px;align-items:center;}.fd-defer-foot .grow{flex:1;}.fd-defer-btn{display:inline-flex;align-items:center;gap:7px;font:600 13px/1 inherit;border:1px solid var(--set-line);background:var(--set-surface);color:var(--set-ink-2);border-radius:9px;padding:0 14px;height:40px;cursor:pointer;white-space:nowrap;}.fd-defer-btn:hover{border-color:#cdd2e6;}.fd-defer-btn svg{width:15px;height:15px;}.fd-defer-btn--primary{background:var(--set-brand);border-color:var(--set-brand);color:var(--set-surface);}.fd-defer-btn--primary:hover{background:var(--set-brand-600);}.private-token-item{padding:20px;border:1px solid var(--s-200);border-radius:8px;margin-bottom:16px;background:var(--surface);min-height:400px;}.private-token-item.token-item-new{animation:slideInToken 0.4s cubic-bezier(0.4,0,0.2,1);}@keyframes slideInToken{from{opacity:0;transform:translateY(-20px) scale(0.95);}to{opacity:1;transform:translateY(0) scale(1);}}.private-token-item:last-child{margin-bottom:0;}.private-token-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--s-200);}.private-token-title{font-size:16px;font-weight:600;color:var(--s-800);}.private-token-actions{display:flex;gap:8px;}.btn-small{padding:6px 12px;font-size:13px;border-radius:4px;border:none;cursor:pointer;transition:all 0.2s;}.btn-danger{background:var(--r-500);color:white;}.btn-danger:hover{background:var(--r-600);}.token-permissions-table{margin-top:16px;}.permissions-table{width:100%;border-collapse:collapse;border:1px solid var(--s-200);border-radius:6px;overflow:hidden;margin-bottom:16px;}.permissions-table thead{background:linear-gradient(135deg,var(--s-100) 0%,var(--s-200) 100%);}.permissions-table th{padding:12px;text-align:left;font-size:13px;font-weight:600;color:var(--s-500);border-bottom:2px solid var(--s-300);}.permissions-table th:first-child{width:40%;}.permissions-table th:not(:first-child){text-align:center;width:20%;color:var(--set-surface);}.permissions-table tbody tr{border-bottom:1px solid var(--s-200);transition:background 0.2s;}.permissions-table tbody tr:hover{background:var(--s-50);}.permissions-table tbody tr:last-child{border-bottom:none;}.permissions-table td{padding:12px;font-size:14px;color:var(--s-700);}.permissions-table td:first-child{font-weight:500;}.permissions-table td:not(:first-child){text-align:center;}.permissions-table input[type="checkbox"]{width:18px;height:18px;cursor:pointer;accent-color:var(--b-500);}.activities-sub-permissions{padding:16px;background:var(--s-50);border:1px solid var(--s-200);border-radius:6px;margin-top:12px;}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--s-700);cursor:pointer;padding:6px;}.checkbox-label input[type="checkbox"]{width:16px;height:16px;cursor:pointer;accent-color:var(--b-500);}.settings-modal-footer{padding:20px 32px;border-top:2px solid var(--s-200);display:flex;align-items:center;justify-content:flex-end;gap:12px;background:var(--s-50);border-radius:0 0 12px 12px;}.settings-notification-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn 0.2s ease-out;}.settings-notification-content{background:var(--surface);border-radius:12px;padding:32px;max-width:400px;width:90%;box-shadow:0 20px 60px rgba(0,0,0,0.3);text-align:center;animation:slideIn 0.3s cubic-bezier(0.4,0,0.2,1);}.settings-notification-icon{font-size:48px;margin-bottom:16px;}.settings-notification-modal.error .settings-notification-icon{color:var(--r-500);}.settings-notification-modal.success .settings-notification-icon{color:var(--em-500);}.settings-notification-modal.warning .settings-notification-icon{color:var(--a-500);}.settings-notification-modal.info .settings-notification-icon{color:var(--b-500);}.settings-notification-modal.confirm .settings-notification-icon{color:var(--a-500);}.settings-notification-content h3{font-size:20px;font-weight:600;margin:0 0 12px 0;color:var(--s-800);}.settings-notification-content p{font-size:14px;color:var(--s-500);margin:0 0 24px 0;line-height:1.6;}.settings-notification-actions{display:flex;gap:12px;justify-content:center;}.btn{padding:10px 20px;font-size:14px;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all 0.2s;display:inline-flex;align-items:center;gap:6px;}.btn-primary{background:var(--b-500);color:white;}.btn-primary:hover{background:var(--b-600);}.btn-secondary{background:var(--s-500);color:white;}.btn-secondary:hover{background:var(--s-600);}.btn-success{background:var(--em-500);color:white;}.btn-success:hover{background:var(--em-600);}.btn-danger{background:var(--r-500);color:white;}.btn-danger:hover{background:var(--r-600);}.btn-info{background:var(--info-500);color:white;}.btn-info:hover{background:var(--info-600);}@media (max-width:768px){.settings-modal-container{max-width:95%;max-height:95vh;}.settings-modal-header,.settings-modal-body,.settings-modal-footer{padding:16px 20px;}.nested-options{margin-left:10px;}.token-permissions{grid-template-columns:1fr;}}.backup-info-box{background:var(--b-50);border-left:4px solid var(--b-500);padding:16px;border-radius:6px;margin-bottom:24px;}.backup-info-box p{margin:0;font-size:14px;color:var(--b-800);line-height:1.6;}.backup-controls{display:flex;align-items:center;}.backup-count{margin-left:16px;font-size:14px;color:var(--s-500);font-weight:500;}.backups-list{margin-top:24px;}.empty-backups{text-align:center;padding:60px 20px;background:var(--s-50);border-radius:8px;border:2px dashed var(--s-300);}.empty-backups .empty-icon{font-size:64px;margin-bottom:16px;opacity:0.5;}.empty-backups p{font-size:14px;color:var(--s-500);margin:0;}.backup-item{background:var(--surface);border:1px solid var(--s-200);border-radius:8px;padding:16px 20px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;transition:all 0.2s;}.backup-item:hover{border-color:var(--b-500);box-shadow:0 2px 8px rgba(59,130,246,0.1);}.backup-info{flex:1;}.backup-name{font-size:15px;font-weight:600;color:var(--s-800);margin-bottom:6px;}.backup-meta{display:flex;gap:20px;font-size:13px;color:var(--s-500);}.backup-meta span{display:inline-flex;align-items:center;gap:4px;}.backup-actions{display:flex;gap:8px;align-items:center;}.backup-actions .btn{padding:8px 16px;font-size:13px;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all 0.2s ease;display:inline-flex;align-items:center;gap:6px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.backup-actions .btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,0.1);}.backup-actions .btn:active{transform:translateY(0);}.btn-download{background:var(--em-500);color:white;}.btn-download:hover{background:var(--em-600);}.btn-restore{background:var(--b-500);color:white;}.btn-restore:hover{background:var(--b-600);}.btn-delete-backup{background:var(--r-500);color:white;}.btn-delete-backup:hover{background:var(--r-600);}.confirm-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;display:none;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.2s ease,visibility 0.2s ease;}.confirm-modal.active{display:flex;opacity:1;visibility:visible;}.confirm-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(2px);}.confirm-modal-content{position:relative;background:var(--surface);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.3);max-width:450px;width:90%;padding:24px;transform:scale(0.9);transition:transform 0.2s cubic-bezier(0.34,1.56,0.64,1);}.confirm-modal.active .confirm-modal-content{transform:scale(1);}.confirm-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;}.confirm-modal-icon{font-size:32px;line-height:1;}.confirm-modal-icon.warning{color:var(--a-500);}.confirm-modal-icon.danger{color:var(--r-500);}.confirm-modal-icon.info{color:var(--b-500);}.confirm-modal-title{font-size:20px;font-weight:700;color:var(--s-900);margin:0;}.confirm-modal-body{color:var(--s-600);font-size:15px;line-height:1.6;margin-bottom:24px;}.confirm-modal-actions{display:flex;gap:12px;justify-content:flex-end;}.confirm-modal-actions .btn{padding:10px 20px;font-size:14px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all 0.2s ease;}.confirm-modal-actions .btn-cancel{background:var(--s-200);color:var(--s-600);}.confirm-modal-actions .btn-cancel:hover{background:var(--s-300);}.confirm-modal-actions .btn-confirm{background:var(--b-500);color:white;}.confirm-modal-actions .btn-confirm:hover{background:var(--b-600);}.confirm-modal-actions .btn-confirm.danger{background:var(--r-500);}.confirm-modal-actions .btn-confirm.danger:hover{background:var(--r-600);}.btn-info{background:var(--info-600);color:white;}.btn-info:hover{background:var(--info-700);}@media (max-width:768px){.backup-item{flex-direction:column;align-items:flex-start;gap:12px;}.backup-meta{flex-direction:column;gap:6px;}.backup-actions{width:100%;}.backup-actions .btn{flex:1;}}.help-button{background:transparent;border:none;font-size:18px;cursor:pointer;padding:4px 8px;margin-left:8px;border-radius:50%;transition:all 0.2s ease;vertical-align:middle;}.help-button:hover{background:rgba(59,130,246,0.1);transform:scale(1.1);}.settings-section-title{display:flex;align-items:center;}.help-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;display:none;align-items:center;justify-content:center;}.help-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(4px);}.help-modal-content{position:relative;background:var(--surface);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,0.4);max-width:700px;width:90%;max-height:85vh;display:flex;flex-direction:column;animation:slideIn 0.3s ease;}@keyframes slideIn{from{opacity:0;transform:translateY(-30px) scale(0.95);}to{opacity:1;transform:translateY(0) scale(1);}}.help-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid var(--s-200);}.help-modal-header h3{margin:0;font-size:24px;font-weight:700;color:var(--s-800);}.help-modal-close{background:transparent;border:none;font-size:32px;color:var(--s-500);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all 0.2s ease;}.help-modal-close:hover{background:var(--s-100);color:var(--s-800);}.help-modal-body{padding:28px;overflow-y:auto;flex:1;}.help-content h4{font-size:18px;font-weight:600;color:var(--s-800);margin:20px 0 12px 0;}.help-content h4:first-child{margin-top:0;}.help-content p{font-size:15px;line-height:1.7;color:var(--s-600);margin:0 0 16px 0;}.help-content ul{margin:12px 0 16px 0;padding-left:24px;}.help-content li{font-size:15px;line-height:1.7;color:var(--s-600);margin-bottom:8px;}.help-content strong{color:var(--s-800);font-weight:600;}.help-modal-footer{padding:20px 28px;border-top:1px solid var(--s-200);display:flex;justify-content:flex-end;}.help-button-inline{background:transparent;border:none;font-size:14px;cursor:pointer;padding:2px 6px;margin-left:6px;border-radius:50%;transition:all 0.2s ease;vertical-align:middle;color:var(--s-500);}.help-button-inline:hover{background:rgba(59,130,246,0.1);color:var(--b-500);transform:scale(1.15);}@media (max-width:768px){.help-modal-content{max-width:95%;max-height:90vh;}.help-modal-header{padding:20px;}.help-modal-header h3{font-size:20px;}.help-modal-body{padding:20px;}.help-content h4{font-size:16px;}.help-content p,.help-content li{font-size:14px;}}.settings-modal-container{border-radius:16px;box-shadow:0 24px 60px rgba(16,24,40,.22),0 8px 18px rgba(16,24,40,.10);max-width:720px;}.settings-modal-header{padding:16px 20px;background:var(--set-surface);border-bottom:1px solid var(--set-line);border-radius:16px 16px 0 0;gap:12px;justify-content:flex-start;}.settings-modal-ic{width:38px;height:38px;border-radius:11px;flex:none;display:grid;place-items:center;background:linear-gradient(135deg,var(--set-brand),var(--set-brand-600));box-shadow:0 2px 6px rgba(79,70,229,.35);}.settings-modal-ic svg{width:20px;height:20px;stroke:var(--set-surface);fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;}.settings-modal-header h2{font-size:16.5px;letter-spacing:-.01em;color:var(--set-ink);}.settings-modal-close{margin-left:auto;color:var(--set-faint);font-size:22px;border-radius:8px;}.settings-modal-close:hover{background:var(--set-bg-2);color:var(--set-ink-2);transform:none;}.settings-tabs{background:var(--set-surface);border-bottom:1px solid var(--set-line);height:auto;min-height:0;padding:8px 14px 0;gap:2px;overflow-x:auto;overflow-y:hidden;}.settings-tab{flex:0 0 auto;min-width:0;padding:9px 14px;gap:0;color:var(--set-ink-3);font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px;border-radius:9px 9px 0 0;transition:color .15s,border-color .15s;}.settings-tab .tab-icon{display:none;}.settings-tab .tab-label{font-size:13.5px;}.settings-tab:hover{background:transparent;color:var(--set-ink-2);}.settings-tab:hover .tab-icon{transform:none;}.settings-tab.active{background:transparent;color:var(--set-brand-700);border-bottom-color:var(--set-brand);font-weight:700;}.settings-tab.active .tab-icon{transform:none;}.settings-modal-body{padding:20px 22px;}.settings-section-title{font-size:15px;font-weight:700;color:var(--set-ink);letter-spacing:-.01em;border-bottom:1px solid var(--set-line-2);padding-bottom:11px;margin-bottom:18px;gap:8px;}.form-group label{font-size:12.5px;font-weight:650;color:var(--set-ink-2);margin-bottom:6px;}.form-control{padding:0 12px;min-height:40px;border:1px solid var(--set-line);border-radius:9px;font-size:14px;color:var(--set-ink);background:var(--set-surface);}textarea.form-control,select.form-control{min-height:40px;}textarea.form-control{padding:9px 12px;}.form-control:focus{border-color:var(--set-brand);box-shadow:0 0 0 3px rgba(99,102,241,.12);}.form-control:read-only{background:var(--set-bg-1);color:var(--set-ink-3);}.required-indicator{color:var(--set-err);}.form-help{font-size:11.5px;color:var(--set-muted);}.toggle-label{gap:10px;}.toggle-slider{width:42px;height:24px;background:var(--set-line-3);box-shadow:none;border-radius:999px;}.toggle-slider::before{width:20px;height:20px;left:2px;top:2px;box-shadow:0 1px 2px rgba(0,0,0,.25);}.toggle-input:checked + .toggle-slider{background:var(--set-brand);box-shadow:none;}.toggle-input:checked + .toggle-slider::before{transform:translateX(18px);}.toggle-label:hover .toggle-slider{box-shadow:none;}.toggle-input:focus + .toggle-slider{outline:none;box-shadow:0 0 0 3px rgba(99,102,241,.25);}.toggle-text{font-size:13px;font-weight:600;color:var(--set-ink-2);line-height:1.4;}.nested-options{border-left:none;background:var(--set-bg-1);border:1px solid var(--set-line-2);border-radius:11px;padding:14px;}.input-with-button{gap:8px;}.btn-copy{background:var(--set-surface);color:var(--set-ink-2);border:1px solid var(--set-line);border-radius:9px;padding:0 14px;min-height:40px;font-weight:600;font-size:13px;white-space:nowrap;}.btn-copy:hover{background:#fafbfe;border-color:var(--set-brand-100);color:var(--set-brand-700);}.settings-modal-footer{padding:14px 22px;background:var(--set-bg-1);border-top:1px solid var(--set-line);border-radius:0 0 16px 16px;}.settings-modal-footer .btn,.settings-section-content .btn,.nested-options .btn{min-height:40px;padding:0 18px;border-radius:10px;font-weight:650;font-size:13.5px;box-shadow:none;display:inline-flex;align-items:center;gap:7px;transition:background .12s,border-color .12s,filter .12s;}.settings-modal .btn-primary,.settings-modal .btn-success{background:var(--set-brand) !important;border:1px solid var(--set-brand) !important;color:var(--set-surface) !important;}.settings-modal .btn-primary:hover,.settings-modal .btn-success:hover{background:var(--set-brand-600) !important;filter:none;}.settings-modal .btn-secondary{background:var(--set-surface) !important;border:1px solid var(--set-line) !important;color:var(--set-ink-2) !important;}.settings-modal .btn-secondary:hover{background:#fafbfe !important;border-color:var(--set-line-3) !important;}.settings-modal .btn-danger{background:var(--set-surface) !important;border:1px solid #fca5a5 !important;color:var(--set-err) !important;}.settings-modal .btn-danger:hover{background:var(--set-err) !important;color:var(--set-surface) !important;border-color:var(--set-err) !important;}.settings-modal-footer .btn:hover,.settings-section-content .btn:hover{transform:none;}.settings-disclosure{margin-top:16px !important;padding:0 !important;border:1px solid var(--set-line) !important;border-radius:11px;overflow:hidden;background:var(--set-surface);}.settings-disclosure > summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:11px 13px;font-size:13px;font-weight:650;color:var(--set-ink-2);}.settings-disclosure > summary::-webkit-details-marker{display:none;}.settings-disclosure > summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--set-faint);border-bottom:2px solid var(--set-faint);transform:rotate(-45deg);transition:transform .15s;}.settings-disclosure[open] > summary::after{transform:rotate(45deg);}.settings-disclosure .settings-disclosure-hint{font-weight:600;color:var(--set-faint);font-size:11.5px;}.settings-disclosure > :not(summary){margin-left:13px;margin-right:13px;}.settings-disclosure > :last-child{margin-bottom:13px;}@supports (interpolate-size:allow-keywords){.settings-disclosure{interpolate-size:allow-keywords;}.settings-disclosure::details-content{block-size:0;overflow:clip;transition:block-size .32s cubic-bezier(.4,0,.2,1),content-visibility .32s allow-discrete;}.settings-disclosure[open]::details-content{block-size:auto;}@media (prefers-reduced-motion:reduce){.settings-disclosure::details-content{transition:none;}}}.backup-info-box{background:var(--set-brand-50);border:1px solid var(--set-brand-100);border-left:1px solid var(--set-brand-100);border-radius:10px;padding:11px 13px;margin-bottom:16px;}.backup-info-box p{font-size:12.5px;color:var(--set-brand-700);}.backup-count{color:var(--set-faint);font-size:12px;}.backups-list{margin-top:16px;}.backup-item{border:1px solid var(--set-line);border-radius:10px;padding:11px 13px;margin-bottom:9px;}.backup-item:hover{border-color:var(--set-brand-100);box-shadow:0 1px 2px rgba(16,24,40,.06);}.backup-name{font-size:13px;color:var(--set-ink);margin-bottom:4px;}.backup-meta{font-size:11.5px;color:var(--set-muted);gap:12px;}.empty-backups{background:var(--set-bg-1);border:1px dashed var(--set-line-3);border-radius:11px;padding:28px 16px;}.empty-backups .empty-icon{font-size:40px;}.empty-backups p{font-size:12.5px;color:var(--set-muted);}.backup-actions .btn{min-height:32px;padding:0 12px;font-size:12px;box-shadow:none;}.daymap-hint{font-size:12.5px;color:var(--set-ink-4);margin:0 0 10px;line-height:1.5;}.bell-half-label{font-size:13px;font-weight:600;color:var(--set-ink-2);margin:12px 0 6px;}.daymap-quick{display:flex;flex-wrap:wrap;align-items:center;gap:10px;}.daymap-quick label{font-size:13px;font-weight:600;color:var(--set-ink-2);margin:0;}.daymap-quick select{width:auto;min-width:150px;}.daymap-detect{min-height:36px;padding:0 12px;font-size:12px;font-weight:600;color:var(--set-brand-700);background:var(--set-brand-50);border:1px solid var(--set-brand-100);border-radius:8px;cursor:pointer;}.daymap-detect:hover{background:#e0e7ff;}.daymap-detect[disabled]{opacity:.5;cursor:not-allowed;}.bell-dur-group{display:inline-flex;align-items:center;gap:6px;}.bell-dur-group label{font-size:13px;font-weight:600;color:var(--set-ink-2);margin:0;}.bell-dur-group input[type="number"]{width:62px;min-height:36px;text-align:center;padding:0 8px;}.bell-dur-unit{font-size:12.5px;color:var(--set-ink-4);margin:0 2px 0 -2px;}.daymap-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:5px 0;}.daymap-row + .daymap-row{border-top:1px solid #f1f2f6;}.daymap-idx{font-size:11.5px;color:var(--set-faint);font-variant-numeric:tabular-nums;}.daymap-name{font-size:13px;color:var(--set-ink);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.daymap-row select{width:auto;min-width:132px;min-height:36px;font-size:12.5px;}.daymap-row--custom .daymap-name{color:var(--set-brand-700);}#bellRows .daymap-row{grid-template-columns:28px minmax(0,1fr) auto auto;}.bell-input{width:auto;min-width:104px;min-height:36px;font-size:12.5px;font-variant-numeric:tabular-nums;}.bell-input:not([value=""]){color:var(--set-ink);}.bell-input[value=""]{color:var(--set-faint);}@media (max-width:560px){#bellRows .daymap-row{grid-template-columns:28px minmax(0,1fr);row-gap:6px;}#bellRows .bell-input{grid-column:2;width:100%;}}.daymap-actions{display:flex;justify-content:flex-end;margin-top:10px;}.daymap-reset{min-height:32px;padding:0 10px;font-size:12px;color:var(--set-muted);background:none;border:1px solid var(--set-line);border-radius:8px;cursor:pointer;}.daymap-reset:hover{color:var(--set-ink-2);border-color:var(--set-line-3);}.daymap-preview{margin-top:10px;padding:9px 11px;border-radius:9px;background:#f7f8fb;border:1px solid var(--set-line);font-size:12px;color:var(--set-ink-2);line-height:1.6;}.daymap-preview strong{color:var(--set-ink);font-weight:650;}.daymap-preview em{color:var(--set-muted);font-style:normal;}.daymap-note{margin-top:9px;padding:9px 11px;border-radius:9px;font-size:12px;line-height:1.5;background:var(--set-warn-bg);border:1px solid var(--set-warn-200);color:#92400e;}.daymap-note--ok{background:#f0fdf4;border-color:#bbf7d0;color:#166534;}.hol-add{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;}.hol-add input{min-height:36px;font-size:12.5px;}.hol-add input[type="date"]{width:auto;}.hol-list{margin-top:10px;}.hol-list:empty{display:none;}.hol-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 0;}.hol-row + .hol-row{border-top:1px solid #f1f2f6;}.hol-date{font-size:12.5px;font-weight:600;color:var(--set-ink);font-variant-numeric:tabular-nums;white-space:nowrap;}.hol-label{font-size:12.5px;color:var(--set-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.hol-label:empty::before{content:attr(data-empty);color:#b6bfce;}.hol-del{min-width:32px;min-height:32px;padding:0 8px;font-size:15px;line-height:1;color:var(--set-faint);background:none;border:1px solid var(--set-line);border-radius:8px;cursor:pointer;}.hol-del:hover{color:var(--set-err-700);border-color:#fca5a5;background:var(--set-err-bg);}.cal-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;}.cal-mode{text-align:left;padding:10px 12px;border:1px solid var(--set-line);border-radius:10px;background:var(--set-surface);cursor:pointer;display:block;}.cal-mode:hover{border-color:#cdd3e3;}.cal-mode.is-active{border-color:var(--set-brand);background:#f5f6ff;box-shadow:0 0 0 1px var(--set-brand) inset;}.cal-mode__title{display:block;font-size:13px;font-weight:650;color:var(--set-ink);}.cal-mode__rec{margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--set-brand-50);color:var(--set-brand-700);font-size:10px;font-weight:700;vertical-align:middle;}.cal-mode__sub{display:block;margin-top:3px;font-size:11.5px;color:var(--set-muted);line-height:1.4;}.cal-panel-title{margin-top:14px;margin-bottom:7px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--set-faint);}.cal-provs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}.cal-prov{display:block;padding:10px;border:1px solid var(--set-line);border-radius:10px;background:var(--set-surface);text-align:center;text-decoration:none;min-height:48px;}.cal-prov:hover{border-color:#cdd3e3;background:var(--set-bg-1);text-decoration:none;}.cal-prov__name{display:block;font-size:12px;font-weight:650;color:var(--set-ink);}.cal-prov__sub{display:block;margin-top:2px;font-size:10.5px;color:var(--set-faint);}.cal-dl{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:11px 13px;border:1px solid var(--set-line);border-radius:10px;background:var(--set-bg-1);}.cal-dl__meta{min-width:0;}.cal-dl__file{font-size:12.5px;font-weight:650;color:var(--set-ink);font-family:"Roboto Mono",ui-monospace,Menlo,Consolas,monospace;overflow-wrap:anywhere;}.cal-dl__sub{margin-top:3px;font-size:11.5px;color:var(--set-muted);}@media (max-width:575px){.cal-modes,.cal-provs{grid-template-columns:1fr;}}.cal-qr{margin-top:12px;text-align:center;}.cal-qr__img{display:inline-block;line-height:0;}.cal-qr__img canvas,.cal-qr__img img{width:104px !important;height:104px !important;}.cal-qr__cap{margin-top:5px;font-size:11px;color:var(--set-faint);}.cal-qr__img:empty + .cal-qr__cap{display:none;}
.fx-lightbox{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:clamp(12px,3vw,40px);background:rgba(12,14,30,0.88);opacity:0;transition:opacity 160ms ease;}.fx-lightbox.is-open{opacity:1;}.fx-lightbox__img{max-width:min(100%,1600px);max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:8px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,0.45);}.fx-lightbox__img.is-zoomable{cursor:zoom-in;}.fx-lightbox.is-zoomed{justify-content:flex-start;align-items:flex-start;overflow:auto;overscroll-behavior:contain;}.fx-lightbox.is-zoomed .fx-lightbox__img{max-width:none;max-height:none;margin-inline:auto;cursor:zoom-out;}.fx-lightbox__cap{max-width:74ch;margin:0;text-align:center;font-size:14px;line-height:1.5;color:rgba(255,255,255,0.88);}.fx-lightbox.is-zoomed .fx-lightbox__cap{margin-inline:auto;}.fx-lightbox__close,.fx-lightbox__zoom{position:fixed;inset-block-start:14px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:rgba(255,255,255,0.14);color:#fff;font-size:24px;line-height:1;cursor:pointer;}.fx-lightbox__close{inset-inline-end:14px;}.fx-lightbox__zoom{inset-inline-end:70px;font-size:20px;}.fx-lightbox__close:hover,.fx-lightbox__zoom:hover{background:rgba(255,255,255,0.24);}.fx-lightbox__close:focus-visible,.fx-lightbox__zoom:focus-visible{outline:2px solid #fff;outline-offset:3px;}@media (prefers-reduced-motion:reduce){.fx-lightbox{transition:none;}}
body:has(.fx-doc)::before,body:has(.fx-doc)::after{content:'';position:fixed;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,0.1);animation:fx-docs-float 20s infinite ease-in-out;z-index:0;pointer-events:none;}body:has(.fx-doc)::before{top:-200px;left:-200px;animation-delay:0s;}body:has(.fx-doc)::after{bottom:-200px;right:-200px;animation-delay:10s;}@keyframes fx-docs-float{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(100px,-100px) scale(1.1);}66%{transform:translate(-100px,100px) scale(0.9);}}@media (prefers-reduced-motion:reduce){body:has(.fx-doc)::before,body:has(.fx-doc)::after{animation:none;}}.fx-doc{position:relative;z-index:1;font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Roboto,"Helvetica Neue",Arial,sans-serif;--fxd-ink:#1f2430;--fxd-ink-muted:#5b6376;--fxd-accent:#4f46e5;--fxd-surface:#ffffff;--fxd-subtle:#f5f6fa;--fxd-border:#e3e5ee;--fxd-radius:12px;--fxd-measure:66ch;max-width:var(--fx-rail,1360px);margin:24px auto 56px;padding:32px clamp(16px,4vw,24px) 48px;background:var(--fxd-surface);border-radius:var(--fxd-radius);box-shadow:0 1px 2px rgba(16,20,40,0.06),0 8px 24px rgba(16,20,40,0.06);color:var(--fxd-ink);display:grid;grid-template-columns:minmax(0,1fr);gap:40px;}@media (min-width:992px){.fx-doc--with-nav{grid-template-columns:301px minmax(0,1fr);--fxd-measure:none;}.fx-doc--with-nav > .fx-doc__nav{grid-column:1;grid-row:1;}.fx-doc--with-nav > .fx-doc__main{grid-column:2;grid-row:1;max-width:var(--fx-rail,1360px);}.fx-doc:not(.fx-doc--with-nav):not(.fx-doc--index) > .fx-doc__main{justify-self:center;width:100%;max-width:var(--fxd-measure);}}.fx-doc__crumbs{font-size:14px;color:var(--fxd-ink-muted);margin-bottom:12px;}.fx-doc__crumbs a{color:var(--fxd-ink-muted);text-decoration:none;}.fx-doc__crumbs a:hover{color:var(--fxd-accent);text-decoration:underline;}.fx-doc__crumbs span + span::before{content:"/";margin:0 8px;opacity:0.45;}.fx-doc .fx-doc__title{font-size:clamp(28px,4vw,38px);font-weight:700;line-height:1.15;color:var(--fxd-ink);margin:0 0 12px;}.fx-doc .fx-doc__summary{font-size:18px;line-height:1.55;color:var(--fxd-ink-muted);max-width:var(--fxd-measure);margin:0 0 32px;}.fx-doc__body{max-width:var(--fxd-measure);font-size:17px;line-height:1.6;color:var(--fxd-ink);}.fx-doc__body strong,.fx-doc__body b{font-weight:600;}.fx-doc__body > *{margin-top:0;margin-bottom:0;}.fx-doc__body > * + *{margin-top:16px;}.fx-doc .fx-doc__body h2{font-size:23px;font-weight:650;line-height:1.3;color:var(--fxd-ink);margin:40px 0 0;padding-top:4px;scroll-margin-top:24px;}.fx-doc .fx-doc__body h3{font-size:18px;font-weight:650;line-height:1.35;color:var(--fxd-ink);margin:28px 0 0;scroll-margin-top:24px;}.fx-doc__body ul,.fx-doc__body ol{padding-inline-start:24px;}.fx-doc__body li + li{margin-top:8px;}.fx-doc__body a{color:var(--fxd-accent);text-underline-offset:2px;}.fx-doc__body code{font-family:"Roboto Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.88em;padding:2px 6px;border-radius:4px;background:var(--fxd-subtle);border:1px solid var(--fxd-border);}.fx-doc__body pre{padding:16px;border-radius:8px;background:var(--fxd-subtle);border:1px solid var(--fxd-border);overflow-x:auto;}.fx-doc__body pre code{padding:0;border:0;background:none;}.fx-doc__body blockquote{margin-inline:0;padding:16px 20px;border-radius:8px;background:var(--fxd-subtle);border:1px solid var(--fxd-border);}.fx-doc__body blockquote p{margin:0;}.fx-doc__body hr{border:0;border-top:1px solid var(--fxd-border);margin:32px 0;}.fx-doc-shot{margin:24px 0;}.fx-doc-shot img{display:block;max-width:100%;height:auto;border:1px solid var(--fxd-border);border-radius:8px;}.fx-doc-shot__zoom{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:8px;position:relative;}.fx-doc-shot__zoom:focus-visible{outline:2px solid var(--fxd-accent);outline-offset:3px;}.fx-doc-shot__zoom::after{content:"";position:absolute;inset-block-start:10px;inset-inline-end:10px;width:30px;height:30px;border-radius:8px;background-color:rgba(17,20,40,0.62);background-repeat:no-repeat;background-position:center;background-size:16px 16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5M11 8v6M8 11h6'/%3E%3C/svg%3E");opacity:0;transition:opacity 160ms ease;pointer-events:none;}.fx-doc-shot__zoom:hover::after,.fx-doc-shot__zoom:focus-visible::after{opacity:1;}@media (hover:none){.fx-doc-shot__zoom::after{opacity:1;}}@media (prefers-reduced-motion:reduce){.fx-doc-shot__zoom::after{transition:none;}}.fx-doc-shot figcaption{margin-top:10px;font-size:14px;line-height:1.5;color:var(--fxd-ink-muted);}.fx-doc-shot--missing{display:block;padding:24px;text-align:center;font-size:14px;color:var(--fxd-ink-muted);border:1px dashed var(--fxd-border);border-radius:8px;background:var(--fxd-subtle);}.fx-doc__panels{display:grid;gap:18px;grid-template-columns:1fr;}@media (min-width:576px){.fx-doc__panels{grid-template-columns:repeat(2,minmax(0,1fr));}}@media (min-width:992px){.fx-doc__panels{grid-template-columns:repeat(3,minmax(0,1fr));}}.fx-doc-panel{display:flex;flex-direction:column;padding:16px 18px 10px;border:1px solid var(--fxd-border);border-radius:var(--fxd-radius);background:var(--fxd-surface);transition:border-color 120ms ease,box-shadow 120ms ease;}.fx-doc-panel:hover{border-color:var(--fxd-accent);box-shadow:0 4px 14px rgba(79,70,229,0.10);}.fx-doc .fx-doc-panel__h{display:flex;align-items:baseline;gap:8px;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--fxd-border);font-size:15px;font-weight:680;line-height:1.35;color:var(--fxd-ink);}.fx-doc-panel__h a{color:inherit;text-decoration:none;}.fx-doc-panel__h a:hover{color:var(--fxd-accent);}.fx-doc-panel__n{margin-left:auto;flex:none;font-size:11px;font-weight:700;color:var(--fxd-ink-muted);background:var(--fxd-subtle);border-radius:999px;padding:2px 8px;}.fx-doc__panels .fx-doc-panel__list{list-style:none;margin:0;padding:0;}.fx-doc-panel__list a{display:block;padding:7px 0;font-size:13.5px;line-height:1.4;color:var(--fxd-ink);text-decoration:none;}.fx-doc-panel__list a::before{content:"\203A";margin-inline-end:7px;font-weight:700;color:var(--fxd-accent);}.fx-doc-panel__list a:hover{color:var(--fxd-accent);}@media (pointer:coarse){.fx-doc-panel__list a,.fx-doc-row{display:flex;flex-direction:column;justify-content:center;min-height:48px;}}.fx-doc .fx-doc__list{list-style:none;margin:0;padding:0;display:grid;gap:0 40px;grid-template-columns:1fr;}@media (min-width:992px){.fx-doc .fx-doc__list{grid-template-columns:repeat(2,minmax(0,1fr));}}.fx-doc-row{display:block;padding:12px 0;border-bottom:1px solid var(--fxd-border);color:inherit;text-decoration:none;}.fx-doc-row__title{display:block;font-size:15.5px;font-weight:620;line-height:1.35;color:var(--fxd-ink);}.fx-doc-row__summary{display:block;margin-top:3px;font-size:13.5px;line-height:1.5;color:var(--fxd-ink-muted);}.fx-doc-row:hover .fx-doc-row__title{color:var(--fxd-accent);}.fx-doc__section + .fx-doc__section{margin-top:40px;}.fx-doc .fx-doc__section-title{font-size:20px;font-weight:650;color:var(--fxd-ink);margin:0 0 16px;}.fx-doc__section-title a{color:inherit;text-decoration:none;}.fx-doc__section-title a:hover{color:var(--fxd-accent);}.fx-doc__nav{font-size:14px;}.fx-doc__nav ul{list-style:none;margin:0;padding:0;}.fx-doc__nav a{display:flex;align-items:center;min-height:40px;padding:8px 12px;border-radius:6px;color:var(--fxd-ink-muted);text-decoration:none;}.fx-doc__nav a:hover{background:var(--fxd-subtle);color:var(--fxd-ink);}.fx-doc__nav a[aria-current="page"]{background:var(--fxd-subtle);color:var(--fxd-ink);font-weight:600;}.fx-doc__nav a.fx-doc__nav-catlink{min-height:32px;padding:6px 10px;font-size:15px;font-weight:650;line-height:1.35;color:var(--fxd-ink);}.fx-doc__nav-catrow{display:flex;align-items:center;gap:2px;}.fx-doc__nav-catrow > a.fx-doc__nav-catlink{flex:1 1 auto;min-width:0;gap:9px;}.fx-doc__nav-ico{width:17px;height:17px;flex:0 0 17px;color:var(--fxd-ink-muted);}.fx-doc__nav-cat.is-current > .fx-doc__nav-catrow .fx-doc__nav-ico{color:var(--fxd-accent);}.fx-doc__nav-toggle{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:6px;background:none;color:var(--fxd-ink-muted);cursor:pointer;}.fx-doc__nav-toggle:hover{background:var(--fxd-subtle);color:var(--fxd-ink);}.fx-doc__nav-chev{width:13px;height:13px;transition:transform 160ms cubic-bezier(0.4,0,0.2,1);}@media (prefers-reduced-motion:reduce){.fx-doc__nav-chev{transition:none;}}.fx-doc__nav-cat[data-open="0"] .fx-doc__nav-chev{transform:rotate(-90deg);}.fx-doc__nav-cat[data-open="0"] > .fx-doc__nav-pages{display:none;}.fx-doc__nav-cats > li + li{margin-top:10px;}.fx-doc__nav ul.fx-doc__nav-pages{margin:2px 0 4px 12px;padding-left:0;border-left:2px solid var(--fxd-border);}.fx-doc__nav-pages a{font-size:14.5px;font-weight:400;line-height:1.4;min-height:34px;padding:7px 10px 7px 14px;color:var(--fxd-ink-muted);}.fx-doc__nav-cat.is-current > .fx-doc__nav-catlink{color:var(--fxd-accent);}.fx-doc__nav-pages a[aria-current="page"]{background:var(--fxd-subtle);color:var(--fxd-accent);font-weight:600;margin-left:-2px;border-left:2px solid var(--fxd-accent);border-radius:0 6px 6px 0;}@media (min-width:992px){.fx-doc__nav{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 32px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--fxd-ink-muted) 35%,transparent) transparent;}.fx-doc__nav::-webkit-scrollbar{width:6px;}.fx-doc__nav::-webkit-scrollbar-track{background:transparent;}.fx-doc__nav::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--fxd-ink-muted) 35%,transparent);border-radius:3px;}}.fx-doc__video{position:relative;aspect-ratio:16 / 9;margin:24px 0;border-radius:8px;overflow:hidden;background:var(--fxd-subtle);}.fx-doc__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}.fx-doc__empty{padding:32px;text-align:center;color:var(--fxd-ink-muted);border:1px dashed var(--fxd-border);border-radius:10px;}@media (prefers-color-scheme:dark){.fx-doc{--fxd-ink:#e7e9f0;--fxd-ink-muted:#a3aabd;--fxd-accent:#a5b4fc;--fxd-surface:#191b22;--fxd-subtle:#22252e;--fxd-border:#2f333f;box-shadow:none;border:1px solid var(--fxd-border);}}:root[data-theme="dark"] .fx-doc{--fxd-ink:#e7e9f0;--fxd-ink-muted:#a3aabd;--fxd-accent:#a5b4fc;--fxd-surface:#191b22;--fxd-subtle:#22252e;--fxd-border:#2f333f;box-shadow:none;border:1px solid var(--fxd-border);}:root[data-theme="light"] .fx-doc{--fxd-ink:#1f2430;--fxd-ink-muted:#5b6376;--fxd-accent:#4f46e5;--fxd-surface:#ffffff;--fxd-subtle:#f5f6fa;--fxd-border:#e3e5ee;}@media (max-width:600px){.fx-doc{margin-left:-6px;margin-right:-6px;padding-left:12px;padding-right:12px;}}
#sliding-popup{background:none !important;background-color:transparent !important;box-shadow:none !important;z-index:10000 !important;height:auto !important;}.sliding-popup-bottom{position:fixed !important;bottom:0 !important;left:0 !important;right:0 !important;margin:0 !important;padding:0 !important;width:100% !important;text-align:left !important;}body:has(#sliding-popup){padding-block-end:var(--fx-cc-reserve,268px);}.eu-cookie-compliance-banner{background:#ffffff !important;border:1px solid #e2e8f0 !important;border-radius:16px !important;box-shadow:0 12px 34px rgba(15,23,42,0.14) !important;padding:20px 22px !important;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif !important;}.eu-cookie-compliance-content{display:grid !important;grid-template-columns:40px minmax(0,1fr);grid-template-areas:"icon text"
    "acts acts";column-gap:14px;row-gap:16px;align-items:start;max-width:100% !important;margin:0 !important;text-align:left !important;}.eu-cookie-compliance-content::before{content:"";grid-area:icon;width:40px;height:40px;border-radius:12px;background-color:#eef2ff;border:1px solid #e0e7ff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234f46e5' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5Z'/%3E%3Ccircle cx='9' cy='13' r='1'/%3E%3Ccircle cx='14.5' cy='16' r='1'/%3E%3Ccircle cx='8' cy='17.5' r='1'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:22px 22px;}.eu-cookie-compliance-message{grid-area:text;width:auto !important;max-width:100% !important;float:none !important;margin:0 !important;color:#0f172a !important;}.eu-cookie-compliance-message h1,.eu-cookie-compliance-message h2,.eu-cookie-compliance-message h3{font-size:15.5px !important;font-weight:600 !important;color:#0f172a !important;margin:0 0 5px 0 !important;line-height:1.35 !important;letter-spacing:-0.005em !important;}.eu-cookie-compliance-message p{font-size:13.5px !important;font-weight:400 !important;color:#475569 !important;margin:0 !important;line-height:1.55 !important;display:block !important;}.find-more-button,.eu-cookie-compliance-more-button{background:transparent !important;color:#4f46e5 !important;border:none !important;font-size:13.5px !important;font-weight:500 !important;line-height:1.55 !important;text-decoration:underline !important;text-underline-offset:2px !important;cursor:pointer !important;padding:6px 4px !important;margin:0 0 0 -4px !important;display:inline-block !important;transition:color 0.14s ease !important;text-shadow:none !important;box-shadow:none !important;}.find-more-button:hover,.eu-cookie-compliance-more-button:hover{color:#4338ca !important;background:transparent !important;}.eu-cookie-compliance-buttons{grid-area:acts;display:flex !important;flex-direction:row !important;gap:10px !important;align-items:center !important;justify-content:flex-end !important;float:none !important;width:100% !important;margin:0 !important;max-width:100% !important;}#sliding-popup .agree-button,#sliding-popup .decline-button,#sliding-popup .eu-cookie-compliance-save-preferences-button{text-shadow:none !important;box-shadow:none !important;background-image:none !important;position:static !important;top:auto !important;min-width:0 !important;white-space:nowrap !important;margin:0 !important;min-height:48px !important;padding:0 20px !important;border-radius:10px !important;font-family:inherit !important;font-size:14.5px !important;font-weight:600 !important;line-height:1 !important;border:1px solid transparent !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;transition:background-color 0.14s ease,border-color 0.14s ease,transform 0.14s ease !important;}#sliding-popup .agree-button,#sliding-popup .eu-cookie-compliance-save-preferences-button{background-color:#4f46e5 !important;color:#ffffff !important;}#sliding-popup .agree-button:hover,#sliding-popup .eu-cookie-compliance-save-preferences-button:hover{background-color:#4338ca !important;}#sliding-popup .decline-button{background-color:#ffffff !important;border-color:#cbd5e1 !important;color:#334155 !important;}#sliding-popup .decline-button:hover{background-color:#f8fafc !important;border-color:#94a3b8 !important;}#sliding-popup .agree-button:active,#sliding-popup .decline-button:active,#sliding-popup .eu-cookie-compliance-save-preferences-button:active{transform:translateY(1px) !important;}#sliding-popup .agree-button:focus-visible,#sliding-popup .decline-button:focus-visible,#sliding-popup .find-more-button:focus-visible,#sliding-popup .eu-cookie-compliance-more-button:focus-visible,#sliding-popup .eu-cookie-compliance-save-preferences-button:focus-visible{outline:2px solid #4f46e5 !important;outline-offset:2px !important;}.eu-cookie-compliance-categories{grid-area:acts;clear:both !important;padding-top:4px !important;}.eu-cookie-compliance-categories label,.eu-cookie-compliance-category label{color:#334155 !important;display:inline !important;font-size:13.5px !important;}@keyframes fxCookieIn{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}#sliding-popup.sliding-popup-bottom{animation:fxCookieIn 0.22s cubic-bezier(0.16,1,0.3,1) both !important;}@keyframes fxCookieOut{from{opacity:1;transform:none;}to{opacity:0;transform:translateY(6px) scale(0.985);}}#sliding-popup.fx-cc-leaving{animation:fxCookieOut 0.16s ease-in both !important;pointer-events:none !important;}@keyframes fxCookieOutReduced{from{opacity:1;}to{opacity:0;}}@media (prefers-reduced-motion:reduce){#sliding-popup.sliding-popup-bottom{animation:none !important;}#sliding-popup.fx-cc-leaving{animation:fxCookieOutReduced 0.12s linear both !important;}}@media (prefers-color-scheme:dark){.eu-cookie-compliance-banner{background:#111827 !important;border-color:#1f2937 !important;box-shadow:0 12px 34px rgba(0,0,0,0.5) !important;}.eu-cookie-compliance-content::before{background-color:#1e1b4b;border-color:#312e81;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a5b4fc' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2a10 10 0 1 0 10 10 4 4 0 0 1-5-5 4 4 0 0 1-5-5Z'/%3E%3Ccircle cx='9' cy='13' r='1'/%3E%3Ccircle cx='14.5' cy='16' r='1'/%3E%3Ccircle cx='8' cy='17.5' r='1'/%3E%3C/svg%3E");}.eu-cookie-compliance-message,.eu-cookie-compliance-message h1,.eu-cookie-compliance-message h2,.eu-cookie-compliance-message h3{color:#f3f4f6 !important;}.eu-cookie-compliance-message p{color:#9ca3af !important;}.find-more-button,.eu-cookie-compliance-more-button{color:#a5b4fc !important;}.find-more-button:hover,.eu-cookie-compliance-more-button:hover{color:#c7d2fe !important;}#sliding-popup .agree-button,#sliding-popup .eu-cookie-compliance-save-preferences-button{background-color:#4f46e5 !important;}#sliding-popup .agree-button:hover,#sliding-popup .eu-cookie-compliance-save-preferences-button:hover{background-color:#4338ca !important;}#sliding-popup .decline-button{background-color:transparent !important;border-color:#374151 !important;color:#d1d5db !important;}#sliding-popup .decline-button:hover{background-color:rgba(148,163,184,0.12) !important;border-color:#4b5563 !important;}#sliding-popup .agree-button:focus-visible,#sliding-popup .decline-button:focus-visible,#sliding-popup .find-more-button:focus-visible,#sliding-popup .eu-cookie-compliance-more-button:focus-visible{outline-color:#a5b4fc !important;}.eu-cookie-compliance-categories label,.eu-cookie-compliance-category label{color:#d1d5db !important;}}@media screen and (min-width:769px){#sliding-popup{right:20px !important;left:auto !important;bottom:20px !important;width:auto !important;max-width:420px !important;}.sliding-popup-bottom{width:auto !important;left:auto !important;right:20px !important;bottom:20px !important;}}@media screen and (max-width:768px){#sliding-popup{bottom:12px !important;left:12px !important;right:12px !important;width:auto !important;}.sliding-popup-bottom{left:12px !important;right:12px !important;bottom:12px !important;width:auto !important;}.eu-cookie-compliance-banner{padding:18px 16px !important;}.eu-cookie-compliance-buttons{flex-direction:row !important;}#sliding-popup .agree-button,#sliding-popup .decline-button{flex:1 1 0 !important;padding:0 12px !important;}}[dir="rtl"] .eu-cookie-compliance-content{grid-template-areas:"text icon"
    "acts acts";grid-template-columns:minmax(0,1fr) 40px;text-align:right !important;}[dir="rtl"] .eu-cookie-compliance-message,[dir="rtl"] .eu-cookie-compliance-buttons{float:none !important;}[dir="rtl"] .eu-cookie-compliance-buttons{justify-content:flex-start !important;}@media screen and (min-width:769px){[dir="rtl"] #sliding-popup,[dir="rtl"] .sliding-popup-bottom{right:auto !important;left:20px !important;}}
.language-switcher{position:relative;display:inline-flex;align-items:center;}.language-switcher-btn{background:var(--surface,var(--card,#fff));border:1px solid var(--line,var(--s-200,#e2e8f0));border-radius:8px;padding:6px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2,var(--s-700,#334155));transition:all 0.2s ease;box-shadow:0 1px 3px rgba(0,0,0,0.1);min-width:100px;}.language-switcher-btn:hover{border-color:var(--line-2,var(--s-300,#cbd5e1));box-shadow:0 2px 6px rgba(0,0,0,0.15);}.language-switcher-btn:active{transform:scale(0.98);}.language-flag{width:20px;height:20px;border-radius:3px;object-fit:cover;box-shadow:0 1px 2px rgba(0,0,0,0.1);flex-shrink:0;}.language-code{font-weight:500;text-transform:uppercase;font-size:13px;color:inherit;}.language-dropdown-arrow{margin-left:auto;width:12px;height:12px;transition:transform 0.2s ease;color:var(--muted,#64748b);}.language-switcher.open .language-dropdown-arrow{transform:rotate(180deg);}.language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--surface,var(--card,#fff));border:1px solid var(--line,var(--s-200,#e2e8f0));border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15);min-width:400px;max-width:480px;z-index:9999;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.2s ease;overflow:hidden;padding:6px;}.language-switcher.open .language-dropdown{opacity:1;visibility:visible;transform:translateY(0);}.language-dropdown-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;max-height:min(62vh,560px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;}.language-dropdown-grid::-webkit-scrollbar{width:6px;}.language-dropdown-grid::-webkit-scrollbar-track{background:var(--bg-1,var(--s-100,transparent));border-radius:3px;}.language-dropdown-grid::-webkit-scrollbar-thumb{background:var(--faint,#6b7280);border-radius:3px;}.language-dropdown-grid::-webkit-scrollbar-thumb:hover{background:var(--muted,#4b5563);}.language-dropdown-item{display:flex;flex-direction:row;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;transition:all 0.15s ease;border:1px solid transparent;background:none;width:100%;min-width:0;box-sizing:border-box;text-align:left;font-size:13px;color:var(--ink-2,var(--s-700,#334155));border-radius:4px;position:relative;}.language-dropdown-item:hover{background:var(--surface-2,var(--s-50,#f8fafc));border-color:var(--line,var(--s-200,#e2e8f0));}.language-dropdown-item.active{background:var(--accent-bg,var(--brand-50,var(--b-50,#eff6ff)));color:var(--brand-d,var(--brand-700,var(--b-800,#1e40af)));border-color:var(--brand-600,var(--b-600,#2563eb));}.language-dropdown-item.active .language-flag{box-shadow:0 0 0 2px var(--brand-600,var(--b-600,#2563eb));}.language-dropdown-item .language-flag{width:24px;height:24px;border-radius:3px;flex-shrink:0;}.language-dropdown-item .language-name{font-weight:500;font-size:13px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;}.language-dropdown-item .language-native{font-size:11px;color:var(--muted,#64748b);display:none;}.language-dropdown-item.active .language-native{color:var(--brand-600,var(--b-600,#2563eb));}.language-dropdown-item.active::after{content:'\002713';margin-left:auto;color:var(--brand-600,var(--b-600,#2563eb));font-weight:bold;font-size:16px;flex-shrink:0;}html[dir="rtl"] .language-dropdown,body[dir="rtl"] .language-dropdown,.language-switcher[dir="rtl"] .language-dropdown{right:auto;left:0;}html[dir="rtl"] .language-switcher .language-dropdown,body[dir="rtl"] .language-switcher .language-dropdown{right:auto;left:0;}.language-switcher[dir="rtl"] .language-dropdown-arrow{margin-left:0;margin-right:auto;}@media (min-width:481px) and (max-width:768px){html[dir="rtl"] .language-dropdown,body[dir="rtl"] .language-dropdown{right:auto !important;left:0 !important;}}@media (max-width:768px){.language-switcher-btn{min-width:80px;padding:6px 10px;}.language-code{font-size:12px;}.language-dropdown{min-width:320px;max-width:360px;left:auto;right:0;transform:translateY(-10px);}.language-switcher.open .language-dropdown{transform:translateY(0);}.language-dropdown-grid{grid-template-columns:1fr 1fr;}.language-dropdown-item{padding:5px 6px;gap:6px;}.language-dropdown-item .language-flag{width:20px;height:20px;}.language-dropdown-item .language-name{font-size:12px;}.language-dropdown-item.active::after{font-size:14px;}}@keyframes languageDropdownSlide{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}.language-switcher.open .language-dropdown{animation:languageDropdownSlide 0.2s ease;}.fv-brandbar .language-switcher-btn{color:#fff;background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.45);}.fv-brandbar .language-switcher-btn:hover,.fv-brandbar .language-switcher-btn:focus-visible{color:#fff;background:rgba(255,255,255,0.26);border-color:rgba(255,255,255,0.65);}.fv-brandbar .language-switcher-btn *{color:inherit;}
.fx-social.fx-social{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;list-style:none;margin:12px 0 0;padding:0;}.fx-social .fx-social__link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1px solid rgba(203,213,225,0.35);color:#cbd5e1;text-decoration:none;transition:color 120ms ease,border-color 120ms ease,background-color 120ms ease;}.fx-social .fx-social__link:hover{color:#fff;border-color:rgba(255,255,255,0.7);background-color:rgba(255,255,255,0.08);}.fx-social .fx-social__link:focus-visible{outline:2px solid #fbbf24;outline-offset:2px;}.fx-social .fx-social__icon{display:block;width:16px;height:16px;}.fx-social--light .fx-social__link{color:#475569;border-color:#cbd5e1;}.fx-social--light .fx-social__link:hover{color:#4f46e5;border-color:#4f46e5;background-color:#eef2ff;}.fx-social--light .fx-social__link:focus-visible{outline-color:#4f46e5;}.fx-social-follow{margin:32px 0 0;padding-top:24px;border-top:1px solid #e2e8f0;text-align:center;}.fx-social-follow .fx-social-follow__text{margin:0 0 12px;color:#475569;font-size:15px;}.fx-social-follow .fx-social{margin:0;}@media (prefers-reduced-motion:reduce){.fx-social .fx-social__link{transition:none;}}
