:root{--terracotta:#b75430;--stone:#ece1d4;--green:#124b39;--espresso:#664725;--ink:#19120c;--ivory:#f3f1ee;--line:#e6dccc}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Figtree,system-ui,-apple-system,sans-serif;background:var(--ivory);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.side{width:232px;flex:none;background:#fff;border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column}.brand{gap:10px;padding:0 6px 22px}.brand,.brand .mark{display:flex;align-items:center}.brand .mark{width:34px;height:34px;border-radius:8px;background:var(--terracotta);justify-content:center;color:var(--ivory);font-weight:600;font-size:17px}.brand .nm{font-weight:600;font-size:15px}.brand .sb{font-size:11px;color:#9a8f80}.nav a{display:block;padding:9px 11px;border-radius:9px;font-size:13.5px;font-weight:600;color:#5c5346;margin-bottom:2px}.nav a:hover{background:#faf7f3}.nav a.on{background:var(--terracotta);color:#fff}.side .foot{margin-top:auto;font-size:12px;color:#9a8f80;padding:0 6px}.side .foot form button{background:none;border:0;color:var(--espresso);font:inherit;font-weight:600;cursor:pointer;padding:0;margin-top:6px}.main{flex:1 1;padding:30px 34px 70px;min-width:0}.head{display:flex;align-items:flex-end;gap:16px;margin-bottom:22px;flex-wrap:wrap}h1{font-size:27px;font-weight:600;letter-spacing:-.01em}.head .sub{color:var(--espresso);font-size:13.5px;padding-bottom:3px}.head .sp{flex:1 1}.card{background:#fff;border:1px solid var(--line);border-radius:13px}.btn{display:inline-block;border:0;border-radius:9px;padding:9px 15px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;background:var(--terracotta);color:#fff}.btn.sec{background:#efeae2;color:var(--ink)}.btn:disabled{opacity:.5;cursor:default}.field{display:block;margin-bottom:13px}.field span{display:block;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#9a8f80;font-weight:600;margin-bottom:5px}input,select,textarea{width:100%;font:inherit;font-size:13.5px;padding:9px 11px;border:1px solid #e0d5c3;border-radius:9px;background:#fcfaf7;color:var(--ink)}textarea{min-height:92px;resize:vertical}.tag{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:20px}.s-Idea{background:#efeae2;color:#5c5346}.s-Drafted{background:#e7edf6;color:#24486e}.s-Submitted{background:#f6e9d4;color:#7a5417}.s-Approved{background:#e1ede6;color:#124b39}.s-Changes{background:#f6ded4;color:#8e3d1f}.s-Scheduled{background:#e5e1f2;color:#3b3170}.s-Published{background:var(--green);color:#fff}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#9a8f80;font-weight:600;border-bottom:1px solid var(--line)}td,th{padding:12px 14px}td{border-bottom:1px solid #f3ede4;font-size:13.5px;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfaf7}.empty,.muted{color:#9a8f80}.empty{padding:46px 20px;text-align:center;font-size:13.5px}.grid2{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:13px;gap:13px}.stat{padding:15px 17px}.stat b{display:block;font-size:27px;font-weight:600;line-height:1.15}.stat span{font-size:12px;color:#9a8f80}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login .box{width:100%;max-width:380px;padding:30px}.login h1{font-size:23px;margin-bottom:4px}.login p{font-size:13.5px;margin-bottom:20px}.login p,.note{color:var(--espresso)}.note{margin-top:13px}.err,.note{font-size:12.5px}.err{color:#8e3d1f;margin-top:11px}.auth{position:relative;display:flex;min-height:100vh;overflow:hidden}.auth-bg{position:absolute;inset:0;display:flex;z-index:0}.bg-l{width:46vw;background:var(--terracotta)}.bg-r{flex:1 1;background:var(--stone)}.lines-l,.lines-r{position:absolute;top:0;bottom:0;z-index:1;pointer-events:none;overflow:hidden}.lines-l{left:0;width:46vw}.lines-r{left:46vw;right:0}.auth-brand{position:relative;z-index:2;flex:1 1 46%;display:flex;align-items:flex-start;padding:13vh 54px 56px;color:var(--ivory)}.auth-brand-in{max-width:420px}.tag-line{font-size:21px;line-height:1.42;margin-top:32px;max-width:15em}.strap{margin-top:26px;font-size:13px;letter-spacing:.11em;text-transform:uppercase;opacity:.85}.auth-form{position:relative;z-index:2;flex:1 1 54%;display:flex;align-items:center;justify-content:center;padding:40px 30px 96px}.auth-form-in{width:100%;max-width:372px}.auth-form-in h1{font-size:29px;margin-bottom:6px}.auth-form-in p{font-size:14px;color:var(--espresso);margin-bottom:24px}.auth-form input{background:#fffdfb;border-color:#dcc9b2}.auth-foot{position:absolute;left:0;right:0;bottom:26px;text-align:center;font-size:12px;color:#8b7f6d}@media(max-width:860px){.auth,.auth-bg{flex-direction:column}.bg-l,.lines-l{width:100%;height:42vh}.lines-l{left:0;bottom:auto}.lines-r{left:0;right:0;top:42vh;bottom:0}.lines-l svg,.lines-r svg{width:100%!important;left:0!important}.auth-brand{flex:none;padding:8vh 30px 44px;min-height:42vh}.auth-form{padding:40px 30px 78px}.auth-foot{bottom:20px}.tag-line{font-size:18px;margin-top:24px}.strap{margin-top:20px}}.hello{background:#faf6f1;border:1px solid #efe6da;border-radius:11px;padding:12px 13px;margin-bottom:18px}.hello .g{font-size:15px;font-weight:600;letter-spacing:-.01em}.hello .d{font-size:11.5px;color:#9a8f80;margin-top:1px}.grp{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b8ac9c;font-weight:600;padding:8px 10px 6px}.nav{margin-bottom:6px}.nav a{display:flex;align-items:center;gap:9px}.dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.45;flex:none}.side .foot b{display:block;color:#5c5346;font-size:12.5px}.side .foot span{font-size:11px}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:16px}.stat.alert b{color:var(--terracotta)}.chg{font-size:11.5px;font-weight:700;margin-left:7px;vertical-align:2px}.chg.up{color:var(--green)}.chg.dn{color:#8e3d1f}.chg.none{color:#b8ac9c;font-weight:600}.cols{display:grid;grid-template-columns:1.35fr 1fr;grid-gap:16px;gap:16px;align-items:start}.col{flex-direction:column;gap:16px}.ch,.col{display:flex}.ch{align-items:center;gap:9px;padding:14px 17px 12px;border-bottom:1px solid #f3ede4}.ch h2{font-size:14px;font-weight:600}.ch .sp{flex:1 1}.ch .n{font-size:11px;color:#9a8f80;background:#f5f0e9;border-radius:20px;padding:1px 8px}.ch .n,.ch a{font-weight:600}.ch a{font-size:12px;color:var(--terracotta)}.ch .when{font-size:11px;color:#b8ac9c}.row{display:flex;align-items:center;gap:12px;padding:12px 17px;border-bottom:1px solid #f7f2eb}.row:last-child{border-bottom:0}.row:hover{background:#fcfaf7}.sw{width:34px;height:42px;border-radius:5px;flex:none}.rt{flex:1 1;min-width:0}.rt .t{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rt .m{color:#9a8f80;margin-top:1px}.more,.rt .m{font-size:11.5px}.more{color:#a99c8b;text-align:center;padding:9px 0;font-weight:600}.chan{display:flex;align-items:center;gap:14px;padding:13px 17px;border-bottom:1px solid #f7f2eb}.chan:last-child{border-bottom:0}.ci{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700}.ci,.cn{flex:none}.cn{width:74px;font-size:12.5px;font-weight:600}.cm{flex:1 1;display:flex;gap:22px}.cm div span{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#b8ac9c;font-weight:600}.cm div b{font-size:15px;font-weight:600}.gp{padding:14px 17px 16px}.g3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:3px;gap:3px;border-radius:4px;overflow:hidden}.g3 .c{aspect-ratio:1080/1350;position:relative;display:flex;align-items:flex-end;padding:7px}.g3 .c .lab{font-size:8px;font-weight:600;line-height:1.3}.g3 .c .num{position:absolute;top:5px;left:6px;font-size:7.5px;font-weight:700;opacity:.5}.g3 .c.next{outline:2px solid var(--ink);outline-offset:-2px}.legend{font-size:11.5px;color:#9a8f80;margin-top:11px;line-height:1.5}.syncbar{display:flex;gap:8px;font-size:12px;color:#9a8f80;margin:-8px 0 18px}.pill,.syncbar{align-items:center}.pill{display:inline-flex;gap:6px;background:#e1ede6;color:#124b39;font-weight:600;font-size:11px;padding:3px 9px;border-radius:20px}.pill .lv{width:6px;height:6px;border-radius:50%;background:#124b39}.board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}.colw{background:#f6f1ea;border:1px solid #ede4d8;border-radius:12px;padding:10px 10px 12px}.colw.done{background:#f2eee8;opacity:.85}.colh{display:flex;align-items:center;gap:7px;padding:2px 4px 10px}.colh h2{font-size:12.5px;font-weight:700}.colh .n{font-size:10.5px;font-weight:700;color:#a99c8b;background:#eae1d4;border-radius:20px;padding:1px 7px}.colh .sp{flex:1 1}.colh .add{font-size:15px;color:#b8ac9c;font-weight:600;line-height:1}.k{background:#fff;border:1px solid #eae1d4;border-radius:9px;padding:9px 10px;margin-bottom:7px;box-shadow:0 1px 1px rgba(25,18,12,.03)}.k .t{font-size:12.5px;font-weight:600;margin-bottom:6px;line-height:1.35}.km{gap:6px;flex-wrap:wrap}.av,.km{display:flex;align-items:center}.av{width:19px;height:19px;border-radius:50%;font-size:8.5px;font-weight:700;color:#fff;justify-content:center;flex:none}.av.mm{background:#664725}.av.sb{background:#b75430}.av.no{background:#dcd2c4;color:#8a7f70}.due{font-size:10.5px;font-weight:600;color:#9a8f80}.due.soon{color:var(--espresso)}.due.late{color:#8e3d1f}.chip{font-size:8.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:20px}.c-block{background:#f6ded4;color:#8e3d1f}.c-high{background:#f6e9d4;color:#7a5417}.c-med{background:#efeae2;color:#5c5346}.cempty{font-size:11.5px;color:#b8ac9c;text-align:center;padding:14px 0}@media(max-width:1200px){.board{grid-template-columns:repeat(3,minmax(0,1fr))}.cols{grid-template-columns:1fr}}@media(max-width:820px){.board{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}.c-feat{background:#dceae3;color:#124b39}.kd{font-size:11.5px;line-height:1.5;color:#7a6f60;margin-top:5px}.linky{background:none;border:0;padding:8px 0 0;font:inherit;font-size:12.5px;font-weight:600;color:var(--terracotta);cursor:pointer;text-decoration:underline;text-underline-offset:3px}.quote{padding:20px 24px;margin-bottom:16px;border-left:3px solid var(--terracotta)}.quote p{font-size:16.5px;line-height:1.5;color:var(--ink);max-width:62ch}.quote span{display:block;margin-top:8px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#a99c8b;font-weight:600}.fact{padding:16px 18px;background:#faf6f1;border-color:#efe6da}.fact p{font-size:12.5px;line-height:1.55;color:#5c5346}.lbl{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#b8ac9c;font-weight:600;margin-bottom:7px}.rmini{padding:13px 17px;border-bottom:1px solid #f7f2eb}.rmini:last-child{border-bottom:0}.rmini .li{display:flex;align-items:flex-start;gap:8px;font-size:12.5px;line-height:1.45;padding:3px 0;color:#5c5346}.rmini .li i{width:6px;height:6px;border-radius:50%;flex:none;margin-top:6px}.rmini .li i.tick{background:var(--green)}.rmini .li i.pend{background:#dcd2c4}.acc{width:190px;flex:none}.acc .mods{font-size:10.5px;color:#b8ac9c;margin-top:3px;line-height:1.4}.acform{display:flex;gap:6px;align-items:center;flex:none}.acform select{width:118px;font-size:12.5px;padding:6px 8px}.acform .btn{padding:6px 12px;font-size:12px}.r-owner{background:var(--terracotta);color:#fff}.r-admin{background:#e1ede6;color:#124b39}.r-staff{background:#efeae2;color:#5c5346}.r-client{background:#e7edf6;color:#24486e}.phead{display:flex;align-items:center;gap:16px;padding:18px 20px;margin-bottom:16px}.phead .av.big{width:52px;height:52px;font-size:17px;background:var(--terracotta)}.phead .pn{font-size:19px;font-weight:600}.phead .pj{font-size:13px;color:var(--espresso);margin-top:1px}.phead .pc{font-size:12px;color:#9a8f80;margin-top:5px}.phead .sp{flex:1 1}.fg{padding:6px 17px 14px}.fr{display:flex;align-items:baseline;gap:14px;padding:8px 0;border-bottom:1px solid #f7f2eb}.fr:last-child{border-bottom:0}.fr span{width:150px;flex:none;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#b8ac9c}.fr b,.fr span{font-weight:600}.fr b{font-size:13px;color:#5c5346}.fr b.unset{font-weight:400;color:#c3b8a8}@media(max-width:820px){.acc{display:none}.fr{flex-direction:column;gap:2px}.fr span{width:auto}}