:root{font-family:Arial,"PingFang SC",sans-serif;color:#132a2b;background:#f7f0df;--ink:#132a2b;--orange:#ff6b35;--blue:#287f96;--lime:#badb4c;--paper:#fffaf0}*{box-sizing:border-box}body{margin:0;background:radial-gradient(#dfd5bf 1px,transparent 1px);background-size:18px 18px}button,input,select{font:inherit}header{height:78px;background:var(--ink);color:white;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(24px,5vw);gap:24px}.logo{font-weight:900;font-size:27px;color:white;text-decoration:none;letter-spacing:-.05em}.logo span{color:var(--orange)}header p{font-size:13px;color:#c7d3ca}.count{justify-self:end;display:flex;align-items:center;gap:8px}.count b{font-size:30px;color:var(--lime)}.count small{width:30px;line-height:1.1}main{max-width:1240px;margin:auto;padding:0 34px 70px}.intro{display:flex;justify-content:space-between;align-items:end;padding:68px 0 42px}.kicker{font-size:10px;font-weight:900;letter-spacing:.2em;color:var(--orange)}h1{font-size:clamp(44px,7vw,86px);letter-spacing:-.07em;line-height:.92;margin:13px 0 0}h1 em{font-style:normal;color:var(--orange)}.intro>p{max-width:330px;line-height:1.7;font-size:14px}.planner{display:grid;grid-template-columns:1fr 230px;border:3px solid var(--ink);background:var(--paper);box-shadow:9px 9px 0 var(--ink)}form{padding:28px}fieldset{border:0;padding:0;margin:0 0 25px}legend,.select-label>span,.must>span{font-weight:900;margin-bottom:11px;display:block}legend i,.select-label i,.must i{font-style:normal;color:var(--orange);font-size:11px;margin-right:9px}.chips{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.chips.compact{grid-template-columns:repeat(4,1fr)}.chips input{position:absolute;opacity:0}.chips span{display:block;border:2px solid #bfb8a8;padding:14px;background:white;font-weight:800;cursor:pointer}.chips small{display:block;font-weight:400;margin-top:4px;color:#6c746e}.chips input:checked+span{border-color:var(--ink);background:var(--lime);box-shadow:3px 3px 0 var(--ink)}.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}.select-label select,.must input{width:100%;border:2px solid #bfb8a8;background:#fff;padding:13px}.must{display:block;margin:23px 0}.must small{font-weight:normal;color:#777}.generate{border:0;background:var(--orange);color:#fff;width:100%;padding:17px 20px;font-weight:900;display:flex;justify-content:space-between;cursor:pointer}.note{background:var(--blue);color:white;padding:30px;border-left:3px solid var(--ink);display:flex;flex-direction:column;justify-content:center}.note b{font-size:25px}.note p{line-height:1.7}.note span{font-size:11px;color:#d6ebec;margin-top:30px}.results{margin-top:78px}.result-head{display:flex;align-items:end;justify-content:space-between}.result-head h2,.templates h2{font-size:40px;margin:8px 0 0;letter-spacing:-.05em}.actions{display:flex;gap:8px}.actions button{border:2px solid var(--ink);padding:10px 14px;background:transparent;font-weight:800;cursor:pointer}.actions button:last-child{background:var(--ink);color:white}.visual-grid{display:grid;grid-template-columns:1fr 230px;margin-top:22px;min-height:260px;border:3px solid var(--ink)}.tree{display:flex;flex-wrap:wrap;align-content:stretch}.tree button{border:2px solid var(--ink);border-width:0 2px 2px 0;min-width:120px;padding:18px;text-align:left;cursor:pointer;color:var(--ink);flex-grow:1}.tree button b{display:block;font-size:25px}.tree button span{font-weight:900}.tree button small{display:block;margin-top:5px}.summary{background:var(--ink);color:white;padding:28px;display:flex;flex-direction:column;justify-content:center}.summary>span{color:var(--lime);font-weight:900}.summary strong{font-size:43px;margin:10px 0}.summary strong i{font-style:normal;color:#839292}.summary p{font-size:12px;line-height:1.6}.bar{height:8px;background:#526465;margin-top:16px}.bar i{display:block;height:100%;width:0;background:var(--lime);transition:.2s}.checklists{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.group{border:2px solid var(--ink);background:var(--paper);padding:18px}.group h3{margin:0 0 12px;display:flex;justify-content:space-between}.group h3 b{font-size:12px;color:var(--blue)}.group label{display:flex;gap:9px;border-top:1px solid #d8d0bf;padding:10px 0;font-size:14px}.group input{accent-color:var(--orange);width:18px;height:18px}.group label.done{text-decoration:line-through;color:#8b8b80}.templates{margin-top:80px;border-top:3px solid var(--ink);padding-top:32px;display:grid;grid-template-columns:260px 1fr;gap:30px}.template-card{border-bottom:1px solid #aaa;padding:13px 0;display:flex;align-items:center;justify-content:space-between}.template-card button{border:0;background:none;color:var(--blue);font-weight:bold;cursor:pointer}.template-card .delete{color:#a44;margin-left:10px}dialog{width:min(720px,92vw);border:3px solid var(--ink);padding:0;box-shadow:9px 9px 0 var(--ink);background:var(--paper)}dialog::backdrop{background:#132a2bcc}.dialog-head{display:flex;justify-content:space-between}.dialog-head h2{margin:4px 0}.dialog-head button{border:0;background:none;font-size:30px}.rule-grid{display:grid;grid-template-columns:130px 1fr;gap:10px;align-items:start;margin:12px 0}.rule-grid textarea{min-height:95px;resize:vertical;border:2px solid #aaa;padding:9px}.rule-grid label{font-weight:900}menu{padding:14px 0 0;display:flex;justify-content:flex-end;gap:8px}menu button{padding:11px;border:2px solid var(--ink);background:white}menu button:last-child{background:var(--orange);color:white}#toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:white;padding:12px 18px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:760px){header{grid-template-columns:1fr auto;padding:0 18px}header p{display:none}main{padding:0 16px 50px}.intro{display:block;padding:45px 0 30px}.intro>p{margin-top:25px}.planner{grid-template-columns:1fr;box-shadow:5px 5px 0 var(--ink)}.note{border-left:0;border-top:3px solid var(--ink)}.chips,.chips.compact{grid-template-columns:1fr 1fr}.split{grid-template-columns:1fr}.result-head{display:block}.actions{margin-top:18px}.visual-grid{grid-template-columns:1fr}.summary{min-height:210px}.checklists{grid-template-columns:1fr}.templates{grid-template-columns:1fr}.tree button{min-height:115px}.rule-grid{grid-template-columns:1fr}}
