#packing-app{max-width:1000px;margin:auto}.packing-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin:1.25rem 0}.packing-toolbar label{font-weight:650}.packing-toolbar select{width:auto;max-width:100%}.packing-progress{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin:1rem 0}.packing-progress progress{flex:1;min-width:140px;height:12px;accent-color:var(--accent,#ee592f)}.packing-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.packing-group{border:1px solid var(--line,#dce2e8);border-radius:14px;padding:1rem;min-width:0;background:var(--panel,#fff)}.packing-group h3{margin:0 0 .8rem;font-size:1.1rem}.packing-list{list-style:none;margin:0;padding:0}.packing-row{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;border-bottom:1px solid var(--line,#edf0f3)}.packing-row:last-child{border:0}.packing-row input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;accent-color:var(--accent,#ee592f);cursor:pointer}.packing-row .packing-name{min-width:0;flex:1;width:0;background:transparent;border:1px solid transparent;padding:.5rem;font-size:.95rem}.packing-row .packing-name:focus{border-color:var(--accent,#ee592f)}.packing-row.is-packed .packing-name,.packing-row.is-packed .packing-print-name{text-decoration:line-through;color:#68717e}.packing-remove{font-size:.78rem!important;padding:.4rem .55rem!important;flex-shrink:0}.packing-print-name{display:none}.packing-empty{color:#68717e;font-size:.9rem;padding:.7rem 0}.packing-add{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;align-items:end;gap:.75rem;margin:1.25rem 0}.packing-add label{display:block;font-weight:650;margin-bottom:.35rem}.packing-add input,.packing-add select{width:100%}.packing-add>*{min-width:0}@media(max-width:620px){.packing-groups{grid-template-columns:1fr}.packing-add{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.packing-add>div:first-child{grid-column:1/-1}.packing-add button{width:100%}.packing-toolbar button{flex:1 1 auto}}@media print{body:has(#packing-app)>*{display:none!important}body:has(#packing-app)>main,body:has(#packing-app) main:has(#packing-app){display:block!important}body:has(#packing-app) main:has(#packing-app)>*:not(:has(#packing-app)):not(#packing-app){display:none!important}#packing-app .packing-edit{display:none!important}#packing-app .packing-print-name{display:inline}#packing-app .packing-groups{grid-template-columns:1fr 1fr}#packing-app .packing-group{break-inside:avoid;background:white;color:black;border-color:#aaa}#packing-app input[type=checkbox]{appearance:none;border:1px solid black;background:white;border-radius:2px;position:relative}#packing-app input[type=checkbox]:checked:after{content:'✓';position:absolute;left:2px;top:-5px;font-size:20px}#packing-app progress{display:none}#packing-app .packing-row{padding:.4rem 0}#packing-app{color:black;background:white}body:has(#packing-app) header,body:has(#packing-app) footer,body:has(#packing-app) .ad-slot,body:has(#packing-app) .tool-help{display:none!important}}
/* Keep the decorated submit button inside the narrow-phone form grid. */
@media(max-width:620px){.packing-add>button[type=submit]{grid-column:1/-1;min-width:0;width:100%}}
