/* 
   Chapter 6-Hands-on Project 6-3
   Author: Sam Yalda
   Date: 03/23/2026
*/

* {
   box-sizing: border-box;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption, footer,
header, hgroup, menu, nav, output, ruby, section,
summary, time, mark, audio, video {
   margin: 0;
   padding: 0;
   border: 0;
   font-size: 100%;
   font: inherit;
   vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
   display: block;
}

body {
   width: 960px;
   margin: 0 auto;
   font-family: Verdana, Geneva, sans-serif;
   line-height: 1;
   background-color: white;
}

header {
   width: 100%;
   background-color: #2f74b5;
   color: white;
   text-align: center;
   padding: 14px 0;
}

header h1 {
   font-size: 2.6em;
}

article {
   background-color: #f2c96a;
   padding: 20px 45px 55px;
}

article > h2 {
   font-size: 1.5em;
   margin-bottom: 18px;
}

form#billShip {
   display: flex;
   flex-wrap: wrap;
   gap: 18px;
}

form#billShip div {
   flex: 1 1 420px;
}

fieldset {
   border: 2px solid rgb(130, 130, 130);
   padding: 24px 14px 20px;
   position: relative;
   min-height: 385px;
}

legend {
   font-size: 1.05em;
   padding: 0 4px;
}

fieldset p {
   position: absolute;
   top: 10px;
   right: 10px;
   font-size: 0.9em;
}

fieldset span {
   color: #c53131;
   font-weight: bold;
}

fieldset label {
   display: block;
   float: left;
   clear: left;
   width: 145px;
   text-align: right;
   margin: 0 12px 20px 0;
   font-size: 0.95em;
}

fieldset input[type="text"],
fieldset select {
   float: left;
   width: 185px;
   margin-bottom: 20px;
   padding: 2px 4px;
}

input#useShip {
   margin-right: 6px;
   vertical-align: middle;
}

label#cbLabel {
   display: inline-block;
   float: none;
   clear: none;
   width: auto;
   text-align: left;
   margin: 0 0 18px 0;
}

#errorBox {
   width: 100%;
   margin-top: 8px;
   padding: 12px;
   border: 2px solid #d35b43;
   background-color: #fff5f2;
   color: #c53131;
   font-size: 1em;
}

input[type="text"]:invalid {
   background-color: rgb(255, 214, 214);
}

input[type="submit"] {
   display: block;
   width: 90px;
   margin: 18px auto 0;
   padding: 4px 0;
   cursor: pointer;
}

.return-link {
   margin: 18px 0;
   font-size: 0.95em;
   text-align: center;
}

footer {
   text-align: center;
   padding: 12px 0 24px;
   font-size: 0.9em;
}

table {
   border-collapse: collapse;
}