:root{color-scheme:light;--color-accent: #2f7be5;--color-success: #1fa97a;--color-warning: #e6a700;--color-error: #d14343;--text-color: #0f172a;--text-muted: #4b5563;--label-color: #0f172a;--label-required: #d14343;--background: #f4f6fb;--card-bg: #ffffff;--card-bg-hover: #eff3ff;--surface-contrast: #e8eef9;--surface-strong: #dfe8ff;--border-color: #d7deea;--border-strong: #94a3b8;--border-width: 1px;--shadow-soft: 0 8px 30px rgba(15, 23, 42, .08);--shadow-strong: 0 0 0 1px var(--border-color);--input-bg: #ffffff;--input-border: #cbd5e1;--input-text: #0f172a;--text-on-solid: #ffffff;--radius: 10px;--transition: .2s ease-in-out;--focus-ring: 0 0 0 3px rgba(47, 123, 229, .35);--overlay: rgba(15, 23, 42, .5);--modal-bg: #ffffff;--chip-bg: #e8eef9;--chip-border: #c3d3f2}[data-theme=dark]{color-scheme:dark;--color-accent: #5ecbff;--color-success: #33e29f;--color-warning: #ffd166;--color-error: #ff6b6b;--background: #0b0f1f;--card-bg: #0f1220;--card-bg-hover: #1a1e36;--text-color: #e6e8f5;--text-muted: #a6b1c6;--label-color: #e6e8f5;--label-required: #ff6b6b;--border-color: #1f2745;--border-strong: #2a3666;--surface-contrast: #11172f;--surface-strong: #121a36;--shadow-soft: 0 12px 30px rgba(0, 0, 0, .45);--shadow-strong: 0 0 0 1px var(--border-color);--input-bg: #0f1220;--input-border: #2a3666;--input-text: #e6e8f5;--focus-ring: 0 0 0 3px rgba(94, 203, 255, .35);--overlay: rgba(0, 0, 0, .65);--modal-bg: #0f1220;--chip-bg: #1f2745;--chip-border: #2a3666}[data-theme=high-contrast]{color-scheme:light;--color-accent: #d63f0f;--color-success: #0f7a10;--color-warning: #c05b00;--color-error: #b00020;--background: #ffffff;--card-bg: #ffffff;--card-bg-hover: #fff3c4;--text-color: #0a0a0a;--text-muted: #1f2937;--label-color: #000000;--label-required: #ff0000;--border-color: #0f172a;--border-strong: #0f172a;--border-width: 2px;--surface-contrast: #fffbcc;--surface-strong: #ffe8a3;--shadow-soft: none;--shadow-strong: 0 0 0 2px var(--border-color);--input-bg: #ffffff;--input-border: #0f172a;--input-text: #000000;--focus-ring: 0 0 0 4px rgba(214, 63, 15, .35);--overlay: rgba(0, 0, 0, .35);--modal-bg: #ffffff;--chip-bg: #fffbcc;--chip-border: #0f172a}*{margin:0;padding:0;box-sizing:border-box}html{overflow-y:scroll;scrollbar-gutter:stable both-edges}body{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;min-height:100vh;background:var(--background);color:var(--text-color);transition:background .2s ease,color .2s ease}body.modal-open{overflow:hidden}.login-page{min-height:100vh;color:#d9e0ea;display:flex;align-items:flex-start;justify-content:center;padding:0;position:relative;overflow:hidden;background-color:#000;background-image:var(--login-bg-image);background-position:center;background-repeat:no-repeat;background-size:cover}.login-page:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000094,#000000db),radial-gradient(circle at top left,rgba(24,24,24,.18),transparent 28%),linear-gradient(180deg,#ffffff03,#00000047);pointer-events:none}.login-shell{width:100%;min-height:100vh;position:relative;z-index:1}.login-panel--form{display:flex;align-items:flex-start;justify-content:center;width:100%;min-height:100vh}.login-card{width:min(100% - 2rem,320px);margin:1rem auto 0;padding:0;background:transparent;box-shadow:none;display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1}.login-title{font-size:1.45rem;margin:0;color:#eef3f9;letter-spacing:.01em;text-align:center}.login-subtitle{color:#91a0b3;margin-top:-.2rem;display:block;text-align:center;font-size:.92rem}.login-label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}.login-label span{font-size:.9rem;color:#c6d0dd;letter-spacing:.02em}.login-input{width:100%;min-height:44px;padding:.65rem .85rem;border-radius:12px;border:1px solid rgba(119,133,154,.42);background:#070b11b8;color:#eef3f9;font-size:1rem;box-shadow:inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.login-input::placeholder{color:#687589}.login-input:focus{outline:none;border-color:#2c78b9;background:#0a1018d6;box-shadow:0 0 0 3px #2c78b933,inset 0 1px #ffffff0d}.login-button{min-height:46px;border:1px solid rgba(84,152,210,.42);border-radius:12px;background:linear-gradient(180deg,#2f7dbf,#205d95);color:#f8fbff;font-size:1rem;font-weight:700;letter-spacing:.02em;box-shadow:0 16px 32px #143c6073,inset 0 1px #ffffff38;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 36px #143c6080,inset 0 1px #ffffff42;filter:brightness(1.04)}.login-button:disabled{opacity:.82;cursor:default}.login-error{color:#ff9d9d;font-size:.92rem;line-height:1.4;text-align:center;margin-top:-.1rem}@media(max-width:920px){.login-panel--form{min-height:100vh}}@media(max-width:640px){.login-page{padding:1rem}.login-shell,.login-panel--form{min-height:calc(100vh - 2rem)}.login-card{width:calc(100% - 1rem);margin-top:.85rem}.login-title{font-size:1.35rem}}@media(max-width:768px){.login-page{background-size:contain;background-position:center;background-repeat:no-repeat}}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}a{text-decoration:none;color:inherit}::selection{background:var(--color-accent);color:#fff}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0000008c;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.modal-content{background:var(--modal-bg);border-radius:10px;max-width:1100px;width:min(95vw,1100px);max-height:90vh;overflow-y:auto;padding:1.5rem;box-shadow:0 4px 20px #0006}.dashboard-title{font-size:2em;margin-bottom:1.5rem;text-align:center}.stats-card{background:var(--card-bg);padding:1rem 2rem;border-radius:10px;text-align:center;min-width:150px;transition:var(--transition);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-soft)}.rework{border:var(--border-width) solid var(--color-error)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:1.5rem}.dashboard-card{background:var(--card-bg);padding:1.5rem;border-radius:12px;cursor:pointer;transition:transform .15s ease,background .2s ease,box-shadow .2s ease;border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-soft);color:var(--text-color)}.dashboard-card .count{font-size:1.8em;margin-top:.5rem;font-weight:700}.rework-badge{background:var(--color-error);color:var(--text-on-solid);padding:.2rem .6rem;border-radius:6px;position:absolute;top:12px;right:12px;border:1px solid rgba(0,0,0,.08)}.marketing-landing{min-height:100vh;background:radial-gradient(circle at top left,rgba(47,123,229,.18),transparent 30%),radial-gradient(circle at bottom right,rgba(15,23,42,.08),transparent 28%),linear-gradient(180deg,#f6f8fd,#eef3fb);color:var(--text-color)}.marketing-landing__header{max-width:1200px;margin:0 auto;padding:1.5rem 2rem 0;display:flex;justify-content:space-between;align-items:center;gap:1rem}.marketing-landing__brand{font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:700;letter-spacing:-.03em}.marketing-landing__brand span{color:var(--color-accent)}.marketing-landing__actions{display:flex;align-items:center;gap:.75rem}.marketing-landing__link,.marketing-landing__button,.marketing-landing__ghost{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.75rem 1.2rem;font-weight:600;transition:var(--transition)}.marketing-landing__link,.marketing-landing__ghost{border:1px solid rgba(79,99,147,.22);background:#ffffffb3}.marketing-landing__button{background:var(--color-accent);color:var(--text-on-solid);box-shadow:0 12px 24px #2f7be538}.marketing-landing__main{max-width:1200px;margin:0 auto;padding:3.5rem 2rem 4rem}.marketing-landing__hero{padding:3rem;border:1px solid rgba(79,99,147,.16);border-radius:28px;background:linear-gradient(135deg,#fffffffa,#eff3ffeb);box-shadow:0 30px 80px #0f172a14}.marketing-landing__eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:var(--text-muted);margin-bottom:1rem}.marketing-landing__hero h1{max-width:760px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.8rem,5vw,4.9rem);line-height:.95;letter-spacing:-.05em}.marketing-landing__copy{max-width:720px;margin-top:1.25rem;font-size:1.12rem;color:var(--text-muted)}.marketing-landing__hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.marketing-landing__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.marketing-landing__card,.marketing-landing__statement-card{border:1px solid rgba(79,99,147,.16);border-radius:22px;padding:1.4rem;background:#ffffffdb;box-shadow:var(--shadow-soft)}.marketing-landing__card h2,.marketing-landing__statement-card h2{font-size:1.1rem;margin-bottom:.6rem}.marketing-landing__card p,.marketing-landing__statement-card p{color:var(--text-muted)}.marketing-landing__statement{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem;margin-top:1rem}.marketing-landing__timeline,.marketing-landing__industries,.marketing-landing__metrics{margin-top:1rem}.marketing-landing__timeline{display:grid;grid-template-columns:.95fr 1.05fr;gap:1rem}.marketing-landing__timeline-copy,.marketing-landing__industries-head{border:1px solid rgba(79,99,147,.16);border-radius:22px;padding:1.5rem;background:#ffffffd1;box-shadow:var(--shadow-soft)}.marketing-landing__timeline-copy h2,.marketing-landing__industries-head h2{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.02;letter-spacing:-.03em}.marketing-landing__timeline-copy p:last-child{margin-top:.9rem;color:var(--text-muted)}.marketing-landing__timeline-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.marketing-landing__timeline-step{border:1px solid rgba(79,99,147,.16);border-radius:18px;padding:1.2rem;background:#ffffffe6;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:.45rem}.marketing-landing__timeline-step strong{font-size:1rem}.marketing-landing__timeline-step span{color:var(--text-muted)}.marketing-landing__industries-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.marketing-landing__industries-grid h3{margin-bottom:.65rem}.marketing-landing__industries-grid ul{padding-left:1rem;color:var(--text-muted);display:grid;gap:.35rem}.marketing-landing__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.marketing-landing__metric{border:1px solid rgba(79,99,147,.16);border-radius:20px;padding:1.4rem;background:linear-gradient(135deg,#2f7be514,#fffffff0);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:.45rem}.marketing-landing__metric strong{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1;color:var(--color-accent)}.marketing-landing__metric span{color:var(--text-muted)}.marketing-landing__statement-card.accent{background:linear-gradient(135deg,#2f7be51a,#fffffff2)}.marketing-landing__statement-card .marketing-landing__button{margin-top:1rem}@media(max-width:900px){.marketing-landing__grid,.marketing-landing__statement,.marketing-landing__timeline,.marketing-landing__industries-grid,.marketing-landing__metrics{grid-template-columns:1fr}.marketing-landing__hero{padding:2rem}.marketing-landing__timeline-steps{grid-template-columns:1fr}}@media(max-width:640px){.marketing-landing__header,.marketing-landing__main{padding-left:1rem;padding-right:1rem}.marketing-landing__header{flex-direction:column;align-items:flex-start}.marketing-landing__hero h1{font-size:2.4rem}}.dashboard-container{padding:2rem}.dashboard-title{font-size:2em;margin-bottom:1.5rem;text-align:center;color:var(--text-color)}.dashboard-hero{max-width:1200px;margin:0 auto 2rem;padding:1.5rem 2rem;border:var(--border-width) solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-soft)}.workflow-title{text-align:center;margin:2rem auto 1rem;color:var(--text-color)}.workflow-completed-today{text-align:center;margin:0 0 1rem;color:var(--text-color-muted, var(--text-color));font-size:.95rem}.completed-today-badge{font-size:.78rem;color:var(--color-success, #22c55e);font-weight:600;margin:.25rem 0 0;letter-spacing:.01em}.workflow-section{max-width:1200px;margin:0 auto 2rem;padding:1.25rem 1.5rem;border:var(--border-width) solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-soft)}.workflow-section-grouped{border:var(--border-width) solid var(--border-color)}.workflow-section-commissioning{border:calc(var(--border-width) * 2) solid var(--color-accent);box-shadow:var(--shadow-strong)}.workflow-subsection{margin-top:1.25rem;padding-top:.75rem;border-top:var(--border-width) dashed var(--border-color)}.workflow-subtitle{text-align:center;margin-bottom:.75rem;color:var(--text-color)}.dashboard-loading{padding:3rem;text-align:center;font-size:1.2rem;color:var(--text-color)}.dashboard-empty-state{max-width:760px;margin:4rem auto 0;padding:2rem;border:var(--border-width) solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-soft);text-align:center}.dashboard-empty-copy{margin:0 auto;max-width:520px;color:var(--text-muted, var(--text-color));font-size:1rem}.dashboard-empty-action{margin-top:1.25rem;background:var(--color-accent, #3f8cff);color:var(--text-on-solid, #fff);border:none;border-radius:10px;padding:.75rem 1rem;cursor:pointer}.stats-row{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;flex-wrap:wrap}.stats-card{background:var(--card-bg);padding:1rem 2rem;border-radius:var(--radius);text-align:center;min-width:150px;border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-soft);transition:var(--transition)}.stats-card.rework{border-color:var(--color-error)}.stats-tab{min-width:180px;cursor:pointer;border:var(--border-width) solid var(--border-color);border-radius:var(--radius);position:relative;background:var(--card-bg);transition:var(--transition)}.stats-tab:hover{background:var(--card-bg-hover);box-shadow:var(--shadow-strong);transform:translateY(-2px)}.stats-tab.is-active{border-color:var(--color-accent);box-shadow:var(--shadow-strong)}.stats-tab:hover:after{content:attr(title);position:absolute;left:50%;bottom:-38px;transform:translate(-50%);background:var(--card-bg);color:var(--text-color);border:var(--border-width) solid var(--border-color);border-radius:6px;padding:.4rem .6rem;white-space:nowrap;box-shadow:0 10px 25px #0000001f;font-size:.85rem;z-index:5}.count{font-size:1.8em;font-weight:700;margin-top:.5rem;color:var(--text-color)}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:1.5rem;justify-items:center}.workflow-cards-grid{justify-content:center;grid-template-columns:repeat(auto-fit,minmax(225px,260px))}.dashboard-card{background:var(--card-bg);padding:1.5rem;border-radius:var(--radius);cursor:pointer;position:relative;transition:var(--transition);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-soft);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.dashboard-card:hover{background:var(--card-bg-hover);transform:translateY(-3px);box-shadow:var(--shadow-strong)}.dashboard-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.my-tasks-card{border:calc(var(--border-width) * 2) solid var(--color-accent)}.rework-badge{background:var(--color-error);color:#fff;padding:.2rem .6rem;border-radius:6px;cursor:pointer;font-weight:700;letter-spacing:.02em;position:absolute;top:-6px;right:-6px;box-shadow:0 6px 16px #00000026}.workflow-footer{display:flex;justify-content:center;margin-top:2rem}.tasks-container{padding:2rem}.tasks-title{font-size:2rem;margin-bottom:1rem}.page-container{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.page-header h1{font-size:1.8rem;margin:0}.back-button{padding:.5rem 1rem;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer}.date-filter-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.date-filter-label{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--text-color)}.date-filter-input{padding:.3rem .5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--card-bg);color:var(--text-color);font-size:.9rem}.date-filter-clear{padding:.3rem .75rem;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color-muted, var(--text-color));cursor:pointer;font-size:.85rem}.quick-filter-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.quick-filter-btn{padding:.35rem .85rem;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;font-size:.875rem;transition:background .15s,color .15s,border-color .15s}.quick-filter-btn.active{background:var(--color-error, #ef4444);color:#fff;border-color:var(--color-error, #ef4444);font-weight:600}.task-list{display:flex;flex-direction:column;gap:14px}.task-row{display:flex;flex-direction:column;gap:14px;padding:16px 18px;background:var(--card-bg);border-radius:var(--radius);border:var(--border-width) solid var(--border-color);box-shadow:var(--shadow-soft)}.task-row.task-row-grid{display:grid;grid-template-columns:375px 1fr;column-gap:16px;align-items:start}.task-card-left{min-width:0}.task-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.task-card-right{min-width:0;display:flex;align-items:flex-start}.task-top{display:flex;flex-direction:column;gap:6px}.task-info{display:flex;flex-direction:column;gap:2px}.task-tag{font-weight:700;font-size:1rem}.task-description{font-size:.85rem;color:var(--text-muted)}.task-last-comment{width:100%;margin-top:4px}.task-last-comment-text{display:block;font-size:.85rem;color:var(--text-muted);white-space:normal;word-break:break-word;overflow-wrap:anywhere;line-height:1.4;opacity:.85}.task-status-row{display:flex;justify-content:flex-start}.status-badge{padding:6px 10px;border-radius:6px;font-size:12px;font-weight:700;color:var(--text-on-solid)}.status-badge.normal{background:var(--color-accent)}.status-badge.rework{background:var(--color-error)}.task-bottom.action-group{display:flex;justify-content:center}.action-group-inner{display:flex;gap:12px;width:100%;max-width:520px}.task-row button{font-weight:600;border-radius:6px;cursor:pointer}.btn-sm{height:34px;font-size:13px}.btn-md{height:44px;font-size:14px}.btn-lg{height:54px;font-size:16px}.btn-auto{flex:0 0 auto;min-width:90px}.btn-finish{background:var(--color-success);color:var(--text-on-solid);border:1px solid var(--color-success)}.btn-reject{background:var(--color-error);color:var(--text-on-solid);border:1px solid var(--color-error)}.btn-detail{background:var(--surface-contrast);color:var(--text-color);border:1px solid var(--border-color)}.back-to-top{position:fixed;right:20px;bottom:24px;padding:10px 14px;background:var(--color-accent);color:var(--text-on-solid);border-radius:999px;border:none;font-weight:700;cursor:pointer;z-index:999}@media(max-width:768px){.tasks-container,.page-container{padding-left:12px;padding-right:12px}.tasks-container{padding-left:0;padding-right:0}.action-group-inner{max-width:100%;width:100%}.btn-auto{min-width:unset;flex:1}}@media(max-width:480px){.task-row.task-row-grid{grid-template-columns:1fr;row-gap:12px}.task-card-left,.task-card-right,.task-row-left,.task-row-right{min-width:0}.task-row-right{flex-wrap:wrap;gap:6px}.task-description,.task-last-comment-text{overflow-wrap:anywhere;word-break:break-word}.task-row-right .status-badge{padding:4px 8px;font-size:11px;white-space:nowrap}.task-last-comment-text{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}.search-card{background:var(--card-bg, #12172e);border:1px solid var(--border-color, #2a3152);border-radius:14px;padding:.75rem 1rem;box-shadow:0 12px 30px #00000040}.search-input-wrapper{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:1rem;opacity:.8}.search-input{width:100%;padding:.9rem 1rem .9rem 2.4rem;border-radius:12px;border:1px solid var(--border-color, #2a3152);background:var(--card-bg, #141a33);color:var(--text-color, #e5e7ff);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.search-input:focus{outline:none;border-color:var(--color-accent, #6ca0ff);box-shadow:0 0 0 4px #6ca0ff33}.filter-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;margin:.25rem 0 1rem;background:var(--card-bg, #0f142b);border:1px solid var(--border-color, #2a3152);border-radius:12px;box-shadow:0 10px 24px #0003}.filter-bar-left{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.filter-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;background:var(--card-bg, #141a33);color:var(--text-color, #e5e7ff);border:1px solid var(--border-color, #2a3152);border-radius:999px;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}.filter-toggle:hover{transform:translateY(-1px);box-shadow:0 8px 16px #00000040}.filter-icon{font-size:.95rem}.filter-chips{display:flex;flex-wrap:wrap;gap:.4rem}.filter-bar-right{display:flex;align-items:center;margin-left:auto}.filter-count{padding:.35rem .7rem;border-radius:999px;background:#6ca0ff1f;border:1px solid var(--border-color, #2a3152);color:var(--text-muted, #94a3b8);font-size:.9rem;white-space:nowrap}.filter-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border-radius:999px;background:#6ca0ff1f;color:var(--text-color, #e5e7ff);border:1px solid rgba(108,160,255,.35);cursor:pointer}.filter-chip.muted{background:var(--card-bg, #141a33);border-color:var(--border-color, #2a3152);color:var(--text-muted, #94a3b8)}.chip-close{font-weight:700}@media(max-width:720px){.filter-bar{flex-direction:column;align-items:flex-start}.filter-bar-right{margin-left:0}}.filter-dropdown{position:relative}.filter-options__backdrop{position:fixed;inset:0;z-index:900;overflow:hidden}.filter-options{margin-bottom:1rem;padding:.9rem 1rem;background:var(--card-bg, #0f142b);border:1px solid var(--border-color, #2a3152);border-radius:12px;box-shadow:0 10px 24px #0003}.filter-options--dropdown{position:absolute;top:calc(100% + 8px);left:0;width:min(420px,92vw);margin-top:8px;z-index:1001}.filter-options__section{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.filter-options__section:last-child{margin-bottom:0}.filter-options__label{font-weight:600;color:var(--text-color, #e5e7ff)}.filter-options__select,.filter-options__input{width:220px;max-width:100%;padding:.5rem .65rem;border-radius:10px;border:1px solid var(--border-color, #2a3152);background:var(--card-bg, #141a33);color:var(--text-color, #e5e7ff)}.filter-options__field{display:flex;flex-direction:column;gap:.35rem}.filter-options__checkboxes{display:flex;flex-direction:column;gap:.45rem}.filter-options__checkbox{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:8px;background:var(--card-bg, #141a33);border:1px solid transparent;cursor:pointer}.filter-options__checkbox input{accent-color:var(--color-accent, #6ca0ff)}.filter-options__empty{color:var(--text-muted, #94a3b8);font-size:.9rem}.prefix-dropdown{position:relative}.prefix-dropdown__trigger{width:100%;display:inline-flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.55rem .65rem;border-radius:10px;border:1px solid var(--border-color, #2a3152);background:var(--card-bg, #141a33);color:var(--text-color, #e5e7ff);cursor:pointer}.prefix-dropdown__menu{position:absolute;top:calc(100% + 6px);left:0;width:100%;max-height:220px;overflow:auto;padding:.5rem;background:var(--card-bg, #0f142b);border:1px solid var(--border-color, #2a3152);border-radius:10px;box-shadow:0 12px 24px #00000047;z-index:6}.filter-options__actions{margin-top:.5rem}.filter-options__apply{padding:.55rem 1rem;border-radius:12px;border:1px solid var(--border-color, #2a3152);background:var(--color-accent, #6ca0ff);color:#0f142b;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease}.filter-options__apply:hover{transform:translateY(-1px);box-shadow:0 10px 18px #00000040}.prefix-list,.prefix-dropdown__menu--stacked{display:flex;flex-direction:column;gap:.35rem;max-height:240px;overflow-y:auto}.prefix-dropdown__trigger span{margin-left:.35rem}.taskdetail-container{padding:2rem}.taskdetail-title{font-size:2rem;margin-bottom:1rem}.detail-section{margin-bottom:1.8rem;padding:1rem;background:var(--card-bg);border-radius:var(--radius);border:var(--border-width, 1px) solid var(--border-color);box-shadow:var(--shadow-soft)}.detail-section h2{margin-bottom:.6rem}.back-btn{margin-bottom:1rem;padding:.5rem 1rem;border-radius:var(--radius)}.taskdetail-actions{margin-top:2rem;display:flex;gap:1rem}.taskdetail-submit,.td-submit{flex:1;background:var(--color-success);color:var(--text-on-solid);padding:.7rem;border:var(--border-width, 1px) solid var(--color-success);border-radius:var(--radius)}.taskdetail-reject,.td-reject{flex:1;background:var(--color-error);color:var(--text-on-solid);padding:.7rem;border:var(--border-width, 1px) solid var(--color-error);border-radius:var(--radius)}.taskdetail-loading{padding:2rem;text-align:center}.td-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.td-section{background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color);padding:1rem;border-radius:8px;box-shadow:var(--shadow-soft);margin-bottom:1rem}.td-attachments-section{grid-column:span 2;width:100%}.td-section h2{margin-top:0;font-size:1.1rem;color:var(--text-color);margin-bottom:.75rem}.td-section-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.td-edit-btn{padding:.35rem .7rem;border-radius:6px;border:var(--border-width, 1px) solid var(--color-accent, #2a5bd7);background:var(--surface-contrast, #eef3ff);color:var(--color-accent, #2a5bd7);font-weight:700;font-size:.85rem;cursor:pointer;transition:filter .15s ease}.td-edit-btn:hover{filter:brightness(.95)}.td-edit-btn.secondary{background:var(--card-bg-hover);border-color:var(--border-color);color:var(--text-color)}.td-edit-fields{display:flex;flex-direction:column;gap:.65rem}.td-input-row{display:flex;flex-direction:column;gap:.25rem;font-size:.95rem}.td-input-row input{padding:.5rem .65rem;border-radius:6px;border:var(--border-width, 1px) solid var(--border-color);background:var(--card-bg);color:var(--text-color)}.td-edit-actions{display:flex;gap:.5rem;margin-top:.75rem;justify-content:flex-end}.td-row{display:flex;justify-content:space-between;margin-bottom:.35rem}.td-row label{font-weight:600;color:var(--text-muted)}.td-topbar{display:flex;align-items:center;justify-content:space-between}.td-topbar-left{display:flex;align-items:center;gap:.9rem}.td-topbar-tag{font-size:1.6rem;font-weight:700;letter-spacing:.02em}.td-backbtn{padding:.4rem .8rem;border:var(--border-width, 1px) solid var(--border-color);background:var(--card-bg-hover);border-radius:4px}.td-title{margin:.3rem 0;font-size:1.8rem}.td-subtitle{color:var(--text-muted);margin-bottom:1rem}.td-rework-flag{padding:.1rem .5rem;margin-left:.5rem;background:#d1434329;color:var(--color-error);border-radius:4px;font-size:.85rem;font-weight:600}.td-actions{margin-top:2rem;display:flex;gap:1rem}.td-checklist-status{margin-top:.75rem;padding:.6rem .9rem;background:var(--surface-contrast);border:var(--border-width, 1px) solid var(--border-color);border-radius:6px;display:flex;align-items:center;gap:.75rem;font-size:.9rem;color:var(--text-color)}.td-checklist-status span{font-weight:600}.td-open-checklist{padding:.45rem .9rem;border:var(--border-width, 1px) solid var(--color-accent);background:var(--color-accent);color:var(--text-on-solid);font-size:.85rem;border-radius:5px;cursor:pointer;transition:background .15s ease}.td-open-checklist:hover:not(:disabled){filter:brightness(.95)}.td-open-checklist.secondary{background:var(--card-bg-hover);border-color:var(--border-color);color:var(--text-color)}.td-open-checklist.secondary:hover:not(:disabled){background:var(--card-bg)}.td-open-checklist:disabled{opacity:.55;cursor:not-allowed}.td-advance{flex:1;background:var(--color-success);color:var(--text-on-solid);padding:.7rem 1rem;border:var(--border-width, 1px) solid var(--color-success);border-radius:8px;font-weight:600;cursor:pointer;transition:background .15s ease}.td-history-list{display:flex;flex-direction:column;gap:.75rem}.td-history-item{background:var(--surface-contrast, #e8eef9);border:var(--border-width, 1px) solid var(--border-color);border-radius:8px;padding:.75rem .9rem}.td-history-meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.9rem}.td-history-role{font-weight:700;color:var(--text-color)}.td-history-date{font-size:.85rem}.td-history-edited{font-size:.8rem;color:var(--text-muted)}.td-history-right{display:flex;align-items:center;gap:.5rem}.td-history-flag{padding:2px 8px;border-radius:999px;background:#d1434326;color:var(--color-error);font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.02em}.td-history-notes{margin:.4rem 0 0;white-space:pre-wrap;color:var(--text-color)}.td-history-empty{margin:0;color:var(--text-muted)}.td-link-item{display:flex;align-items:center;gap:.75rem}.td-link-item a{color:var(--color-accent, #3b82f6);text-decoration:underline}.td-link-add-form{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.td-link-input{flex:1;min-width:200px;padding:.35rem .6rem;border:1px solid var(--border-color);border-radius:6px;background:var(--card-bg);color:var(--text-color);font-size:.9rem}.td-link-btn{padding:.35rem .85rem;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;font-size:.875rem;white-space:nowrap;margin-top:.5rem}.td-link-btn--cancel{color:var(--text-color-muted, var(--text-color))}.td-comments-section{margin-top:2rem}.td-comment-input{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.td-comment-input textarea{width:100%;min-height:100px;padding:.75rem;border-radius:6px;border:var(--border-width, 1px) solid var(--border-color);background:var(--card-bg);color:var(--text-color);resize:vertical}.td-comment-btn{align-self:flex-end;padding:.5rem 1rem;background:var(--color-accent);color:var(--text-on-solid);border:var(--border-width, 1px) solid var(--color-accent);border-radius:6px;cursor:pointer}.td-comment-btn.secondary{background:var(--card-bg-hover);color:var(--text-color);border-color:var(--border-color)}.td-comment-btn:disabled{opacity:.65;cursor:not-allowed}.td-history-edit textarea{width:100%;min-height:90px;padding:.6rem;border-radius:6px;border:var(--border-width, 1px) solid var(--border-color);background:var(--card-bg);color:var(--text-color);resize:vertical}.td-history-actions{display:flex;gap:.6rem;margin-top:.5rem}.td-comment-link{background:none;border:none;color:var(--color-accent);font-weight:600;cursor:pointer}.td-comment-link.danger{color:var(--color-error)}.td-comment-link:disabled{opacity:.6;cursor:not-allowed}.td-advance:hover:not(:disabled){filter:brightness(.95)}.td-advance:disabled{background:var(--surface-strong, #9bb8a0);cursor:not-allowed;opacity:.7;color:var(--text-muted);border-color:var(--border-color)}.td-reject{flex:1;background:var(--color-error);color:var(--text-on-solid);padding:.7rem 1rem;border:var(--border-width, 1px) solid var(--color-error);border-radius:8px;font-weight:600;cursor:pointer;transition:background .15s ease}.td-reject:hover:not(:disabled){filter:brightness(.9)}.td-reject:disabled{opacity:.6;cursor:not-allowed}.td-error-msg{margin-top:1rem;background:#d1434324;color:var(--color-error);border:var(--border-width, 1px) solid var(--color-error);padding:.65rem .9rem;border-radius:6px;font-size:.85rem;font-weight:500}[data-theme=dark] .td-section{background:#fff;color:#0a0a0a;border-color:var(--border-color)}[data-theme=dark] .td-row label,[data-theme=dark] .td-row span,[data-theme=dark] .td-breadcrumb,[data-theme=dark] .td-section h2{color:#0a0a0a}[data-theme=dark] .td-title,[data-theme=dark] .td-subtitle{color:#0d0d0d}[data-theme=dark] .td-rework-flag{background:#d1434329;color:#a40000}[data-theme=dark] .td-backbtn{background:#f0f2f5;color:#0a0a0a;border-color:var(--border-color)}.td-file-list{list-style:none;padding-left:0}.td-file-list li+li{margin-top:6px}.td-attachments-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.td-attachments-section .checklist-photo-strip{padding:1rem;border:var(--border-width, 1px) solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-soft);display:flex;flex-wrap:wrap;gap:12px}.td-attachments-section .td-attachment-list{list-style:none;padding:1rem;margin:0;border:var(--border-width, 1px) solid var(--border-color);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-soft)}.td-attachments-section .td-attachment-list li+li{margin-top:8px}.modal-content.photo-modal{background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1.25rem 1.5rem;width:min(90vw,900px)}.photo-modal-header{text-align:left;padding-bottom:.75rem;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.photo-modal-header h3{margin:0;font-size:1.1rem;font-weight:700}.photo-modal-subtitle{margin:.2rem 0 0;color:var(--text-muted);font-size:.9rem}.photo-modal-body{display:flex;justify-content:center;margin-bottom:1rem}.photo-modal-card{background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1rem;max-width:100%}.photo-modal-card img{max-width:100%;border-radius:calc(var(--radius) - 2px);display:block}.photo-modal-actions{display:flex;justify-content:flex-end;gap:.5rem}.photo-modal-overlay{align-items:flex-start;padding-top:80px}.checklist-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:14px 16px;margin-bottom:14px;display:flex;flex-direction:column;gap:10px;transition:border-color .2s ease}.checklist-item.has-error{border-color:var(--color-error)}.checklist-item-label{font-size:.95rem;font-weight:600;color:var(--label-color)}.required-badge{color:var(--label-required);margin-left:4px;font-weight:700}.yesnona-buttons{display:flex;gap:8px}.yesnona-btn{padding:6px 14px;border-radius:6px;border:1px solid var(--border-strong);background:var(--surface-contrast);cursor:pointer;font-weight:600;color:var(--text-color);transition:all .2s ease;min-width:48px;text-align:center}.yesnona-btn:hover{background:var(--surface-strong)}.yesnona-btn.active.yes{background:var(--color-success);border-color:var(--color-success);color:var(--text-on-solid)}.yesnona-btn.active.no{background:var(--color-error);border-color:var(--color-error);color:var(--text-on-solid)}.yesnona-btn.active.na{background:var(--text-muted);border-color:var(--text-muted);color:var(--text-on-solid)}@media(max-width:640px){.yesnona-buttons{gap:12px}.yesnona-btn{min-height:44px;padding:10px 18px;font-size:.95rem;flex:1 1 0}}.checklist-input-numeric{width:160px;padding:6px 10px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--input-text);font-size:.9rem;outline:none;transition:border-color .2s}.checklist-input-numeric:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.checklist-textarea{width:100%;min-height:60px;border:1px solid var(--input-border);border-radius:6px;padding:8px 10px;font-size:.9rem;resize:vertical;outline:none;transition:border-color .2s;background:var(--input-bg);color:var(--input-text)}.checklist-textarea:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.checklist-photo-preview img{width:100%;max-width:260px;border-radius:6px;border:1px solid var(--border-color)}.checklist-photo-placeholder{font-style:italic;color:var(--text-muted)}.checklist-photo-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.checklist-photo-thumb-wrapper{width:150px;min-height:150px;border:1px solid var(--border-color);border-radius:6px;overflow:hidden;position:relative;background:#fafafa;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:4px}.checklist-photo-thumb{width:100%;height:96px;object-fit:cover;border-radius:4px;cursor:pointer}.checklist-photo-actions{display:flex;gap:6px;width:100%;justify-content:center}.checklist-comment{margin-top:16px;display:flex;flex-direction:column;gap:8px}.checklist-comment label{font-size:.95rem;font-weight:600;color:var(--label-color)}.checklist-comment textarea{width:100%;min-height:60px;border:1px solid var(--input-border);border-radius:6px;padding:8px 10px;font-size:.9rem;resize:vertical;outline:none;transition:border-color .2s;background:var(--input-bg);color:var(--input-text)}.checklist-comment textarea:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.checklist-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--border-color)}.redline-label{display:inline-flex;align-items:center;gap:8px;font-size:.95rem;color:var(--text-color, #1a1a1a);margin-bottom:10px}.redline-label input{transform:scale(1.05)}.checklist-footer-actions{display:flex;gap:10px;justify-content:flex-start;align-items:center;flex-wrap:wrap}.checklist-footer-actions .btn-save,.checklist-footer-actions .btn-submit,.checklist-footer-actions .btn-photo-upload,.checklist-footer-actions .btn-back{min-height:38px;min-width:160px;border-radius:6px;font-size:.95rem;padding:6px 14px;display:inline-flex;align-items:center;justify-content:center}.checklist-footer-actions .btn-back{background:var(--card-bg);color:var(--text-color);border:1px solid var(--border-color);margin-left:auto}.checklist-footer-actions .btn-save{background:var(--surface-contrast);color:var(--text-color);border:1px solid var(--border-strong)}.checklist-footer-actions .btn-submit{background:var(--color-success);color:var(--text-on-solid);border:1px solid var(--color-success)}.checklist-footer-actions .btn-submit:disabled{opacity:.6;cursor:not-allowed}.checklist-footer-actions .btn-photo-upload{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.checklist-footer-actions .btn-photo-upload:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.checklist-footer-actions{flex-direction:column;align-items:stretch}.checklist-footer-actions .btn-save,.checklist-footer-actions .btn-submit,.checklist-footer-actions .btn-photo-upload,.checklist-footer-actions .btn-back{width:100%}.checklist-footer-actions .btn-back{margin-left:0}}.checklist-item-unknown{font-style:italic;color:var(--text-muted)}.field-error{color:var(--color-error);font-size:.8rem;margin-top:-4px}.checklist-header{display:flex;align-items:center;justify-content:space-between;position:relative;margin-bottom:1rem}.checklist-upload-actions{display:flex;gap:10px;align-items:center;margin:0 auto}.btn-photo-upload{background:var(--color-accent);color:var(--text-on-solid);padding:.45rem .85rem;border-radius:6px;border:1px solid var(--color-accent);cursor:pointer;font-weight:600;font-size:.95rem;transition:filter .15s ease,background .15s ease}.btn-photo-upload.outlined{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.btn-photo-upload:hover{filter:brightness(.95)}.btn-photo-upload input{display:none}.checklist-title{font-size:1.4rem;font-weight:700;color:var(--text-color)}.unsaved-indicator{font-size:.8rem;font-weight:600;color:var(--color-error);margin-right:2.5rem}.btn-close{position:absolute;right:0;top:50%;transform:translateY(-50%);background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);font-size:.95rem;cursor:pointer;padding:6px 14px;border-radius:6px;min-height:38px;display:inline-flex;align-items:center;justify-content:center}.btn-close:hover{color:var(--color-error);border-color:var(--color-error)}.rejectmodal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:9000}.rejectmodal-card{background:#1e1e1e;padding:24px;width:450px;border-radius:8px;box-shadow:0 0 10px #000;color:#fff}.rejectmodal-card select,.rejectmodal-card textarea{width:100%;margin:6px 0 12px;padding:8px;border-radius:6px;background:#111;color:#fff;border:1px solid #444}.rejectmodal-actions{display:flex;justify-content:flex-end;margin-top:16px;gap:12px}.rejectmodal-cancel{background:#555;padding:8px 14px;border-radius:6px}.rejectmodal-confirm{background:#b30000;padding:8px 14px;border-radius:6px}.completion-reports-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:2rem}.completion-reports-modal{background:#fff;border-radius:8px;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #0000004d}.completion-reports-modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e0e0e0}.completion-reports-modal__header h2{margin:0;font-size:1.5rem;font-weight:600;color:#333}.completion-reports-modal__close{background:none;border:none;font-size:2rem;line-height:1;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.completion-reports-modal__close:hover{background-color:#f0f0f0;color:#333}.completion-reports-modal__body{flex:1;overflow-y:auto;padding:2rem}.completion-reports-modal__loading,.completion-reports-modal__error,.completion-reports-modal__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}.completion-reports-modal__loading .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.completion-reports-modal__loading p{color:#666;font-size:1rem}.completion-reports-modal__error{color:#d32f2f}.completion-reports-modal__error p{margin:0;font-size:1rem}.completion-reports-modal__empty{color:#666}.completion-reports-modal__empty p{margin:0;font-size:1rem}.completion-reports-modal__actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e0e0e0}.completion-reports-modal__select-all{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.95rem;color:#333;font-weight:500}.completion-reports-modal__select-all input[type=checkbox]{width:18px;height:18px;cursor:pointer}.completion-reports-modal__buttons{display:flex;gap:.75rem}.completion-reports-modal__buttons .btn{padding:.6rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;border:none;transition:background-color .2s,opacity .2s}.completion-reports-modal__buttons .btn:disabled{opacity:.5;cursor:not-allowed}.completion-reports-modal__buttons .btn-primary{background-color:#06c;color:#fff}.completion-reports-modal__buttons .btn-primary:hover:not(:disabled){background-color:#0052a3}.completion-reports-modal__buttons .btn-secondary{background-color:#f0f0f0;color:#333}.completion-reports-modal__buttons .btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.completion-reports-modal__table-wrapper{overflow-x:auto;border-radius:6px;border:1px solid #e0e0e0}.completion-reports-modal__table{width:100%;border-collapse:collapse;font-size:.9rem}.completion-reports-modal__table thead{background-color:#f8f9fa}.completion-reports-modal__table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#555;border-bottom:2px solid #e0e0e0}.completion-reports-modal__table td{padding:.75rem 1rem;border-bottom:1px solid #f0f0f0;color:#333}.completion-reports-modal__table tbody tr:hover{background-color:#f8f9fa}.completion-reports-modal__table tbody tr:last-child td{border-bottom:none}.completion-reports-modal__table .col-checkbox{width:40px;text-align:center}.completion-reports-modal__table .col-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.completion-reports-modal__table .col-filename{font-weight:500;color:#06c}.completion-reports-modal__table .col-task,.completion-reports-modal__table .col-date{width:150px}.completion-reports-modal__table .col-user{width:200px}@media(max-width:768px){.completion-reports-modal-overlay{padding:1rem}.completion-reports-modal__header{padding:1rem 1.5rem}.completion-reports-modal__body{padding:1.5rem}.completion-reports-modal__actions{flex-direction:column;align-items:flex-start;gap:1rem}.completion-reports-modal__buttons{width:100%;flex-direction:column}.completion-reports-modal__buttons .btn{width:100%}.completion-reports-modal__table{font-size:.85rem}.completion-reports-modal__table th,.completion-reports-modal__table td{padding:.5rem .75rem}}.project-admin{max-width:960px;margin:0 auto;padding:2rem}.project-admin__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;position:sticky;top:0;z-index:20;background:transparent;padding:1rem 0;border-bottom:var(--border-width, 1px) solid var(--border-color, #222)}.project-admin__eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;opacity:.7}.project-admin__hint{margin-top:.4rem;color:var(--text-muted)}.project-admin__back{background:var(--card-bg);color:var(--text-color);border:var(--border-width, 1px) solid var(--border-color, #444);padding:.5rem .9rem;border-radius:var(--radius);transition:var(--transition)}.project-admin__back:hover{background:var(--card-bg-hover)}.project-admin__links{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.project-admin__card{display:flex;flex-direction:column;gap:.35rem;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color, #333);padding:1rem;border-radius:var(--radius);text-decoration:none;color:inherit;transition:var(--transition);word-break:break-all;box-shadow:var(--shadow-soft)}.project-admin__card:hover{background:var(--card-bg-hover);transform:translateY(-2px)}.project-admin__card--clickable{cursor:pointer}.project-admin__card--clickable:focus{outline:2px solid var(--color-accent, #3f8cff);outline-offset:2px}.project-admin__card-title{font-weight:600;font-size:1.05rem}.project-admin__card-hint{font-size:.9rem;color:var(--text-muted)}.project-admin__url{font-size:.8rem;opacity:.7}.project-admin__table-page{max-width:1200px}.project-admin__header-actions{display:flex;gap:.5rem;align-items:center}.project-admin__loading,.project-admin__error,.project-admin__empty{padding:1rem;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius)}.admin-task-cards{margin-bottom:1.25rem;display:flex;flex-direction:column;gap:.75rem}.project-admin__error{border-color:var(--color-error, #c0392b)}.project-admin__table-wrapper{max-height:60vh;overflow:auto;border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius)}.project-admin__table{width:100%;border-collapse:collapse;min-width:640px}.project-admin__table th,.project-admin__table td{padding:.65rem .75rem;border-bottom:var(--border-width, 1px) solid var(--border-color, #333);text-align:left;font-size:.95rem}.project-admin__table td:first-child,.project-admin__table th:first-child{text-align:center;width:48px}.project-admin__table th{background:var(--card-bg, #0f172a);position:sticky;top:0;z-index:2}.project-admin__table tr:hover td{background:#ffffff05}.project-admin__row--selected td{background:#3f8cff1f}.project-admin__actions{display:flex;gap:.75rem;margin-bottom:1rem}.project-admin__actions--inline{margin-bottom:0;gap:.5rem}.project-admin__btn{background:var(--color-accent, #3f8cff);color:var(--text-on-solid, white);border:none;border-radius:var(--radius, 6px);padding:.5rem .9rem;cursor:pointer;transition:var(--transition)}.project-admin__btn:hover{opacity:.9}.project-admin__btn.ghost{background:transparent;border:var(--border-width, 1px) solid var(--border-color, #444);color:var(--text-color)}.project-admin__file-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color, #444);padding:.5rem .9rem;border-radius:6px;cursor:pointer}.project-admin__file-btn input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.project-admin__actions-cell{display:flex;gap:.5rem}.project-admin__link-btn{background:transparent;border:var(--border-width, 1px) solid var(--border-color, #444);color:var(--text-color);padding:.35rem .65rem;border-radius:6px;cursor:pointer}.project-admin__link-btn.danger{border-color:var(--color-error, #c0392b);color:var(--color-error, #c0392b)}.project-admin__modal{position:fixed;inset:0;background:var(--overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.project-admin__modal-content{background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius);padding:1.25rem;width:min(840px,100%);z-index:201}.project-admin__modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.project-admin__close{background:transparent;color:var(--text-color);border:none;font-size:1.2rem;cursor:pointer}.project-admin__close.back-button{border:var(--border-width, 1px) solid var(--border-color, #d2d6e4);border-radius:6px;padding:6px 10px;font-size:.95rem;background:var(--card-bg, #fff)}.project-admin__form{display:flex;flex-direction:column;gap:.9rem}.project-admin__form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.project-admin__form label{display:flex;flex-direction:column;gap:.35rem;font-size:.95rem}.project-admin__form input,.project-admin__form select,.project-admin__form textarea{background:var(--card-bg);color:var(--text-color);border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:6px;padding:.45rem .6rem}.project-admin__form textarea{resize:vertical}.project-admin__checkbox{flex-direction:row!important;align-items:center;gap:.5rem!important}.project-admin__modal-actions{display:flex;justify-content:flex-end;gap:.6rem}.company-setup__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.project-admin__pill-nav{display:inline-flex;gap:.35rem;border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:999px;padding:.3rem;background:var(--card-bg);margin-bottom:1rem}.project-admin__pill-nav a{padding:.35rem .85rem;border-radius:999px;text-decoration:none;color:var(--text-color);border:var(--border-width, 1px) solid transparent}.project-admin__pill-nav a.active{background:var(--color-accent, #3f8cff);color:var(--text-on-solid, #fff);border-color:var(--color-accent, #3f8cff)}.project-admin__badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;background:#3f8cff1f;color:var(--color-accent, #3f8cff);font-size:.8rem;border:var(--border-width, 1px) solid rgba(63,140,255,.35)}.project-builder-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start}.project-builder-sidebar{position:sticky;top:96px;border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius);background:var(--card-bg);padding:1rem}.project-builder-sidebar__header{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.project-builder-task-list{display:flex;flex-direction:column;gap:.65rem;max-height:70vh;overflow:auto}.project-builder-task-list__item{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;text-align:left;background:var(--card-bg);color:var(--text-color);border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:10px;padding:.85rem .9rem;cursor:pointer}.project-builder-task-list__item.is-selected{border-color:var(--color-accent, #3f8cff);background:#3f8cff29;box-shadow:inset 0 0 0 1px #3f8cff40,0 10px 24px #3f8cff1f;transform:translateY(-1px)}.project-builder-task-list__item span,.project-builder-task-list__item small{color:var(--text-muted)}.project-builder-task-list__item.is-selected strong{color:var(--color-accent, #3f8cff)}.project-builder-workspace{min-width:0}.project-builder-form-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.project-builder-form-card__header h3{margin:0}.project-builder-form-card__hint{margin:.35rem 0 0;color:var(--text-muted)}.project-builder-form-card{border:var(--border-width, 1px) solid rgba(63,140,255,.18);border-radius:14px;background:linear-gradient(180deg,#3f8cff0f,#3f8cff05),var(--card-bg);box-shadow:var(--shadow-soft);padding:1rem}.project-builder-form-card__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:.9rem 1rem}.project-builder-form-card__field{grid-column:span 4;display:flex;flex-direction:column;gap:.35rem}.project-builder-form-card__field--compact{grid-column:span 3}.project-builder-form-card__field span{font-size:.85rem;font-weight:600;letter-spacing:.01em;color:var(--text-muted)}.project-builder-form-card__field-action{align-self:flex-start;margin-top:.15rem;padding:.4rem .7rem;font-size:.85rem}.project-builder-form-card__field input,.project-builder-form-card__field select{min-height:42px;background:#ffffffd1;color:var(--text-color);border:var(--border-width, 1px) solid rgba(79,99,147,.28);border-radius:10px;padding:.65rem .8rem;box-shadow:inset 0 1px #ffffff8c}.project-builder-form-card__field input:focus,.project-builder-form-card__field select:focus{outline:none;border-color:var(--color-accent, #3f8cff);box-shadow:0 0 0 3px #3f8cff29,inset 0 1px #ffffff8c}.project-builder-form-card__actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;padding-top:1rem;margin-top:1rem;border-top:1px solid rgba(79,99,147,.14)}.project-builder-route{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(79,99,147,.14)}.project-builder-route__header{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.5rem}.project-builder-route__workflow-name{padding:.2rem .55rem;border-radius:999px;background:#3f8cff1f;color:var(--color-accent, #3f8cff);font-size:.82rem;border:1px solid rgba(63,140,255,.28)}.project-builder-route__helper{color:var(--text-muted);font-size:.82rem}.project-builder-route__summary,.project-builder-route__empty{margin:0 0 .85rem;color:var(--text-muted)}.project-builder-route__steps{display:flex;flex-wrap:wrap;gap:.75rem}.project-builder-route__step{display:flex;align-items:flex-start;gap:.7rem;min-width:210px;flex:1 1 220px;padding:.8rem .9rem;border-radius:12px;border:var(--border-width, 1px) solid rgba(79,99,147,.18);background:#ffffff8c;cursor:grab;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.project-builder-route__step.is-selected{border-color:var(--color-accent, #3f8cff);box-shadow:0 0 0 3px #3f8cff1f;background:#3f8cff14}.project-builder-route__step.is-dragging{opacity:.55;transform:scale(.98);cursor:grabbing}.project-builder-route__step.is-terminal{border-style:dashed;cursor:default}.project-builder-route__step-index{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;background:#3f8cff24;color:var(--color-accent, #3f8cff);font-weight:700;flex-shrink:0}.project-builder-route__step-body{display:flex;flex-direction:column;gap:.2rem;min-width:0}.project-builder-route__step-body strong{font-size:.95rem}.project-builder-route__step-body span,.project-builder-route__step-body small{color:var(--text-muted)}.project-builder-preview__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.project-builder-preview__title{margin:0}.project-builder-preview__subtitle{margin:.35rem 0 0;color:var(--text-muted)}.project-builder-preview__meta{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem}.project-builder-preview__meta span{border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:999px;padding:.35rem .7rem;background:var(--card-bg);color:var(--text-muted);font-size:.9rem}.project-builder-preview__group{border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:12px;padding:.85rem 1rem;background:var(--card-bg);margin-bottom:.75rem}.project-builder-preview__group summary{cursor:pointer;font-weight:600}.project-builder-preview__body{margin-top:.25rem;display:flex;flex-direction:column;gap:.85rem}.project-builder-preview__level+.project-builder-preview__level{margin-top:.75rem}.project-builder-preview__level h4,.project-builder-preview__sublevel h5{margin:0 0 .45rem}.project-builder-preview__level h4{font-size:.95rem;color:var(--text-muted)}.project-builder-preview__sublevel{margin-top:.5rem;padding-left:.5rem;border-left:2px solid rgba(63,140,255,.18)}.project-builder-preview__sublevel h5{font-size:.92rem}.project-builder-preview__value-row{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(128,128,128,.18);padding:.35rem 0;align-items:flex-start}.project-builder-preview__value-row label{font-weight:600;color:var(--text-muted);flex:1}.project-builder-preview__value-row span{margin-left:auto;text-align:right;white-space:pre-wrap;max-width:60%}@media(max-width:960px){.project-builder-layout{grid-template-columns:1fr}.project-builder-sidebar{position:static}.project-builder-form-card__header{flex-direction:column;align-items:stretch}.project-builder-form-card__field,.project-builder-form-card__field--compact{grid-column:1 / -1}}.project-builder-editor-card{display:flex;flex-direction:column;gap:.9rem}.project-builder-editor-stack{grid-template-columns:1fr}.project-builder-editor__section-title,.project-builder-editor__category-input,.project-builder-editor__subcategory-input,.project-builder-editor__value-label input,.project-builder-editor__value-input textarea{width:100%;border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:8px;background:var(--card-bg);color:var(--text-color);padding:.55rem .7rem}.project-builder-editor__section-title{font-size:1.1rem;font-weight:700}.project-builder-editor__section-actions,.project-builder-editor__inline-actions{display:flex;flex-wrap:wrap;gap:.5rem}.project-builder-editor__group-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.project-builder-editor__category{border-top:1px solid rgba(128,128,128,.18);padding-top:.85rem}.project-builder-editor__category-title{font-size:1rem;font-weight:700}.project-builder-editor__subcategory{margin-top:.75rem;padding-left:.85rem;border-left:2px solid rgba(63,140,255,.18)}.project-builder-editor__row-head{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.6rem}.project-builder-editor__value-row{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr) auto;gap:.75rem;align-items:start;margin-bottom:.75rem}.project-builder-editor__value-label{display:flex;align-items:center}.project-builder-editor__value-label input{font-weight:600}.project-builder-editor__value-input textarea{resize:vertical;min-height:72px}.project-builder-editor__footer-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.project-builder-editor__section-actions .project-admin__link-btn,.project-builder-editor__inline-actions .project-admin__link-btn,.project-builder-editor__footer-actions .project-admin__link-btn{padding:.35rem .7rem;border-radius:999px}.project-builder-editor__footer-actions .danger{margin-left:auto}.project-builder-checklist{display:flex;flex-direction:column;gap:1rem}.project-builder-checklist__empty{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius)}.project-builder-checklist__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.project-builder-checklist__header h4{margin:0}.project-builder-checklist__badge{border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:999px;padding:.4rem .8rem;background:var(--card-bg);color:var(--text-muted);font-size:.9rem}.project-builder-checklist__list{display:flex;flex-direction:column;gap:.75rem}.project-builder-checklist__item{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.9rem 1rem;border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius);background:var(--card-bg)}.project-builder-checklist__item-main{display:flex;flex-direction:column;gap:.35rem}.project-builder-checklist__meta{display:flex;flex-wrap:wrap;gap:.5rem;color:var(--text-muted);font-size:.9rem}.project-builder-checklist__meta span{border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:999px;padding:.2rem .55rem}.project-builder-checklist__composer{padding:1rem;border:var(--border-width, 1px) solid var(--border-color, #333);border-radius:var(--radius);background:var(--card-bg)}.project-builder-checklist__composer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.project-builder-checklist__composer-grid label{display:flex;flex-direction:column;gap:.35rem}.project-builder-checklist__composer-grid input,.project-builder-checklist__composer-grid select{background:var(--card-bg);color:var(--text-color);border:var(--border-width, 1px) solid var(--border-color, #444);border-radius:6px;padding:.45rem .6rem}@media(max-width:960px){.project-builder-editor__group-header{align-items:stretch;flex-direction:column}.project-builder-editor__value-row{grid-template-columns:1fr}.project-builder-editor__footer-actions .danger{margin-left:0}.project-builder-checklist__header,.project-builder-checklist__item{flex-direction:column}}.layout-root{display:flex;flex-direction:column;min-height:100vh;background:var(--background);color:var(--text-color);box-sizing:border-box}.layout-body{display:flex;flex:1;min-height:0;overflow:visible}.layout-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--card-bg);border-bottom:var(--border-width, 1px) solid var(--border-color);box-shadow:var(--shadow-strong)}.layout-logo{font-size:1.7rem;font-weight:700;cursor:pointer;transition:var(--transition)}.layout-logo:hover{opacity:.8}.logo-accent{color:var(--color-accent)}.layout-left,.layout-center,.layout-right{display:flex;align-items:center;gap:.75rem}.layout-center{min-width:0}.layout-right{flex-wrap:wrap;justify-content:flex-end}.project-display{font-size:1rem;font-weight:500}.project-switcher{display:inline-flex;align-items:center;gap:.5rem;min-width:0}.project-switcher-label{font-size:1rem;font-weight:500;white-space:nowrap}.project-switcher select{min-width:280px;max-width:420px;padding:.45rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-color);font-size:.95rem}.project-switcher select:disabled{opacity:.7;cursor:not-allowed}.layout-nav{width:220px;min-width:200px;display:flex;flex-direction:column;gap:.35rem;padding:1.5rem 1.2rem;background:var(--card-bg);border-right:var(--border-width, 1px) solid var(--border-color);box-shadow:var(--shadow-strong);box-sizing:border-box}.layout-nav a{display:block;padding:.65rem .95rem;border-radius:8px;color:var(--text-color);font-size:1rem;font-weight:600;transition:var(--transition)}.layout-nav a:hover{background:var(--card-bg-hover);color:var(--text-color)}.layout-nav a.active{color:var(--color-accent);background:var(--card-bg-hover);box-shadow:inset calc(var(--border-width, 1px) * 2) 0 0 var(--color-accent)}.layout-content{flex:1;padding:2rem;min-width:0;overflow-x:hidden;overflow-y:auto;box-sizing:border-box}body.modal-open .layout-content{overflow:hidden}.layout-footer{text-align:center;padding:1rem;background:var(--card-bg);border-top:var(--border-width, 1px) solid var(--border-color);font-size:.9rem;opacity:.7}.logout-btn{padding:.35rem .9rem;border-radius:6px;background:var(--color-error);color:#fff;border:none;font-size:.9rem;transition:var(--transition)}.logout-btn:hover{filter:brightness(.92)}.theme-toggle-btn{padding:6px 10px;border-radius:6px;border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;font-size:1rem;transition:var(--transition)}.theme-toggle-btn:hover{background:var(--card-bg-hover)}.btn-sm{padding:6px 12px;font-size:.85rem;border-radius:6px}.btn-md{padding:8px 16px;font-size:.95rem;border-radius:6px}.btn-lg{padding:12px 20px;font-size:1.05rem;font-weight:600;border-radius:8px;min-height:52px}.btn-auto{width:auto}.btn-wide{flex:1}.btn-half{width:50%}.btn-full{width:100%}.action-group{display:flex;justify-content:center;width:100%}.action-group-inner{width:100%;max-width:720px;display:flex;gap:10px}@media(max-width:900px){.layout-body{flex-direction:column}.layout-nav{width:100%;min-width:0;flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:var(--border-width, 1px) solid var(--border-color);padding:1rem;gap:.5rem}.layout-nav a{flex:1 1 calc(50% - 1rem);text-align:center}}@media(max-width:768px){.layout-header{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem}.layout-left,.layout-center,.layout-right,.project-switcher{width:100%;justify-content:center}.project-switcher select{width:100%;max-width:100%;min-width:0}.layout-right{flex-wrap:wrap;justify-content:center;gap:.5rem .75rem}}.theme-toggle{position:relative;display:inline-block;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color);border-radius:12px;padding:.2rem;box-shadow:var(--shadow-soft, none)}.theme-toggle__button{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .75rem;border:none;background:var(--card-bg);color:var(--text-color);border-radius:10px;font-weight:600}.theme-toggle__chevron{font-size:.8rem;opacity:.8}.theme-toggle__menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--card-bg);border:var(--border-width, 1px) solid var(--border-color);border-radius:10px;min-width:160px;box-shadow:0 12px 30px #0000002e;display:flex;flex-direction:column;z-index:20}.theme-toggle__item{padding:.55rem .8rem;border:none;background:transparent;text-align:left;color:var(--text-color);font-weight:600;transition:background .15s ease}.theme-toggle__item:hover{background:var(--card-bg-hover)}.theme-toggle__item.is-active{background:var(--color-accent);color:#fff}
