/* Nature-tech: warm frosted surfaces, sculpted panels and soft spectral accents. */
:root{color:#2d2933;background:#e6e4e9;--green:#302a38;--muted:#756d7c;--line:#e0d9df}
body{padding:28px;min-height:100vh;background:radial-gradient(ellipse at 4% 5%,#fffdf6,transparent 50%),radial-gradient(ellipse at 95% 85%,#d5c9e9,transparent 55%),#e6e4e9;isolation:isolate}
body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none;width:55vw;height:80vh;left:-15vw;top:10vh;border-radius:43% 57% 68% 32%/48% 30% 70% 52%;transform:rotate(-17deg);border:1px solid #ffffffa6;background:linear-gradient(145deg,#ffffff80,#ffffff12);box-shadow:inset 12px 14px 30px #ffffff75,18px 25px 65px #81798a18}
body:after{width:42vw;height:74vh;left:auto;right:-12vw;top:24vh;transform:rotate(28deg)}
button{min-height:44px;border:1px solid #ffffffd9;border-radius:28px;background:linear-gradient(145deg,#fffffff0,#faf6edc9);box-shadow:0 5px 14px #6253430d,inset 0 1px 0 #fff;transition:background .18s,box-shadow .18s,transform .18s}
button:hover{background:#fffdf9;box-shadow:0 7px 18px #62534320;transform:translateY(-1px)}button:disabled{transform:none}.primary{background:linear-gradient(145deg,#403847,#1f1b25);border-color:#302a38;box-shadow:0 6px 13px #28213225,inset 0 1px 0 #ffffff29}.primary:hover{background:#403847}
input,select{min-height:44px;border:1px solid #ffffffed;border-radius:20px;background:#ffffffb3;padding:12px 14px;box-shadow:inset 1px 2px 5px #82766508}input:focus,select:focus,button:focus-visible{outline:3px solid #9784ce}
header{max-width:1544px;height:86px;margin:auto;padding:0 34px;border:1px solid white;border-bottom:0;border-radius:30px 30px 0 0;background:linear-gradient(130deg,#fffef9e6,#f3eff5c9);backdrop-filter:blur(25px)}
.brand{color:#2d2933;letter-spacing:.05em}.brand small{font-size:9px;letter-spacing:2.5px;font-weight:500;color:#817b82}.logo{width:48px;height:48px;display:block;border-radius:14px;box-shadow:0 6px 10px #72382b25;object-fit:cover}.header-right{font-size:12px}.header-right>span{padding:10px 14px;border:1px solid #fff;border-radius:25px;background:#ffffff63}.header-right button{font-size:12px}
main{max-width:1544px;margin:0 auto;min-height:calc(100vh - 142px);padding:24px 34px 28px;border:1px solid white;border-top:0;border-radius:0 0 30px 30px;background:radial-gradient(ellipse at 90% 13%,#d9cefb45,transparent 38%),linear-gradient(140deg,#f7f4ebe6,#ece8e1e0 60%,#eeebf1d9);box-shadow:0 32px 55px #58506420;backdrop-filter:blur(25px)}
.heading{gap:22px;margin:27px 0 30px}.eyebrow{font-size:9px;letter-spacing:3px;color:#817988;font-weight:600}.eyebrow:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:linear-gradient(150deg,#ebafa0,#b8a5e2);margin-right:9px;vertical-align:1px}h1{font-size:36px;font-weight:650;margin:12px 0;line-height:1.3}.sub{font-size:12px;line-height:1.8}.actions button{font-size:12px}
.stats{gap:16px}.stats article{position:relative;overflow:hidden;min-height:146px;padding:23px 24px;border:1px solid #ffffffed;border-radius:24px;background:linear-gradient(130deg,#ffffffd9,#f8f4eb91);box-shadow:7px 12px 22px #76644e12,inset 0 1px 2px #fff}.stats article:before{content:"";position:absolute;width:78px;height:78px;right:-18px;top:-26px;border-radius:50%;background:linear-gradient(135deg,#fff9,#e8e1df22);box-shadow:inset 2px 3px 9px #fff9;pointer-events:none}.stats article>span{font-size:11px;color:#716978}.stats strong{font-size:34px;font-weight:600;margin-top:19px;letter-spacing:-1.3px}.stats strong small{font-size:11px;color:#746b75}.stats article:nth-child(2){background:radial-gradient(ellipse at 100% 100%,#d9e9e8b3,transparent 70%),linear-gradient(140deg,#ffffffe8,#f1f4ec99)}.stats article:nth-child(3){background:radial-gradient(ellipse at 100% 100%,#f0d6e399,transparent 65%),linear-gradient(140deg,#ffffffe8,#f3eae799)}
.stats .progress-card{background:radial-gradient(ellipse at 95% 95%,#bc9af5b3,transparent 65%),radial-gradient(ellipse at 0 10%,#95d6e199,transparent 65%),linear-gradient(120deg,#eff3fa,#e8dff1)}.progress-card>span{align-items:center}.progress-card b{font-size:25px;font-weight:600;letter-spacing:-1px;color:#433760}.bar{height:8px;background:#ffffff99;box-shadow:inset 0 1px 3px #6659870b}.bar i{background:linear-gradient(90deg,#5db7d2,#8870d6);border-radius:8px;transition:width .25s}.progress-card small{color:#61556e}
.tools{gap:9px;border:1px solid #ffffffb3;border-radius:24px;padding:10px;background:#ffffff29;box-shadow:inset 0 1px 0 #fff9}.tabs{border-radius:24px;background:#d9d4d14a}.tabs button{border:1px solid transparent;border-radius:22px;color:#77717c;min-height:39px;font-size:12px}.tabs .active{color:#302a37;background:linear-gradient(145deg,#fff,#f8f6f2);border-color:#fff;box-shadow:0 3px 9px #75625416}.search{border-color:white;border-radius:24px;background:#ffffffb3;padding-left:16px;color:#8b8392}.search input{background:transparent;font-size:12px;box-shadow:none}.tools select{font-size:12px;border-radius:24px}
.section-title{margin-top:25px}h2{font-size:15px;font-weight:650;letter-spacing:.03em}.section-title span{border:1px solid #ffffffb3;padding:6px 12px;border-radius:20px;background:#ffffff70;font-size:10px;color:#726b77}.hint{font-size:11px;line-height:1.8;margin:6px 0 16px}
.table-wrap{border:1px solid #ffffffed;border-radius:23px;background:#fffaf480;box-shadow:6px 12px 24px #76644e0d}th,td{padding:17px 18px;border-color:#ddd8d270}thead th{background:#ede9e3;color:#726976;font-size:11px}th small{color:#8c8290}tbody th{background:#faf7f1;font-size:12px}tbody td{font-size:12px;color:#635d68}tbody tr:hover td,tbody tr:hover th{background:#fffcf7}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}.town small{color:#8c8290;font-weight:400}.cell{gap:12px;border-color:#ffffffed;border-radius:14px;background:#fffdf9c9;padding:10px 12px;font-size:12px;box-shadow:0 3px 8px #81746808}.cell.done{background:linear-gradient(125deg,#e4eef2,#eee7f7);color:#504075;border-color:white}.cell small{color:#81768d}.cell.done small{color:#615082}.dash{color:#b3aab5}.cell.dash{border:1px dashed #d7cfda;background:transparent;box-shadow:none;justify-content:center}
.cards{gap:16px}.task-card{padding:23px;border:1px solid white;border-radius:24px;background:radial-gradient(ellipse at 100% 0,#ebe3f14d,transparent 65%),linear-gradient(130deg,#ffffffe6,#f9f5ebc9);box-shadow:7px 12px 22px #76644e12}.task-card h3{font-size:20px;margin:10px 0 5px;font-weight:600;letter-spacing:.03em}.task-card .meta{font-size:10px;letter-spacing:.08em}.task-card .task-line{padding:18px 0 3px;margin-top:18px;border-color:#dfd8dd99}.task-line strong{font-size:13px;font-weight:600}.task-line small{font-size:10px;margin-top:7px;color:#7c7284;line-height:1.6}.check{background:linear-gradient(135deg,#ffffffed,#f0eaf7);color:#54436f;border-color:white;min-height:46px;padding:12px 17px;font-size:12px;box-shadow:0 5px 13px #84728b16}.check.done{background:linear-gradient(130deg,#b5dce3,#cab9e8);color:#3d3653;border-color:#e9e3f5;box-shadow:0 4px 12px #8373991a}.empty{background:#ffffff80;border:1px solid white;border-radius:24px}
footer{font-size:9px;color:#8a818d;letter-spacing:.03em;margin-top:28px}#notice:not(:empty){background:#fff9e6b3;border-color:#fffdf4;border-radius:17px;color:#82724f;font-size:11px;line-height:1.8;padding:12px 18px;box-shadow:0 4px 12px #75623d05}.login{padding-bottom:40px}.login .primary{border-radius:26px}dialog{border:1px solid white;border-radius:28px;background:linear-gradient(145deg,#fffdf7f5,#ece5f1f5);box-shadow:0 25px 90px #53435a30;backdrop-filter:blur(25px)}dialog::backdrop{background:#48405355;backdrop-filter:blur(8px)}.dialog-top button{box-shadow:none;background:transparent}.danger{color:#a45258}#edit-context{font-size:12px;line-height:1.8}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(max-width:1000px){body{padding:16px}.stats{gap:10px}.stats article{padding:20px 18px}.stats strong{font-size:29px}.actions button{padding:10px 13px}.tabs{margin-right:0}.search{margin-left:auto}}
@media(max-width:760px){body{padding:10px;background:radial-gradient(ellipse at 5% 10%,#fdfbf5,transparent 70%),#e7e1ee}body:before{width:110vw;left:-40vw}body:after{width:90vw;right:-50vw}header{height:77px;padding:0 16px;border-radius:25px 25px 0 0}.brand{font-size:16px;gap:10px}.brand small{font-size:7px;letter-spacing:1.8px}.logo{width:42px;height:42px;border-radius:12px}.header-right{font-size:10px;gap:6px}.header-right>span{padding:8px;max-width:98px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-right button{padding:8px 10px;min-height:36px;font-size:10px}main{padding:16px 14px 24px;min-height:calc(100vh - 97px);border-radius:0 0 25px 25px}.heading{align-items:center;gap:10px;margin:24px 0}.heading h1{font-size:29px;margin:11px 0}.eyebrow{font-size:8px;letter-spacing:2px}.sub{font-size:11px;max-width:220px;line-height:1.8}.actions button{font-size:10px;padding:10px 12px;min-height:39px}.stats{gap:10px;margin-bottom:22px}.stats article{padding:17px 14px;border-radius:21px;min-height:125px}.stats strong{font-size:27px;margin-top:17px}.stats article>span{font-size:10px}.progress-card b{font-size:23px}.progress-card small{font-size:8px;line-height:1.7;display:block}.bar{margin:16px 0 10px}.tools{gap:8px;border-radius:22px;padding:8px}.tabs{margin:0 0 3px}.tabs button{font-size:12px}.search{margin:0}.tools select{font-size:10px;padding:10px 5px;min-height:42px}.cards{gap:13px}.task-card{padding:20px;border-radius:23px}.section-title{margin-top:23px}.hint{font-size:10px;line-height:1.9}.table-wrap{border-radius:18px}td,th{padding:13px}footer{font-size:8px;line-height:1.8}#notice:not(:empty){font-size:10px;padding:11px 13px;border-radius:15px}.login{margin:28px auto}.login h1{font-size:29px}}
