/* Andreas Gundelach / CODEX */
:root{color-scheme:dark;--bg:#101923;--side:#121f2d;--panel:#192a3b;--input:#111e2c;--text:#e9f1fa;--muted:#a1b2c7;--line:#34495f;--accent:#56b7e8;--danger:#f49595;--radius:7px;font:14px/1.45 system-ui;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button,.button{border:1px solid var(--line);background:#263e54;color:var(--text);border-radius:5px;padding:7px 11px;text-decoration:none}button:hover,.button:hover{background:#35546e}.primary{background:#167caf;border-color:#59c9ff;color:#fff}.danger{color:var(--danger)}a{color:#8dd9ff}input,textarea,select,[contenteditable]{width:100%;border:1px solid var(--line);border-radius:5px;background:var(--input);color:var(--text);padding:8px;min-height:36px;outline:none}input:focus,textarea:focus,select:focus,[contenteditable]:focus{border-color:#72c6f0;box-shadow:0 0 0 2px #72c6f020}input[type=checkbox]{width:auto;min-height:0;accent-color:#56b7e8}input[type=color]{padding:2px;width:52px;height:36px}textarea{min-height:92px;resize:vertical}select[multiple]{min-height:110px}label{display:flex;flex-direction:column;gap:5px;align-items:flex-start;color:#c9d6e6;font-size:13px}label>span{font-weight:600}small,.muted{color:var(--muted)}h1{font-size:23px;line-height:1.2;margin:0}h2{font-size:17px;margin:0 0 14px}h3{font-size:14px;margin:18px 0 8px}p{margin:8px 0 14px}hr{border:0;border-top:1px solid var(--line);margin:18px 0}[hidden]{display:none!important}.boot-loader{height:100dvh;display:grid;place-items:center;color:#1688b8}.aikata-a{width:64px;height:64px;animation:turn 1.2s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}.auth-wrap{max-width:700px;margin:6vh auto;padding:22px}.auth-wrap .panel{padding:24px}.auth-brand{display:flex;align-items:center;gap:12px;font-size:24px;margin-bottom:22px}.brand-a{width:34px;height:34px;fill:#69ccfa}.auth-form{display:grid;gap:16px}.auth-form .actions{justify-content:flex-end}.shell{display:grid;grid-template-columns:215px minmax(380px,1fr) 350px;grid-template-rows:60px minmax(0,1fr);height:100dvh;overflow:hidden}.topbar{grid-column:1/-1;display:flex;align-items:center;gap:20px;background:#142334;border-bottom:1px solid var(--line);padding:9px 18px}.brand{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:700;letter-spacing:1px;min-width:180px}.brand svg{width:29px;height:29px}.project-picker{width:min(600px,50vw)}.account-chip{margin-left:auto;font-size:12px;color:var(--muted);white-space:nowrap}.leftbar{background:var(--side);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:14px 10px;min-height:0;overflow:auto}.leftbar nav{display:grid;gap:4px}.leftbar nav button{text-align:left;background:transparent;border-color:transparent;padding:9px 10px;font-size:13px}.leftbar nav button.active{background:#24445e;border-color:#40627f;color:#aee6ff}.nav-group{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#7891aa;padding:16px 10px 5px}.leftbar footer{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:auto;padding:18px 7px 0;font-size:11px}.leftbar footer button{padding:0;border:0;background:none;font-size:11px}.version{font-size:10px;color:#7891aa;padding:9px 7px}.workspace{overflow:auto;padding:22px 24px 90px;min-width:0}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}.section-heading .actions{margin-left:auto}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.full{grid-column:1/-1}.field-help{font-size:11px;color:#829ab3}.char-meter{height:3px;width:100%;background:#334357;border-radius:2px;overflow:hidden}.char-meter i{display:block;height:100%;background:#5bbb8c;width:0}.char-count{font-size:10px;color:#89a0b9;width:100%;text-align:right}.field-error{border-color:#d66b6b!important}.form-check{display:flex;align-items:flex-start;gap:8px;flex-direction:row;padding:9px 0}.form-check input{margin-top:3px}.rich-toolbar{display:flex;gap:4px;flex-wrap:wrap;width:100%;border:1px solid var(--line);border-bottom:0;padding:4px;background:#22364b}.rich-toolbar button{padding:3px 7px;font-size:11px}.rich-editor{min-height:180px;max-height:520px;overflow:auto;border-radius:0 0 5px 5px;width:100%;color:#e8f0f8;overflow-wrap:anywhere}.rich-editor img{max-width:100%;height:auto}.media-control{display:flex;gap:7px;width:100%;align-items:flex-start}.media-control select{flex:1;min-width:0}.media-thumb{max-width:100%;max-height:140px;object-fit:contain;display:block;margin-top:8px;background:#fff;border-radius:3px}.rightbar{border-left:1px solid var(--line);background:#111d2a;display:flex;flex-direction:column;min-height:0;overflow:hidden}.help-panel{padding:18px;font-size:12px;color:#b4c5d8;max-height:30%;overflow:auto;border-bottom:1px solid var(--line)}.help-panel h2{font-size:13px;color:#e4edf8;margin-bottom:8px}.preview-title{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:11px;color:#99b0c8}.rightbar iframe{width:100%;flex:1;min-height:250px;border:0;background:#eee}.savebar{position:fixed;bottom:0;right:350px;left:215px;display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:12px 22px;background:#142537ed;border-top:1px solid var(--line);backdrop-filter:blur(9px);z-index:500}.save-status{font-size:12px;color:#9fb5cb}.save-status.error{color:#ffb0ab}.savebar button{min-width:120px}.data-table{border-collapse:collapse;width:100%;font-size:12px}.data-table th,.data-table td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table th{font-size:10px;letter-spacing:.6px;text-transform:uppercase;color:#96aec6}.data-table tr[data-id]{cursor:pointer}.data-table tr[data-id]:hover{background:#26425b}.data-table .actions button{padding:3px 7px;font-size:11px}.table-wrap{overflow:auto}.badge{display:inline-flex;border:1px solid #56718c;background:#22394e;padding:2px 7px;border-radius:30px;font-size:10px;white-space:nowrap}.badge.warn{color:#ffd79e;border-color:#8d744e}.badge.green{color:#9addb5;border-color:#4c8c68}.empty{padding:45px 18px;text-align:center;color:#97aec5;border:1px dashed var(--line);border-radius:7px}.notice{padding:12px 15px;background:#243e54;border-left:3px solid #69b9e3;font-size:12px;margin:12px 0}.notice.error{border-color:#ef8f8f;color:#ffd4ce;background:#432d33}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.stat strong{display:block;font-size:28px}.stat span{font-size:11px;color:#91abc5}.color-row{display:grid;grid-template-columns:minmax(140px,1fr) 52px 110px;gap:9px;align-items:center;margin:9px 0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.media-tile{border:1px solid var(--line);border-radius:5px;padding:8px;font-size:10px;overflow-wrap:anywhere}.media-tile img{display:block;object-fit:contain;height:100px;width:100%;background:#fff;margin-bottom:6px}.map-editor{height:370px;position:relative;min-width:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}.map-editor .aikata-map{height:100%;width:100%}.map-tools{display:flex;gap:8px;margin:8px 0;align-items:center;flex-wrap:wrap}.map-tools .active{background:#99751a}.planner-frame{width:100%;height:calc(100dvh - 165px);border:1px solid var(--line);border-radius:6px;background:#152333}.timetable-wide .shell{grid-template-columns:180px minmax(500px,1fr) 0}.timetable-wide .rightbar{display:none}.timetable-wide .savebar{right:0;left:180px}.sortable-item{cursor:grab;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:var(--panel);padding:12px;margin:7px 0;border-radius:5px}.sortable-item .grow{flex:1}.sortable-item.drag-over{border-color:#86d7ff}.sort-handle{color:#7a97b5;font-size:18px}.section-tabs{display:flex;gap:6px;margin:15px 0}.section-tabs button.active{background:#346080}.import-tree{max-height:440px;overflow:auto}.import-tree label{display:flex;flex-direction:row;gap:8px;align-items:flex-start;font-size:12px;padding:6px}.import-progress{height:5px;background:#2d4056}.import-progress i{display:block;height:100%;background:#58bde4;transition:width .2s}.conflict-row{display:grid;grid-template-columns:minmax(100px,1fr) 150px;align-items:start;gap:12px;padding:9px;border-bottom:1px solid var(--line)}.drop-zone{padding:30px;border:2px dashed #4c708e;text-align:center;border-radius:7px}.drop-zone.active{border-color:#8cdcff;background:#25465f}.drop-zone[data-update]{position:relative;z-index:600}.update-history{font-size:12px}.toolbar-line{display:flex;gap:10px;margin-bottom:12px;align-items:center}.toolbar-line input{max-width:320px}#toast{position:fixed;top:72px;right:25px;max-width:min(480px,90vw);padding:12px 18px;background:#294d69;color:#fff;border:1px solid #75b7de;border-radius:7px;z-index:2000;box-shadow:0 4px 20px #0006}#toast.error{background:#632f37;border-color:#d78d94}.modal-backdrop{position:fixed;inset:0;background:#0009;z-index:1000;display:grid;place-items:center}.modal{width:min(800px,94vw);max-height:90dvh;overflow:auto;background:#182a3c;border:1px solid var(--line);border-radius:8px;padding:22px}.modal header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal .media-tile{cursor:pointer}.hidden-input{display:none}.mobile-toggle{display:none}.mail-test{display:flex;gap:8px;margin-top:14px}.mail-test input{flex:1}.split-fields{display:flex;gap:8px;align-items:center}.split-fields>*{flex:1}body.light{--bg:#e6edf4;--side:#e0e9f2;--panel:#f5f8fc;--input:#fff;--text:#122538;--muted:#51677e;--line:#bacbdc;color-scheme:light}body.light .topbar,body.light .savebar,body.light .rightbar{background:#d3e2f0;color:#123}body.light .leftbar button{color:#234}body.light label{color:#234}body.light input,body.light select,body.light textarea,body.light [contenteditable]{color:#123}body.light .rich-editor{color:#123}
@media(max-width:1250px){.shell{grid-template-columns:185px minmax(380px,1fr) 285px}.savebar{left:185px;right:285px}.workspace{padding:18px 18px 90px}.brand{min-width:150px}.account-chip{max-width:170px;overflow:hidden;text-overflow:ellipsis}.rightbar .help-panel{padding:12px}}@media(max-width:980px){.shell{grid-template-columns:180px minmax(0,1fr) 0}.rightbar{display:none}.savebar{left:180px;right:0}.project-picker{width:min(450px,55vw)}.account-chip{display:none}}@media(max-width:650px){.shell,.timetable-wide .shell{grid-template-columns:0 minmax(0,1fr) 0;grid-template-rows:58px minmax(0,1fr)}.leftbar{display:none}.shell.nav-open .leftbar{display:flex;position:fixed;left:0;top:58px;bottom:0;width:220px;z-index:600;box-shadow:10px 0 30px #0009}.mobile-toggle{display:block;padding:4px 7px}.brand{min-width:0;font-size:15px;gap:4px}.brand svg{width:24px}.topbar{gap:10px;padding:8px}.project-picker{width:auto;flex:1}.savebar,.timetable-wide .savebar{left:0;right:0;padding:10px 14px}.form-grid{grid-template-columns:1fr}.workspace{padding:17px 12px 85px}.auth-wrap{margin:20px auto;padding:12px}.auth-wrap .panel{padding:18px}.section-heading{flex-wrap:wrap}.color-row{grid-template-columns:minmax(100px,1fr) 44px 100px}.planner-frame{height:calc(100dvh - 190px)}}@media(prefers-reduced-motion:reduce){.aikata-a{animation:none}}

.field-wrapper{display:flex;flex-direction:column;gap:5px;align-items:flex-start;color:#c9d6e6;font-size:13px}.field-wrapper>span{font-weight:600}.field-wrapper>.rich-editor,.field-wrapper>textarea,.field-wrapper>.char-meter{width:100%}

.leftbar{overflow:hidden}.leftbar nav{overflow-y:auto;min-height:0;flex:1;display:block}.leftbar nav button{display:block;width:100%;margin-bottom:4px}.leftbar footer{flex-shrink:0;flex-wrap:nowrap;white-space:nowrap;padding-top:12px}.leftbar .version{flex:none}
