.calculator-body{display:grid;grid-template-columns:1fr;gap:40px}@media (min-width:992px){.calculator-body{grid-template-columns:40% 1fr}}fieldset{border:1px solid var(--border-color);border-radius:8px;padding:30px 20px 10px 20px;margin-bottom:20px;background-color:var(--bg-container);transition:background-color .3s ease,transform .3s ease,box-shadow .3s ease;position:relative}fieldset:hover{transform:translateY(-4px);box-shadow:0 12px 24px var(--shadow-color)}fieldset:has(.custom-select-wrapper.open){z-index:50}legend{font-weight:600;color:var(--accent);padding:0 10px;font-size:1.1em;background-color:var(--bg-container);position:relative;top:-5px;left:-10px;transition:background-color .3s ease}.form-grid{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width:600px){.form-grid{grid-template-columns:1fr 1fr}.form-grid .full-width{grid-column:1/-1}}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;font-size:1em;color:var(--text-primary)}input,select,textarea{width:100%;padding:12px;border-radius:6px;border:1px solid var(--border-color);background-color:var(--bg-main);color:var(--text-primary);box-sizing:border-box;font-family:Inter,sans-serif;font-size:1em;transition:border-color .2s}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 1px rgba(180,180,180,.25)}.input-with-unit{display:flex;align-items:center}.input-with-unit input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none}.input-with-unit span{padding:12px;background-color:var(--bg-card);border:1px solid var(--border-color);border-left:none;border-top-right-radius:6px;border-bottom-right-radius:6px;color:var(--text-secondary);font-size:1em}.custom-select-wrapper input,select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%236C757D' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708 .708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;padding-right:40px}html.dark-theme .custom-select-wrapper input,html.dark-theme select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23B0B0B0' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708 .708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E")}.custom-select-wrapper{position:relative}.custom-options{position:absolute;top:calc(100% + 5px);left:0;width:100%;max-height:220px;overflow-y:auto;background-color:var(--bg-container);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:100;display:none}.custom-select-wrapper.open .custom-options{display:block}.custom-select-wrapper.open-up .custom-options{top:auto;bottom:calc(100% + 5px)}.custom-options .option-item{padding:10px 12px;cursor:pointer}.custom-options .option-item:hover{background-color:var(--accent);color:#fff}html.dark-theme .custom-options .option-item:hover{color:var(--text-primary)}.button-group,.segmented-control{display:flex;gap:10px;flex-wrap:wrap}#tc-group-container .segmented-control{flex-wrap:nowrap;gap:6px}#tc-group-container .segmented-control button{padding:10px 2px;font-size:.85em;min-width:0;white-space:nowrap}.choice-button,.segmented-control button{flex-grow:1;padding:12px;font-size:1em;font-weight:600;border-radius:12px;border:none;background:linear-gradient(135deg,rgba(255,255,255,.08) 0,rgba(255,255,255,.02) 100%);color:rgba(255,255,255,.8);cursor:pointer;transition:all .2s ease-in-out;position:relative;z-index:1;backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);box-shadow:inset 1px 1px 2px rgba(255,255,255,.35),inset -1px -1px 3px rgba(0,0,0,.3),0 8px 16px rgba(0,0,0,.25)}.choice-button::before,.segmented-control button::before{content:"";position:absolute;inset:0;border-radius:12px;padding:1.5px;background:linear-gradient(135deg,rgba(255,255,255,.7) 0,rgba(255,255,255,.05) 30%,rgba(255,255,255,0) 70%,rgba(255,255,255,.2) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:-1}.button-group .choice-button:hover,.segmented-control button:hover{background:linear-gradient(135deg,rgba(255,255,255,.12) 0,rgba(255,255,255,.04) 100%);transform:translateY(-2px);box-shadow:inset 1px 1px 2px rgba(255,255,255,.4),inset -1px -1px 2px rgba(0,0,0,.25),0 6px 12px rgba(0,0,0,.3)}.button-group .choice-button.active,.segmented-control button.active{background:linear-gradient(135deg,rgba(41,98,255,.85) 0,rgba(79,172,254,.7) 100%)!important;color:#fff!important;border:1px solid rgba(79,172,254,.8)!important;box-shadow:0 0 14px rgba(79,172,254,.35),0 4px 12px rgba(0,0,0,.3)!important}.button-group .choice-button.active::before,.segmented-control button.active::before{background:linear-gradient(135deg,rgba(255,255,255,.3) 0,rgba(255,255,255,.05) 40%,transparent 60%,rgba(255,255,255,.1) 100%)!important}.action-button{width:100%;padding:15px;font-size:1.1em;font-weight:700;border-radius:8px;border:none;background-color:var(--accent);color:#fff;cursor:pointer;transition:background-color .2s;margin-bottom:10px}.action-button:hover{background-color:var(--accent-hover)}hr.divider{border:none;border-top:1px solid var(--border-color);margin:30px 0 20px 0}.form-group.is-disabled{opacity:.5;pointer-events:none}.form-group.is-disabled input{background-color:var(--bg-main)}.label-with-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.label-with-info label{margin-bottom:0}.fallback-list{list-style-type:none!important;padding-left:0!important;margin-top:10px;margin-bottom:0}.fallback-list li{margin-bottom:5px}.fallback-button{width:100%;text-align:left;padding:8px 12px;background-color:var(--bg-main);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;cursor:pointer;transition:all .2s ease}.fallback-button:hover{background-color:var(--accent);color:#fff;border-color:var(--accent)}.notice{padding:10px 15px;border-radius:6px;margin-bottom:20px;font-size:.9em;display:flex;justify-content:center;align-items:center;gap:15px;border:1px solid;text-align:left}.notice>span{width:100%}.notice.good{background-color:var(--success-bg);color:var(--success-text);border-color:var(--success-border);border-left-width:5px;border-left-color:var(--success-text);box-shadow:0 4px 12px rgba(0,0,0,.05)}html.dark-theme .notice.good{border-left-color:var(--success-text);box-shadow:0 4px 12px rgba(0,0,0,.1)}.notice.warning{background-color:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}.notice.tip{background-color:var(--tip-bg);color:var(--tip-text);border-color:var(--tip-border)}.notice .suggestion{display:block;margin-top:8px}.notice .suggestion-value{font-weight:700;font-size:1.4em;color:var(--text-primary);white-space:nowrap}html.dark-theme .notice .suggestion-value{color:var(--text-primary)}.info-button{display:inline-flex;vertical-align:middle;margin-left:8px;border-radius:50%;border:none;background-color:var(--warning-border);color:var(--warning-text);cursor:pointer;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0;padding:0;transition:all .2s ease}.info-button:hover{background-color:var(--accent);color:#fff}.info-button svg{width:22px;height:22px}.hidden{display:none!important}.is-visible{display:flex!important}#sharp-face-result{display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;gap:8px}#sharp-face-result span{width:auto;flex-shrink:0}#sharp-face-aperture{white-space:nowrap;font-size:1.2em;font-weight:700}
