:root{--ink: #14141a;--muted: #5c5d68;--line: #eceef4;--ground: #f3f4f8;--card: #ffffff;--field: #cfd1dc;--red: #d32020;--red-ink: #b81c1c;--red-soft: #fff3f3;--indigo: #3b3fd8;--side: #111114;--shadow: 0 1px 2px rgba(16, 16, 26, .06), 0 10px 28px rgba(16, 16, 26, .05);--display: "Plus Jakarta Sans", system-ui, sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font:14px/1.5 Inter,system-ui,sans-serif}h1,h2,h3{font-family:var(--display);margin:0}h1{font-size:28px;font-weight:800;letter-spacing:-.01em;line-height:1.2}h2{font-size:17px;font-weight:700}p{margin:0}a{color:var(--red-ink)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid #7f83f0;outline-offset:2px}.muted{color:var(--muted)}.small{font-size:12px}.strong{font-weight:600}.sr{position:absolute;left:-9999px}.shell{display:flex;flex-wrap:wrap;min-height:100vh}.side{flex:0 0 248px;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--side);color:#fff;padding:22px 14px;display:flex;flex-direction:column;gap:22px}.brand{display:flex;align-items:center;gap:12px;padding:0 8px;color:#fff;text-decoration:none}.brand b{display:block;font:800 16px/1.2 var(--display)}.brand span span{font-size:12px;color:#a6a6b2}.nav{display:flex;flex-direction:column;gap:2px}.nav-label{padding:12px 12px 4px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#9a9aa8}.nav a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:12px;color:#d3d3dc;text-decoration:none;font-weight:500}.nav a:hover{background:#1d1d22}.nav a.on{background:var(--red);color:#fff;font-weight:600}.me{margin-top:auto;display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:#1d1d22;color:#fff;text-decoration:none}.me small{display:block;color:#a6a6b2}.main{flex:999 1 560px;min-width:0;padding:24px 32px 48px;display:flex;flex-direction:column;gap:24px}.top{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.top-actions{display:flex;align-items:center;gap:10px;position:relative}.row{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}.col{display:flex;flex-direction:column;gap:24px;min-width:0}.grow3{flex:3 1 460px;min-width:0}.grow2{flex:2 1 320px;min-width:0}.grow1{flex:1 1 260px;min-width:0}.grid{display:grid;gap:16px}.g4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.g2{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.inline{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.between{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between}.card{background:var(--card);border-radius:18px;padding:22px;box-shadow:var(--shadow)}.card.dark{background:var(--ink);color:#fff}.card.red{background:var(--red);color:#fff}.kpi .v{font:800 34px/1.2 var(--display)}.kpi .l{font-size:13px;opacity:.85}.kpi .n{font-size:12px;opacity:.8}.list>*{padding:12px 0;border-top:1px solid var(--line)}.list>*:first-child{border-top:0}.item{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.item .body{flex:1 1 200px;min-width:0}.pill{display:inline-block;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap;background:#eef0f6;color:#3a3b46}.pill.red{background:#fde4e4;color:#a31919}.pill.blue{background:#e6e8fd;color:#2a2ea8}.pill.amber{background:#fdf0d5;color:#7a4f00}.pill.green{background:#e3f4e8;color:#1a6b35}.pill.purple{background:#efe3fb;color:#5b2a9c}.pill.dark{background:var(--ink);color:#fff}.avatar{flex:none;border-radius:999px;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;object-fit:cover}.bar{height:8px;border-radius:999px;background:#eef0f6;overflow:hidden}.bar>i{display:block;height:100%;border-radius:999px;background:var(--indigo)}.empty{padding:20px;text-align:center;color:var(--muted)}.error{background:#fde4e4;color:#8a1212;padding:12px 16px;border-radius:12px}.note{background:var(--ground);border-radius:14px;padding:14px 16px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--ink);color:#fff;padding:12px 20px;border-radius:999px;box-shadow:var(--shadow);z-index:50;max-width:90vw}.toast.bad{background:#8a1212}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--field);background:#fff;color:var(--ink);font-weight:600;text-decoration:none;cursor:pointer}.btn:hover{border-color:var(--ink)}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--red);border-color:var(--red);color:#fff}.btn.primary:hover{background:var(--red-ink)}.btn.ink{background:var(--ink);border-color:var(--ink);color:#fff}.btn.link{border:0;background:transparent;padding:0;color:var(--red-ink);min-height:44px}.icon-btn{position:relative;width:44px;height:44px;border-radius:999px;border:1px solid #dcdde6;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-weight:600}.field input,.field select,.field textarea,.input{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--field);border-radius:12px;background:#fff}.field textarea{padding:12px;resize:vertical;min-height:96px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:44px;padding:0 14px;border-radius:999px;border:1px solid var(--field);background:#fff;font-weight:600;cursor:pointer}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.choice{text-align:left;padding:10px 14px;min-height:60px;border-radius:14px;border:2px solid #dcdde6;background:#fff;cursor:pointer;display:flex;align-items:center;gap:12px}.choice[aria-pressed=true]{border-color:var(--red);background:var(--red-soft)}.check{display:flex;align-items:center;gap:12px;min-height:46px}.check input{width:18px;height:18px;accent-color:var(--red)}form.card{display:flex;flex-direction:column;gap:16px}.panel{position:absolute;right:0;top:52px;width:min(380px,92vw);max-height:70vh;overflow:auto;z-index:20}.panel .n{display:block;padding:12px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}.panel .n.unread{font-weight:600}.board{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;align-items:start}.lane{background:#e9ebf2;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:12px;min-height:160px}.lane.over{outline:3px dashed var(--indigo)}.lane h2{font-size:15px;display:flex;align-items:center;gap:8px}.dot{width:10px;height:10px;border-radius:999px;display:inline-block}.tcard{background:#fff;border-radius:14px;padding:14px;box-shadow:0 1px 2px #10101a14;display:flex;flex-direction:column;gap:10px;cursor:grab}.tcard a.title{font-weight:600;color:var(--ink);text-decoration:none}.tcard select{min-height:44px;border:1px solid var(--field);border-radius:10px;padding:0 8px;background:#fff}.cal-wrap{overflow-x:auto}.cal{min-width:780px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.cal .dow{font-size:12px;font-weight:600;color:var(--muted);padding:0 8px}.day{min-height:118px;border-radius:14px;padding:8px;background:#fafbfd;border:2px solid transparent;display:flex;flex-direction:column;gap:4px}.day.off{background:var(--ground)}.day.today{border-color:var(--red)}.day.blank{background:transparent}.day b{font:700 14px var(--display)}.ev{display:block;font-size:12px;font-weight:600;line-height:1.3;padding:4px 8px;border-radius:8px;text-decoration:none;background:#e6e8fd;color:#2a2ea8}.ev.done{background:#e3f4e8;color:#1a6b35}.ev.late{background:#fde4e4;color:#a31919}.ev.leave{background:#efe3fb;color:#5b2a9c}.donut{flex:none;width:150px;height:150px;border-radius:999px;display:flex;align-items:center;justify-content:center}.donut>div{width:96px;height:96px;border-radius:999px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.signin{min-height:100vh;display:flex;flex-wrap:wrap}.signin .art{flex:1 1 360px;background:var(--side);color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between;gap:32px}.signin .art h1{font-size:40px;max-width:12ch}.signin .form{flex:1 1 360px;display:flex;align-items:center;justify-content:center;padding:32px 20px}.signin form{width:min(420px,100%)}.photo{width:128px;height:128px;font:800 40px var(--display);border:4px solid #fff;box-shadow:0 0 0 3px var(--red)}@media(max-width:860px){.side{flex:1 1 100%;position:static;height:auto;gap:12px}.me{margin-top:0}}@media(max-width:700px){.main{padding:20px 16px 40px}.signin .art{padding:28px}}
