html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;margin:0;background-color:var(--color-background);color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.3;color:var(--color-text-primary)}h1{font-size:1.5rem;margin-bottom:0.75rem}h2{font-size:1rem;margin:1.25rem 0 0.6rem 0}h3{font-size:0.95rem;margin:1rem 0 0.5rem 0}h4,h5,h6{font-size:1rem;margin:0.75rem 0 0.5rem 0}@media (min-width:768px){h1{font-size:1.75rem}h2{font-size:var(--font-size-lg)}h3{font-size:1.1rem}}p{margin:0.5rem 0}p:first-child{margin-top:0}p:last-child{margin-bottom:0}a{color:var(--color-link);text-decoration:none;transition:color 0.2s ease}a:hover{color:var(--color-link-hover);text-decoration:underline}a:active{color:var(--color-link-hover)}strong,b{font-weight:600}em,i{font-style:italic}small{font-size:0.85rem;color:var(--color-text-secondary)}code,pre{font-family:"Monaco","Courier New",monospace;background-color:var(--color-surface);padding:0.2rem 0.4rem;border-radius:var(--input-border-radius);font-size:0.9rem}pre{padding:1.5rem;overflow-x:auto;margin:var(--spacing-md) 0}ul,ol,dl{margin:0.5rem 0;padding-left:1.5rem}li{margin-bottom:0.25rem}dt{font-weight:600}dd{margin-left:1rem;margin-bottom:0.5rem}section,article{margin:0;padding:0}footer{text-align:center;color:var(--color-text-secondary);font-size:0.8rem;margin:1.5rem 0}main{padding:1rem;min-height:calc(100vh - 200px)}main h1{margin-top:0;margin-bottom:var(--spacing-lg)}@media (min-width:768px){main{padding:var(--page-padding-v) var(--page-padding-h)}}.page-header{display:flex;flex-direction:column;align-items:stretch;gap:var(--spacing-md);margin-bottom:1.25rem}.page-header h1{margin:0}.page-header-meta{color:var(--color-text-secondary);font-size:0.9rem}@media (min-width:768px){.page-header{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1rem}}.action-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:stretch}.action-buttons .btn{width:100%;text-align:center}@media (min-width:768px){.action-buttons{flex-direction:row;align-items:center;gap:var(--spacing-md)}.action-buttons .btn{width:auto}}.container{max-width:900px;margin:0 auto;width:100%}.container-wide{max-width:1200px;margin:0 auto;width:100%}.container-narrow{max-width:600px;margin:0 auto;width:100%}.grid,.grid-2,.grid-3,.grid-4{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}@media (min-width:768px){.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-center{display:flex;justify-content:center;align-items:center}.flex-between{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}@media (min-width:768px){.flex-between{flex-direction:row;justify-content:space-between;align-items:center;gap:0}}.flex-gap{gap:var(--spacing-md)}.flex-gap-lg{gap:var(--spacing-lg)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mt-2{margin-top:2rem}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.px-md{padding-left:var(--spacing-md);padding-right:var(--spacing-md)}.px-lg{padding-left:var(--spacing-lg);padding-right:var(--spacing-lg)}.py-md{padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}.py-lg{padding-top:var(--spacing-lg);padding-bottom:var(--spacing-lg)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.w-100{width:100%}.w-50{width:100%}.w-33{width:100%}.w-25{width:25%}@media (min-width:768px){.w-50{width:50%}.w-33{width:33.333%}}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.hidden,.hide{display:none}.visible,.show{display:block}.invisible{visibility:hidden}.overflow-visible{overflow:visible}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.text-overflow,.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-muted{color:var(--color-text-secondary)}.text-muted-light{color:var(--color-text-secondary)}.text-danger{color:var(--color-danger)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-success{color:var(--text-success)}.text-warning{color:var(--text-warning)}.text-error{color:var(--alert-error-fg)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.text-uppercase{text-transform:uppercase}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.pre-wrap{white-space:pre-wrap}.pre{white-space:pre}.nowrap{white-space:nowrap}.border-top{border-top:1px solid var(--color-border)}.border-bottom{border-bottom:1px solid var(--color-border)}.border-left{border-left:1px solid var(--color-border)}.border-right{border-right:1px solid var(--color-border)}.border-all{border:1px solid var(--color-border)}.border-none{border:none}.border-accent{border-left:4px solid var(--color-brand)}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-text{cursor:text}.cursor-not-allowed{cursor:not-allowed}.opacity-50{opacity:0.5}.opacity-75{opacity:0.75}.opacity-100{opacity:1}.help-text{margin-top:0.3rem;font-size:0.8rem;color:var(--color-text-secondary)}.help-text-sm{margin-top:0.5rem;font-size:0.9em;color:var(--color-text-secondary)}.warning-box{background:var(--alert-warning-bg);color:var(--alert-warning-fg);padding:1rem;border-radius:var(--radius-base);white-space:pre-wrap}.error-box{background:var(--alert-error-bg);color:var(--alert-error-fg);padding:0.5rem;border-radius:var(--radius-base);margin-bottom:0.5rem}.info-box{background:var(--alert-info-bg);color:var(--alert-info-fg);padding:1rem;border-radius:var(--radius-base)}.hide-mobile{display:none}@media (min-width:768px){.hide-mobile{display:revert}}.hide-tablet{display:none}@media (min-width:1024px){.hide-tablet{display:revert}}.show-mobile{display:block}@media (min-width:768px){.show-mobile{display:none}}@media print{header,footer,nav,.no-print,.action-buttons{display:none}main{max-width:100%;padding:0;margin:0}.card,.table-wrapper{page-break-inside:avoid;box-shadow:none;border:1px solid #ccc}body{font-size:11pt;color:#000}a{color:#000;text-decoration:underline}.print-only{display:block}.print-break{page-break-before:always}}
