:root{--navy: #091e38;--red: #ff3200;--dark-red: #b01d00;--blue: #37c1f1;--bridge: #084982;--green: #22a95b;--paper: #f5f6f8;--line: #dde1e7;--muted: #5b6676;--radius: 10px}*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--navy);background:var(--paper)}h1,h2,h3{margin:0 0 .5rem}h1{font-size:1.6rem}h2{font-size:1.15rem}h3{font-size:.95rem;color:var(--muted)}a{color:var(--bridge)}.topbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:var(--navy);color:#fff}.brand{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;font-weight:700;font-size:1.3rem;letter-spacing:.02em}.topbar-user{display:flex;align-items:center;gap:.75rem}.content{max-width:1000px;margin:0 auto;padding:1.5rem 1rem 4rem}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin-bottom:1rem}.section-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.section-head h2{margin:0}.empty,.loading,.meta{color:var(--muted)}.meta{font-size:.8rem;margin:.35rem 0 0}.page-error,.form-error{color:var(--dark-red)}.empty-state{text-align:center;padding:3rem 1rem}.motto{margin:-.25rem 0 1rem;color:var(--red);font-weight:700;letter-spacing:.04em;font-size:.85rem}.pre{white-space:pre-wrap;margin:0}.btn{border:1px solid transparent;border-radius:6px;padding:.5rem .9rem;font:inherit;cursor:pointer;background:#fff;color:var(--navy)}.btn.primary{background:var(--red);color:#fff}.btn.primary:hover{background:var(--dark-red)}.btn.ghost{border-color:var(--line)}.topbar .btn.ghost{background:transparent;color:#fff;border-color:#fff6}.btn.small{padding:.3rem .6rem;font-size:.85rem}.btn.danger{color:var(--dark-red);border-color:var(--dark-red)}a.btn{display:inline-block;text-decoration:none}.notice{background:#e8f7fd;border-color:var(--blue)}.btn:disabled{opacity:.6;cursor:default}.icon-btn{border:none;background:none;cursor:pointer;font-size:1.05rem;color:var(--muted);padding:.2rem .4rem}.icon-btn:hover{color:var(--navy)}.dossier-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.back{display:inline-block;margin-bottom:.5rem;font-size:.9rem}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;background:var(--paper);border:1px solid var(--line);font-size:.75rem;margin-left:.4rem;vertical-align:middle}.badge.cat{background:#e8f7fd;border-color:var(--blue)}.badge.now{background:#ffe5de;border-color:var(--red);color:var(--dark-red);font-weight:700}.badge.soon{background:#e3f6fd;border-color:var(--blue);color:var(--navy)}.badge.ok{background:#e6f6ec;border-color:var(--green)}.basics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem 1.5rem;margin:0}.basics dt{font-size:.8rem;color:var(--muted)}.basics dd{margin:.1rem 0 0;font-weight:700}.evaluation{margin-top:1rem;padding:.6rem .9rem;background:#e8f7fd;border-left:4px solid var(--blue);border-radius:4px}.goal{border:1px solid var(--line);border-left:4px solid var(--red);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem}.goal.achieved{border-left-color:var(--green)}.goal-head{display:flex;justify-content:space-between;gap:.5rem;align-items:flex-start}.goal-title{font-weight:700;font-size:1.05rem}.progress{height:8px;background:var(--paper);border-radius:999px;overflow:hidden;margin:.6rem 0 .25rem}.progress>div{height:100%;background:var(--green);transition:width .2s}.progress-label{font-size:.8rem;color:var(--muted)}.goal-footer{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}.item-list{list-style:none;margin:0;padding:0}.item{display:flex;justify-content:space-between;gap:.75rem;padding:.6rem 0;border-top:1px solid var(--line)}.item:first-child{border-top:none}.item-body{flex:1;min-width:0}.item-tools{display:flex;align-items:flex-start}.item.done .item-title{text-decoration:line-through;color:var(--muted)}.status-toggle{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden;margin-top:.35rem}.status-toggle button{border:none;background:#fff;padding:.25rem .6rem;font:inherit;font-size:.8rem;cursor:pointer;color:var(--muted)}.status-toggle button+button{border-left:1px solid var(--line)}.status-toggle button.on{background:var(--navy);color:#fff}.chips{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.chip{border:1px dashed var(--bridge);color:var(--bridge);background:#fff;border-radius:999px;padding:.3rem .8rem;cursor:pointer;font:inherit;font-size:.85rem}.chip:hover{background:#eef4fa}details.achieved{margin-top:1rem}details.achieved summary{cursor:pointer;font-weight:700;color:var(--green);margin-bottom:.75rem}.toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}.toolbar input[type=search]{flex:1;min-width:200px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line)}th button{border:none;background:none;font:inherit;font-weight:700;cursor:pointer;color:var(--navy);padding:0}tr.archived td{color:var(--muted)}input,textarea,select{width:100%;font:inherit;padding:.5rem .6rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy)}textarea{resize:vertical}.field{display:block;margin-bottom:.75rem}.field>span{display:block;font-size:.85rem;margin-bottom:.25rem;font-weight:700}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.checkbox{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.checkbox input{width:auto}.picker-list{list-style:none;margin:.25rem 0 .75rem;padding:0;border:1px solid var(--line);border-radius:6px;max-height:260px;overflow-y:auto}.picker-list button{display:block;width:100%;text-align:left;border:none;background:#fff;padding:.5rem .75rem;cursor:pointer;font:inherit}.picker-list button:hover{background:var(--paper)}.picked{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#e8f7fd;border-radius:6px;margin-bottom:.75rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#091e388c;display:flex;align-items:flex-start;justify-content:center;padding:5vh 1rem;overflow-y:auto;z-index:10}.modal{background:#fff;border-radius:var(--radius);padding:1.25rem;width:100%;max-width:560px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.modal-head h2{margin:0}.history{list-style:none;padding:0;margin:0}.history li{padding:.5rem 0;border-top:1px solid var(--line);font-size:.9rem}.history li:first-child{border-top:none}.history time{display:block;font-size:.75rem;color:var(--muted)}@media (max-width: 600px){.topbar{padding:.6rem 1rem}.topbar-user span{display:none}.content{padding:1rem .6rem 3rem}.card{padding:1rem}}
