* {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    height: 100%;
}

body {
    font-family: Arial, Helvetica, sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI",
        sans-serif;
        color: #204000;
}

#app {
    max-width: 700px;
    margin: 0 auto;      
    min-height: 100vh;
    transform: rotate(180deg);
    transform-origin: center center;
}

/* Devices with fine pointers & wide-ish screens: don't invert */
@media (pointer: fine) {
    #app {
        transform: none;
    }
}

@media (min-width: 720px) {
  #app { transform: none; }
}
/* define the modal overlay that warns users about upside-down-ness */
.orientModal { display: none; position: fixed; inset: 0; padding: 18px; background: rgba(0,0,0,0.6); z-index: 9999; }
.orientCard { max-width: 520px; margin: 10vh auto 0; background: #204000; color: #fff; padding: 16px; border-radius: 12px; }
.orientCard button { cursor: pointer; margin-top: 12px; padding: 10px 14px; border-radius: 10px; border: 2px solid #fff; background: transparent; color: #fff; font-weight: 650; }
/*.orientCard button { cursor: pointer; }*/

/* Show the modal on devices that are telephone-like */
@media (pointer: coarse) and (max-width: 720px) {
  .orientModal { display: block; }
}

/* don't show if device is not telephone-like */
@media (pointer: fine), (min-width: 721px) {
  .orientModal { display: none; }
}

/* If dismissed */
.orientModal.hidden { display: none !important; }


.page {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

#record-section {
    padding: 8px 12px;
}

#results-section {
    padding: 12px 12px 12px; /*8, 12, 16*/
}


.results-grid {
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 8px;
}


.result-row {
    display: grid;
    grid-template-columns: minmax(90px, 35%) 1fr;
    column-gap: 8px;
    align-items: flex-start;

     
    /*padding-bottom: 6px;
    margin-bottom: 6px;*/
    border-bottom: 1px solid #204000; 
}
.result-row:first-child {
    border-top: 1px solid #204000;
    /*padding-top: 12px;
    margin-top: 6px;*/
}


.result-label {
    font-size: 1.3rem;
    font-weight: 300;
    min-height: 3em;
}

.result-value {
    font-size: 1.3rem;
    font-weight: 600;
    text-align: right;
}

.info-sub {
    display: block;
    font-size: 1.3rem;
    margin-top: 2px;
}

#controls {
    margin-top: 2.5em;         
    margin-bottom: 2.5em;          
    display: flex;
    flex-direction: column;    
    align-items: center;      
}




#controls label {
    margin-top: 0.7em;
    font-size: 1.5em;
}


#controls button {
    font-size: 2em;
    border: none;
    appearance: none;
    height: 2em;
    width: 2em;
    background-color: #204000;
    display: inline-block;
}


#button-start {
    border-radius: 50%;
}

#button-stop {
    border-radius: 0;
}

.logo {
    width: 100%;          
    margin: 0 auto;       
    padding: 0;           
}

.logo img {
    display: block;       
    max-width: 100%;     
    height: auto;         
}


.row {
    display: flex;
    align-items: center;
}

.indicia {
    border-top: 1px solid #204000;
    display: flex;
    justify-content: space-between; 
    align-items: center;
    padding: 8px 12px;
    
    font-size: 1rem;
}

.indicia-left, .indicia-right {
    text-decoration: underline;
    color:#204000;
}
.indicia-ud {
    border-top: 1px solid #204000;
    display: flex;
    flex-direction: column;    
    align-items: center;    
    padding: 8px 12px;
    
    font-size: 1rem;

    transform: rotate(180deg);
    transform-origin: center center;
}