:root{--bg: #f5f5f7;--card: #ffffff;--text: #111111;--muted: #6e6e73;--accent: #0a84ff;--border: rgba(0,0,0,.08);--shadow: 0 8px 30px rgba(0,0,0,.08);--radius: 16px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.header{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);background:#ffffffb3;border-bottom:1px solid var(--border)}.container{max-width:1100px;margin:0 auto;padding:16px}.hstack{display:flex;align-items:center;gap:12px}.spacer{flex:1}.brand{font-size:20px;font-weight:700;letter-spacing:-.2px}.btn{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:10px 16px;box-shadow:var(--shadow);cursor:pointer}.btn.primary{background:var(--accent);color:#fff;border-color:transparent}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.grid{display:grid;gap:16px}.grid.projects{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.segmented{display:inline-flex;border:1px solid var(--border);background:var(--card);border-radius:12px;padding:4px;box-shadow:var(--shadow)}.segmented button{all:unset;padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--muted)}.segmented .active{background:var(--bg);color:var(--text)}.input,.select{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:#fff}label{font-size:12px;color:var(--muted);display:block;margin-bottom:6px}.section-title{font-weight:700;margin:8px 0 4px}.small{color:var(--muted);font-size:12px}.header .brand{display:flex;align-items:center;gap:.5rem}.header .brand .logo{height:40px;width:auto;border-radius:8px}.priority-pill{padding:.15rem .5rem;border-radius:999px;font-size:.75rem;border:1px solid var(--border);text-transform:capitalize;margin-left:.5rem}.login-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.login-card{text-align:center;max-width:520px;width:100%;padding:24px}.brand.big .logo{width:56px;height:56px;border-radius:12px;background:#0aa;display:inline-block}.login-title{margin:8px 0 6px}.login-btn{width:280px;margin-top:8px}.login-footer{position:fixed;bottom:14px;left:0;right:0;text-align:center;opacity:.7}.sidebar{background:#fff;border-right:1px solid rgba(0,0,0,.08);padding:16px;position:relative}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:4px 6px}.sidebar-brand .logo{width:28px;height:28px;border-radius:8px;background:#0aa}.brand-name{font-weight:600}.sidebar-nav{display:flex;flex-direction:column;gap:8px;margin:16px 0}.sidebar-nav button{text-align:left;padding:8px 10px;border-radius:10px}.sidebar-nav button.active{background:#0000000f}.sidebar-section{margin-top:24px}.sidebar-title{font-size:12px;opacity:.7;margin-bottom:6px}.sidebar .logout{position:absolute;top:12px;right:12px}.layout>:not(.sidebar){padding:16px}.login-wrap{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.login-card{text-align:center;max-width:520px;width:100%;padding:24px;margin:0 auto}.brand.big{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:8px}.brand.big .logo{width:56px;height:56px;border-radius:12px;background:#0aa}.layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.layout .content{padding:16px}.phases-grid{line-height:1.1}.phases-grid .input{padding:2px 6px;height:26px}.phases-grid input[type=checkbox]{width:16px;height:16px}.small{font-size:11px}.brand.big .logo{width:300px;height:65px;border-radius:12px}.sidebar-brand .logo{width:200px;height:28px;border-radius:8px}:root{--g-arrow-color: #1f2937;--g-bar-color: #fff;--g-bar-border: #fff;--g-tick-color-thick: #ededed;--g-tick-color: #f3f3f3;--g-actions-background: #f3f3f3;--g-border-color: #ebeff2;--g-text-muted: #7c7c7c;--g-text-light: #fff;--g-text-dark: #171717;--g-progress-color: #dbdbdb;--g-handle-color: #37352f;--g-weekend-label-color: #dcdce4;--g-expected-progress: #c4c4e9;--g-header-background: #fff;--g-row-color: #fdfdfd;--g-row-border-color: #c7c7c7;--g-today-highlight: #37352f;--g-popup-actions: #ebeff2;--g-weekend-highlight-color: #f7f7f7}html[data-theme=dark]{--g-arrow-color: #e5e5e5;--g-bar-color: #2a2a2a;--g-bar-border: #3a3a3a;--g-tick-color-thick: #1a1a1a;--g-tick-color: #0a0a0a;--g-actions-background: #1a1a1a;--g-border-color: #2a2a2a;--g-text-muted: #999999;--g-text-light: #ffffff;--g-text-dark: #f5f5f5;--g-progress-color: #4a4a4a;--g-handle-color: #d0d0d0;--g-weekend-label-color: #3a3a3a;--g-expected-progress: #5a5a5a;--g-header-background: #0a0a0a;--g-row-color: #141414;--g-row-border-color: #2a2a2a;--g-today-highlight: #999999;--g-popup-actions: #1a1a1a;--g-weekend-highlight-color: #0f0f0f}.gantt-container{line-height:14.5px;position:relative;overflow:auto;font-size:12px;height:var(--gv-grid-height);width:100%;border-radius:8px;isolation:isolate}.gantt-container .popup-wrapper{position:absolute;top:0;left:0;background:var(--g-header-background);box-shadow:0 10px 24px -3px #0003;padding:10px;border-radius:5px;width:max-content;z-index:1000}.gantt-container .popup-wrapper .title{margin-bottom:2px;color:var(--g-text-dark);font-size:.85rem;font-weight:650;line-height:15px}.gantt-container .popup-wrapper .subtitle{color:var(--g-text-dark);font-size:.8rem;margin-bottom:5px}.gantt-container .popup-wrapper .details{color:var(--g-text-muted);font-size:.7rem}.gantt-container .popup-wrapper .actions{margin-top:10px;margin-left:3px}.gantt-container .popup-wrapper .action-btn{border:none;padding:5px 8px;background-color:var(--g-popup-actions);border-right:1px solid var(--g-border-color)}.gantt-container .popup-wrapper .action-btn:hover{filter:brightness(97%)}.gantt-container .popup-wrapper .action-btn:first-child{border-top-left-radius:4px;border-bottom-left-radius:4px}.gantt-container .popup-wrapper .action-btn:last-child{border-right:none;border-top-right-radius:4px;border-bottom-right-radius:4px}.gantt-container .grid-header{height:calc(var(--gv-lower-header-height) + var(--gv-upper-header-height) + 10px);background-color:var(--g-header-background);position:sticky;top:0;left:0;border-bottom:1px solid var(--g-row-border-color);z-index:1000}.gantt-container .lower-text,.gantt-container .upper-text{text-anchor:middle}.gantt-container .upper-header{height:var(--gv-upper-header-height)}.gantt-container .lower-header{height:var(--gv-lower-header-height)}.gantt-container .lower-text{font-size:12px;position:absolute;width:calc(var(--gv-column-width) * .8);height:calc(var(--gv-lower-header-height) * .8);margin:0 calc(var(--gv-column-width) * .1);align-content:center;text-align:center;color:var(--g-text-muted)}.gantt-container .upper-text{position:absolute;width:fit-content;font-weight:500;font-size:14px;color:var(--g-text-dark);height:calc(var(--gv-lower-header-height) * .66)}.gantt-container .current-upper{position:sticky;left:0!important;padding-left:17px;background:var(--g-header-background)}.gantt-container .side-header{position:sticky;top:0;right:0;float:right;z-index:1000;line-height:20px;font-weight:400;width:max-content;margin-left:auto;padding-right:10px;padding-top:10px;background:var(--g-header-background);display:flex}.gantt-container .side-header *{transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;background-color:var(--g-actions-background);border-radius:.5rem;border:none;padding:5px 8px;color:var(--g-text-dark);font-size:14px;letter-spacing:.02em;font-weight:420;box-sizing:content-box;margin-right:5px}.gantt-container .side-header *:last-child{margin-right:0}.gantt-container .side-header *:hover{filter:brightness(97.5%)}.gantt-container .side-header select{width:60px;padding-top:2px;padding-bottom:2px}.gantt-container .side-header select:focus{outline:none}.gantt-container .date-range-highlight{background-color:var(--g-progress-color);border-radius:12px;height:calc(var(--gv-lower-header-height) - 6px);top:calc(var(--gv-upper-header-height) + 5px);position:absolute}.gantt-container .current-highlight{position:absolute;background:var(--g-today-highlight);width:1px;z-index:999}.gantt-container .current-ball-highlight{position:absolute;background:var(--g-today-highlight);z-index:1001;border-radius:50%}.gantt-container .current-date-highlight{background:var(--g-today-highlight);color:var(--g-text-light);border-radius:5px}.gantt-container .holiday-label{position:absolute;top:0;left:0;opacity:0;z-index:1000;background:var(--g-weekend-label-color);border-radius:5px;padding:2px 5px}.gantt-container .holiday-label.show{opacity:100}.gantt-container .extras{position:sticky;left:0}.gantt-container .extras .adjust{position:absolute;left:8px;top:calc(var(--gv-grid-height) - 60px);background-color:var(--g-actions-background);color:var(--g-text-light);border:none;padding:8px;border-radius:3px}.gantt-container .hide{display:none}.gantt{user-select:none;-webkit-user-select:none;position:absolute}.gantt .grid-background{fill:none}.gantt .grid-row{fill:var(--g-row-color)}.gantt .row-line{stroke:var(--g-border-color)}.gantt .tick{stroke:var(--g-tick-color);stroke-width:.4}.gantt .tick.thick{stroke:var(--g-tick-color-thick);stroke-width:.7}.gantt .arrow{fill:none;stroke:var(--g-arrow-color);stroke-width:1.5}.gantt .bar-wrapper .bar{fill:var(--g-bar-color);stroke:var(--g-bar-border);stroke-width:0;transition:stroke-width .3s ease}.gantt .bar-progress{fill:var(--g-progress-color);border-radius:4px}.gantt .bar-expected-progress{fill:var(--g-expected-progress)}.gantt .bar-invalid{fill:transparent;stroke:var(--g-bar-border);stroke-width:1;stroke-dasharray:5}:is(.gantt .bar-invalid)~.bar-label{fill:var(--g-text-light)}.gantt .bar-label{fill:var(--g-text-dark);dominant-baseline:central;font-family:Helvetica;font-size:13px;font-weight:400}.gantt .bar-label.big{fill:var(--g-text-dark);text-anchor:start}.gantt .handle{fill:var(--g-handle-color);opacity:0;transition:opacity .3s ease}.gantt .handle.active,.gantt .handle.visible{cursor:ew-resize;opacity:1}.gantt .handle.progress{fill:var(--g-text-muted)}.gantt .bar-wrapper{cursor:pointer}.gantt .bar-wrapper .bar{outline:1px solid var(--g-row-border-color);border-radius:3px}.gantt .bar-wrapper:hover .bar{transition:transform .3s ease}.gantt .bar-wrapper:hover .date-range-highlight{display:block}.gantt .grid-column{fill:transparent;pointer-events:all}.gantt .grid-column:hover{fill:var(--g-weekend-highlight-color);transition:fill .1s ease}:root{--primary: #00A2B3;--primary-dark: #008a99;--accent: var(--primary);--surface-0: #f7f8fa;--surface-1: #ffffff;--danger: #dc2626;--warning: #d97706;--success: #16a34a;--info: #2563eb}body{background:var(--surface-0)}.btn.primary{background:var(--primary)}.btn.primary:hover{background:var(--primary-dark)}.btn-ghost{background:#00a2b31f;border-color:transparent}.app-shell{display:flex;min-height:100vh;background:var(--surface-0)}.app-main{flex:1;min-width:0;padding:16px 20px 32px;overflow-x:auto}.app-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.page{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.container{max-width:1200px}.container--wide,.page.container--wide{max-width:none;width:100%}.sidebar{width:260px;flex-shrink:0;background:var(--surface-1);border-right:1px solid var(--border);padding:16px 12px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar-brand .logo{width:200px;height:auto;border-radius:8px}.sidebar-nav{display:flex;flex-direction:column;gap:4px;margin-top:20px}.sidebar-nav__link{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--text);font-weight:500;font-size:14px}.sidebar-nav__link:hover{background:#0000000a}.sidebar-nav__link.active{background:#00a2b31f;color:var(--primary-dark);font-weight:600}.sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--border);display:grid;gap:8px}.sidebar-user{font-size:13px;padding:8px 10px;background:#f8fafc;border-radius:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header{margin-bottom:16px}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:6px}.breadcrumb a{color:var(--primary);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb__sep{margin:0 6px;opacity:.5}.page-header__row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-header__title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.page-header__actions{display:flex;gap:8px;flex-wrap:wrap}.filter-bar{margin-top:0}.filter-bar__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;align-items:end}.filter-bar__view{min-width:180px}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize;margin-left:6px;border:1px solid transparent}.badge--info{background:#dbeafe;color:#1d4ed8}.badge--warning{background:#fef3c7;color:#b45309}.badge--success{background:#dcfce7;color:#15803d}.badge--danger{background:#fee2e2;color:#b91c1c}.badge--muted{background:#f3f4f6;color:#6b7280}.table-wrap{overflow-x:auto;padding:0}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th,.data-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border)}.data-table th{font-size:12px;font-weight:600;color:var(--muted);background:#fafafa}.data-table tbody tr{cursor:pointer;transition:background .15s}.data-table tbody tr:hover{background:#00a2b30f}.data-table .row--risk{background:#dc26260a}.table-title{font-weight:600}.table-sub{margin-top:2px}.th-sort{all:unset;cursor:pointer;font-weight:600;color:inherit}.th-sort:hover{color:var(--primary)}.text-danger{color:var(--danger);font-weight:600}.progress{height:10px;background:#00000014;border-radius:999px;overflow:hidden}.progress--thin{height:6px}.progress__bar{height:100%;background:var(--primary);border-radius:999px;transition:width .3s ease}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.kpi-value{font-size:1.75rem;font-weight:700;margin-top:4px}.skeleton{background:linear-gradient(90deg,#eee 25%,#f5f5f5,#eee 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{display:grid;gap:10px}.toast-stack{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:360px}.toast{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:var(--surface-1);border:1px solid var(--border);box-shadow:0 8px 24px #0000001f;font-size:14px}.toast--success{border-left:4px solid var(--success)}.toast--error{border-left:4px solid var(--danger)}.toast--warning{border-left:4px solid var(--warning)}.toast--info{border-left:4px solid var(--info)}.toast__close{all:unset;cursor:pointer;font-size:18px;opacity:.5;padding:0 4px}.gantt-wrapper{overflow-x:auto;padding:8px 4px 16px}.gantt-mount{min-height:280px}.gantt-empty{padding:48px 24px;text-align:center}.gantt-toolbar{flex-wrap:wrap;gap:12px;margin-bottom:4px}.gantt-legend{margin-left:auto;gap:16px;flex-wrap:wrap}.gantt-legend__item{display:inline-flex;align-items:center;gap:6px}.gantt-legend__dot{width:12px;height:12px;border-radius:3px;display:inline-block}.gantt-legend__dot--project{background:var(--primary)}.gantt-legend__dot--phase{background:#6366f1}.gantt-legend__dot--late{background:var(--danger)}.gantt-legend__dot--done{background:var(--success)}.gantt .bar-wrapper.gantt-project .bar{fill:var(--primary)}.gantt .bar-wrapper.gantt-phase .bar{fill:#818cf8}.gantt .bar-wrapper.gantt-done .bar{fill:var(--success)}.gantt .bar-wrapper.gantt-late .bar{fill:var(--danger)}.gantt .bar-wrapper.gantt-project .bar-progress{fill:var(--primary-dark)}.gantt .bar-wrapper.gantt-phase .bar-progress{fill:#6366f1}.gantt .bar-wrapper.gantt-done .bar-progress{fill:#15803d}.gantt .bar-wrapper.gantt-late .bar-progress{fill:#b91c1c}.project-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.project-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px #0000001a}.empty-state{text-align:center;padding:32px;color:var(--muted)}.card--error{border-color:var(--danger);color:var(--danger)}.input--compact{font-size:12px;padding:4px 6px;min-width:0;height:28px}.weight-indicator--ok{color:var(--success)}.planning-links{margin:8px 0 0;padding-left:20px}.planning-links a{color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.dashboard-list{list-style:none;margin:0;padding:0}.dashboard-list li{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border);gap:12px}.dashboard-list li:last-child{border-bottom:0}.dashboard-list a{color:var(--primary);text-decoration:none;font-weight:500}.dashboard-list a:hover{text-decoration:underline}.kpi-card--clickable{cursor:pointer;transition:transform .15s}.kpi-card--clickable:hover{transform:translateY(-2px)}.kpi-card--danger .kpi-value{color:var(--danger)}.kpi-card--warning .kpi-value{color:var(--warning)}.kanban-board{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px;overflow-x:auto;padding-bottom:8px}.kanban-col{background:#f1f5f9;border-radius:12px;min-height:400px;display:flex;flex-direction:column}.kanban-col--over{outline:2px dashed var(--primary)}.kanban-col__header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:600;font-size:14px}.kanban-col__count{background:var(--surface-1);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.kanban-col__body{flex:1;padding:0 10px 12px;display:flex;flex-direction:column;gap:10px}.kanban-col--open .kanban-col__header{color:var(--info)}.kanban-col--progress .kanban-col__header{color:var(--warning)}.kanban-col--done .kanban-col__header{color:var(--success)}.kanban-col--cancelled{margin-top:16px;grid-column:1 / -1;min-height:auto}.kanban-card{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:12px;cursor:grab;box-shadow:0 2px 8px #0000000a;transition:box-shadow .15s,opacity .15s}.kanban-card:hover{box-shadow:0 4px 16px #00000014}.kanban-card--dragging{opacity:.5}.kanban-card--muted{opacity:.7;cursor:pointer}.kanban-card__title{font-weight:600;font-size:14px}.kanban-card__link{display:inline-block;margin-top:8px;color:var(--primary)}.gantt-hint{padding:8px 12px 0;margin:0;color:var(--muted)}.project-detail{display:grid;gap:16px}.project-summary{display:grid;grid-template-columns:1fr minmax(240px,320px);gap:24px;align-items:center;padding:16px 20px;background:linear-gradient(135deg,rgba(0,162,179,.06) 0%,var(--surface-1) 55%)}.project-summary__meta{display:flex;flex-wrap:wrap;gap:8px}.project-summary__progress{padding:14px 16px;background:var(--surface-1);border:1px solid var(--border);border-radius:12px}.project-summary__progress-value{font-size:1.75rem;font-weight:700;line-height:1;margin:6px 0 10px;color:var(--primary-dark)}.form-section{padding:0;overflow:hidden}.form-section__header{padding:16px 20px 12px;border-bottom:1px solid var(--border);background:#fafbfc}.form-section__title{margin:0;font-size:15px;font-weight:700}.form-section__subtitle{margin:4px 0 0;font-size:12px;color:var(--muted)}.form-section__body{padding:20px}.form-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px 20px}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid__span-2{grid-column:span 2}.form-grid__span-3{grid-column:span 3}.form-grid__full{grid-column:1 / -1}.form-field label{display:block;margin-bottom:6px;font-size:12px;font-weight:600;color:var(--muted)}.form-field .input,.form-field select,.form-field textarea{width:100%}.form-field textarea.input{min-height:88px;resize:vertical;padding:10px 12px}.form-field--readonly .input{background:#f8fafc;color:var(--muted);cursor:not-allowed}.phases-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--border);background:#fafbfc}.phases-card__title-wrap{flex:1;min-width:200px}.phases-card__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.weight-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;background:#fef3c7;color:#b45309;border:1px solid #fde68a}.weight-pill--ok{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.phases-table-wrap{overflow-x:auto;margin:0}.phases-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;font-size:13px}.phases-table th,.phases-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.phases-table th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#fafafa;white-space:nowrap}.phases-table tbody tr:hover{background:#00a2b308}.phases-table tbody tr:last-child td{border-bottom:0}.phases-table .phase-index{width:36px;text-align:center;font-weight:700;color:var(--muted);font-size:12px}.phases-table .input--compact{height:32px;font-size:13px;padding:6px 8px;width:100%;min-width:0}.phases-table .input--narrow{width:100%;max-width:72px}.phases-table .input--date{width:100%;min-width:0}.phase-check{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.phase-attachments{display:grid;gap:6px;min-width:140px}.phase-attachments__list{display:grid;gap:4px}.phase-attachment{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 8px;background:#f8fafc;border-radius:8px;font-size:11px}.phase-attachment a{color:var(--primary);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.phase-attachment a:hover{text-decoration:underline}.phase-meta-pill--tasks{background:#eef2ff;color:#3730a3}.phase-todo{margin-top:18px;padding:16px;border-radius:14px;border:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafc,#fff 48%)}.phase-todo--locked{opacity:.75}.phase-todo__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.phase-todo__title{margin:2px 0 0;font-size:16px;font-weight:700;color:#0f172a}.phase-todo__count{font-size:12px;color:#64748b;white-space:nowrap;padding:4px 10px;border-radius:999px;background:#f1f5f9}.phase-todo__composer{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:12px}.phase-todo__empty{margin:0;color:#94a3b8}.phase-todo__list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.phase-todo__item{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden}.phase-todo__item--done .phase-todo__item-title{text-decoration:line-through;color:#94a3b8}.phase-todo__item--expanded{border-color:#c7d2fe;box-shadow:0 0 0 1px #6366f11f}.phase-todo__row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px}.phase-todo__title-btn{all:unset;cursor:pointer;min-width:0;display:grid;gap:2px}.phase-todo__item-title{font-size:14px;font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phase-todo__item-meta{font-size:11px;color:#94a3b8}.phase-todo__details{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;border-top:1px solid #f1f5f9}.phase-todo__details .form-grid__full{grid-column:1 / -1}@media (max-width: 720px){.phase-todo__composer,.phase-todo__details{grid-template-columns:1fr}}.btn-icon{all:unset;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;cursor:pointer;color:var(--muted);font-size:14px;transition:background .15s,color .15s}.btn-icon:hover{background:#0000000f;color:var(--danger)}.phases-empty{padding:40px 24px;text-align:center;color:var(--muted)}.phases-footer{padding:12px 20px 16px;border-top:1px solid var(--border);display:grid;gap:8px}.phases-footer__hint{font-size:12px;color:var(--muted)}@media (max-width: 1200px){.project-detail .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-detail .form-grid__span-2{grid-column:span 2}.project-detail .form-grid__span-3{grid-column:span 3}}@media (max-width: 900px){.dashboard-grid,.project-summary,.form-grid,.form-grid--3{grid-template-columns:1fr}.form-grid__span-2,.form-grid__span-3{grid-column:auto}.kanban-board{grid-template-columns:1fr}.app-shell{flex-direction:column}.sidebar{width:100%;height:auto;position:relative;flex-direction:row;flex-wrap:wrap;align-items:center}.sidebar-nav{flex-direction:row;flex-wrap:wrap;margin-top:0}.sidebar-footer{margin-top:0;margin-left:auto;border:0;display:flex;align-items:center;gap:8px}.project-wrike-layout,.project-wrike-header{grid-template-columns:1fr}.modal.create-project-modal{width:calc(100% - 24px)}}.project-detail--wrike{gap:14px}.project-wrike-header{display:grid;grid-template-columns:1fr minmax(180px,240px) auto;gap:20px;align-items:center;padding:16px 20px;position:sticky;top:0;z-index:5;background:linear-gradient(135deg,rgba(0,162,179,.07) 0%,var(--surface-1) 50%)}.project-wrike-header__title{width:100%;border:0;background:transparent;font-size:1.45rem;font-weight:700;letter-spacing:-.02em;padding:4px 0;color:var(--text);outline:none;border-bottom:1px solid transparent}.project-wrike-header__title:focus{border-bottom-color:var(--primary)}.project-wrike-header__badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.project-wrike-header__badges .badge{margin-left:0}.project-wrike-header__progress{padding:10px 14px;background:var(--surface-1);border:1px solid var(--border);border-radius:12px}.project-wrike-header__actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.project-wrike-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}.project-wrike-main{display:grid;gap:16px;min-width:0}.project-desc-input{min-height:100px;resize:vertical}.property-panel{position:sticky;top:96px;padding:16px}.property-panel__title{margin:0 0 12px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.property-panel__list{display:grid;gap:12px}.property-field label{display:block;margin-bottom:4px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.phases-wrike .phase-list{display:grid;gap:8px;padding:12px 16px}.phase-row{border:1px solid var(--border);border-radius:12px;background:var(--surface-1);overflow:hidden;transition:box-shadow .15s,border-color .15s}.phase-row:hover{border-color:#00a2b359}.phase-row--expanded{box-shadow:0 4px 16px #0000000f;border-color:#00a2b366}.phase-row--done{background:#f0fdf4}.phase-row__summary{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px 12px;cursor:pointer}.phase-row__order{display:flex;flex-direction:column;align-items:center;gap:2px}.phase-row__index{font-size:12px;font-weight:700;color:var(--muted);min-width:18px;text-align:center}.phase-row__name{font-weight:600;height:34px}.phase-row__meta{display:flex;gap:12px;margin-top:4px;flex-wrap:wrap}.phase-row__stats{display:flex;align-items:center;gap:14px}.phase-row__stat{min-width:88px}.phase-row__stat strong{display:block;font-size:14px}.phase-row__stat--weight{min-width:40px;text-align:center}.phase-row__done{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}.phase-row__chevron{color:var(--muted);font-size:14px;width:16px}.phase-row__details{border-top:1px solid var(--border);padding:14px 16px 16px;background:#fafbfc}.phase-row__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}.phase-row__grid .form-grid__full{grid-column:1 / -1}.phase-row__actions{margin-top:12px;display:flex;justify-content:flex-end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .15s ease}.modal{background:var(--surface-1);border-radius:16px;box-shadow:0 24px 64px #0003;width:min(720px,100%);max-height:calc(100vh - 48px);overflow:auto;display:flex;flex-direction:column}.modal__header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 20px 8px;gap:12px}.modal__title{margin:0;font-size:1.25rem;font-weight:700}.modal__subtitle{margin:4px 0 0;font-size:13px;color:var(--muted)}.modal__steps{display:flex;gap:8px;padding:0 20px 12px}.modal__step{font-size:12px;font-weight:600;color:var(--muted);padding:6px 10px;border-radius:999px;background:#f1f5f9}.modal__step.active{background:#00a2b326;color:var(--primary-dark)}.modal__body{padding:8px 20px 16px}.modal__footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 20px;border-top:1px solid var(--border)}.template-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.template-card{all:unset;cursor:pointer;display:grid;gap:4px;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff;transition:border-color .15s,background .15s}.template-card:hover{border-color:var(--primary)}.template-card.active{border-color:var(--primary);background:#00a2b314}.template-preview{list-style:none;margin:16px 0 8px;padding:0;display:grid;gap:8px}.template-preview li{display:flex;gap:12px;align-items:center;padding:10px 12px;background:#f8fafc;border-radius:10px}.template-preview__name{font-weight:600;flex:1}@media (max-width: 900px){.phase-row__summary{grid-template-columns:auto 1fr}.phase-row__stats{grid-column:1 / -1;justify-content:space-between}.phase-row__grid,.template-options{grid-template-columns:1fr}}.project-detail--wrike{gap:0;padding-top:0}.project-detail--wrike>.breadcrumb{display:none}.project-wrike-header{margin:-16px -4px 0;padding:22px 24px 18px;border:0;border-bottom:1px solid var(--border);border-radius:0;box-shadow:none;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:minmax(320px,1fr) auto auto;gap:28px}.project-wrike-header .breadcrumb{margin:0 0 5px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.project-wrike-header__title{max-width:720px;font-size:1.75rem;line-height:1.15}.project-wrike-header__badges{margin-top:10px}.project-wrike-header__progress{display:flex;align-items:center;gap:12px;padding:0;border:0;background:transparent;min-width:180px}.project-progress-ring{--project-progress: 0deg;width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--primary) var(--project-progress),#e8eef0 0);position:relative}.project-progress-ring:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:inherit;background:#fff}.project-progress-ring span{position:relative;font-size:13px;font-weight:750;color:var(--primary-dark)}.project-delete-btn{color:var(--danger);box-shadow:none;border-color:transparent}.project-tabs{display:flex;align-items:center;gap:4px;margin:0 -4px 20px;padding:0 20px;height:48px;border-bottom:1px solid var(--border);background:#fff}.project-tabs__item{align-self:stretch;display:inline-flex;align-items:center;gap:7px;padding:0 15px;color:var(--muted);font-size:13px;font-weight:600;text-decoration:none;border-bottom:2px solid transparent}.project-tabs__item:hover{color:var(--text)}.project-tabs__item.active{color:var(--primary-dark);border-bottom-color:var(--primary)}.project-tabs__item span{min-width:19px;height:19px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;background:#edf2f4;font-size:10px}.project-wrike-layout{grid-template-columns:minmax(0,1fr) 320px;gap:24px}.project-overview,.phases-wrike,.property-panel{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 2px #0f172a09}.project-overview .form-section__header,.phases-wrike .phases-card__header{background:transparent;padding:18px 20px 14px}.project-overview .form-section__body{padding:6px 20px 18px}.project-desc-input{min-height:76px;border:0;padding:8px 0;border-radius:0;background:transparent;line-height:1.6;box-shadow:none}.project-desc-input:focus{outline:0;box-shadow:inset 0 -1px var(--primary)}.property-panel{top:112px;padding:0;overflow:hidden}.property-panel__header{padding:18px 18px 14px;border-bottom:1px solid var(--border)}.property-panel__header p{margin:3px 0 0;color:var(--muted);font-size:11px}.property-panel__title{margin:0;color:var(--text);font-size:14px;text-transform:none;letter-spacing:0}.property-panel__list{gap:0;padding:8px 18px 16px}.property-panel__pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.property-field{padding:9px 0;border-bottom:1px solid rgba(0,0,0,.045)}.property-field:last-child{border-bottom:0}.property-field .input{height:36px;padding:7px 9px;border-radius:8px;font-size:12px;background:#fbfcfd;box-shadow:none}.phases-wrike .phase-list{padding:4px 12px 12px;gap:6px}.phases-wrike .phases-footer{padding:11px 18px 14px}.phase-row{border-radius:10px;box-shadow:none}.phase-row--expanded{border-color:#00a2b380;box-shadow:0 6px 20px #005a6414}.phase-row__summary{min-height:74px;padding:10px 14px 10px 10px;grid-template-columns:50px minmax(220px,1fr) auto;gap:14px}.phase-row__order{width:42px;height:42px;justify-content:center;position:relative;border-radius:10px;background:#f1f5f7}.phase-row__index{font-size:14px;color:var(--text)}.phase-row__move{display:none;position:absolute;top:0;right:0;bottom:0;left:0;grid-template-columns:1fr 1fr;background:#f1f5f7;border-radius:inherit}.phase-row:hover .phase-row__move{display:grid}.phase-row__move .btn-icon{width:auto;height:42px;border-radius:0;font-size:12px}.phase-row__name{height:auto;font-size:14px;font-weight:700}.phase-row__meta{margin-top:6px;gap:6px}.phase-meta-pill{display:inline-flex;align-items:center;padding:3px 7px;border-radius:6px;background:#f4f7f8;color:var(--muted);font-size:10px}.phase-row__stats{gap:18px}.phase-row__stat{min-width:116px}.phase-row__stat .progress{width:110px;margin-top:4px}.phase-row__stat--weight{min-width:46px;padding-left:14px;border-left:1px solid var(--border)}.phase-row__details{padding:18px 20px 16px 74px;background:#fbfcfd}.weight-pill{font-size:11px;padding:6px 10px;border-radius:7px}@media (max-width: 1100px){.project-wrike-header{grid-template-columns:1fr auto}.project-wrike-header__progress{grid-row:2}.project-wrike-header__actions{grid-column:2;grid-row:1 / 3}.project-wrike-layout{grid-template-columns:1fr}.property-panel{position:static}.property-panel__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}@media (max-width: 700px){.project-wrike-header{margin-left:-12px;margin-right:-12px;padding:18px 16px;grid-template-columns:1fr}.project-wrike-header__actions{grid-column:1;grid-row:auto;justify-content:flex-start}.project-tabs{overflow-x:auto}.phase-row__summary{grid-template-columns:42px 1fr}.phase-row__stats{grid-column:1 / -1}.phase-row__details{padding-left:16px}.property-panel__list{grid-template-columns:1fr}}.project-detail--wrike{position:relative}.project-detail--wrike:before{content:"";position:fixed;inset:0 0 auto 260px;height:360px;z-index:-1;pointer-events:none;background:radial-gradient(circle at 82% 0%,rgba(34,211,238,.12),transparent 30%),linear-gradient(180deg,rgba(0,162,179,.06),transparent 100%)}.project-wrike-header{min-height:178px;padding:24px 28px;border-bottom:0;color:#fff;background:radial-gradient(circle at 78% -80%,rgba(255,255,255,.28),transparent 52%),linear-gradient(125deg,#075c66,#008c9b 52%,#00a2b3)}.project-wrike-header .breadcrumb,.project-wrike-header .breadcrumb a{color:#ffffffb3}.project-wrike-header .breadcrumb a:hover{color:#fff}.project-wrike-header__title{color:#fff;border-bottom-color:transparent}.project-wrike-header__title:focus{border-bottom-color:#ffffffb3}.project-wrike-header__badges .badge{border:1px solid rgba(255,255,255,.25);color:#fff;background:#ffffff24;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.project-hero__summary{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:18px}.project-hero__summary-item{display:flex;align-items:center;gap:9px;min-width:130px}.project-hero__summary-item>span:last-child{display:grid;gap:1px}.project-hero__summary-item small{color:#ffffffa6;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.project-hero__summary-item strong{color:#fff;font-size:11px;font-weight:650}.project-hero__avatar,.project-hero__summary-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;color:#fff;background:#ffffff29;border:1px solid rgba(255,255,255,.2);font-size:11px;font-weight:750}.project-hero__summary-icon{font-size:16px}.project-wrike-header__progress{color:#fff}.project-wrike-header__progress .small{color:#ffffffad}.project-progress-ring{background:conic-gradient(#fff var(--project-progress),rgba(255,255,255,.2) 0)}.project-progress-ring:before{background:#08727d}.project-progress-ring span{color:#fff}.project-wrike-header__actions .btn{color:#fff;border-color:#ffffff47;background:#ffffff1f;box-shadow:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.project-wrike-header__actions .btn:hover{background:#ffffff38}.project-wrike-header__actions .btn.primary{color:#06717c;border-color:#fff;background:#fff;box-shadow:0 8px 20px #00323c33}.project-wrike-header__actions .project-delete-btn{color:#ffd5d5}.project-tabs{height:54px;margin-bottom:24px;padding-left:24px;border-radius:0 0 12px 12px;box-shadow:0 8px 24px #0f172a0d}.project-overview .form-section__header,.phases-wrike .phases-card__header{display:flex;align-items:center;gap:12px}.section-heading-icon{width:34px;height:34px;flex:0 0 34px;display:grid;place-items:center;border-radius:10px;color:var(--primary-dark);background:#00a2b31c;font-size:18px;font-weight:700}.section-heading-icon--phases{color:#4f46e5;background:#eef2ff}.section-kicker{display:block;margin-bottom:2px;color:#6366f1;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.property-panel{border-top:4px solid var(--primary)}.property-panel__header{background:linear-gradient(180deg,rgba(0,162,179,.06),transparent)}.property-field label{display:flex;align-items:center;gap:5px}.property-icon{width:16px;height:16px;display:inline-grid;place-items:center;color:var(--primary-dark)}.property-icon svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.phases-wrike{border-top:4px solid #6366f1}.phases-wrike .phase-list{position:relative;gap:10px;padding:8px 16px 16px}.phase-row{position:relative;border-left-width:4px}.phase-row--todo{border-left-color:#94a3b8}.phase-row--active{border-left-color:#f59e0b}.phase-row--done{border-left-color:#16a34a;background:#fbfffc}.phase-row--active .phase-row__order{color:#9a5b00;background:#fff7df}.phase-row--done .phase-row__order{color:#15803d;background:#dcfce7}.phase-row--todo .phase-row__order{color:#64748b;background:#f1f5f9}.phase-row__accent{height:2px;margin-top:-2px;background:linear-gradient(90deg,var(--primary),#22d3ee);transition:width .25s ease}.phase-row--done .phase-row__accent{background:#22c55e}.phase-row__title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.phase-state{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:750;letter-spacing:.03em;text-transform:uppercase}.phase-state--todo{color:#64748b;background:#f1f5f9}.phase-state--active{color:#a15c00;background:#fff2cc}.phase-state--done{color:#15803d;background:#dcfce7}.phase-row__open-label{color:var(--primary-dark);font-size:10px;font-weight:700}.phase-row__chevron{width:20px;height:20px;display:grid;place-items:center;border-radius:6px;color:var(--primary-dark);background:#00a2b314}.phase-row__actions{gap:7px}.phase-row__actions .btn:last-child{margin-left:auto;color:var(--danger)}@media (max-width: 1100px){.project-wrike-header{min-height:auto}.project-hero__summary{gap:12px}}@media (max-width: 700px){.project-wrike-header{padding:20px 16px}.project-hero__summary{align-items:flex-start}.project-hero__summary-item{width:100%}.phase-row__open-label{display:none}}.italian-date{position:relative;width:100%}.italian-date__text{width:100%;padding-right:38px!important;font-variant-numeric:tabular-nums}.italian-date__button{position:absolute;top:50%;right:7px;width:28px;height:28px;transform:translateY(-50%);display:grid;place-items:center;padding:0;border:0;border-radius:7px;color:var(--primary-dark);background:transparent;cursor:pointer}.italian-date__button:hover{background:#00a2b31a}.italian-date__button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.italian-date__native{position:absolute;right:8px;bottom:0;width:1px;height:1px;opacity:0;pointer-events:none}.italian-date--invalid .italian-date__text{border-color:var(--danger);box-shadow:0 0 0 2px #dc262614}.italian-date__error{display:block;margin-top:4px;color:var(--danger);font-size:10px}.italian-date--disabled .italian-date__button{opacity:.45;cursor:not-allowed}.page-header__subtitle{margin:4px 0 0;color:#64748b;font-size:14px}button.project-tabs__item{background:none;border:none;font:inherit;cursor:pointer}.task-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.task-status--da_fare{background:#e2e8f0;color:#475569}.task-status--in_corso{background:#dbeafe;color:#1d4ed8}.task-status--bloccato{background:#fee2e2;color:#b91c1c}.task-status--completato{background:#dcfce7;color:#15803d}.task-priority{display:inline-flex;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600}.task-priority--alta{background:#fff1f2;color:#be123c}.task-priority--media{background:#fff7ed;color:#c2410c}.task-priority--bassa{background:#f8fafc;color:#64748b}.task-workspace{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:18px}.task-workspace__header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px;flex-wrap:wrap}.task-workspace__toolbar{display:flex;gap:8px;align-items:center}.task-view-toggle{display:inline-flex;background:#f1f5f9;border-radius:10px;padding:3px}.task-view-toggle__btn{border:0;background:transparent;padding:6px 12px;border-radius:8px;font-size:13px;cursor:pointer;color:#64748b}.task-view-toggle__btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a14}.input--compact{max-width:160px;padding:6px 10px}.task-workspace__composer{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:14px}.task-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.task-list--page{margin-top:12px}.task-list__item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc)}.task-list__item.is-done .task-list__title{text-decoration:line-through;color:#94a3b8}.task-list__check,.task-list__main{all:unset;cursor:pointer}.task-list__check{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:#f1f5f9;color:var(--primary);font-weight:700}.task-list__main{min-width:0;display:grid;gap:4px}.task-list__title{font-weight:600;color:#0f172a}.task-list__meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.task-chip{font-size:11px;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:999px}.task-empty{padding:20px;text-align:center;color:#94a3b8;border:1px dashed #cbd5e1;border-radius:12px}.task-board{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;overflow-x:auto}.task-board__col{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:10px;min-height:280px;display:flex;flex-direction:column;gap:8px}.task-board__col-head{display:flex;justify-content:space-between;align-items:center}.task-board__cards{display:grid;gap:8px;flex:1}.task-card{all:unset;display:grid;gap:6px;padding:12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;cursor:grab;box-shadow:0 1px 2px #0f172a0a}.task-card:hover{border-color:#99f6e4}.task-card__meta{font-size:12px;color:#64748b}.task-board__drop{margin-top:auto;padding:8px;text-align:center;font-size:11px;color:#94a3b8;border:1px dashed #cbd5e1;border-radius:8px}.task-table-wrap{overflow:auto}.task-table{width:100%;border-collapse:collapse;font-size:13px}.task-table th,.task-table td{padding:10px 8px;border-bottom:1px solid #e2e8f0;text-align:left;white-space:nowrap}.task-table tbody tr{cursor:pointer}.task-table tbody tr:hover{background:#f8fafc}.task-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;z-index:80;display:flex;justify-content:flex-end}.task-drawer{width:min(520px,100vw);height:100%;background:#fff;box-shadow:-12px 0 40px #0f172a2e;padding:18px 18px 28px;overflow:auto;display:grid;gap:14px;align-content:start}.task-drawer__top{display:flex;justify-content:space-between;align-items:center}.task-drawer__top-main{display:flex;gap:8px}.task-drawer__title{all:unset;font-size:22px;font-weight:700;color:#0f172a;line-height:1.25}.task-drawer__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.task-drawer__section{border-top:1px solid #e2e8f0;padding-top:12px;display:grid;gap:8px}.task-drawer__section h3{margin:0;font-size:14px}.task-drawer__section-head{display:flex;justify-content:space-between;align-items:center}.task-sublist,.task-dep-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.task-sublist label{display:flex;gap:8px;align-items:center}.task-sublist .is-done{text-decoration:line-through;color:#94a3b8}.task-dep-list li{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;background:#f8fafc;border-radius:8px;font-size:13px}.task-inline-composer{display:grid;grid-template-columns:1fr auto;gap:8px}.task-inline-composer--comment{grid-template-columns:1fr}.task-comments{display:grid;gap:10px}.task-comment{display:grid;grid-template-columns:auto 1fr;gap:10px}.task-comment__avatar{width:32px;height:32px;border-radius:999px;display:grid;place-items:center;background:#ccfbf1;color:#0f766e;font-size:11px;font-weight:700}.task-comment__meta{display:flex;gap:8px;align-items:baseline}.task-comment p{margin:4px 0 0;font-size:14px;white-space:pre-wrap}.task-drawer__footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #e2e8f0;padding-top:12px}.mywork-tabs{display:inline-flex;gap:4px;background:#f1f5f9;padding:4px;border-radius:12px;margin:8px 0 16px}.mywork-tabs__btn{border:0;background:transparent;padding:8px 14px;border-radius:10px;cursor:pointer;color:#64748b;display:inline-flex;gap:8px;align-items:center}.mywork-tabs__btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #0f172a14}.mywork-badge{background:var(--primary);color:#fff;border-radius:999px;min-width:18px;height:18px;padding:0 6px;font-size:11px;display:inline-grid;place-items:center}.inbox-panel__actions{margin-bottom:10px}.inbox-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.inbox-item{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.inbox-item--unread{border-color:#99f6e4;background:#f0fdfa}.inbox-item__actions{display:flex;gap:6px;align-items:flex-start}.cal-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.cal-toolbar__nav{display:flex;gap:8px;align-items:center}.cal-toolbar__label{text-transform:capitalize;min-width:160px;text-align:center}.cal-toolbar__mine{display:inline-flex;gap:8px;align-items:center;font-size:13px}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.cal-grid__dow{font-size:12px;font-weight:600;color:#64748b;text-align:center;padding:4px}.cal-cell{min-height:110px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:8px;display:flex;flex-direction:column;gap:6px}.cal-cell--empty{background:transparent;border-color:transparent}.cal-cell--today{border-color:var(--primary);box-shadow:0 0 0 1px #00a2b333}.cal-cell__day{font-size:12px;font-weight:700;color:#334155}.cal-cell__tasks{display:grid;gap:4px}.cal-pill{display:block;font-size:11px;padding:3px 6px;border-radius:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.cal-legend{margin-top:10px;color:#64748b}.workload-filters{margin-bottom:14px}.workload-list{display:grid;gap:10px}.workload-row{display:grid;grid-template-columns:200px 1fr auto;gap:14px;align-items:center;padding:12px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:12px}.workload-row__who{display:grid;gap:2px}.workload-row__bar-wrap{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden}.workload-row__bar{height:100%;background:linear-gradient(90deg,#00a2b3,#2dd4bf);border-radius:999px;min-width:4px}.workload-row__stats{display:flex;gap:12px;font-size:12px;color:#64748b;white-space:nowrap}.workload-row__stats .is-danger{color:#b91c1c}.template-tasks-preview{margin-top:12px}@media (max-width: 960px){.task-board{grid-template-columns:repeat(2,minmax(200px,1fr))}.task-drawer__grid,.workload-row{grid-template-columns:1fr}}@media (max-width: 720px){.task-workspace__composer,.task-list__item,.task-board{grid-template-columns:1fr}.cal-grid{gap:4px}.cal-cell{min-height:84px}}
