a{color:inherit}.shell{max-width:1040px;margin:0 auto;padding:32px 20px 80px}.proto-banner{background:var(--amber-bg);border:1px solid var(--amber);color:#7a4a10;font-size:13px;padding:10px 16px;border-radius:8px;margin-bottom:24px;display:flex;gap:10px;align-items:flex-start}.proto-banner .dot{width:6px;height:6px;border-radius:50%;background:var(--amber);margin-top:7px;flex-shrink:0}header.app-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px;border-bottom:2px solid var(--ink);padding-bottom:14px}.brand-eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:4px}h1{font-size:22px;font-weight:600;margin:0}.brand-tag{font-family:IBM Plex Mono,monospace;font-size:12px;background:var(--ink);color:#fff;padding:5px 10px;border-radius:6px}.work{display:grid;grid-template-columns:220px 1fr;gap:28px}@media(max-width:760px){.work{grid-template-columns:1fr}.sidebar{order:2}}.sidebar{border-left:2px solid var(--line);padding-left:18px}.step-item{position:relative;padding:0 0 26px 22px;font-size:13px;color:var(--ink-soft)}.step-item:before{content:"";position:absolute;left:-27px;top:2px;width:11px;height:11px;border-radius:50%;background:var(--panel);border:2px solid var(--line-strong)}.step-item.done:before{background:var(--teal);border-color:var(--teal)}.step-item.active:before{background:var(--amber);border-color:var(--amber)}.step-item.active{color:var(--ink);font-weight:500}.step-num{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--ink-soft);display:block}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:28px 30px}.field{margin-bottom:18px}.field label{display:block;font-size:13px;font-weight:500;margin-bottom:6px}.field .hint{font-size:12px;color:var(--ink-soft);margin-top:4px}.field input[type=text],.field input[type=number],.field input[type=date],.field input[type=email],.field input[type=password],.field textarea,.field select{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:7px;font-family:inherit;font-size:14px;background:#fff;color:var(--ink)}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)}.field textarea{resize:vertical;min-height:80px}.field.error input,.field.error textarea{border-color:var(--red)}.field .err-msg{font-size:12px;color:var(--red);margin-top:4px;display:none}.field.error .err-msg{display:block}.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:520px){.row2{grid-template-columns:1fr}}.section-title{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:26px 0 14px;padding-top:18px;border-top:1px solid var(--line)}.section-title:first-child{margin-top:0;border-top:none;padding-top:0}.line-item{display:grid;grid-template-columns:1fr 2fr 70px 32px;gap:10px;margin-bottom:10px;align-items:start}.line-item input{padding:8px 10px;font-size:13px}@media(max-width:600px){.line-item{grid-template-columns:1fr}}button{font-family:inherit;cursor:pointer}.btn{background:var(--ink);color:#fff;border:none;padding:11px 20px;border-radius:7px;font-size:14px;font-weight:500}.btn:hover{background:#000}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line-strong)}.btn.secondary:hover{border-color:var(--ink)}.btn-sm{padding:6px 12px;font-size:13px;border-radius:6px;background:transparent;border:1px dashed var(--line-strong);color:var(--ink-soft)}.btn-sm:hover{color:var(--ink);border-color:var(--ink-soft)}.icon-btn{background:transparent;border:none;color:var(--ink-soft);font-size:16px;padding:6px;line-height:1}.icon-btn:hover{color:var(--red)}.actions{display:flex;justify-content:space-between;margin-top:26px;padding-top:20px;border-top:1px solid var(--line)}.dropzone{border:2px dashed var(--line-strong);border-radius:var(--radius);padding:26px;text-align:center;color:var(--ink-soft);font-size:13px;background:#fafbfb;margin-bottom:10px}.dropzone.drag{border-color:var(--amber);background:var(--amber-bg)}.dropzone input{display:none}.file-list{margin-bottom:22px}.file-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:7px;margin-bottom:8px;font-size:13px}.file-row .fname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-row .fsize{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:12px}.file-row .fcat{font-family:IBM Plex Mono,monospace;font-size:11px;background:var(--teal-bg);color:var(--teal);padding:2px 8px;border-radius:5px;text-transform:uppercase}.upload-error{color:var(--red);font-size:13px;margin-bottom:10px;display:none}.upload-error.show{display:block}.req-list{list-style:none;margin:0 0 20px;padding:0;font-size:13px}.req-list li{display:flex;align-items:center;gap:8px;padding:6px 0;color:var(--ink-soft)}.req-list li.met{color:var(--teal)}.req-list li .box{width:14px;height:14px;border:1.5px solid currentColor;border-radius:3px;flex-shrink:0}.req-list li.met .box{background:var(--teal)}.ticket{border:1.5px dashed var(--line-strong);border-radius:var(--radius);padding:0;overflow:hidden;margin-bottom:20px}.ticket-head{background:var(--ink);color:#fff;padding:14px 20px;display:flex;justify-content:space-between;align-items:center;font-family:IBM Plex Mono,monospace;font-size:13px}.ticket-body{padding:20px}.kv{display:grid;grid-template-columns:150px 1fr;gap:6px 14px;font-size:13px;margin-bottom:16px}.kv dt{color:var(--ink-soft)}.kv dd{margin:0;font-family:IBM Plex Mono,monospace}.ticket .section-title{margin-top:18px;padding-top:14px}.status-banner{background:var(--teal-bg);border:1px solid var(--teal);color:var(--teal);padding:16px 20px;border-radius:8px;margin-bottom:20px;font-size:14px}.status-banner strong{display:block;font-size:15px;margin-bottom:2px}.login-wrap{max-width:380px;margin:60px auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:32px}.login-wrap h1{margin-bottom:4px}.login-wrap p.sub{color:var(--ink-soft);font-size:13px;margin:0 0 24px}.hidden{display:none!important}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);padding:8px 10px;border-bottom:2px solid var(--line)}td{padding:10px;border-bottom:1px solid var(--line);vertical-align:middle}.empty-row td{text-align:center;color:var(--ink-soft);padding:30px}.badge{font-family:IBM Plex Mono,monospace;font-size:11px;padding:3px 9px;border-radius:12px;text-transform:uppercase}.badge.draft{background:var(--amber-bg);color:#7a4a10}.badge.submitted{background:var(--teal-bg);color:var(--teal)}.photo-dropzone{border:1px dashed var(--line-strong);border-radius:7px;padding:12px 14px;font-size:13px;color:var(--ink-soft);cursor:pointer;margin-bottom:8px;background:#fafbfb;display:flex;align-items:center;justify-content:center;min-height:40px}.photo-dropzone.filled{border-style:solid;border-color:var(--teal);color:var(--ink);justify-content:space-between;text-align:left;background:#fff}.photo-dropzone .fname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field.error .photo-dropzone{border-color:var(--red)}.fthumb{width:44px;height:44px;flex:0 0 44px;object-fit:cover;border-radius:5px;border:1px solid var(--line);background:#fafbfb}.fthumb-none{display:none}.save-status{display:none;font-size:12px;color:var(--ink-soft);margin-right:10px}.save-status.show{display:inline}@media(max-width:640px){.save-status{display:none}.save-status.show{display:block;margin:0 0 6px}}
