@charset "UTF-8";:root{--cream: #f7f3e8;--red: #c41230;--yellow: #f5c200;--black: #1a1a1a;--white: #ffffff;--border: 3px solid #1a1a1a;--radius: 0px;--font-heading: "Barlow Condensed", "Arial Narrow", Impact, sans-serif;--font-body: "Barlow", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--black);background-color:var(--cream);background-image:radial-gradient(rgba(0,0,0,.12) 1px,transparent 1px);background-size:18px 18px;min-height:100vh}a{color:var(--red);text-decoration:none;font-weight:600}a:hover{text-decoration:underline}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:900;text-transform:uppercase;letter-spacing:.02em;line-height:1.1;margin-top:0}h1{font-size:2.8rem;color:var(--red)}h2{font-size:2rem;color:var(--black)}h3{font-size:1.5rem;color:var(--black)}.container{max-width:900px;margin:0 auto;padding:0 1rem}.card{background:var(--white);border:var(--border);border-radius:var(--radius);padding:1.75rem;box-shadow:4px 4px 0 var(--black)}.highlight{background:var(--yellow);border:var(--border);padding:1rem 1.25rem;text-align:center;margin-bottom:1rem}.highlight h1,.highlight h2,.highlight h3{color:var(--black);margin:0}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;border:var(--border);border-radius:var(--radius);cursor:pointer;font-family:var(--font-heading);font-size:1.05rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;transition:box-shadow .1s,transform .1s;text-decoration:none}.btn:hover{box-shadow:3px 3px 0 var(--black);transform:translate(-1px,-1px);text-decoration:none}.btn:active{box-shadow:none;transform:translate(0)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary{background:var(--yellow);color:var(--black)}.btn-secondary{background:var(--white);color:var(--black)}.btn-danger{background:var(--red);color:var(--white)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-family:var(--font-heading);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .8rem;border:2px solid var(--black);border-radius:var(--radius);font-family:var(--font-body);font-size:1rem;background:var(--white);transition:box-shadow .1s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;box-shadow:3px 3px 0 var(--yellow);border-color:var(--black)}.form-group input[type=checkbox]{width:1.1rem;height:1.1rem;padding:0;flex-shrink:0;cursor:pointer;accent-color:var(--yellow)}.form-group label:has(>input[type=checkbox]){display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:0}.error-msg{color:var(--red);font-weight:700;font-size:.875rem;margin-top:.3rem}.combobox-wrapper{position:relative}.combobox-list{position:absolute;z-index:200;top:100%;left:0;right:0;max-height:220px;overflow-y:auto;margin:0;padding:0;list-style:none;background:var(--white);border:2px solid var(--black);border-top:none;box-shadow:4px 4px 0 var(--black)}.combobox-list li{padding:.5rem .8rem;cursor:pointer;font-size:.95rem}.combobox-list li:hover{background:var(--yellow)}.badge{display:inline-block;padding:.2em .7em;border:2px solid var(--black);font-family:var(--font-heading);font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.badge-draft{background:#e8e8e8;color:var(--black)}.badge-submitted{background:#d0e8ff;color:#003a7a}.badge-assigned{background:var(--yellow);color:var(--black)}.badge-in_review{background:#d4f5d4;color:#1a5c1a}.badge-needs_info{background:#ffe0e0;color:var(--red)}.badge-approved{background:#d4f5d4;color:#1a5c1a}.badge-rejected{background:#ffe0e0;color:var(--red)}.stepper{display:flex;gap:0;margin-bottom:2rem;border:2px solid var(--black);overflow:hidden}.stepper__step{flex:1;padding:.5rem .25rem;text-align:center;font-family:var(--font-heading);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#666;background:var(--white);border-right:2px solid var(--black)}.stepper__step:last-child{border-right:none}.stepper__step.active{background:var(--yellow);color:var(--black)}.stepper__step.done{background:var(--black);color:var(--white)}.table{width:100%;border-collapse:collapse;border:2px solid var(--black)}.table th,.table td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid rgba(0,0,0,.15);border-right:1px solid rgba(0,0,0,.15)}.table th:last-child,.table td:last-child{border-right:none}.table th{font-family:var(--font-heading);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:.9rem;background:var(--black);color:var(--white);border-color:var(--black)}.table tr:hover td{background:#f5c20026}.status-timeline{position:relative;margin-top:.6rem}.status-timeline__item{position:relative;display:grid;grid-template-columns:20px 1fr;gap:.75rem;padding-bottom:.9rem}.status-timeline__item:last-child{padding-bottom:0}.status-timeline__item:not(:last-child) .status-timeline__dot:after{content:"";position:absolute;top:16px;left:50%;transform:translate(-50%);width:2px;height:calc(100% + .6rem);background:#1a1a1a59}.status-timeline__dot{position:relative;width:14px;height:14px;border-radius:50%;border:2px solid var(--black);background:var(--white);margin-top:.35rem}.status-timeline__content{border:2px solid rgba(26,26,26,.2);background:#fffdf8;padding:.5rem .7rem}.status-timeline__title{font-family:var(--font-heading);font-size:.95rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.status-timeline__meta{color:#555;font-size:.82rem}.status-timeline__note{margin-top:.25rem;font-size:.82rem;color:#444}.status-timeline__item--current .status-timeline__dot{background:var(--yellow);box-shadow:0 0 0 2px #f5c20059}.status-timeline__item--current .status-timeline__content{border-color:var(--black)}.alert{padding:.9rem 1.1rem;border:2px solid var(--black);margin-bottom:1rem;font-weight:600;box-shadow:3px 3px 0 var(--black)}.alert-error{background:#ffe0e0;color:var(--red)}.alert-success{background:#d4f5d4;color:#1a5c1a}.alert-info{background:#d0e8ff;color:#003a7a}.alert-warning{background:var(--yellow);color:var(--black)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-wd{text-align:center;font-family:var(--font-heading);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;padding:.3rem 0;color:#666}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:.95rem;border:2px solid transparent;background:none;cursor:default}.cal-day--other{color:#bbb}.cal-day--available{background:var(--white);border:2px solid var(--black);cursor:pointer;font-weight:800;transition:background .1s,box-shadow .1s,transform .1s}.cal-day--available:hover{background:var(--yellow);box-shadow:2px 2px 0 var(--black);transform:translate(-1px,-1px)}.cal-day--selected{background:var(--yellow)!important;box-shadow:2px 2px 0 var(--black);transform:translate(-1px,-1px)}.btn-sm{padding:.35rem .8rem;font-size:.85rem}
