@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
*{box-sizing:border-box}body{margin:0;background:#f6f7f9;color:#172d32;font-family:'DM Sans',sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #dce3e5;background:white;color:inherit;border-radius:8px;padding:10px 15px}button:hover{background:#eef5f2}button:disabled{opacity:.5;cursor:wait}input,select,textarea{border:1px solid #dce3e5;border-radius:7px;padding:11px;background:white;color:inherit;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid #6aab96}aside{position:fixed;width:228px;inset:0 auto 0 0;background:#113d36;color:#d3e4dc;padding:35px 20px}.logo{font-family:Manrope,sans-serif;font-size:30px;font-weight:800;color:#d7ed86;display:flex;gap:15px;align-items:center}.logo>span{font-size:25px;color:white;letter-spacing:3px}.side-label{font-size:10px;letter-spacing:1.4px;margin:60px 10px 17px;color:#88a99e}.nav{padding:15px 12px;border-radius:8px;font-size:13px;background:#285146;color:#ecf6de}.side-bottom{position:absolute;bottom:40px;font-size:12px;line-height:1.8}.side-bottom small{margin-left:14px;color:#8eb0a2}.dot{display:inline-block;width:6px;height:6px;background:#c0dc7d;border-radius:50%;margin-right:8px}main{margin-left:228px;padding:0 42px 30px;max-width:1800px}header{height:76px;border-bottom:1px solid #e2e7e8;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#697f80}header b{margin:0 14px;font-weight:400}.private{padding:7px 11px;background:#e9efeb;border-radius:5px;color:#47665a;font-size:11px}.heading{display:flex;align-items:center;justify-content:space-between;padding:38px 0 30px;gap:20px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#678d7d}h1{font-family:Manrope,sans-serif;font-size:38px;line-height:1.22;letter-spacing:-1.4px;margin:13px 0 15px;font-weight:800}h1 em{font-style:normal;color:#558171}.heading p,.board-title p{color:#849391;font-size:13px}.primary{background:#174e40;color:white;border-color:#174e40;font-weight:600}.primary:hover{background:#25644f}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.metrics article{background:white;border:1px solid #e2e8e5;border-radius:12px;padding:22px}.metrics article>span{color:#6b7f7b;font-size:12px}.metrics strong{display:block;font-family:Manrope,sans-serif;font-size:35px;letter-spacing:-1px;margin:12px 0}.metrics i{font-style:normal;font-size:18px;color:#9aaba6;font-weight:500}.metrics small{color:#97a69f;font-size:11px}.track{height:5px;background:#edf2ee;border-radius:6px;margin:20px 0 5px}.track div{height:100%;background:#a8c970;border-radius:6px}.board{background:white;border:1px solid #e0e6e3;border-radius:13px;overflow:hidden}.board-title{display:flex;align-items:center;justify-content:space-between;padding:24px 25px 10px}h2{font-family:Manrope,sans-serif;font-size:18px;margin:0}.board-title p{font-size:12px;margin-top:7px}.board-title button{font-size:12px}.toolbar{display:flex;gap:12px;padding:10px 25px 22px;align-items:center}.toolbar input{margin-left:auto;width:210px;font-size:12px}.toolbar select{font-size:12px}.tabs{background:#f2f5f3;padding:4px;display:flex;border-radius:8px}.tabs button{border:0;background:transparent;font-size:12px;padding:8px 15px}.tabs .selected{background:white;box-shadow:0 1px 4px #193b3320}.scroll{overflow:auto}.gantt{min-width:850px}.grid{display:grid;grid-template-columns:310px 1fr}.table-head{background:#f8faf9;height:45px;align-items:center;border-top:1px solid #e8edea;border-bottom:1px solid #e8edea;font-size:9px;letter-spacing:1px;color:#7b8b86}.table-head>div:first-child{padding-left:25px}.axis{height:100%;position:relative;display:flex;align-items:center}.axis span{position:absolute;font-size:10px;letter-spacing:0;white-space:nowrap;padding-left:7px}.project{width:100%;border:0;border-bottom:1px solid #f0f3f1;border-radius:0;background:white;padding:0;text-align:left;height:64px}.project:hover{background:#f8fbf9}.project-name{display:flex;align-items:center;gap:11px;padding:0 18px 0 25px;border-right:1px solid #e8eeeb}.project-name b{display:block;font-size:12px;font-weight:600}.project-name small{font-size:10px;color:#93a19a;display:block;margin-top:5px}.project-name strong{margin-left:auto;font-size:11px;color:#648477}.indicator{width:7px;height:7px;border-radius:50%;background:#c7b98e;flex-shrink:0}.indicator.done{background:#689d78}.indicator.blocked{background:#d5897a}.timeline{position:relative;background:repeating-linear-gradient(to right,transparent 0,transparent calc(14.2857% - 1px),#eef2ef calc(14.2857% - 1px),#eef2ef 14.2857%);display:flex;align-items:center;overflow:hidden}.undated{font-size:10px;color:#9baaa2;margin-left:20px;border:1px dashed #d9e1db;border-radius:6px;padding:8px 20px}.bar{position:absolute;height:29px;background:#efe8d7;border-radius:5px;overflow:hidden;min-width:8px}.bar>div{position:absolute;inset:0 auto 0 0;background:#d9c79c}.bar.done{background:#dcebdc}.bar.done>div{background:#bfd9bc}.bar.blocked{background:#f0d5cd}.bar.blocked>div{background:#e8b9ac}.bar span{position:relative;font-size:10px;white-space:nowrap;line-height:29px;padding-left:10px;color:#365b3e}.today{position:absolute;top:0;bottom:0;border-left:1px dashed #5f9177;pointer-events:none}.list-detail{padding-left:20px;font-size:12px;color:#6b8075}footer{display:flex;justify-content:space-between;gap:20px;padding:18px 25px;font-size:9px;color:#899c91;line-height:1.8}.legend{display:inline-block;width:6px;height:6px;background:#91b68b;border-radius:2px;margin:0 5px 0 10px}.legend.ongoing{background:#d9c79c}.legend.blocked{background:#d5897a}.source{font-size:10px;color:#8c9c92;margin-top:19px}.empty{padding:45px;text-align:center;color:#6e8176;line-height:1.8}.empty h3{color:#214536}.alert{background:#fff1ed;color:#964b37;padding:12px;border-radius:6px}.notice{font-size:12px;color:#46795b}.overlay{position:fixed;inset:0;background:#0b282866;display:flex;align-items:center;justify-content:center;z-index:10;padding:20px;backdrop-filter:blur(3px)}.modal{background:white;border-radius:16px;width:550px;padding:28px;max-height:95vh;overflow:auto;box-shadow:0 20px 100px #0c302330}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.modal-head h2{margin-top:8px}.modal label{display:flex;flex-direction:column;gap:7px;font-size:12px;margin:15px 0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fields label{margin:0}.modal input[type=range]{accent-color:#27664b}.actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}@media(max-width:1100px){aside{width:190px}main{margin-left:190px;padding:0 22px}.metrics{gap:10px}.metrics article{padding:16px}footer{flex-wrap:wrap}}@media(max-width:760px){aside{display:none}main{margin:0;padding:0 16px}header{height:60px}.heading{align-items:flex-start;flex-direction:column;padding-top:25px}h1{font-size:32px}.metrics{grid-template-columns:1fr 1fr}.toolbar{flex-wrap:wrap;padding:12px}.toolbar input{margin-left:0;flex:1}.board-title{padding:18px}.modal{padding:20px}.fields{gap:10px}.actions button{font-size:11px}.source{line-height:1.6}}
.kanban-scroll{overflow-x:auto;padding:6px 24px 24px;scrollbar-color:#9ab6a5 #edf3ef}.kanban{display:grid;grid-template-columns:repeat(9,260px);gap:16px;align-items:start}.kanban-column{background:#f2f5f3;border:1px solid #e4ebe6;border-radius:12px;min-height:340px;border-top:3px solid #aab9a1}.column-heading{display:flex;gap:8px;align-items:center;padding:16px 12px;min-height:76px}.column-heading h3{font-size:12px;line-height:1.4;margin:0;flex:1}.step-number{color:#8d9f91;font-size:10px}.column-count{background:white;border:1px solid #dce6dd;border-radius:5px;padding:3px 6px;font-size:10px}.column-cards{padding:0 10px 12px;display:grid;gap:10px}.kanban-card{background:white;border:1px solid #e0e7e0;border-radius:9px;padding:14px;box-shadow:0 2px 3px #173f2805;cursor:grab}.kanban-card:active{cursor:grabbing}.kanban-card:hover{border-color:#8eb49e;box-shadow:0 4px 12px #173f2810}.card-group{font-size:9px;color:#537b66;background:#edf4ed;padding:4px 6px;border-radius:4px}.card-name{display:flex;text-align:left;justify-content:space-between;width:100%;padding:15px 0 0;border:0;background:transparent;font-size:13px;font-weight:700;line-height:1.4;gap:8px}.card-name:hover{background:transparent;color:#518266}.card-name span{color:#99aca0;font-weight:400}.kanban-card p{font-size:10px;color:#8a9b90;margin:10px 0 13px}.card-date{font-size:10px;display:block;color:#668173;margin-bottom:10px}.kanban-card select{width:100%;font-size:10px;padding:8px 6px;background:#fafcfb}.column-empty{text-align:center;font-size:11px;color:#8e9e93;border:1px dashed #d5dfd6;border-radius:8px;padding:30px 6px;line-height:2}.column-empty small{font-size:10px;color:#a4b1a8}.stage-1{border-top-color:#9ebeb5}.stage-2{border-top-color:#b7ba91}.stage-3{border-top-color:#8faec0}.stage-4{border-top-color:#b49dc4}.stage-5{border-top-color:#cfb38d}.stage-6{border-top-color:#93bdac}.stage-7{border-top-color:#88afad}.stage-8{border-top-color:#4d8e66}.stage-hint{color:#72907d;font-size:11px}.project-name strong{font-size:10px}@media(max-width:760px){.kanban-scroll{padding:6px 12px 20px}.kanban{grid-template-columns:repeat(9,250px)}}

.transfer{display:flex;gap:8px;align-items:center}.import-button{cursor:pointer;border:1px solid #dce3e5;border-radius:8px;padding:10px 15px;font-size:12px}.import-button input{display:none}.login{max-width:440px;margin:10vh auto;background:white;padding:30px;border-radius:14px}.login input{width:100%;margin:8px 0 16px}.login h1{font-size:26px}.login a{color:#174e40}.login p{line-height:1.6}.private{text-decoration:none}
