/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.m-1{margin:var(--spacing)}.m-2{margin:calc(var(--spacing) * 2)}.m-3{margin:calc(var(--spacing) * 3)}.flex{display:flex}.hidden{display:none}.hidden\!{display:none!important}.inline-block{display:inline-block}.table{display:table}.resize{resize:both}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--font-body:"Segoe UI",Arial,sans-serif;--font-display:"Aptos Display","Segoe UI",Arial,sans-serif;--ink:#17252f;--muted:#667782;--line:#dfe6e8;--surface:#fff;--canvas:#f4f7f7;--navy:#123642;--navy-deep:#0d2a34;--teal:#0c7c79;--teal-soft:#e4f2f0;--coral:#d85b47;--amber:#d79a39;--shadow:0 10px 30px #1d3a4312}*{box-sizing:border-box}body,html{background:var(--canvas);min-height:100%;color:var(--ink);font-family:var(--font-body),Arial,sans-serif;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{grid-template-columns:244px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy-deep);color:#dbe8e9;z-index:40;flex-direction:column;width:244px;min-height:100vh;padding:26px 17px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand-row{align-items:center;gap:12px;padding:0 10px 28px;display:flex}.brand-row strong{font-family:var(--font-display);letter-spacing:.14em;color:#fff;font-size:17px;line-height:1;display:block}.brand-row small{letter-spacing:.32em;color:#8fb1b4;font-size:8px}.brand-mark{border:2px solid #58c5bd;border-radius:2px 10px;width:31px;height:35px;position:relative;transform:skewY(-8deg)}.brand-mark:after{content:"";border:2px solid #2f8f8d;border-radius:2px 9px;position:absolute;inset:7px -6px -6px 6px}.nav-caption{color:#668990;letter-spacing:.16em;margin:12px 12px 9px;font-size:9px;font-weight:700}.nav-item{color:#a9c1c4;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;width:100%;min-height:43px;margin:2px 0;padding:0 12px;font-size:13px;display:flex}.sidebar a{text-decoration:none}.nav-item:hover{color:#fff;background:#ffffff0e}.nav-item.active{color:#fff;background:#164753;box-shadow:inset 3px 0 #43b9b1}.nav-item em{color:#fff;background:#c65243;border-radius:10px;place-items:center;min-width:20px;height:18px;margin-left:auto;font-size:10px;font-style:normal;display:grid}.sidebar-bottom{margin-top:auto}.workspace-card{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-top:1px solid #244650;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;margin-top:14px;padding:16px 8px 2px;display:grid}.avatar,.top-avatar{color:#fff;background:#d7a262;border-radius:50%;place-items:center;font-size:11px;font-weight:700;display:grid}.avatar{width:35px;height:35px}.workspace-card strong{color:#fff;font-size:11px;display:block}.workspace-card span{color:#749499;font-size:9px}main{grid-column:2;min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;height:69px;padding:0 35px;position:sticky;top:0}.search-box,.topbar{align-items:center;display:flex}.search-box{color:#809097;background:#fbfcfc;border:1px solid #d9e1e3;border-radius:7px;gap:9px;width:min(470px,50vw);height:37px;padding:0 12px}.search-box input{color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:12px}.search-box kbd{color:#829196;background:#fff;border:1px solid #dae1e2;border-radius:4px;padding:2px 6px;font-size:9px}.icon-btn{color:#52646c;background:0 0;border:0;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.icon-btn:hover{background:#edf2f2}.notification{margin-left:auto;position:relative}.notification span{background:#d75d4a;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:7px;right:7px}.top-avatar{border:0;width:33px;height:33px;margin-left:10px}.menu-btn,.mobile-close{display:none}.page{max-width:1500px;margin:auto;padding:32px 36px 45px}.page-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:27px;display:flex}.eyebrow{color:var(--teal);letter-spacing:.13em;margin:0 0 7px;font-size:9px;font-weight:750}h1,h2{font-family:var(--font-display);margin:0}h1{letter-spacing:-.035em;font-size:clamp(25px,3vw,34px);line-height:1.15}.page-heading>div>span{color:var(--muted);margin-top:7px;font-size:12px;display:block}.actions{gap:9px;display:flex}.btn{border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;height:38px;padding:0 14px;font-size:11px;font-weight:700;display:inline-flex}.btn.primary{background:var(--teal);color:#fff;box-shadow:0 6px 16px #0c7c7930}.btn.primary:hover{background:#096d6b}.btn.secondary{color:#35474f;background:#fff;border-color:#d5dfe1}.metrics{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:15px;display:grid}.metrics article{background:#fff;border:1px solid #e0e7e8;border-radius:10px;align-items:flex-start;gap:14px;min-height:113px;padding:19px;display:flex;box-shadow:0 2px 8px #1e373d06}.metric-icon{border-radius:7px;flex:0 0 37px;place-items:center;width:37px;height:37px;display:grid}.metric-icon svg{width:18px}.metric-icon.blue{color:#277287;background:#e7f2f4}.metric-icon.navy{color:#244c58;background:#e7eef0}.metric-icon.coral{color:var(--coral);background:#f9e8e5}.metric-icon.amber{color:#b57924;background:#fbf0dc}.metrics article span{color:#6b7a80;margin-bottom:4px;font-size:10px;display:block}.metrics article strong{font-family:var(--font-display);font-size:26px}.metrics article small{color:#7a888d;margin-top:4px;font-size:9px;display:block}.metrics article small b{color:var(--teal)}.metrics article .danger{color:var(--coral)}.content-grid{grid-template-columns:1.55fr 1fr;gap:15px;display:grid}.panel{box-shadow:var(--shadow);background:#fff;border:1px solid #e0e7e8;border-radius:10px;min-width:0}.panel-head{border-bottom:1px solid #e8edef;justify-content:space-between;align-items:center;min-height:64px;padding:15px 18px;display:flex}.panel-head h2{letter-spacing:-.01em;font-size:14px}.panel-head p{color:#839095;margin:3px 0 0;font-size:9px}.panel-head a,.panel-head button{color:var(--teal);background:0 0;border:0;align-items:center;gap:3px;font-size:9px;font-weight:700;text-decoration:none;display:flex}.task-row{border-bottom:1px solid #eef1f2;grid-template-columns:28px minmax(160px,1fr) 92px 44px 28px;align-items:center;gap:9px;padding:14px 18px;display:grid}.task-row:last-child{border-bottom:0}.check{color:#a8b5b8;background:0 0;border:0;padding:0}.check:hover{color:var(--teal)}.task-info strong{font-size:10.5px;display:block}.task-info span{color:#7b898e;align-items:center;gap:5px;margin-top:4px;font-size:8.5px;display:flex}.priority-dot{background:#5c8ca2;border-radius:50%;width:5px;height:5px}.priority-dot.urgent{background:var(--coral)}.priority-dot.high{background:var(--amber)}.progress{align-items:center;gap:6px;display:flex}.progress>span{background:#e8edef;border-radius:4px;width:54px;height:4px;overflow:hidden}.progress b{background:var(--teal);height:100%;display:block}.progress small{color:#748388;font-size:8px}.task-row time{color:#718086;font-size:8px}.task-row time.today{color:var(--coral);font-weight:700}.mini-avatar{color:#fff;background:#d9a465;border-radius:50%;place-items:center;width:25px;height:25px;font-size:8px;font-weight:700;display:grid}.donut-wrap{justify-content:space-evenly;align-items:center;gap:24px;min-height:193px;padding:22px;display:flex}.donut{background:conic-gradient(#89a6ad 0 28.5%,#157c79 28.5% 60.5%,#e2a647 60.5% 78.5%,#314f5a 78.5%);border-radius:50%;place-items:center;width:120px;height:120px;display:grid;position:relative}.donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:16px}.donut div{z-index:1;text-align:center;position:relative}.donut strong{font-family:var(--font-display);font-size:24px;display:block}.donut span{color:#869398;letter-spacing:.12em;font-size:7px}.legend{min-width:120px}.legend p{color:#68787e;grid-template-columns:9px 1fr 18px;align-items:center;gap:6px;margin:11px 0;font-size:9px;display:grid}.legend i{border-radius:2px;width:7px;height:7px}.legend b{color:var(--ink)}.l-pending{background:#89a6ad}.l-progress{background:#157c79}.l-review{background:#e2a647}.l-done{background:#314f5a}.project-home-row{color:inherit;border-bottom:1px solid #edf1f2;grid-template-columns:36px 1fr 50px;align-items:center;gap:11px;padding:15px 18px;text-decoration:none;display:grid}.project-home-row:last-child{border:0}.project-home-row:hover{background:#f9fbfb}.project-code{color:#fff;border-radius:7px;place-items:center;width:36px;height:36px;font-size:10px;font-weight:800;display:grid}.project-home-row>div:nth-child(2)>strong{font-size:10.5px;display:block}.project-home-row>div:nth-child(2)>span{color:#89969a;font-size:8px}.bar{background:#e7ecec;border-radius:4px;height:3px;margin-top:7px;overflow:hidden}.bar b,.bar i{background:var(--teal);height:100%;display:block}.project-meta{text-align:right}.project-meta strong{font-size:11px;display:block}.project-meta span{color:#889397;font-size:8px}.activity-list{padding:5px 18px 10px}.activity-list>div{grid-template-columns:27px 1fr;gap:10px;padding:11px 0;display:grid;position:relative}.activity-list>div:not(:last-child):after{content:"";border-left:1px solid #dce4e5;position:absolute;top:37px;bottom:-5px;left:13px}.activity-icon{width:27px;height:27px;color:var(--teal);z-index:1;background:#e2f1ef;border-radius:50%;place-items:center;display:grid}.activity-icon.file{color:#536c84;background:#edf0f4}.activity-icon.comment{color:#a77937;background:#f5ecde}.activity-list p{color:#5f7076;margin:0;font-size:9px;line-height:1.55}.activity-list p b{color:#273a42}.activity-list small{color:#97a2a5;margin-top:3px;display:block}.backdrop,.modal-layer{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#07171d7a;border:0;position:fixed;inset:0}.modal-layer{z-index:60;place-items:center;padding:20px;display:grid}.modal{background:#fff;border-radius:12px;width:min(520px,100%);padding:23px;box-shadow:0 30px 80px #061c254d}.modal-head{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.modal h2{font-size:20px}.modal label{color:#516269;gap:6px;margin-bottom:15px;font-size:10px;font-weight:700;display:grid}.modal input,.modal select,.modal textarea{width:100%;color:var(--ink);background:#fbfcfc;border:1px solid #d7e0e2;border-radius:7px;outline:0;padding:10px;font-size:11px}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0c7c791a}.modal textarea{resize:vertical;min-height:85px}.field-row{grid-template-columns:1.3fr 1fr;gap:12px;display:grid}.modal-actions{justify-content:flex-end;gap:9px;display:flex}@media (max-width:1050px){.metrics{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}@media (max-width:740px){.app-shell{display:block}.sidebar{transition:transform .22s;transform:translate(-100%);box-shadow:20px 0 60px #03141b47}.sidebar-open{transform:translate(0)}.mobile-close{color:#9ab4b8;margin-left:auto;display:grid}.backdrop{display:block}.topbar{height:61px;padding:0 15px}.menu-btn{margin-right:5px;display:grid}.search-box{flex:1;width:auto}.search-box kbd{display:none}.page{padding:24px 15px 35px}.page-heading{flex-direction:column;align-items:flex-start}.actions{width:100%}.actions .btn{flex:1;justify-content:center}.metrics{grid-template-columns:1fr 1fr;gap:9px}.metrics article{min-height:105px;padding:14px}.metric-icon{flex-basis:32px;width:32px;height:32px}.task-row{grid-template-columns:25px 1fr 40px 25px;padding:13px 14px}.task-row .progress{display:none}.panel-head{padding:14px}.donut-wrap{padding:20px 12px}.field-row{grid-template-columns:1fr;gap:0}}@media (max-width:430px){.metrics{grid-template-columns:1fr}.metrics article{min-height:auto}.search-box input::placeholder{color:#0000}.donut{width:106px;height:106px}.project-list article{grid-template-columns:34px 1fr}.project-meta{display:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}.loading-state{min-height:60vh;color:var(--muted);place-items:center;font-size:13px;display:grid}.wide-page{max-width:1700px}.narrow-page{max-width:1100px}.sidebar-signout{color:#adc1c4;background:#183841;border:1px solid #31515a;border-radius:7px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:35px;margin-top:9px;font-size:10px;display:flex}.search-box{position:relative}.search-results{border:1px solid var(--line);z-index:80;background:#fff;border-radius:8px;padding:6px;position:absolute;top:43px;left:0;right:0;box-shadow:0 18px 45px #0e262f2e}.search-results button{width:100%;color:var(--ink);text-align:left;background:#fff;border:0;border-radius:5px;justify-content:space-between;padding:9px 10px;font-size:10px;display:flex}.search-results button:hover{background:#edf6f5}.search-results small{color:var(--muted)}.empty-state{text-align:center;color:#839095;border:1px dashed #cfdadd;border-radius:12px;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;min-height:260px;display:flex}.empty-state h1,.empty-state h2{color:var(--ink);font-size:18px}.empty-state p{margin:0;font-size:11px}.empty-state .btn{margin-top:8px;text-decoration:none}.form-error{color:#b74839;background:#faeae7;border:1px solid #f1d0ca;border-radius:6px;padding:8px 10px;font-size:10px}.form-help{color:#738389;margin:-5px 0 15px;font-size:9px}.auth-submit:disabled,.modal button:disabled{opacity:.55;cursor:not-allowed}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.project-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;padding:20px}.project-card-top{justify-content:space-between;align-items:flex-start;display:flex}.project-code.large{width:43px;height:43px;font-size:12px}.project-card-code{color:var(--teal);letter-spacing:.1em;margin:18px 0 4px;font-size:9px;font-weight:800}.project-card h2{font-size:17px}.project-description{color:#63747a;min-height:32px;font-size:10px;line-height:1.55}.project-facts{color:#728188;flex-wrap:wrap;align-items:center;gap:14px;font-size:9px;display:flex}.project-facts a,.project-facts span{color:inherit;align-items:center;gap:5px;text-decoration:none;display:flex}.project-disciplines{gap:6px;margin:16px 0;display:flex}.project-disciplines span{color:#53666d;background:#eef3f3;border-radius:4px;padding:4px 7px;font-size:8px}.project-card-progress{border-top:1px solid #ebeff0;padding:13px 0}.project-card-progress>div:first-child{color:#718086;justify-content:space-between;font-size:9px;display:flex}.project-card-progress b{color:var(--ink)}.project-card footer{color:#7b898e;border-top:1px solid #ebeff0;justify-content:space-between;align-items:center;padding-top:13px;font-size:9px;display:flex}.project-card footer div{align-items:center;gap:5px;display:flex}.project-card footer button{color:#94a2a6;background:0 0;border:0;padding:5px}.project-card footer button:hover{color:var(--coral)}.project-card footer a{color:var(--teal);align-items:center;gap:3px;font-weight:700;text-decoration:none;display:flex}.status-pill{color:#5f747a;white-space:nowrap;background:#edf2f2;border-radius:20px;align-items:center;width:max-content;padding:4px 8px;font-size:8px;font-weight:750;display:inline-flex}.status-pill.active,.status-pill.approved,.status-pill.completed{color:#187064;background:#e2f1ed}.status-pill.in_review,.status-pill.paused,.status-pill.pending_review,.status-pill.review{color:#986c27;background:#f7edd9}.status-pill.archived,.status-pill.obsolete{color:#64747a;background:#e9edef}.status-pill.open{color:#b54c3c;background:#fae5e1}.status-pill.corrected,.status-pill.in_progress{color:#2b6e7e;background:#e1eff2}.status-pill.draft,.status-pill.pending{color:#617279;background:#edf1f2}.filterbar{align-items:center;gap:9px;margin-bottom:15px;display:flex}.filter-search,.filterbar label{color:#849398;background:#fff;border:1px solid #d8e1e3;border-radius:7px;align-items:center;gap:7px;height:37px;padding:0 10px;display:flex}.filter-search{width:min(340px,100%)}.filter-search input{width:100%}.filter-search input,.filterbar select{background:0 0;border:0;outline:0;font-size:10px}.filterbar select{color:#4e6168;min-width:130px}.kanban{grid-template-columns:repeat(4,minmax(230px,1fr));gap:12px;padding-bottom:8px;display:grid;overflow-x:auto}.kanban-column{background:#ebf0f1;border-radius:10px;min-height:520px;padding:11px}.kanban-column>header{justify-content:space-between;align-items:center;padding:4px 4px 12px;display:flex}.kanban-column>header div{align-items:center;gap:7px;display:flex}.kanban-column>header i{background:#80999f;border-radius:2px;width:7px;height:7px}.kanban-column.teal>header i{background:var(--teal)}.kanban-column.amber>header i{background:var(--amber)}.kanban-column.navy>header i{background:var(--navy)}.kanban-column h2{font-size:11px}.kanban-column>header>span{color:#61747a;background:#dfe6e7;border-radius:50%;place-items:center;width:20px;height:20px;font-size:8px;display:grid}.kanban-cards{gap:9px;display:grid}.kanban-card{cursor:grab;background:#fff;border:1px solid #dfe6e8;border-radius:8px;padding:13px;transition:transform .15s,opacity .15s;box-shadow:0 3px 10px #16303909}.kanban-card:hover{border-color:#cbd8da;transform:translateY(-2px)}.kanban-card.saving{opacity:.5}.card-drag{color:#9aa6aa;justify-content:space-between;display:flex}.priority{color:#63747b;background:#eef2f3;border-radius:4px;padding:3px 6px;font-size:7px;font-weight:800}.priority.urgent{color:#b94535;background:#fae4e0}.priority.high{color:#98671e;background:#f7ecd8}.priority.medium{color:#376d78;background:#e5f0f2}.kanban-card h3{font-family:var(--font-display);margin:12px 0 5px;font-size:11px;line-height:1.35}.kanban-card>p{color:#7e8c91;margin:0 0 10px;font-size:8.5px}.tag-row{flex-wrap:wrap;gap:4px;display:flex}.tag-row span{color:#6c7a80;background:#f2f5f5;border-radius:3px;gap:3px;padding:3px 5px;font-size:7px}.card-progress,.tag-row span{align-items:center;display:flex}.card-progress{gap:6px;margin:12px 0}.card-progress>span{background:#e8eeee;border-radius:4px;flex:1;height:3px;overflow:hidden}.card-progress i{background:var(--teal);height:100%;display:block}.card-progress small{color:#78868b;font-size:7px}.kanban-card footer{color:#78878d;border-top:1px solid #edf1f2;justify-content:space-between;padding-top:10px;font-size:8px;display:flex}.kanban-card footer span{align-items:center;gap:4px;display:flex}.kanban-card footer .overdue{color:var(--coral);font-weight:700}.task-detail>p:not(.eyebrow){color:var(--muted);font-size:11px;line-height:1.6}.detail-grid{grid-template-columns:1fr 1fr;gap:10px;margin:18px 0;display:grid}.detail-grid div{background:#f4f7f7;border-radius:6px;padding:10px}.detail-grid b,.detail-grid span{display:block}.detail-grid span{color:#849196;font-size:8px}.detail-grid b{margin-top:3px;font-size:10px}.task-detail label{margin-top:8px}.observations-list{gap:10px;display:grid}.observations-list>article{border:1px solid var(--line);background:#fff;border-radius:9px;grid-template-columns:4px 1fr auto;gap:15px;padding:17px;display:grid;box-shadow:0 3px 13px #16303909}.observation-flag{background:#72939b;border-radius:5px}.observation-flag.urgent{background:var(--coral)}.observation-flag.high{background:var(--amber)}.observation-title{align-items:center;gap:7px;display:flex}.priority-text{color:#61767c;font-size:8px}.priority-text.urgent{color:var(--coral)}.priority-text.high{color:#9f7028}.observation-main h2{margin-top:9px;font-size:13px}.observation-main>p{color:#65767c;margin:6px 0 11px;font-size:9px}.observation-meta{color:#839095;flex-wrap:wrap;gap:14px;font-size:8px;display:flex}.observation-meta span{align-items:center;gap:4px;display:flex}.observation-owner{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;min-width:140px;display:flex}.observation-owner>span{color:#65767c;font-size:8px}.observation-owner .btn{justify-content:center;width:100%;height:31px;font-size:8px}.table-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;overflow-x:auto}.doc-table{min-width:870px}.doc-row{color:#5e7077;border-top:1px solid #e9eeef;grid-template-columns:1.7fr 1.15fr .65fr .45fr .65fr .58fr 24px;align-items:center;gap:12px;padding:13px 16px;font-size:9px;display:grid}.doc-header{color:#7c8b90;text-transform:uppercase;letter-spacing:.06em;background:#f3f6f6;border:0;font-size:7px;font-weight:800}.doc-name{align-items:center;gap:9px;display:flex}.doc-name b{color:var(--ink);font-size:9.5px;display:block}.doc-name small{color:#8a969a;font-size:7.5px}.doc-icon{width:31px;height:31px;color:var(--teal);background:#e5f1f0;border-radius:6px;place-items:center;display:grid}.doc-icon svg{width:15px}.doc-row a{color:var(--teal)}.timeline{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:15px 24px}.timeline article{grid-template-columns:40px 1fr;gap:14px;padding:17px 0;display:grid;position:relative}.timeline article:not(:last-child):after{content:"";border-left:1px solid #dbe4e5;position:absolute;top:54px;bottom:-12px;left:19px}.timeline-icon{width:40px;height:40px;color:var(--teal);z-index:1;background:#e2f1ef;border-radius:50%;place-items:center;display:grid}.timeline-icon.document{color:#536c84;background:#edf0f4}.timeline-icon.comment{color:#a77937;background:#f5ecde}.timeline-icon.observation{color:var(--coral);background:#f9e8e5}.timeline-icon svg{width:17px}.timeline article span{color:#96a2a6;font-size:8px}.timeline h2{margin:3px 0;font-size:11px}.timeline p{color:#64757b;margin:3px 0;font-size:9.5px}.timeline small{color:#879499;font-size:8px}.settings-grid{grid-template-columns:1.55fr 1fr;gap:15px;display:grid}.settings-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:20px}.settings-card>header{border-bottom:1px solid #e8edef;align-items:center;gap:12px;margin-bottom:17px;padding-bottom:16px;display:flex}.settings-card>header>svg{color:var(--teal);width:20px}.settings-card h2{font-size:13px}.settings-card header p{color:#7d8b90;margin:3px 0 0;font-size:8.5px}.settings-card label{color:#52636a;gap:5px;margin-bottom:13px;font-size:9px;font-weight:700;display:grid}.settings-card input{border:1px solid #d7e0e2;border-radius:7px;padding:10px;font-size:10px}.profile-edit{align-items:center;gap:12px;margin-bottom:17px;display:flex}.large-avatar{width:47px;height:47px}.settings-side{align-content:start;gap:11px;display:grid}.settings-card.compact{padding:17px}.settings-card.compact>header{border:0;margin:0;padding:0}.connection-badge{text-align:center;border-radius:5px;margin-top:13px;padding:7px;font-size:8px;font-weight:800;display:block}.connection-badge.connected{color:#187064;background:#e2f1ed}.connection-badge.demo{color:#986c27;background:#f7edd9}.back-link{color:#718288;font-size:9px;text-decoration:none}.project-hero{border:1px solid var(--line);background:#fff;border-radius:11px 11px 0 0;grid-template-columns:62px 1fr auto;align-items:center;gap:18px;margin-top:13px;padding:23px;display:grid}.hero-code{width:62px;height:62px;font-size:16px}.project-hero h1{font-size:25px}.project-hero>div:nth-child(2)>p:not(.eyebrow){color:#67787e;max-width:650px;margin:7px 0 10px;font-size:10px}.hero-progress{text-align:right;border-left:1px solid var(--line);padding-left:25px}.hero-progress strong{font-family:var(--font-display);font-size:28px;display:block}.hero-progress span{color:#7c8b90;font-size:8px}.project-tabs{background:#fff;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;margin-bottom:15px;padding:0 18px;display:flex;overflow:auto}.project-tabs button{color:#6d7e84;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:14px 13px;font-size:9px}.project-tabs button.active{color:var(--teal);border-color:var(--teal);font-weight:800}.project-tabs button span{background:#edf2f2;border-radius:9px;margin-left:3px;padding:2px 5px;font-size:7px}.project-overview{grid-template-columns:1.3fr 1fr;gap:15px;display:grid}.project-data{grid-template-columns:1fr 1fr;gap:0;margin:0;display:grid}.project-data div{border-bottom:1px solid #edf1f2;padding:14px 18px}.project-data dt{color:#849196;font-size:8px}.project-data dd{margin:4px 0 0;font-size:10px;font-weight:700}.project-summary-numbers{text-align:center;grid-template-columns:repeat(3,1fr);padding:28px 15px;display:grid}.project-summary-numbers div:not(:last-child){border-right:1px solid var(--line)}.project-summary-numbers strong{font-family:var(--font-display);font-size:24px;display:block}.project-summary-numbers span{color:#7d8b90;font-size:8px}.project-tab-panel{min-height:340px}.simple-task-list>a,.simple-task-list>div{color:inherit;border-bottom:1px solid #edf1f2;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:14px 18px;text-decoration:none;display:grid}.simple-task-list svg{color:var(--teal);width:16px}.simple-task-list b,.simple-task-list small{display:block}.simple-task-list b{font-size:10px}.simple-task-list small{color:#829095;margin-top:3px;font-size:8px}.chat-panel{border:1px solid var(--line);max-width:880px;box-shadow:var(--shadow);background:#fff;border-radius:10px;margin:auto;overflow:hidden}.chat-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.chat-panel header div{align-items:center;gap:8px;display:flex}.chat-panel h2{font-size:12px}.chat-panel header svg{width:17px;color:var(--teal)}.chat-panel header>span{color:#638078;font-size:8px}.chat-panel header i{background:#2da879;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.messages{min-height:330px;max-height:520px;padding:20px;overflow:auto}.messages article{grid-template-columns:32px minmax(0,560px);gap:9px;margin-bottom:17px;display:grid}.messages article.own{grid-template-columns:minmax(0,560px) 32px;justify-content:end}.messages article.own .avatar{grid-column:2}.messages article.own>div:nth-child(2){background:#e8f3f2;grid-area:1/1}.messages article>div:nth-child(2){background:#f3f6f6;border-radius:4px 9px 9px;padding:9px 11px}.messages p{margin:0 0 4px;font-size:8px}.messages p time{color:#92a0a4;margin-left:7px}.messages article span{color:#465961;font-size:9.5px;line-height:1.5}.chat-panel form{border-top:1px solid var(--line);background:#f8fafa;gap:8px;padding:14px 17px;display:flex}.chat-panel form input{border:1px solid #d3dfe1;border-radius:7px;outline:0;flex:1;padding:10px;font-size:10px}.chat-panel form input:focus{border-color:var(--teal)}.chat-panel form button{background:var(--teal);color:#fff;border:0;border-radius:7px;place-items:center;width:37px;display:grid}.auth-page{background:#fff;grid-template-columns:1.05fr 1fr;min-height:100vh;display:grid}.auth-brand{background:var(--navy-deep);color:#fff;flex-direction:column;padding:45px 8vw 32px;display:flex;position:relative;overflow:hidden}.auth-brand:after{content:"";border:1px solid #4bb4ae29;border-radius:50%;width:600px;height:600px;position:absolute;bottom:-310px;right:-320px;box-shadow:0 0 0 80px #4bb4ae08,0 0 0 160px #4bb4ae06}.auth-branding{z-index:1;align-items:center;gap:14px;display:flex}.auth-branding strong{font-family:var(--font-display);letter-spacing:.15em;font-size:19px;display:block}.auth-branding small{color:#7ea2a7;letter-spacing:.34em;font-size:8px;display:block}.large-mark{width:37px;height:42px}.auth-copy{z-index:1;max-width:560px;margin:auto 0}.auth-copy h1{font-size:clamp(34px,4vw,57px);line-height:1.05}.auth-copy>p:not(.eyebrow){color:#9bb3b6;max-width:500px;font-size:13px;line-height:1.65}.auth-copy ul{color:#d8e5e6;gap:11px;margin:0;padding:18px 0 0;font-size:11px;list-style:none;display:grid}.auth-copy li{align-items:center;gap:9px;display:flex}.auth-copy li svg{color:#58bcb5;width:16px}.auth-brand footer{color:#5f7f84;letter-spacing:.14em;z-index:1;font-size:7px}.auth-panel{flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.auth-panel>small{color:#98a4a8;margin-top:25px;font-size:7.5px}.auth-box{width:min(390px,100%)}.auth-lock{width:44px;height:44px;color:var(--teal);background:#e3f1ef;border-radius:10px;place-items:center;margin-bottom:18px;display:grid}.auth-box h1,.auth-box h2{font-family:var(--font-display);margin:0;font-size:25px}.auth-box>p:not(.eyebrow){color:#77878d;margin:7px 0 24px;font-size:10px}.auth-form>label{color:#506269;gap:6px;margin-bottom:14px;font-size:9px;font-weight:750;display:grid}.auth-form input{width:100%;height:42px;color:var(--ink);border:1px solid #d5dfe1;border-radius:7px;outline:0;padding:0 11px;font-size:11px}.auth-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0c7c791a}.password-field{position:relative}.password-field button{color:#809096;background:0 0;border:0;width:35px;height:35px;position:absolute;top:3px;right:5px}.auth-options{justify-content:space-between;align-items:center;margin:3px 0 18px;font-size:8.5px;display:flex}.auth-options label{color:#65767c;align-items:center;gap:5px;display:flex}.auth-options input{width:auto;height:auto}.auth-options a,.back-auth{color:var(--teal);font-weight:700;text-decoration:none}.auth-submit{background:var(--teal);color:#fff;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;width:100%;height:43px;font-size:10px;font-weight:800;display:flex;box-shadow:0 8px 18px #0c7c792e}.demo-note{background:#f5f0e4;border:1px solid #e9dec3;border-radius:7px;padding:10px;color:#766640!important;margin-top:13px!important;font-size:8.5px!important;line-height:1.5!important}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.simple-auth-page{background:var(--canvas);flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:25px;display:flex}.auth-branding.dark{color:var(--navy)}.auth-branding.dark .brand-mark{border-color:var(--teal)}.simple-auth-page .auth-box{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;padding:27px}.back-auth{text-align:center;margin-top:17px;font-size:9px;display:block}.reset-success p{color:var(--muted);font-size:10px;line-height:1.5}@media (max-width:900px){.project-grid{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(4,270px)}.auth-page,.project-overview,.settings-grid{grid-template-columns:1fr}.auth-brand{min-height:42vh;padding:32px 8vw}.auth-copy{margin:45px 0}.auth-brand footer,.auth-copy ul{display:none}.auth-panel{min-height:58vh}.project-hero{grid-template-columns:50px 1fr}.hero-code{width:50px;height:50px}.hero-progress{display:none}}@media (max-width:620px){.filterbar{flex-direction:column;align-items:stretch}.filter-search,.filterbar label,.filterbar select{width:100%}.observations-list>article{grid-template-columns:4px 1fr}.observation-owner{grid-column:2;justify-content:flex-start}.observation-owner .btn{width:auto}.project-hero{grid-template-columns:1fr;padding:17px}.hero-code{width:43px;height:43px}.project-hero h1{font-size:21px}.project-tabs{padding:0}.project-summary-numbers{padding:20px 5px}.settings-grid{grid-template-columns:1fr}.auth-brand{display:none}.auth-page{display:block}.auth-panel{min-height:100vh}.modal{max-height:92vh;overflow:auto}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.auth-register{color:#77878d;font-size:9px;margin:14px 0 0;text-align:center}.auth-register a{color:var(--teal);font-weight:700;text-decoration:none}.auth-register a:hover{text-decoration:underline}.form-help{color:#7d8b90;font-size:8.5px;margin:-7px 0 13px}.form-success{align-items:center;color:#187064;display:flex;font-size:9px;font-weight:700;gap:5px;margin:4px 0 10px}.settings-card input[readonly]{background:#f5f7f7;color:#68777c;cursor:not-allowed}